Compare commits
1 Commits
v2.9.1
...
v2.8.2-rc1
Author | SHA1 | Date | |
---|---|---|---|
|
6a8e161e26 |
12
.cvsignore
Normal file
@@ -0,0 +1,12 @@
|
||||
.gdb_history
|
||||
config.cache
|
||||
configarg.cache
|
||||
config.status
|
||||
wx-config
|
||||
config.log
|
||||
stamp-h.in
|
||||
Makefile
|
||||
setup.h
|
||||
*tags
|
||||
.DS_Store
|
||||
autom4te.cache
|
262
BuildCVS.txt
Normal file
@@ -0,0 +1,262 @@
|
||||
------------------------------------------------------------------------
|
||||
How to build the sources from CVS
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Please use the install.txt files in docs/gtk, docs/msw, docs/motif, docs/mac
|
||||
etc. alongside these instructions.
|
||||
|
||||
I) Windows using plain makefiles
|
||||
----------------------------------------
|
||||
|
||||
a) If using Microsoft Visual C++ 5.0 or 6.0
|
||||
|
||||
Ensure that the command-line compiler and tools (including
|
||||
nmake) are installed and ready to run. Depending on your
|
||||
installation there may be a batch file (commonly named VCVARS32.BAT)
|
||||
that needs to be run to set correct environment variables and PATH entries.
|
||||
|
||||
Continue with item c) below.
|
||||
|
||||
|
||||
b) If using the MinGW or Cygwin compilers
|
||||
|
||||
You can get MinGW from http://www.mingw.org/
|
||||
|
||||
Cygwin is available at http://www.cygwin.com/
|
||||
|
||||
If you are using Cygwin or MinGW together with the MSYS environment, you
|
||||
can build the library using configure (see "Unix ports" and
|
||||
"Windows using configure" below). You can also
|
||||
build wxWidgets without configure using native makefile, but only with
|
||||
MinGW. Using Cygwin together with Windows makefile is no longer supported.
|
||||
|
||||
If building with MinGW without configure:
|
||||
|
||||
-> Set your path so that it includes the directory
|
||||
where your compiler and tools reside
|
||||
|
||||
-> Make sure you have GNU Make installed. It must be Windows native version.
|
||||
Download it from http://www.mingw.org, the executable will be called
|
||||
mingw32-make.exe.
|
||||
|
||||
-> Modern version of MinGW is required; preferably MinGW 2.0 (with gcc3),
|
||||
but MinGW with gcc-2.95.3 will suffice. If you are using 2.95, you will
|
||||
have to change variable GCC_VERSION in config.gcc (see msw/install.txt
|
||||
for details).
|
||||
|
||||
If using configure, Unix instructions apply.
|
||||
|
||||
|
||||
c) Build instructions
|
||||
|
||||
Assumming that you installed the wxWidgets sources
|
||||
into c:\wxWidgets:
|
||||
|
||||
-> Copy c:\wxWidgets\include\wx\msw\setup0.h
|
||||
to c:\wxWidgets\include\wx\msw\setup.h
|
||||
-> Edit c:\wxWidgets\include\wx\msw\setup.h to choose
|
||||
the features you would like to compile wxWidgets with[out].
|
||||
|
||||
and std iostreams are disabled with
|
||||
#define wxUSE_STD_IOSTREAM 0
|
||||
|
||||
-> type: cd c:\wxWidgets\build\msw
|
||||
-> type: make -f makefile.gcc (if using GNU tools)
|
||||
or type: nmake -f makefile.vc (if using MS VC++)
|
||||
etc.
|
||||
|
||||
See also docs/msw/install.txt for additional compilation options.
|
||||
|
||||
d) Borland (including free command line tools)
|
||||
Download tools from http://www.borland.com/downloads/
|
||||
|
||||
See docs/msw/install.txt for details; in brief:
|
||||
|
||||
-> type cd c:\wxWidgets\build\msw
|
||||
-> type make -f makefile.bcc
|
||||
|
||||
You can customize many things in the build process, detailed description is
|
||||
in docs/msw/install.txt.
|
||||
|
||||
|
||||
II) Unix ports
|
||||
--------------
|
||||
|
||||
Building wxGTK or wxMotif completely without configure
|
||||
won't ever work, but there is now a new makefile system
|
||||
that works without libtool and automake, using only
|
||||
configure to create what is needed.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version > 2.54) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf). Note that you usually don't
|
||||
need to do this because configure is included in CVS.
|
||||
|
||||
Set WXWIN environment variable to the base directory such
|
||||
as ~/wxWidgets (this is actually not really needed).
|
||||
|
||||
-> type: export WXWIN=~/wxWidgets
|
||||
-> type: md mybuild
|
||||
-> type: cd mybuild
|
||||
-> type: ../configure --with-motif
|
||||
or type: ../configure --with-gtk
|
||||
-> type: make
|
||||
-> type: su <type root password>
|
||||
-> type: make install
|
||||
-> type: ldconfig
|
||||
-> type: exit
|
||||
|
||||
Call configure with --disable-shared to create a static
|
||||
library. Calling "make uninstall" will remove the installed
|
||||
library and "make dist" will create a distribution (not
|
||||
yet complete).
|
||||
|
||||
III) Windows using configure
|
||||
----------------------------------------
|
||||
|
||||
wxWidgets can be built on Windows using MSYS (see
|
||||
http://www.mingw.org/), which is a POSIX build environment
|
||||
for Windows. With MSYS you can just ./configure && make (see also VII,
|
||||
Unix->Windows cross-compiling using configure).
|
||||
|
||||
Of course, you can also build the library using plain makefiles (see
|
||||
section I).
|
||||
|
||||
IV) Classic MacOS using CodeWarrior (eg MacOS 8.x/9.x)
|
||||
----------------------------------------
|
||||
|
||||
Refer to the readme.txt and install.txt files in docs/mac to build
|
||||
wxWidgets under Classic Mac OS using CodeWarrior.
|
||||
|
||||
If you are checking out the CVS sources using cvs under Mac OS X and
|
||||
compiling under Classic Mac OS:
|
||||
|
||||
- make sure that all text files have a Mac OS type of 'TEXT' otherwise
|
||||
CodeWarrior may ignore them. Checking out the CVS sources using cvs
|
||||
under Mac OS X creates untyped files which can lead to compilation
|
||||
errors under CodeWarrior which are hard to track down.
|
||||
|
||||
- convert the xml files to CodeWarrior binary projects using the supplied
|
||||
AppleScript in docs/mac (M5xml2mcp.applescript for CodeWarrior 5.3)
|
||||
|
||||
V) MacOS X using configure and the Developer Tools
|
||||
----------------------------------------
|
||||
|
||||
You need to have the Developer Tools installed. If this is not the case,
|
||||
you will need to register at the Apple Developer web site (this is a free
|
||||
registration) in order to download the Developer Tools installer.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version >= 2.54) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf).
|
||||
|
||||
-> type: mkdir macbuild
|
||||
-> type: cd macbuild
|
||||
-> type: ../configure --with-mac
|
||||
or type: ../configure
|
||||
-> type: make
|
||||
|
||||
VI) OS/2
|
||||
----------------------------------------
|
||||
No notes.
|
||||
|
||||
VII) Unix->Windows cross-compiling using configure
|
||||
--------------------------------------------------
|
||||
|
||||
First you'll need a cross-compiler; linux glibc binaries of MinGW and
|
||||
Cygwin (both based on egcs) can be found at
|
||||
ftp://ftp.objsw.com/pub/crossgcc/linux-x-win32. Alternative binaries,
|
||||
based on the latest MinGW release can be found at
|
||||
http://members.telering.at/jessich/mingw/mingwcross/mingw_cross.html
|
||||
Otherwise you can compile one yourself.
|
||||
|
||||
[ A Note about Cygwin and MinGW: the main difference is that Cygwin
|
||||
binaries are always linked against cygwin.dll. This dll encapsulates most
|
||||
standard Unix C extensions, which is very handy if you're porting unix
|
||||
software to windows. However, wxMSW doesn't need this, so MinGW is
|
||||
preferable if you write portable C(++). ]
|
||||
|
||||
You might want to build both Unix and Windows binaries in the same source
|
||||
tree; to do this make subdirs for each e.g. unix and win32. If you've
|
||||
already build wxWidgets in the main dir, do a 'make distclean' there,
|
||||
otherwise configure will get confused. (In any case, read the section 'Unix
|
||||
using configure' and make sure you're able to build a native wxWidgets
|
||||
library; cross-compiling errors can be pretty obscure and you'll want to be
|
||||
sure that your configure setup is basically sound.)
|
||||
|
||||
To cross compile the windows library, do
|
||||
-> cd win32
|
||||
(or whatever you called it)
|
||||
Now run configure. There are two ways to do this
|
||||
-> ../configure --host=i586-mingw32 --build=i586-linux --with-mingw
|
||||
where --build= should read whatever platform you're building on. Configure
|
||||
will notice that build and host platforms differ, and automatically prepend
|
||||
i586-mingw32- to gcc, ar, ld, etc (make sure they're in the PATH!).
|
||||
The other way to run configure is by specifying the names of the binaries
|
||||
yourself:
|
||||
-> CC=i586-mingw32-gcc CXX=i586-mingw32-g++ RANLIB=i586-mingw32-ranlib \
|
||||
DLLTOOL=i586-mingw32-dlltool LD=i586-mingw32-ld NM=i586-mingw32-nm \
|
||||
../configure --host=i586-mingw32 --with-mingw
|
||||
|
||||
(all assuming you're using MinGW)
|
||||
By default this will compile a DLL, if you want a static library,
|
||||
specify --disable-shared.
|
||||
|
||||
Type
|
||||
-> make
|
||||
and wait, wait, wait. Don't leave the room, because the minute you do there
|
||||
will be a compile error :-)
|
||||
|
||||
NB: if you are using a very old compiler you risk to get quite a few warnings
|
||||
about "ANSI C++ forbids implicit conversion from 'void *'" in all places
|
||||
where va_arg macro is used. This is due to a bug in (some versions of)
|
||||
MinGW headers which may be corrected by upgrading your compier,
|
||||
otherwise you might edit the file
|
||||
|
||||
${install_prefix}/lib/gcc-lib/i586-mingw32/egcs-2.91.57/include/stdarg.h
|
||||
|
||||
(instead of egcs-2.91.57 you may have something different), searching for
|
||||
the lines
|
||||
|
||||
/* Define __gnuc_va_list. */
|
||||
|
||||
#ifndef __GNUC_VA_LIST
|
||||
#define __GNUC_VA_LIST
|
||||
#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__)
|
||||
typedef char *__gnuc_va_list;
|
||||
#else
|
||||
typedef void *__gnuc_va_list;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
and adding "|| defined(_WIN32)" to the list of platforms on which
|
||||
__gnuc_va_list is char *.
|
||||
|
||||
If this is successful, you end up with a wx23_2.dll/libwx23_2.a in win32/lib
|
||||
(or just libwx_msw.a if you opted for a static build).
|
||||
Now try building the minimal sample:
|
||||
|
||||
-> cd samples/minimal
|
||||
-> make
|
||||
|
||||
and run it with wine, for example (or copy to a Windows box)
|
||||
-> wine minimal.exe
|
||||
|
||||
If all is well, do an install; from win32
|
||||
-> make install
|
||||
|
||||
Native and cross-compiled installations can co-exist peacefully
|
||||
(as long as their widget sets differ), except for wx-config. You might
|
||||
want to rename the cross-compiled one to i586-mingw32-wx-config, or something.
|
||||
|
||||
Cross-compiling TODO:
|
||||
---------------------
|
||||
- resource compiling must be done manually for now (should/can we link the
|
||||
default wx resources into libwx_msw.a?) [ No we can't; the linker won't
|
||||
link it in... you have to supply an object file ]
|
||||
- static executables are HUGE -- there must be room for improvement.
|
||||
|
244
BuildSVN.txt
@@ -1,244 +0,0 @@
|
||||
------------------------------------------------------------------------
|
||||
How to build the sources from SVN
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Please use the install.txt files in docs/gtk, docs/msw, docs/motif, docs/mac
|
||||
etc. alongside these instructions.
|
||||
|
||||
I) Windows using plain makefiles
|
||||
----------------------------------------
|
||||
|
||||
a) If using Microsoft Visual C++ 5.0 or 6.0
|
||||
|
||||
Ensure that the command-line compiler and tools (including
|
||||
nmake) are installed and ready to run. Depending on your
|
||||
installation there may be a batch file (commonly named VCVARS32.BAT)
|
||||
that needs to be run to set correct environment variables and PATH entries.
|
||||
|
||||
Continue with item c) below.
|
||||
|
||||
|
||||
b) If using the MinGW or Cygwin compilers
|
||||
|
||||
You can get MinGW from http://www.mingw.org/
|
||||
|
||||
Cygwin is available at http://www.cygwin.com/
|
||||
|
||||
If you are using Cygwin or MinGW together with the MSYS environment, you
|
||||
can build the library using configure (see "Unix ports" and
|
||||
"Windows using configure" below). You can also
|
||||
build wxWidgets without configure using native makefile, but only with
|
||||
MinGW. Using Cygwin together with Windows makefile is no longer supported.
|
||||
|
||||
If building with MinGW without configure:
|
||||
|
||||
-> Set your path so that it includes the directory
|
||||
where your compiler and tools reside
|
||||
|
||||
-> Make sure you have GNU Make installed. It must be Windows native version.
|
||||
Download it from http://www.mingw.org, the executable will be called
|
||||
mingw32-make.exe.
|
||||
|
||||
-> Modern version of MinGW is required; preferably MinGW 2.0 (with gcc3),
|
||||
but MinGW with gcc-2.95.3 will suffice. If you are using 2.95, you will
|
||||
have to change variable GCC_VERSION in config.gcc (see msw/install.txt
|
||||
for details).
|
||||
|
||||
If using configure, Unix instructions apply.
|
||||
|
||||
|
||||
c) Build instructions
|
||||
|
||||
Assuming that you installed the wxWidgets sources into c:\wxWidgets:
|
||||
|
||||
-> Copy c:\wxWidgets\include\wx\msw\setup0.h
|
||||
to c:\wxWidgets\include\wx\msw\setup.h
|
||||
-> Edit c:\wxWidgets\include\wx\msw\setup.h to choose
|
||||
the features you would like to compile wxWidgets with[out].
|
||||
|
||||
and std iostreams are disabled with
|
||||
#define wxUSE_STD_IOSTREAM 0
|
||||
|
||||
-> type: cd c:\wxWidgets\build\msw
|
||||
-> type: make -f makefile.gcc (if using GNU tools)
|
||||
or type: nmake -f makefile.vc (if using MS VC++)
|
||||
etc.
|
||||
|
||||
See also docs/msw/install.txt for additional compilation options.
|
||||
|
||||
d) Borland (including free command line tools)
|
||||
Download tools from http://www.borland.com/downloads/
|
||||
|
||||
See docs/msw/install.txt for details; in brief:
|
||||
|
||||
-> type cd c:\wxWidgets\build\msw
|
||||
-> type make -f makefile.bcc
|
||||
|
||||
You can customize many things in the build process, detailed description is
|
||||
in docs/msw/install.txt.
|
||||
|
||||
|
||||
II) Unix ports
|
||||
--------------
|
||||
|
||||
Building wxGTK or wxMotif completely without configure
|
||||
won't ever work, but there is now a new makefile system
|
||||
that works without libtool and automake, using only
|
||||
configure to create what is needed.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version > 2.54) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf). Note that you usually don't
|
||||
need to do this because configure is included in SVN.
|
||||
|
||||
Set WXWIN environment variable to the base directory such
|
||||
as ~/wxWidgets (this is actually not really needed).
|
||||
|
||||
-> type: export WXWIN=~/wxWidgets
|
||||
-> type: md mybuild
|
||||
-> type: cd mybuild
|
||||
-> type: ../configure --with-motif
|
||||
or type: ../configure --with-gtk
|
||||
-> type: make
|
||||
-> type: su <type root password>
|
||||
-> type: make install
|
||||
-> type: ldconfig
|
||||
-> type: exit
|
||||
|
||||
Call configure with --disable-shared to create a static
|
||||
library. Calling "make uninstall" will remove the installed
|
||||
library and "make dist" will create a distribution (not
|
||||
yet complete).
|
||||
|
||||
III) Windows using configure
|
||||
----------------------------------------
|
||||
|
||||
wxWidgets can be built on Windows using MSYS (see
|
||||
http://www.mingw.org/), which is a POSIX build environment
|
||||
for Windows. With MSYS you can just ./configure && make (see also VII,
|
||||
Unix->Windows cross-compiling using configure).
|
||||
|
||||
Of course, you can also build the library using plain makefiles (see
|
||||
section I).
|
||||
|
||||
V) MacOS X using configure and the Developer Tools
|
||||
----------------------------------------
|
||||
|
||||
You need to have the Developer Tools installed. If this is not the case,
|
||||
you will need to register at the Apple Developer web site (this is a free
|
||||
registration) in order to download the Developer Tools installer.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version >= 2.54) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf).
|
||||
|
||||
-> type: mkdir macbuild
|
||||
-> type: cd macbuild
|
||||
-> type: ../configure --with-mac
|
||||
or type: ../configure
|
||||
-> type: make
|
||||
|
||||
VI) OS/2
|
||||
----------------------------------------
|
||||
No notes.
|
||||
|
||||
VII) Unix->Windows cross-compiling using configure
|
||||
--------------------------------------------------
|
||||
|
||||
First you'll need a cross-compiler; linux glibc binaries of MinGW and
|
||||
Cygwin (both based on egcs) can be found at
|
||||
ftp://ftp.objsw.com/pub/crossgcc/linux-x-win32. Alternative binaries,
|
||||
based on the latest MinGW release can be found at
|
||||
http://members.telering.at/jessich/mingw/mingwcross/mingw_cross.html
|
||||
Otherwise you can compile one yourself.
|
||||
|
||||
[ A Note about Cygwin and MinGW: the main difference is that Cygwin
|
||||
binaries are always linked against cygwin.dll. This dll encapsulates most
|
||||
standard Unix C extensions, which is very handy if you're porting unix
|
||||
software to windows. However, wxMSW doesn't need this, so MinGW is
|
||||
preferable if you write portable C(++). ]
|
||||
|
||||
You might want to build both Unix and Windows binaries in the same source
|
||||
tree; to do this make subdirs for each e.g. unix and win32. If you've
|
||||
already build wxWidgets in the main dir, do a 'make distclean' there,
|
||||
otherwise configure will get confused. (In any case, read the section 'Unix
|
||||
using configure' and make sure you're able to build a native wxWidgets
|
||||
library; cross-compiling errors can be pretty obscure and you'll want to be
|
||||
sure that your configure setup is basically sound.)
|
||||
|
||||
To cross compile the windows library, do
|
||||
-> cd win32
|
||||
(or whatever you called it)
|
||||
Now run configure. There are two ways to do this
|
||||
-> ../configure --host=i586-mingw32 --build=i586-linux --with-mingw
|
||||
where --build= should read whatever platform you're building on. Configure
|
||||
will notice that build and host platforms differ, and automatically prepend
|
||||
i586-mingw32- to gcc, ar, ld, etc (make sure they're in the PATH!).
|
||||
The other way to run configure is by specifying the names of the binaries
|
||||
yourself:
|
||||
-> CC=i586-mingw32-gcc CXX=i586-mingw32-g++ RANLIB=i586-mingw32-ranlib \
|
||||
DLLTOOL=i586-mingw32-dlltool LD=i586-mingw32-ld NM=i586-mingw32-nm \
|
||||
../configure --host=i586-mingw32 --with-mingw
|
||||
|
||||
(all assuming you're using MinGW)
|
||||
By default this will compile a DLL, if you want a static library,
|
||||
specify --disable-shared.
|
||||
|
||||
Type
|
||||
-> make
|
||||
and wait, wait, wait. Don't leave the room, because the minute you do there
|
||||
will be a compile error :-)
|
||||
|
||||
NB: if you are using a very old compiler you risk to get quite a few warnings
|
||||
about "ANSI C++ forbids implicit conversion from 'void *'" in all places
|
||||
where va_arg macro is used. This is due to a bug in (some versions of)
|
||||
MinGW headers which may be corrected by upgrading your compier,
|
||||
otherwise you might edit the file
|
||||
|
||||
${install_prefix}/lib/gcc-lib/i586-mingw32/egcs-2.91.57/include/stdarg.h
|
||||
|
||||
(instead of egcs-2.91.57 you may have something different), searching for
|
||||
the lines
|
||||
|
||||
/* Define __gnuc_va_list. */
|
||||
|
||||
#ifndef __GNUC_VA_LIST
|
||||
#define __GNUC_VA_LIST
|
||||
#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__)
|
||||
typedef char *__gnuc_va_list;
|
||||
#else
|
||||
typedef void *__gnuc_va_list;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
and adding "|| defined(_WIN32)" to the list of platforms on which
|
||||
__gnuc_va_list is char *.
|
||||
|
||||
If this is successful, you end up with a wx23_2.dll/libwx23_2.a in win32/lib
|
||||
(or just libwx_msw.a if you opted for a static build).
|
||||
Now try building the minimal sample:
|
||||
|
||||
-> cd samples/minimal
|
||||
-> make
|
||||
|
||||
and run it with wine, for example (or copy to a Windows box)
|
||||
-> wine minimal.exe
|
||||
|
||||
If all is well, do an install; from win32
|
||||
-> make install
|
||||
|
||||
Native and cross-compiled installations can co-exist peacefully
|
||||
(as long as their widget sets differ), except for wx-config. You might
|
||||
want to rename the cross-compiled one to i586-mingw32-wx-config, or something.
|
||||
|
||||
Cross-compiling TODO:
|
||||
---------------------
|
||||
- resource compiling must be done manually for now (should/can we link the
|
||||
default wx resources into libwx_msw.a?) [ No we can't; the linker won't
|
||||
link it in... you have to supply an object file ]
|
||||
- static executables are HUGE -- there must be room for improvement.
|
||||
|
39225
Makefile.in
280
acinclude.m4
@@ -132,7 +132,7 @@ AC_DEFUN([WX_CPP_NEW_HEADERS],
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_CHECK_HEADERS([iostream],,, [ ])
|
||||
AC_CHECK_HEADERS(iostream)
|
||||
|
||||
if test "$ac_cv_header_iostream" = "yes" ; then
|
||||
ifelse([$1], , :, [$1])
|
||||
@@ -143,6 +143,43 @@ AC_DEFUN([WX_CPP_NEW_HEADERS],
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_BOOL checks whether the C++ compiler has a built in bool type
|
||||
dnl
|
||||
dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_CPP_BOOL],
|
||||
[
|
||||
AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool,
|
||||
[
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
],
|
||||
[
|
||||
bool b = true;
|
||||
|
||||
return 0;
|
||||
],
|
||||
[
|
||||
wx_cv_cpp_bool=yes
|
||||
],
|
||||
[
|
||||
wx_cv_cpp_bool=no
|
||||
]
|
||||
)
|
||||
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
if test "$wx_cv_cpp_bool" = "yes"; then
|
||||
AC_DEFINE(HAVE_BOOL)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_EXPLICIT checks whether the C++ compiler support the explicit
|
||||
dnl keyword and defines HAVE_EXPLICIT if this is the case
|
||||
@@ -247,7 +284,7 @@ AC_DEFUN([WX_CHECK_FUNCS],
|
||||
|
||||
if eval test \$wx_cv_func_$wx_func = yes
|
||||
then
|
||||
AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_$wx_func]))
|
||||
AC_DEFINE_UNQUOTED([HAVE_`echo $wx_func | tr 'a-z' 'A-Z'`])
|
||||
$2
|
||||
else
|
||||
:
|
||||
@@ -295,38 +332,60 @@ fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl override AC_ARG_ENABLE/WITH to handle options defaults
|
||||
dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_ARG_CACHE_INIT],
|
||||
[
|
||||
wx_arg_cache_file="configarg.cache"
|
||||
echo "loading argument cache $wx_arg_cache_file"
|
||||
rm -f ${wx_arg_cache_file}.tmp
|
||||
touch ${wx_arg_cache_file}.tmp
|
||||
touch ${wx_arg_cache_file}
|
||||
])
|
||||
|
||||
AC_DEFUN([WX_ARG_CACHE_FLUSH],
|
||||
[
|
||||
echo "saving argument cache $wx_arg_cache_file"
|
||||
mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file}
|
||||
])
|
||||
|
||||
dnl this macro checks for a three-valued command line --with argument:
|
||||
dnl possible arguments are 'yes', 'no', 'sys', or 'builtin'
|
||||
dnl usage: WX_ARG_SYS_WITH(option, helpmessage, variable-name)
|
||||
dnl
|
||||
dnl the default value (used if the option is not specified at all) is the value
|
||||
dnl of wxUSE_ALL_FEATURES (which is "yes" by default but can be changed by
|
||||
dnl giving configure --disable-all-features option)
|
||||
AC_DEFUN([WX_ARG_SYS_WITH],
|
||||
[
|
||||
AC_MSG_CHECKING([for --with-$1])
|
||||
no_cache=0
|
||||
AC_ARG_WITH($1, [$2],
|
||||
[
|
||||
if test "$withval" = yes; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=yes'
|
||||
ac_cv_use_$1='$3=yes'
|
||||
elif test "$withval" = no; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=no'
|
||||
ac_cv_use_$1='$3=no'
|
||||
elif test "$withval" = sys; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=sys'
|
||||
ac_cv_use_$1='$3=sys'
|
||||
elif test "$withval" = builtin; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=builtin'
|
||||
ac_cv_use_$1='$3=builtin'
|
||||
else
|
||||
AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
|
||||
fi
|
||||
],
|
||||
[
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$wxUSE_ALL_FEATURES}"
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
eval "$AS_TR_SH(wx_cv_use_$1)"
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
@@ -341,106 +400,86 @@ AC_DEFUN([WX_ARG_SYS_WITH],
|
||||
fi
|
||||
])
|
||||
|
||||
dnl this macro simply checks for a command line argument
|
||||
dnl this macro checks for a command line argument and caches the result
|
||||
dnl usage: WX_ARG_WITH(option, helpmessage, variable-name, [withstring])
|
||||
AC_DEFUN([WX_ARG_WITH],
|
||||
[
|
||||
withstring=$4
|
||||
defaultval=$wxUSE_ALL_FEATURES
|
||||
if test -z "$defaultval"; then
|
||||
if test x"$withstring" = xwithout; then
|
||||
defaultval=yes
|
||||
else
|
||||
defaultval=no
|
||||
fi
|
||||
fi
|
||||
AC_MSG_CHECKING([for --${withstring:-with}-$1])
|
||||
no_cache=0
|
||||
AC_ARG_WITH($1, [$2],
|
||||
[
|
||||
if test "$withval" = yes; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=yes'
|
||||
ac_cv_use_$1='$3=yes'
|
||||
else
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=no'
|
||||
ac_cv_use_$1='$3=no'
|
||||
fi
|
||||
],
|
||||
[
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$defaultval}"
|
||||
])
|
||||
|
||||
eval "$AS_TR_SH(wx_cv_use_$1)"
|
||||
|
||||
if test x"$withstring" = xwithout; then
|
||||
if test $$3 = yes; then
|
||||
result=no
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
result=yes
|
||||
fi
|
||||
else
|
||||
result=$$3
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT($result)
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
dnl same as WX_ARG_WITH but makes it clear that the option is enabled by default
|
||||
AC_DEFUN([WX_ARG_WITHOUT], [WX_ARG_WITH($1, [$2], $3, without)])
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl like WX_ARG_WITH but uses AC_ARG_ENABLE instead of AC_ARG_WITH
|
||||
dnl usage: WX_ARG_ENABLE(option, helpmessage, var, [enablestring], [default])
|
||||
dnl usage: WX_ARG_ENABLE(option, helpmessage, variable-name, enablestring)
|
||||
dnl
|
||||
dnl enablestring can be omitted or a literal string "disable" and allows to
|
||||
dnl show "checking for --disable-foo" message when running configure instead of
|
||||
dnl the default "checking for --enable-foo" one whih is useful for the options
|
||||
dnl enabled by default
|
||||
dnl
|
||||
dnl the "default" argument can be omitted or contain the default value to use
|
||||
dnl for the option if it's unspecified
|
||||
dnl enablestring is a hack and allows to show "checking for --disable-foo"
|
||||
dnl message when running configure instead of the default "checking for
|
||||
dnl --enable-foo" one whih is useful for the options enabled by default
|
||||
AC_DEFUN([WX_ARG_ENABLE],
|
||||
[
|
||||
enablestring=$4
|
||||
defaultval=$5
|
||||
if test -z "$defaultval"; then
|
||||
if test x"$enablestring" = xdisable; then
|
||||
defaultval=yes
|
||||
else
|
||||
defaultval=no
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for --${enablestring:-enable}-$1])
|
||||
no_cache=0
|
||||
AC_ARG_ENABLE($1, [$2],
|
||||
[
|
||||
if test "$enableval" = yes; then
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=yes'
|
||||
ac_cv_use_$1='$3=yes'
|
||||
else
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=no'
|
||||
ac_cv_use_$1='$3=no'
|
||||
fi
|
||||
],
|
||||
[
|
||||
AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$defaultval}"
|
||||
])
|
||||
|
||||
eval "$AS_TR_SH(wx_cv_use_$1)"
|
||||
|
||||
if test x"$enablestring" = xdisable; then
|
||||
if test $$3 = no; then
|
||||
result=yes
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
result=no
|
||||
fi
|
||||
else
|
||||
result=$$3
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT($result)
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
dnl the same as WX_ARG_ENABLE but makes it more clear that the option is
|
||||
dnl enabled by default
|
||||
AC_DEFUN([WX_ARG_DISABLE], [WX_ARG_ENABLE($1, [$2], $3, disable)])
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl same as WX_ARG_ENABLE but defaults to wxUSE_ALL_FEATURES instead of "yes"
|
||||
AC_DEFUN([WX_ARG_FEATURE], [WX_ARG_ENABLE($1, [$2], $3,, $wxUSE_ALL_FEATURES)])
|
||||
|
||||
dnl Like WX_ARG_ENABLE but accepts a parameter.
|
||||
dnl
|
||||
@@ -453,21 +492,32 @@ dnl
|
||||
dnl --enable-foo wxUSE_FOO=yes
|
||||
dnl --disable-foo wxUSE_FOO=no
|
||||
dnl --enable-foo=bar wxUSE_FOO=bar
|
||||
dnl <not given> wxUSE_FOO=$DEFAULT_wxUSE_FOO
|
||||
dnl <not given> value from configarg.cache or wxUSE_FOO=no
|
||||
dnl
|
||||
AC_DEFUN([WX_ARG_ENABLE_PARAM],
|
||||
[
|
||||
enablestring=$4
|
||||
AC_MSG_CHECKING([for --${enablestring:-enable}-$1])
|
||||
no_cache=0
|
||||
AC_ARG_ENABLE($1, [$2],
|
||||
[
|
||||
wx_cv_use_$1="$3='$enableval'"
|
||||
],
|
||||
[
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
wx_cv_use_$1='$3='$DEFAULT_$3
|
||||
else
|
||||
no_cache=1
|
||||
wx_cv_use_$1="$3=no"
|
||||
fi
|
||||
])
|
||||
|
||||
eval "$wx_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $wx_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT([$$3])
|
||||
])
|
||||
@@ -707,3 +757,79 @@ if test "$enable_largefile" != no; then
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl Available from the GNU Autoconf Macro Archive at:
|
||||
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_const_cast.html
|
||||
dnl
|
||||
AC_DEFUN([AC_CXX_CONST_CAST],
|
||||
[AC_CACHE_CHECK(whether the compiler supports const_cast<>,
|
||||
ac_cv_cxx_const_cast,
|
||||
[AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_COMPILE(,[int x = 0;const int& y = x;int& z = const_cast<int&>(y);return z;],
|
||||
ac_cv_cxx_const_cast=yes, ac_cv_cxx_const_cast=no)
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
if test "$ac_cv_cxx_const_cast" = yes; then
|
||||
AC_DEFINE(HAVE_CONST_CAST,,[define if the compiler supports const_cast<>])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_reinterpret_cast.html
|
||||
AC_DEFUN([AC_CXX_REINTERPRET_CAST],
|
||||
[AC_CACHE_CHECK(whether the compiler supports reinterpret_cast<>,
|
||||
ac_cv_cxx_reinterpret_cast,
|
||||
[AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_COMPILE([#include <typeinfo>
|
||||
class Base { public : Base () {} virtual void f () = 0;};
|
||||
class Derived : public Base { public : Derived () {} virtual void f () {} };
|
||||
class Unrelated { public : Unrelated () {} };
|
||||
int g (Unrelated&) { return 0; }],[
|
||||
Derived d;Base& b=d;Unrelated& e=reinterpret_cast<Unrelated&>(b);return g(e);],
|
||||
ac_cv_cxx_reinterpret_cast=yes, ac_cv_cxx_reinterpret_cast=no)
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
if test "$ac_cv_cxx_reinterpret_cast" = yes; then
|
||||
AC_DEFINE(HAVE_REINTERPRET_CAST,,
|
||||
[define if the compiler supports reinterpret_cast<>])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl and http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_static_cast.html
|
||||
AC_DEFUN([AC_CXX_STATIC_CAST],
|
||||
[AC_CACHE_CHECK(whether the compiler supports static_cast<>,
|
||||
ac_cv_cxx_static_cast,
|
||||
[AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_COMPILE([#include <typeinfo>
|
||||
class Base { public : Base () {} virtual void f () = 0; };
|
||||
class Derived : public Base { public : Derived () {} virtual void f () {} };
|
||||
int g (Derived&) { return 0; }],[
|
||||
Derived d; Base& b = d; Derived& s = static_cast<Derived&> (b); return g (s);],
|
||||
ac_cv_cxx_static_cast=yes, ac_cv_cxx_static_cast=no)
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
if test "$ac_cv_cxx_static_cast" = yes; then
|
||||
AC_DEFINE(HAVE_STATIC_CAST,, [define if the compiler supports static_cast<>])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl http://autoconf-archive.cryp.to/ac_cxx_dynamic_cast.html
|
||||
AC_DEFUN([AC_CXX_DYNAMIC_CAST],
|
||||
[AC_CACHE_CHECK(whether the compiler supports dynamic_cast<>,
|
||||
ac_cv_cxx_dynamic_cast,
|
||||
[AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_COMPILE([#include <typeinfo>
|
||||
class Base { public : Base () {} virtual void f () = 0;};
|
||||
class Derived : public Base { public : Derived () {} virtual void f () {} };],[
|
||||
Derived d; Base& b=d; return dynamic_cast<Derived*>(&b) ? 0 : 1;],
|
||||
ac_cv_cxx_dynamic_cast=yes, ac_cv_cxx_dynamic_cast=no)
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
if test "$ac_cv_cxx_dynamic_cast" = yes; then
|
||||
AC_DEFINE(HAVE_DYNAMIC_CAST,,[define if the compiler supports dynamic_cast<>])
|
||||
fi
|
||||
])
|
||||
|
||||
|
14
aclocal.m4
vendored
@@ -1,7 +1,7 @@
|
||||
# generated automatically by aclocal 1.10.3 -*- Autoconf -*-
|
||||
# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
|
||||
|
||||
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||
# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
|
||||
# 2005 Free Software Foundation, Inc.
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -11,13 +11,6 @@
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
m4_include([build/aclocal/ac_raf_func_which_getservbyname_r.m4])
|
||||
m4_include([build/aclocal/atomic_builtins.m4])
|
||||
m4_include([build/aclocal/ax_cflags_gcc_option.m4])
|
||||
m4_include([build/aclocal/ax_func_which_gethostbyname_r.m4])
|
||||
m4_include([build/aclocal/ax_gcc_option.m4])
|
||||
m4_include([build/aclocal/ax_gxx_version.m4])
|
||||
m4_include([build/aclocal/bakefile-dllar.m4])
|
||||
m4_include([build/aclocal/bakefile-lang.m4])
|
||||
m4_include([build/aclocal/bakefile.m4])
|
||||
m4_include([build/aclocal/cppunit.m4])
|
||||
@@ -25,5 +18,6 @@ m4_include([build/aclocal/gtk-2.0.m4])
|
||||
m4_include([build/aclocal/gtk.m4])
|
||||
m4_include([build/aclocal/pkg.m4])
|
||||
m4_include([build/aclocal/sdl.m4])
|
||||
m4_include([build/aclocal/visibility.m4])
|
||||
m4_include([build/aclocal/ax_func_which_gethostbyname_r.m4])
|
||||
m4_include([build/aclocal/ac_raf_func_which_getservbyname_r.m4])
|
||||
m4_include([acinclude.m4])
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const addbookm_xpm[] = {
|
||||
static char *addbookm_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 3 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const back_xpm[] = {
|
||||
static char * back_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const cdrom_xpm[] = {
|
||||
static char *cdrom_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 36 1",
|
||||
"= c #9BACC2",
|
||||
|
@@ -1,16 +0,0 @@
|
||||
/* XPM */
|
||||
static const char * const close_xpm[] = {
|
||||
"12 10 2 1",
|
||||
" c None",
|
||||
"X c black",
|
||||
" ",
|
||||
" XX XX ",
|
||||
" XX XX ",
|
||||
" XXXX ",
|
||||
" XX ",
|
||||
" XXXX ",
|
||||
" XX XX ",
|
||||
" XX XX ",
|
||||
" ",
|
||||
" "};
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const copy_xpm[] = {
|
||||
static char *copy_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 23 1",
|
||||
"o c #97C4E7",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const cross_xpm[] = {
|
||||
static char *cross_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"10 10 2 1",
|
||||
" c Gray0",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const cut_xpm[] = {
|
||||
static char *cut_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 25 1",
|
||||
"6 c #D8BDC0",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const deffile_xpm[] = {
|
||||
static char *deffile_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 16 32 1",
|
||||
"= c #97C4E7",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const delbookm_xpm[] = {
|
||||
static char *delbookm_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 3 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const delete_xpm[] = {
|
||||
static char *delete_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 21 1",
|
||||
"2 c #A5AEBD",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const dir_up_xpm[] = {
|
||||
static char *dir_up_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 31 1",
|
||||
"6 c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const down_xpm[] = {
|
||||
static char * down_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const exefile_xpm[] = {
|
||||
static char *exefile_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 16 51 1",
|
||||
"% c #E8E8EC",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const fileopen_xpm[] = {
|
||||
static char *fileopen_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 36 1",
|
||||
"6 c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const filesave_xpm[] = {
|
||||
static char *filesave_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 21 1",
|
||||
"O c #FFFFFF",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const filesaveas_xpm[] = {
|
||||
static char *filesaveas_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 23 1",
|
||||
"X c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const find_xpm[] = {
|
||||
static char *find_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 41 1",
|
||||
"y c #A06959",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const findrepl_xpm[] = {
|
||||
static char *findrepl_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 42 1",
|
||||
"y c #A06959",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const floppy_xpm[] = {
|
||||
static char *floppy_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 18 1",
|
||||
"& c #E3E4E6",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const folder_xpm[] = {
|
||||
static char *folder_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 22 1",
|
||||
"> c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const folder_open_xpm[] = {
|
||||
static char *folder_open_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 31 1",
|
||||
"6 c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const forward_xpm[] = {
|
||||
static char * forward_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const error_xpm[] = {
|
||||
static char *error_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 4 1",
|
||||
" c None",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const info_xpm[] = {
|
||||
static char *info_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 9 1",
|
||||
"$ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const question_xpm[] = {
|
||||
static char *question_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 21 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const warning_xpm[] = {
|
||||
static char *warning_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 9 1",
|
||||
"@ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const harddisk_xpm[] = {
|
||||
static char *harddisk_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 39 1",
|
||||
"7 c #E3E4E6",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const helpicon_xpm[] = {
|
||||
static char *helpicon_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 6 1",
|
||||
" c Gray0",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const home_xpm[] = {
|
||||
static char *home_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 3 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const htmbook_xpm[] = {
|
||||
static char * htmbook_xpm[] = {
|
||||
"16 16 6 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const htmfoldr_xpm[] = {
|
||||
static char * htmfoldr_xpm[] = {
|
||||
"16 16 6 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const htmoptns_xpm[] = {
|
||||
static char * htmoptns_xpm[] = {
|
||||
"16 15 2 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const htmpage_xpm[] = {
|
||||
static char * htmpage_xpm[] = {
|
||||
"16 16 4 1",
|
||||
" c None",
|
||||
". c #808080",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const htmsidep_xpm[] = {
|
||||
static char *htmsidep_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 6 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const listview_xpm[] = {
|
||||
static char *listview_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 4 1",
|
||||
" c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const missimg_xpm[] = {
|
||||
static char *missimg_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 5 1",
|
||||
"X c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const error_xpm[] = {
|
||||
static char *error_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 4 1",
|
||||
" c None",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const info_xpm[] = {
|
||||
static char *info_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 9 1",
|
||||
"$ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const question_xpm[] = {
|
||||
static char *question_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 21 1",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const warning_xpm[] = {
|
||||
static char *warning_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"48 48 9 1",
|
||||
"@ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const new_xpm[] = {
|
||||
static char *new_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 29 1",
|
||||
"* c #97C4E7",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const new_dir_xpm[] = {
|
||||
static char *new_dir_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 22 1",
|
||||
"X c Black",
|
||||
|
@@ -1,2 +0,0 @@
|
||||
The files in this directory are the sources which were converted by
|
||||
misc/scripts/png2c.py and included in src/osx/carbon/renderer.cpp.
|
Before Width: | Height: | Size: 400 B |
Before Width: | Height: | Size: 421 B |
Before Width: | Height: | Size: 458 B |
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const paste_xpm[] = {
|
||||
static char *paste_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 25 1",
|
||||
"< c #FEECE4",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const print_xpm[] = {
|
||||
static char *print_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 39 1",
|
||||
"< c #E3E4E6",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const quit_xpm[] = {
|
||||
static char *quit_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 69 1",
|
||||
"@ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const redo_xpm[] = {
|
||||
static char *redo_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 37 1",
|
||||
"4 c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const removable_xpm[] = {
|
||||
static char *removable_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 23 1",
|
||||
"@ c #C3C3C4",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const repview_xpm[] = {
|
||||
static char *repview_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 3 1",
|
||||
" c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const tick_xpm[] = {
|
||||
static char *tick_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"10 10 2 1",
|
||||
". c Gray0",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const tipicon_xpm[] = {
|
||||
static char *tipicon_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 9 1",
|
||||
"$ c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const toparent_xpm[] = {
|
||||
static char * toparent_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const undo_xpm[] = {
|
||||
static char *undo_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 37 1",
|
||||
"4 c #9BACC2",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* XPM */
|
||||
static const char *const up_xpm[] = {
|
||||
static char * up_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
|
BIN
art/wxwin.ico
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 578 B After Width: | Height: | Size: 1.2 KiB |
@@ -1,161 +1,25 @@
|
||||
/* XPM */
|
||||
static const char *const wxwin16x16_xpm[] = {
|
||||
"16 16 142 2",
|
||||
static char *wxwin16x16_xpm[] = {
|
||||
"16 16 6 1",
|
||||
" c None",
|
||||
". c #7171C0",
|
||||
"+ c #7D7DC7",
|
||||
"@ c #8181CE",
|
||||
"# c #7979CE",
|
||||
"$ c #7171CE",
|
||||
"% c #6868CD",
|
||||
"& c #5050C0",
|
||||
"* c #7C7CCB",
|
||||
"= c #D3D3FC",
|
||||
"- c #C0C0FF",
|
||||
"; c #B1B1FF",
|
||||
"> c #A4A4FF",
|
||||
", c #9696FF",
|
||||
"' c #6B6BE3",
|
||||
") c #3E3EC0",
|
||||
"! c #7B7BD3",
|
||||
"~ c #CFCFFF",
|
||||
"{ c #A7A7FF",
|
||||
"] c #8989FF",
|
||||
"^ c #7B7BFF",
|
||||
"/ c #5E5EEB",
|
||||
"( c #3333BF",
|
||||
"_ c #6969D3",
|
||||
": c #BEBEFF",
|
||||
"< c #8E8EFF",
|
||||
"[ c #5E5EFF",
|
||||
"} c #4C4CFD",
|
||||
"| c #6464C6",
|
||||
"1 c #A4A478",
|
||||
"2 c #BFBF63",
|
||||
"3 c #BFBF5C",
|
||||
"4 c #BFBF56",
|
||||
"5 c #BFBF51",
|
||||
"6 c #C17474",
|
||||
"7 c #BF7070",
|
||||
"8 c #BF6969",
|
||||
"9 c #BF6363",
|
||||
"0 c #544AC7",
|
||||
"a c #A8A8FF",
|
||||
"b c #7070FF",
|
||||
"c c #5050FF",
|
||||
"d c #3F3FFF",
|
||||
"e c #8C8CBA",
|
||||
"f c #F6F6C8",
|
||||
"g c #FBFBBB",
|
||||
"h c #FBFBAE",
|
||||
"i c #FBFBA1",
|
||||
"j c #F9F993",
|
||||
"k c #D7D760",
|
||||
"l c #D28D8D",
|
||||
"m c #EEB8B8",
|
||||
"n c #EFAAAA",
|
||||
"o c #EF9E9E",
|
||||
"p c #7C5ABC",
|
||||
"q c #8D8DFF",
|
||||
"r c #4747FF",
|
||||
"s c #3535FF",
|
||||
"t c #2B2BFF",
|
||||
"u c #AAAAA7",
|
||||
"v c #FFFFD2",
|
||||
"w c #FFFFA9",
|
||||
"x c #FFFF9A",
|
||||
"y c #FFFF8D",
|
||||
"z c #FFFF80",
|
||||
"A c #E4E45B",
|
||||
"B c #E39F9F",
|
||||
"C c #FFCCCC",
|
||||
"D c #FFA9A9",
|
||||
"E c #FF9C9C",
|
||||
"F c #B469A0",
|
||||
"G c #3E3DE7",
|
||||
"H c #2828EF",
|
||||
"I c #1E1EEF",
|
||||
"J c #1515EF",
|
||||
"K c #A5A595",
|
||||
"L c #FFFFC2",
|
||||
"M c #FFFF8F",
|
||||
"N c #F7F765",
|
||||
"O c #F2F251",
|
||||
"P c #DBDB3A",
|
||||
"Q c #E48E8E",
|
||||
"R c #FFBABA",
|
||||
"S c #FF8E8E",
|
||||
"T c #FF8181",
|
||||
"U c #FF6868",
|
||||
"V c #E54D60",
|
||||
"W c #AC2E56",
|
||||
"X c #0B0BBF",
|
||||
"Y c #0606BF",
|
||||
"Z c #C8C85D",
|
||||
"` c #FEFEB1",
|
||||
" . c #FEFE74",
|
||||
".. c #F4F456",
|
||||
"+. c #EFEF42",
|
||||
"@. c #EFEF38",
|
||||
"#. c #D7D725",
|
||||
"$. c #E47676",
|
||||
"%. c #FFA8A8",
|
||||
"&. c #FF7373",
|
||||
"*. c #FF5555",
|
||||
"=. c #FF4343",
|
||||
"-. c #FF3939",
|
||||
";. c #DA2323",
|
||||
">. c #CFCF3C",
|
||||
",. c #F6F694",
|
||||
"'. c #F0F047",
|
||||
"). c #EFEF2E",
|
||||
"!. c #EFEF24",
|
||||
"~. c #D7D715",
|
||||
"{. c #E45757",
|
||||
"]. c #FF8888",
|
||||
"^. c #FF4646",
|
||||
"/. c #FF2F2F",
|
||||
"(. c #FF2525",
|
||||
"_. c #DA1414",
|
||||
":. c #C3C328",
|
||||
"<. c #EBEB55",
|
||||
"[. c #ECEC2F",
|
||||
"}. c #ECEC24",
|
||||
"|. c #ECEC1A",
|
||||
"1. c #EBEB10",
|
||||
"2. c #CDCD06",
|
||||
"3. c #DD3A3A",
|
||||
"4. c #FF6060",
|
||||
"5. c #FF1B1B",
|
||||
"6. c #FE1111",
|
||||
"7. c #D10707",
|
||||
"8. c #B8B819",
|
||||
"9. c #B7B715",
|
||||
"0. c #B7B710",
|
||||
"a. c #B7B70B",
|
||||
"b. c #B7B706",
|
||||
"c. c #B7B701",
|
||||
"d. c #B7B700",
|
||||
"e. c #BF1A1A",
|
||||
"f. c #CC1919",
|
||||
"g. c #CE1414",
|
||||
"h. c #CE0E0E",
|
||||
"i. c #CE0808",
|
||||
"j. c #C90202",
|
||||
"k. c #C00000",
|
||||
". c #000000",
|
||||
"X c #000084",
|
||||
"o c #FFFFFF",
|
||||
"O c #FFFF00",
|
||||
"+ c #FF0000",
|
||||
" ",
|
||||
" ",
|
||||
" . + @ # $ % & ",
|
||||
" * = - ; > , ' ) ",
|
||||
" ! ~ { , ] ^ / ( ",
|
||||
" _ : < ^ [ } | 1 2 3 4 5 ",
|
||||
"6 7 8 9 0 a b c d e f g h i j k ",
|
||||
"l m n o p q r s t u v w x y z A ",
|
||||
"B C D E F G H I J K L M z N O P ",
|
||||
"Q R S T U V W X Y Z ` ...+.@.#.",
|
||||
"$.%.&.*.=.-.;. >.,.'.@.).!.~.",
|
||||
"{.].^.-./.(._. :.<.[.}.|.1.2.",
|
||||
"3.4./.(.5.6.7. 8.9.0.a.b.c.d.",
|
||||
"e.f.g.h.i.j.k. ",
|
||||
" ....... ",
|
||||
" .XXXXX. ",
|
||||
" .oXXXX. ",
|
||||
" .oXXX.......",
|
||||
".....oXXX.OOOOO.",
|
||||
".+++.XXXX.oOOOO.",
|
||||
".o++......oOOOO.",
|
||||
".o++++. .oOOOO.",
|
||||
".o++++. .OOOOO.",
|
||||
".+++++. .......",
|
||||
"....... ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.2 KiB |
@@ -1,441 +1,40 @@
|
||||
/* XPM */
|
||||
static const char *const wxwin32x32_xpm[] = {
|
||||
"32 32 407 2",
|
||||
static char *wxwin32x32_xpm[] = {
|
||||
"32 32 6 1",
|
||||
" c None",
|
||||
". c #7373C1",
|
||||
"+ c #6E6EBF",
|
||||
"@ c #6B6BBF",
|
||||
"# c #6868BF",
|
||||
"$ c #6464BF",
|
||||
"% c #6161BF",
|
||||
"& c #5E5EBF",
|
||||
"* c #5A5ABF",
|
||||
"= c #5959C0",
|
||||
"- c #7171C0",
|
||||
"; c #7272C1",
|
||||
"> c #8686CE",
|
||||
", c #8686D0",
|
||||
"' c #8282D0",
|
||||
") c #7D7DD0",
|
||||
"! c #7979D0",
|
||||
"~ c #7575D0",
|
||||
"{ c #7171D0",
|
||||
"] c #6D6DD0",
|
||||
"^ c #6666CD",
|
||||
"/ c #5151C1",
|
||||
"( c #4C4CBF",
|
||||
"_ c #7171C1",
|
||||
": c #7272C2",
|
||||
"< c #C1C1F2",
|
||||
"[ c #D7D7FF",
|
||||
"} c #C9C9FF",
|
||||
"| c #C2C2FF",
|
||||
"1 c #BBBBFF",
|
||||
"2 c #B4B4FF",
|
||||
"3 c #AEAEFF",
|
||||
"4 c #A7A7FF",
|
||||
"5 c #A0A0FF",
|
||||
"6 c #9A9AFF",
|
||||
"7 c #8484F2",
|
||||
"8 c #4949C2",
|
||||
"9 c #4444C1",
|
||||
"0 c #6A6AC0",
|
||||
"a c #8989D4",
|
||||
"b c #DADAFF",
|
||||
"c c #C0C0FF",
|
||||
"d c #9393FF",
|
||||
"e c #8C8CFF",
|
||||
"f c #8686FF",
|
||||
"g c #5454D4",
|
||||
"h c #3E3EC0",
|
||||
"i c #6363BF",
|
||||
"j c #8686D8",
|
||||
"k c #D4D4FF",
|
||||
"l c #D2D2FF",
|
||||
"m c #7F7FFF",
|
||||
"n c #7878FF",
|
||||
"o c #4F4FD7",
|
||||
"p c #3737BF",
|
||||
"q c #5C5CBF",
|
||||
"r c #7D7DD8",
|
||||
"s c #CCCCFF",
|
||||
"t c #CACAFF",
|
||||
"u c #A8A8FF",
|
||||
"v c #7070FF",
|
||||
"w c #6B6BFF",
|
||||
"x c #4545D7",
|
||||
"y c #3030BF",
|
||||
"z c #5555BF",
|
||||
"A c #7373D8",
|
||||
"B c #C3C3FF",
|
||||
"C c #9C9CFF",
|
||||
"D c #8D8DFF",
|
||||
"E c #7777FF",
|
||||
"F c #6262FF",
|
||||
"G c #5252FF",
|
||||
"H c #4B4BFF",
|
||||
"I c #4848FF",
|
||||
"J c #3232D7",
|
||||
"K c #2626BF",
|
||||
"L c #4E4EBF",
|
||||
"M c #6A6AD8",
|
||||
"N c #B9B9FF",
|
||||
"O c #9090FF",
|
||||
"P c #6F6FFF",
|
||||
"Q c #5555FF",
|
||||
"R c #4646FF",
|
||||
"S c #4B4BF5",
|
||||
"T c #8282B4",
|
||||
"U c #93938E",
|
||||
"V c #B1B173",
|
||||
"W c #BFBF68",
|
||||
"X c #BFBF65",
|
||||
"Y c #BFBF62",
|
||||
"Z c #BFBF5E",
|
||||
"` c #BFBF5B",
|
||||
" . c #BFBF57",
|
||||
".. c #BFBF54",
|
||||
"+. c #BFBF51",
|
||||
"@. c #5858D8",
|
||||
"#. c #B2B2FF",
|
||||
"$. c #B1B1FF",
|
||||
"%. c #8484FF",
|
||||
"&. c #7272FF",
|
||||
"*. c #6767FF",
|
||||
"=. c #4F4FFF",
|
||||
"-. c #4747FF",
|
||||
";. c #4242FF",
|
||||
">. c #4141FA",
|
||||
",. c #ABAB8A",
|
||||
"'. c #E4E4AA",
|
||||
"). c #F5F5C3",
|
||||
"!. c #F6F6BE",
|
||||
"~. c #F6F6B7",
|
||||
"{. c #F6F6B1",
|
||||
"]. c #F6F6AB",
|
||||
"^. c #F6F6A5",
|
||||
"/. c #F6F69E",
|
||||
"(. c #F6F698",
|
||||
"_. c #F1F18C",
|
||||
":. c #D0D05F",
|
||||
"<. c #BFBF48",
|
||||
"[. c #C17474",
|
||||
"}. c #C07171",
|
||||
"|. c #BF6E6E",
|
||||
"1. c #BF6B6B",
|
||||
"2. c #BF6868",
|
||||
"3. c #BF6464",
|
||||
"4. c #BF6161",
|
||||
"5. c #7C498C",
|
||||
"6. c #4242D8",
|
||||
"7. c #A4A4FF",
|
||||
"8. c #5959FF",
|
||||
"9. c #3D3DFF",
|
||||
"0. c #3838FF",
|
||||
"a. c #6666CA",
|
||||
"b. c #DCDC98",
|
||||
"c. c #FFFFDD",
|
||||
"d. c #FFFFD7",
|
||||
"e. c #FFFFC0",
|
||||
"f. c #FFFFB8",
|
||||
"g. c #FFFFB2",
|
||||
"h. c #FFFFAB",
|
||||
"i. c #FFFFA4",
|
||||
"j. c #FFFF9D",
|
||||
"k. c #FFFF97",
|
||||
"l. c #FFFF90",
|
||||
"m. c #FBFB85",
|
||||
"n. c #C2C244",
|
||||
"o. c #C37676",
|
||||
"p. c #DA9B9B",
|
||||
"q. c #DF9F9F",
|
||||
"r. c #DF9A9A",
|
||||
"s. c #DF9494",
|
||||
"t. c #DF8F8F",
|
||||
"u. c #DF8A8A",
|
||||
"v. c #B47094",
|
||||
"w. c #3B3BD8",
|
||||
"x. c #9292FF",
|
||||
"y. c #5656FF",
|
||||
"z. c #3333FF",
|
||||
"A. c #2E2EFF",
|
||||
"B. c #7070B6",
|
||||
"C. c #E7E79F",
|
||||
"D. c #FFFFDE",
|
||||
"E. c #FFFFCF",
|
||||
"F. c #FFFFB5",
|
||||
"G. c #FFFF9E",
|
||||
"H. c #FFFF8A",
|
||||
"I. c #FFFF83",
|
||||
"J. c #FFFF7C",
|
||||
"K. c #C8C843",
|
||||
"L. c #C06D6D",
|
||||
"M. c #F1BEBE",
|
||||
"N. c #FFDBDB",
|
||||
"O. c #FFCBCB",
|
||||
"P. c #FFC0C0",
|
||||
"Q. c #FFBABA",
|
||||
"R. c #FFB3B3",
|
||||
"S. c #FFACAC",
|
||||
"T. c #CE89AC",
|
||||
"U. c #3333D7",
|
||||
"V. c #8787FF",
|
||||
"W. c #4D4DFF",
|
||||
"X. c #2929FF",
|
||||
"Y. c #2424FF",
|
||||
"Z. c #6B6BB3",
|
||||
"`. c #E7E795",
|
||||
" + c #FFFFC6",
|
||||
".+ c #FFFFA8",
|
||||
"++ c #FFFF76",
|
||||
"@+ c #FFFF6F",
|
||||
"#+ c #C8C83C",
|
||||
"$+ c #C77474",
|
||||
"%+ c #FFD3D3",
|
||||
"&+ c #FFDEDE",
|
||||
"*+ c #FFC4C4",
|
||||
"=+ c #FFA6A6",
|
||||
"-+ c #FF9F9F",
|
||||
";+ c #F3929A",
|
||||
">+ c #2F29C3",
|
||||
",+ c #4C4CFB",
|
||||
"'+ c #6868FF",
|
||||
")+ c #3939FF",
|
||||
"!+ c #1F1FFF",
|
||||
"~+ c #1A1AFF",
|
||||
"{+ c #6666B0",
|
||||
"]+ c #E7E78A",
|
||||
"^+ c #FFFFD0",
|
||||
"/+ c #FFFFBD",
|
||||
"(+ c #FFFF9B",
|
||||
"_+ c #FFFF91",
|
||||
":+ c #FAFA6E",
|
||||
"<+ c #F5F55F",
|
||||
"[+ c #F5F558",
|
||||
"}+ c #F7F756",
|
||||
"|+ c #C7C732",
|
||||
"1+ c #C86E6E",
|
||||
"2+ c #FFC9C9",
|
||||
"3+ c #FFD7D7",
|
||||
"4+ c #FFB8B8",
|
||||
"5+ c #FF9898",
|
||||
"6+ c #FF9292",
|
||||
"7+ c #FF8B8B",
|
||||
"8+ c #B16098",
|
||||
"9+ c #2420C6",
|
||||
"0+ c #2222DD",
|
||||
"a+ c #1F1FDF",
|
||||
"b+ c #1B1BDF",
|
||||
"c+ c #1818DF",
|
||||
"d+ c #1414DF",
|
||||
"e+ c #1010DF",
|
||||
"f+ c #0C0CDF",
|
||||
"g+ c #5F5F9C",
|
||||
"h+ c #E7E77F",
|
||||
"i+ c #FFFFC9",
|
||||
"j+ c #FFFFB4",
|
||||
"k+ c #FFFF8E",
|
||||
"l+ c #FFFF7D",
|
||||
"m+ c #FEFE75",
|
||||
"n+ c #F4F45D",
|
||||
"o+ c #EFEF4F",
|
||||
"p+ c #EFEF4A",
|
||||
"q+ c #EFEF44",
|
||||
"r+ c #EFEF3F",
|
||||
"s+ c #BFBF22",
|
||||
"t+ c #C86666",
|
||||
"u+ c #FFBFBF",
|
||||
"v+ c #FFD0D0",
|
||||
"w+ c #FFADAD",
|
||||
"x+ c #FF8484",
|
||||
"y+ c #FF7E7E",
|
||||
"z+ c #FF7373",
|
||||
"A+ c #E75F70",
|
||||
"B+ c #B0457F",
|
||||
"C+ c #9A3776",
|
||||
"D+ c #5F1D7C",
|
||||
"E+ c #0C0CBF",
|
||||
"F+ c #0909BF",
|
||||
"G+ c #0707BF",
|
||||
"H+ c #0404BF",
|
||||
"I+ c #878766",
|
||||
"J+ c #E6E674",
|
||||
"K+ c #FFFFC2",
|
||||
"L+ c #FFFF82",
|
||||
"M+ c #FEFE6E",
|
||||
"N+ c #F3F355",
|
||||
"O+ c #EFEF45",
|
||||
"P+ c #EFEF40",
|
||||
"Q+ c #EFEF3B",
|
||||
"R+ c #EFEF36",
|
||||
"S+ c #BFBF1C",
|
||||
"T+ c #C85F5F",
|
||||
"U+ c #FFB4B4",
|
||||
"V+ c #FFA2A2",
|
||||
"W+ c #FF7575",
|
||||
"X+ c #FF5E5E",
|
||||
"Y+ c #FF5050",
|
||||
"Z+ c #FF4A4A",
|
||||
"`+ c #FF4545",
|
||||
" @ c #E73535",
|
||||
".@ c #BF2121",
|
||||
"+@ c #B7B733",
|
||||
"@@ c #DCDC55",
|
||||
"#@ c #FDFDB7",
|
||||
"$@ c #FFFFA2",
|
||||
"%@ c #FFFF75",
|
||||
"&@ c #FCFC64",
|
||||
"*@ c #F2F24E",
|
||||
"=@ c #EFEF31",
|
||||
"-@ c #EFEF2C",
|
||||
";@ c #BFBF16",
|
||||
">@ c #C85656",
|
||||
",@ c #FFAAAA",
|
||||
"'@ c #FFC2C2",
|
||||
")@ c #FF9797",
|
||||
"!@ c #FF7777",
|
||||
"~@ c #FF6E6E",
|
||||
"{@ c #FF5454",
|
||||
"]@ c #FF4040",
|
||||
"^@ c #FF3B3B",
|
||||
"/@ c #E72C2C",
|
||||
"(@ c #BF1919",
|
||||
"_@ c #B7B72E",
|
||||
":@ c #DADA48",
|
||||
"<@ c #F7F7A6",
|
||||
"[@ c #F6F689",
|
||||
"}@ c #F2F254",
|
||||
"|@ c #EFEF27",
|
||||
"1@ c #EFEF22",
|
||||
"2@ c #BFBF10",
|
||||
"3@ c #C84040",
|
||||
"4@ c #FF9A9A",
|
||||
"5@ c #FFBBBB",
|
||||
"6@ c #FF7171",
|
||||
"7@ c #FF6666",
|
||||
"8@ c #FF4E4E",
|
||||
"9@ c #FF4646",
|
||||
"0@ c #FF4141",
|
||||
"a@ c #FF3C3C",
|
||||
"b@ c #FF3737",
|
||||
"c@ c #FF3232",
|
||||
"d@ c #E72424",
|
||||
"e@ c #BF1414",
|
||||
"f@ c #B7B729",
|
||||
"g@ c #DADA3F",
|
||||
"h@ c #F7F7A1",
|
||||
"i@ c #F4F480",
|
||||
"j@ c #F0F047",
|
||||
"k@ c #EFEF1D",
|
||||
"l@ c #EFEF18",
|
||||
"m@ c #BFBF0B",
|
||||
"n@ c #C83636",
|
||||
"o@ c #FFABAB",
|
||||
"p@ c #FF7676",
|
||||
"q@ c #FF2D2D",
|
||||
"r@ c #FF2828",
|
||||
"s@ c #E71C1C",
|
||||
"t@ c #BF0F0F",
|
||||
"u@ c #B7B724",
|
||||
"v@ c #D1D132",
|
||||
"w@ c #F4F478",
|
||||
"x@ c #EFEF13",
|
||||
"y@ c #ECEC0E",
|
||||
"z@ c #BABA05",
|
||||
"A@ c #C83030",
|
||||
"B@ c #FF6161",
|
||||
"C@ c #FF2323",
|
||||
"D@ c #FF1E1E",
|
||||
"E@ c #E71414",
|
||||
"F@ c #BF0A0A",
|
||||
"G@ c #B8B820",
|
||||
"H@ c #B9B91F",
|
||||
"I@ c #DADA2C",
|
||||
"J@ c #E9E931",
|
||||
"K@ c #EAEA2A",
|
||||
"L@ c #EAEA25",
|
||||
"M@ c #EAEA20",
|
||||
"N@ c #EAEA1C",
|
||||
"O@ c #EAEA17",
|
||||
"P@ c #EAEA12",
|
||||
"Q@ c #EAEA0D",
|
||||
"R@ c #E5E508",
|
||||
"S@ c #C7C703",
|
||||
"T@ c #B7B701",
|
||||
"U@ c #C52929",
|
||||
"V@ c #FF5858",
|
||||
"W@ c #FF1919",
|
||||
"X@ c #FF1414",
|
||||
"Y@ c #E30C0C",
|
||||
"Z@ c #BF0606",
|
||||
"`@ c #B8B819",
|
||||
" # c #B7B717",
|
||||
".# c #B7B714",
|
||||
"+# c #B7B711",
|
||||
"@# c #B7B70F",
|
||||
"## c #B7B70C",
|
||||
"$# c #B7B70A",
|
||||
"%# c #B7B707",
|
||||
"&# c #B7B705",
|
||||
"*# c #B7B702",
|
||||
"=# c #B7B700",
|
||||
"-# c #BF2020",
|
||||
";# c #E63131",
|
||||
"># c #FF5555",
|
||||
",# c #FF3A3A",
|
||||
"'# c #FF0F0F",
|
||||
")# c #FA0A0A",
|
||||
"!# c #C90303",
|
||||
"~# c #C00202",
|
||||
"{# c #C01C1C",
|
||||
"]# c #CB1B1B",
|
||||
"^# c #D01A1A",
|
||||
"/# c #D01616",
|
||||
"(# c #D01313",
|
||||
"_# c #D01010",
|
||||
":# c #D00D0D",
|
||||
"<# c #D00A0A",
|
||||
"[# c #D00707",
|
||||
"}# c #CF0303",
|
||||
"|# c #C30101",
|
||||
"1# c #C00000",
|
||||
"2# c #C21414",
|
||||
"3# c #BF1111",
|
||||
"4# c #BF0E0E",
|
||||
"5# c #BF0C0C",
|
||||
"6# c #BF0909",
|
||||
"7# c #BF0707",
|
||||
"8# c #BF0404",
|
||||
"9# c #BF0202",
|
||||
"0# c #C50000",
|
||||
". c #000000",
|
||||
"X c #000084",
|
||||
"o c #FFFFFF",
|
||||
"O c #FFFF00",
|
||||
"+ c #FF0000",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . + @ # $ % & * = ",
|
||||
" - ; > , ' ) ! ~ { ] ^ / ( ",
|
||||
" _ : < [ } | 1 2 3 4 5 6 7 8 9 ",
|
||||
" 0 a b b c 2 3 4 5 6 d e f g h ",
|
||||
" i j k l 2 4 5 6 d e f m n o p ",
|
||||
" q r s t u 6 d e f m n v w x y ",
|
||||
" z A B | C D f m E F G H I J K ",
|
||||
" L M 1 N O m n P Q H R S T U V W X Y Z ` ...+. ",
|
||||
" p @.#.$.%.&.*.=.-.;.>.,.'.).!.~.{.].^./.(._.:.<.",
|
||||
" [.}.|.1.2.3.4.5.6.6 7.&.8.I ;.9.0.a.b.c.d.e.f.g.h.i.j.k.l.m.n.",
|
||||
"}.o.p.q.r.s.t.u.v.w.O x.y.;.9.0.z.A.B.C.D.E.F.h.i.G.k.l.H.I.J.K.",
|
||||
"L.M.N.O.P.Q.R.S.T.U.V.e W.0.z.A.X.Y.Z.`.d. +.+G.k.l.H.I.J.++@+#+",
|
||||
"$+%+&+*+R.S.=+-+;+>+,+'+)+A.X.Y.!+~+{+]+^+/+(+_+H.I.J.:+<+[+}+|+",
|
||||
"1+2+3+4+=+-+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+I.l+m+n+o+p+q+r+s+",
|
||||
"t+u+v+w+5+6+7+x+y+z+A+B+C+D+E+F+G+H+I+J+K+h.L+++M+N+p+O+P+Q+R+S+",
|
||||
"T+U+2+V+7+x+y+W+X+Y+Z+`+ @.@ +@@@#@$@%@&@*@O+P+Q+R+=@-@;@",
|
||||
">@,@'@)@y+!@~@{@Z+`+]@^@/@(@ _@:@<@[@}@O+P+Q+R+=@-@|@1@2@",
|
||||
"3@4@5@7+6@7@8@9@0@a@b@c@d@e@ f@g@h@i@j@Q+R+=@-@|@1@k@l@m@",
|
||||
"n@y+o@p@{@9@0@a@b@c@q@r@s@t@ u@v@i@w@Q+=@-@|@1@k@l@x@y@z@",
|
||||
"A@p@-+B@0@a@b@c@q@r@C@D@E@F@ G@H@I@J@K@L@M@N@O@P@Q@R@S@T@",
|
||||
"U@7@4@V@b@c@q@r@C@D@W@X@Y@Z@ `@ #.#+#@###$#%#&#*#=#=# ",
|
||||
"-#;#>#,#q@r@C@D@W@X@'#)#!#~# ",
|
||||
"{#(@]#^#/#(#_#:#<#[#}#|#1# ",
|
||||
" 2#3#4#5#6#7#8#9#1#0# ",
|
||||
" ",
|
||||
" .............. ",
|
||||
" .XXXXXXXXXXXX. ",
|
||||
" .XXXXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXX..............",
|
||||
" .XooXXXXXX.OOOOOOOOOOOO.",
|
||||
".........XooXXXXXX.OOOOOOOOOOOO.",
|
||||
".+++++++.XooXXXXXX.OooOOOOOOOOO.",
|
||||
".+++++++.XooXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++.XXXXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++.XXXXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++...........OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OOOOOOOOOOOO.",
|
||||
".+oo+++++++++. .OOOOOOOOOOOO.",
|
||||
".++++++++++++. ..............",
|
||||
".++++++++++++. ",
|
||||
".............. ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
|
638
autoconf_inc.m4
@@ -1,2 +1,2 @@
|
||||
#!/bin/sh
|
||||
autoconf -B build/autoconf_prepend-include
|
||||
autoconf
|
||||
|
1
build/.cvsignore
Normal file
@@ -0,0 +1 @@
|
||||
wince
|
@@ -1,29 +0,0 @@
|
||||
|
||||
dnl Checks for availability of GCC's atomic operations builtins.
|
||||
dnl Defines HAVE_GCC_ATOMIC_BUILTINS if available.
|
||||
|
||||
AC_DEFUN([WX_ATOMIC_BUILTINS],
|
||||
[
|
||||
AC_REQUIRE([AC_PROG_CC])
|
||||
if test -n "$GCC"; then
|
||||
AC_MSG_CHECKING([for __sync_fetch_and_add and __sync_sub_and_fetch builtins])
|
||||
AC_CACHE_VAL(wx_cv_cc_gcc_atomic_builtins, [
|
||||
AC_TRY_LINK(
|
||||
[],
|
||||
[
|
||||
unsigned int value=0;
|
||||
/* wxAtomicInc doesn't use return value here */
|
||||
__sync_fetch_and_add(&value, 2);
|
||||
__sync_sub_and_fetch(&value, 1);
|
||||
/* but wxAtomicDec does, so mimic that: */
|
||||
unsigned int r2 = __sync_sub_and_fetch(&value, 1);
|
||||
],
|
||||
wx_cv_cc_gcc_atomic_builtins=yes,
|
||||
wx_cv_cc_gcc_atomic_builtins=no)
|
||||
])
|
||||
AC_MSG_RESULT([$wx_cv_cc_gcc_atomic_builtins])
|
||||
if test $wx_cv_cc_gcc_atomic_builtins = yes; then
|
||||
AC_DEFINE([HAVE_GCC_ATOMIC_BUILTINS])
|
||||
fi
|
||||
fi
|
||||
])
|
@@ -1,223 +0,0 @@
|
||||
# ===========================================================================
|
||||
# http://autoconf-archive.cryp.to/ax_cflags_gcc_option.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_CFLAGS_GCC_OPTION (optionflag [,[shellvar][,[A][,[NA]]])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# AX_CFLAGS_GCC_OPTION(-fvomit-frame) would show a message as like
|
||||
# "checking CFLAGS for gcc -fvomit-frame ... yes" and adds the optionflag
|
||||
# to CFLAGS if it is understood. You can override the shellvar-default of
|
||||
# CFLAGS of course. The order of arguments stems from the explicit macros
|
||||
# like AX_CFLAGS_WARN_ALL.
|
||||
#
|
||||
# The cousin AX_CXXFLAGS_GCC_OPTION would check for an option to add to
|
||||
# CXXFLAGS - and it uses the autoconf setup for C++ instead of C (since it
|
||||
# is possible to use different compilers for C and C++).
|
||||
#
|
||||
# The macro is a lot simpler than any special AX_CFLAGS_* macro (or
|
||||
# ac_cxx_rtti.m4 macro) but allows to check for arbitrary options.
|
||||
# However, if you use this macro in a few places, it would be great if you
|
||||
# would make up a new function-macro and submit it to the ac-archive.
|
||||
#
|
||||
# - $1 option-to-check-for : required ("-option" as non-value)
|
||||
# - $2 shell-variable-to-add-to : CFLAGS (or CXXFLAGS in the other case)
|
||||
# - $3 action-if-found : add value to shellvariable
|
||||
# - $4 action-if-not-found : nothing
|
||||
#
|
||||
# Note: in earlier versions, $1-$2 were swapped. We try to detect the
|
||||
# situation and accept a $2=~/-/ as being the old option-to-check-for.
|
||||
#
|
||||
# There are other variants that emerged from the original macro variant
|
||||
# which did just test an option to be possibly added. However, some
|
||||
# compilers accept an option silently, or possibly for just another option
|
||||
# that was not intended. Therefore, we have to do a generic test for a
|
||||
# compiler family. For gcc we check "-pedantic" being accepted which is
|
||||
# also understood by compilers who just want to be compatible with gcc
|
||||
# even when not being made from gcc sources.
|
||||
#
|
||||
# See also: AX_CFLAGS_SUN_OPTION, AX_CFLAGS_HPUX_OPTION,
|
||||
# AX_CFLAGS_AIX_OPTION, and AX_CFLAGS_IRIX_OPTION.
|
||||
#
|
||||
# LAST MODIFICATION
|
||||
#
|
||||
# 2008-04-12
|
||||
#
|
||||
# COPYLEFT
|
||||
#
|
||||
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by the
|
||||
# Free Software Foundation; either version 2 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# As a special exception, the respective Autoconf Macro's copyright owner
|
||||
# gives unlimited permission to copy, distribute and modify the configure
|
||||
# scripts that are the output of Autoconf when processing the Macro. You
|
||||
# need not follow the terms of the GNU General Public License when using
|
||||
# or distributing such scripts, even though portions of the text of the
|
||||
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
# all other use of the material that constitutes the Autoconf Macro.
|
||||
#
|
||||
# This special exception to the GPL applies to versions of the Autoconf
|
||||
# Macro released by the Autoconf Macro Archive. When you make and
|
||||
# distribute a modified version of the Autoconf Macro, you may extend this
|
||||
# special exception to the GPL to apply to your modified version as well.
|
||||
|
||||
AC_DEFUN([AX_CFLAGS_GCC_OPTION_OLD], [dnl
|
||||
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
||||
AS_VAR_PUSHDEF([VAR],[ac_cv_cflags_gcc_option_$2])dnl
|
||||
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for gcc m4_ifval($2,$2,-option)],
|
||||
VAR,[VAR="no, unknown"
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_C
|
||||
ac_save_[]FLAGS="$[]FLAGS"
|
||||
for ac_arg dnl
|
||||
in "-pedantic -Werror % m4_ifval($2,$2,-option)" dnl GCC
|
||||
"-pedantic % m4_ifval($2,$2,-option) %% no, obsolete" dnl new GCC
|
||||
#
|
||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||
AC_TRY_COMPILE([],[return 0;],
|
||||
[VAR=`echo $ac_arg | sed -e 's,.*% *,,'` ; break])
|
||||
done
|
||||
FLAGS="$ac_save_[]FLAGS"
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
case ".$VAR" in
|
||||
.ok|.ok,*) m4_ifvaln($3,$3) ;;
|
||||
.|.no|.no,*) m4_ifvaln($4,$4) ;;
|
||||
*) m4_ifvaln($3,$3,[
|
||||
if echo " $[]m4_ifval($1,$1,FLAGS) " | grep " $VAR " 2>&1 >/dev/null
|
||||
then AC_RUN_LOG([: m4_ifval($1,$1,FLAGS) does contain $VAR])
|
||||
else AC_RUN_LOG([: m4_ifval($1,$1,FLAGS)="$m4_ifval($1,$1,FLAGS) $VAR"])
|
||||
m4_ifval($1,$1,FLAGS)="$m4_ifval($1,$1,FLAGS) $VAR"
|
||||
fi ]) ;;
|
||||
esac
|
||||
AS_VAR_POPDEF([VAR])dnl
|
||||
AS_VAR_POPDEF([FLAGS])dnl
|
||||
])
|
||||
|
||||
|
||||
dnl the only difference - the LANG selection... and the default FLAGS
|
||||
|
||||
AC_DEFUN([AX_CXXFLAGS_GCC_OPTION_OLD], [dnl
|
||||
AS_VAR_PUSHDEF([FLAGS],[CXXFLAGS])dnl
|
||||
AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_gcc_option_$2])dnl
|
||||
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for gcc m4_ifval($2,$2,-option)],
|
||||
VAR,[VAR="no, unknown"
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
ac_save_[]FLAGS="$[]FLAGS"
|
||||
for ac_arg dnl
|
||||
in "-pedantic -Werror % m4_ifval($2,$2,-option)" dnl GCC
|
||||
"-pedantic % m4_ifval($2,$2,-option) %% no, obsolete" dnl new GCC
|
||||
#
|
||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||
AC_TRY_COMPILE([],[return 0;],
|
||||
[VAR=`echo $ac_arg | sed -e 's,.*% *,,'` ; break])
|
||||
done
|
||||
FLAGS="$ac_save_[]FLAGS"
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
case ".$VAR" in
|
||||
.ok|.ok,*) m4_ifvaln($3,$3) ;;
|
||||
.|.no|.no,*) m4_ifvaln($4,$4) ;;
|
||||
*) m4_ifvaln($3,$3,[
|
||||
if echo " $[]m4_ifval($1,$1,FLAGS) " | grep " $VAR " 2>&1 >/dev/null
|
||||
then AC_RUN_LOG([: m4_ifval($1,$1,FLAGS) does contain $VAR])
|
||||
else AC_RUN_LOG([: m4_ifval($1,$1,FLAGS)="$m4_ifval($1,$1,FLAGS) $VAR"])
|
||||
m4_ifval($1,$1,FLAGS)="$m4_ifval($1,$1,FLAGS) $VAR"
|
||||
fi ]) ;;
|
||||
esac
|
||||
AS_VAR_POPDEF([VAR])dnl
|
||||
AS_VAR_POPDEF([FLAGS])dnl
|
||||
])
|
||||
|
||||
dnl -------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([AX_CFLAGS_GCC_OPTION_NEW], [dnl
|
||||
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
||||
AS_VAR_PUSHDEF([VAR],[ac_cv_cflags_gcc_option_$1])dnl
|
||||
AC_CACHE_CHECK([m4_ifval($2,$2,FLAGS) for gcc m4_ifval($1,$1,-option)],
|
||||
VAR,[VAR="no, unknown"
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_C
|
||||
ac_save_[]FLAGS="$[]FLAGS"
|
||||
for ac_arg dnl
|
||||
in "-pedantic -Werror % m4_ifval($1,$1,-option)" dnl GCC
|
||||
"-pedantic % m4_ifval($1,$1,-option) %% no, obsolete" dnl new GCC
|
||||
#
|
||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||
AC_TRY_COMPILE([],[return 0;],
|
||||
[VAR=`echo $ac_arg | sed -e 's,.*% *,,'` ; break])
|
||||
done
|
||||
FLAGS="$ac_save_[]FLAGS"
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
case ".$VAR" in
|
||||
.ok|.ok,*) m4_ifvaln($3,$3) ;;
|
||||
.|.no|.no,*) m4_ifvaln($4,$4) ;;
|
||||
*) m4_ifvaln($3,$3,[
|
||||
if echo " $[]m4_ifval($2,$2,FLAGS) " | grep " $VAR " 2>&1 >/dev/null
|
||||
then AC_RUN_LOG([: m4_ifval($2,$2,FLAGS) does contain $VAR])
|
||||
else AC_RUN_LOG([: m4_ifval($2,$2,FLAGS)="$m4_ifval($2,$2,FLAGS) $VAR"])
|
||||
m4_ifval($2,$2,FLAGS)="$m4_ifval($2,$2,FLAGS) $VAR"
|
||||
fi ]) ;;
|
||||
esac
|
||||
AS_VAR_POPDEF([VAR])dnl
|
||||
AS_VAR_POPDEF([FLAGS])dnl
|
||||
])
|
||||
|
||||
|
||||
dnl the only difference - the LANG selection... and the default FLAGS
|
||||
|
||||
AC_DEFUN([AX_CXXFLAGS_GCC_OPTION_NEW], [dnl
|
||||
AS_VAR_PUSHDEF([FLAGS],[CXXFLAGS])dnl
|
||||
AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_gcc_option_$1])dnl
|
||||
AC_CACHE_CHECK([m4_ifval($2,$2,FLAGS) for gcc m4_ifval($1,$1,-option)],
|
||||
VAR,[VAR="no, unknown"
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
ac_save_[]FLAGS="$[]FLAGS"
|
||||
for ac_arg dnl
|
||||
in "-pedantic -Werror % m4_ifval($1,$1,-option)" dnl GCC
|
||||
"-pedantic % m4_ifval($1,$1,-option) %% no, obsolete" dnl new GCC
|
||||
#
|
||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||
AC_TRY_COMPILE([],[return 0;],
|
||||
[VAR=`echo $ac_arg | sed -e 's,.*% *,,'` ; break])
|
||||
done
|
||||
FLAGS="$ac_save_[]FLAGS"
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
case ".$VAR" in
|
||||
.ok|.ok,*) m4_ifvaln($3,$3) ;;
|
||||
.|.no|.no,*) m4_ifvaln($4,$4) ;;
|
||||
*) m4_ifvaln($3,$3,[
|
||||
if echo " $[]m4_ifval($2,$2,FLAGS) " | grep " $VAR " 2>&1 >/dev/null
|
||||
then AC_RUN_LOG([: m4_ifval($2,$2,FLAGS) does contain $VAR])
|
||||
else AC_RUN_LOG([: m4_ifval($2,$2,FLAGS)="$m4_ifval($2,$2,FLAGS) $VAR"])
|
||||
m4_ifval($2,$2,FLAGS)="$m4_ifval($2,$2,FLAGS) $VAR"
|
||||
fi ]) ;;
|
||||
esac
|
||||
AS_VAR_POPDEF([VAR])dnl
|
||||
AS_VAR_POPDEF([FLAGS])dnl
|
||||
])
|
||||
|
||||
AC_DEFUN([AX_CFLAGS_GCC_OPTION],[ifelse(m4_bregexp([$2],[-]),-1,
|
||||
[AX_CFLAGS_GCC_OPTION_NEW($@)],[AX_CFLAGS_GCC_OPTION_OLD($@)])])
|
||||
|
||||
AC_DEFUN([AX_CXXFLAGS_GCC_OPTION],[ifelse(m4_bregexp([$2],[-]),-1,
|
||||
[AX_CXXFLAGS_GCC_OPTION_NEW($@)],[AX_CXXFLAGS_GCC_OPTION_OLD($@)])])
|
@@ -1,130 +0,0 @@
|
||||
# ===========================================================================
|
||||
# http://autoconf-archive.cryp.to/ax_gcc_option.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_GCC_OPTION(OPTION,EXTRA-OPTIONS,TEST-PROGRAM,ACTION-IF-SUCCESSFUL,ACTION-IF-NOT-SUCCESFUL)
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# AX_GCC_OPTION checks wheter gcc accepts the passed OPTION. If it accepts
|
||||
# the OPTION then ACTION-IF-SUCCESSFUL will be executed, otherwise
|
||||
# ACTION-IF-UNSUCCESSFUL.
|
||||
#
|
||||
# NOTE: This macro will be obsoleted by AX_C_CHECK_FLAG AX_CXX_CHECK_FLAG,
|
||||
# AX_CPP_CHECK_FLAG, AX_CXXCPP_CHECK_FLAG and AX_LD_CHECK_FLAG.
|
||||
#
|
||||
# A typical usage should be the following one:
|
||||
#
|
||||
# AX_GCC_OPTION([-fomit-frame-pointer],[],[],[
|
||||
# AC_MSG_NOTICE([The option is supported])],[
|
||||
# AC_MSG_NOTICE([No luck this time])
|
||||
# ])
|
||||
#
|
||||
# The macro doesn't discriminate between languages so, if you are testing
|
||||
# for an option that works for C++ but not for C you should use '-x c++'
|
||||
# as EXTRA-OPTIONS:
|
||||
#
|
||||
# AX_GCC_OPTION([-fno-rtti],[-x c++],[],[ ... ],[ ... ])
|
||||
#
|
||||
# OPTION is tested against the following code:
|
||||
#
|
||||
# int main()
|
||||
# {
|
||||
# return 0;
|
||||
# }
|
||||
#
|
||||
# The optional TEST-PROGRAM comes handy when the default main() is not
|
||||
# suited for the option being checked
|
||||
#
|
||||
# So, if you need to test for -fstrict-prototypes option you should
|
||||
# probably use the macro as follows:
|
||||
#
|
||||
# AX_GCC_OPTION([-fstrict-prototypes],[-x c++],[
|
||||
# int main(int argc, char ** argv)
|
||||
# {
|
||||
# (void) argc;
|
||||
# (void) argv;
|
||||
#
|
||||
# return 0;
|
||||
# }
|
||||
# ],[ ... ],[ ... ])
|
||||
#
|
||||
# Note that the macro compiles but doesn't link the test program so it is
|
||||
# not suited for checking options that are passed to the linker, like:
|
||||
#
|
||||
# -Wl,-L<a-library-path>
|
||||
#
|
||||
# In order to avoid such kind of problems you should think about usinguse
|
||||
# the AX_*_CHECK_FLAG family macros
|
||||
#
|
||||
# LAST MODIFICATION
|
||||
#
|
||||
# 2008-04-12
|
||||
#
|
||||
# COPYLEFT
|
||||
#
|
||||
# Copyright (c) 2008 Francesco Salvestrini <salvestrini@users.sourceforge.net>
|
||||
# Copyright (c) 2008 Bogdan Drozdowski <bogdandr@op.pl>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by the
|
||||
# Free Software Foundation; either version 2 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# As a special exception, the respective Autoconf Macro's copyright owner
|
||||
# gives unlimited permission to copy, distribute and modify the configure
|
||||
# scripts that are the output of Autoconf when processing the Macro. You
|
||||
# need not follow the terms of the GNU General Public License when using
|
||||
# or distributing such scripts, even though portions of the text of the
|
||||
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
# all other use of the material that constitutes the Autoconf Macro.
|
||||
#
|
||||
# This special exception to the GPL applies to versions of the Autoconf
|
||||
# Macro released by the Autoconf Macro Archive. When you make and
|
||||
# distribute a modified version of the Autoconf Macro, you may extend this
|
||||
# special exception to the GPL to apply to your modified version as well.
|
||||
|
||||
AC_DEFUN([AX_GCC_OPTION], [
|
||||
AC_REQUIRE([AC_PROG_CC])
|
||||
|
||||
AC_MSG_CHECKING([if gcc accepts $1 option])
|
||||
|
||||
AS_IF([ test "x$GCC" = "xyes" ],[
|
||||
AS_IF([ test -z "$3" ],[
|
||||
ax_gcc_option_test="int main()
|
||||
{
|
||||
return 0;
|
||||
}"
|
||||
],[
|
||||
ax_gcc_option_test="$3"
|
||||
])
|
||||
|
||||
# Dump the test program to file
|
||||
cat <<EOF > conftest.c
|
||||
$ax_gcc_option_test
|
||||
EOF
|
||||
|
||||
# Dump back the file to the log, useful for debugging purposes
|
||||
AC_TRY_COMMAND(cat conftest.c 1>&AS_MESSAGE_LOG_FD)
|
||||
|
||||
AS_IF([ AC_TRY_COMMAND($CC $2 $1 -c conftest.c 1>&AS_MESSAGE_LOG_FD) ],[
|
||||
AC_MSG_RESULT([yes])
|
||||
$4
|
||||
],[
|
||||
AC_MSG_RESULT([no])
|
||||
$5
|
||||
])
|
||||
],[
|
||||
AC_MSG_RESULT([no gcc available])
|
||||
])
|
||||
])
|
@@ -1,67 +0,0 @@
|
||||
# ===========================================================================
|
||||
# http://autoconf-archive.cryp.to/ax_gxx_version.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_GXX_VERSION
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# This macro retrieves the g++ version and returns it in the GXX_VERSION
|
||||
# variable if available, an empty string otherwise.
|
||||
#
|
||||
# LAST MODIFICATION
|
||||
#
|
||||
# 2008-04-12
|
||||
#
|
||||
# COPYLEFT
|
||||
#
|
||||
# Copyright (c) 2008 Francesco Salvestrini <salvestrini@users.sourceforge.net>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by the
|
||||
# Free Software Foundation; either version 2 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# As a special exception, the respective Autoconf Macro's copyright owner
|
||||
# gives unlimited permission to copy, distribute and modify the configure
|
||||
# scripts that are the output of Autoconf when processing the Macro. You
|
||||
# need not follow the terms of the GNU General Public License when using
|
||||
# or distributing such scripts, even though portions of the text of the
|
||||
# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
# all other use of the material that constitutes the Autoconf Macro.
|
||||
#
|
||||
# This special exception to the GPL applies to versions of the Autoconf
|
||||
# Macro released by the Autoconf Macro Archive. When you make and
|
||||
# distribute a modified version of the Autoconf Macro, you may extend this
|
||||
# special exception to the GPL to apply to your modified version as well.
|
||||
|
||||
AC_DEFUN([AX_GXX_VERSION], [
|
||||
GXX_VERSION=""
|
||||
AX_GCC_OPTION([-dumpversion],[],[],[
|
||||
ax_gcc_version_option=yes
|
||||
],[
|
||||
ax_gcc_version_option=no
|
||||
])
|
||||
AS_IF([test "x$GXX" = "xyes"],[
|
||||
AS_IF([test "x$ax_gxx_version_option" != "no"],[
|
||||
AC_CACHE_CHECK([gxx version],[ax_cv_gxx_version],[
|
||||
ax_cv_gxx_version="`$CXX -dumpversion`"
|
||||
AS_IF([test "x$ax_cv_gxx_version" = "x"],[
|
||||
ax_cv_gxx_version=""
|
||||
])
|
||||
])
|
||||
GXX_VERSION=$ax_cv_gxx_version
|
||||
])
|
||||
])
|
||||
AC_SUBST([GXX_VERSION])
|
||||
])
|
@@ -1,483 +0,0 @@
|
||||
AC_DEFUN([AC_BAKEFILE_CREATE_FILE_DLLAR_SH],
|
||||
[
|
||||
dnl ===================== dllar.sh begins here =====================
|
||||
dnl (Created by merge-scripts.py from dllar.sh
|
||||
dnl file do not edit here!)
|
||||
D='$'
|
||||
cat <<EOF >dllar.sh
|
||||
#!/bin/sh
|
||||
#
|
||||
# dllar - a tool to build both a .dll and an .a file
|
||||
# from a set of object (.o) files for EMX/OS2.
|
||||
#
|
||||
# Written by Andrew Zabolotny, bit@freya.etu.ru
|
||||
# Ported to Unix like shell by Stefan Neis, Stefan.Neis@t-online.de
|
||||
#
|
||||
# This script will accept a set of files on the command line.
|
||||
# All the public symbols from the .o files will be exported into
|
||||
# a .DEF file, then linker will be run (through gcc) against them to
|
||||
# build a shared library consisting of all given .o files. All libraries
|
||||
# (.a) will be first decompressed into component .o files then act as
|
||||
# described above. You can optionally give a description (-d "description")
|
||||
# which will be put into .DLL. To see the list of accepted options (as well
|
||||
# as command-line format) simply run this program without options. The .DLL
|
||||
# is built to be imported by name (there is no guarantee that new versions
|
||||
# of the library you build will have same ordinals for same symbols).
|
||||
#
|
||||
# dllar is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# dllar is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with dllar; see the file COPYING. If not, write to the Free
|
||||
# Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
||||
# 02111-1307, USA.
|
||||
|
||||
# To successfuly run this program you will need:
|
||||
# - Current drive should have LFN support (HPFS, ext2, network, etc)
|
||||
# (Sometimes dllar generates filenames which won't fit 8.3 scheme)
|
||||
# - gcc
|
||||
# (used to build the .dll)
|
||||
# - emxexp
|
||||
# (used to create .def file from .o files)
|
||||
# - emximp
|
||||
# (used to create .a file from .def file)
|
||||
# - GNU text utilites (cat, sort, uniq)
|
||||
# used to process emxexp output
|
||||
# - GNU file utilities (mv, rm)
|
||||
# - GNU sed
|
||||
# - lxlite (optional, see flag below)
|
||||
# (used for general .dll cleanup)
|
||||
#
|
||||
|
||||
flag_USE_LXLITE=1;
|
||||
|
||||
#
|
||||
# helper functions
|
||||
# basnam, variant of basename, which does _not_ remove the path, _iff_
|
||||
# second argument (suffix to remove) is given
|
||||
basnam(){
|
||||
case ${D}# in
|
||||
1)
|
||||
echo ${D}1 | sed 's/.*\\///' | sed 's/.*\\\\//'
|
||||
;;
|
||||
2)
|
||||
echo ${D}1 | sed 's/'${D}2'${D}//'
|
||||
;;
|
||||
*)
|
||||
echo "error in basnam ${D}*"
|
||||
exit 8
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Cleanup temporary files and output
|
||||
CleanUp() {
|
||||
cd ${D}curDir
|
||||
for i in ${D}inputFiles ; do
|
||||
case ${D}i in
|
||||
*!)
|
||||
rm -rf \`basnam ${D}i !\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Kill result in case of failure as there is just to many stupid make/nmake
|
||||
# things out there which doesn't do this.
|
||||
if @<:@ ${D}# -eq 0 @:>@; then
|
||||
rm -f ${D}arcFile ${D}arcFile2 ${D}defFile ${D}dllFile
|
||||
fi
|
||||
}
|
||||
|
||||
# Print usage and exit script with rc=1.
|
||||
PrintHelp() {
|
||||
echo 'Usage: dllar.sh @<:@-o@<:@utput@:>@ output_file@:>@ @<:@-i@<:@mport@:>@ importlib_name@:>@'
|
||||
echo ' @<:@-name-mangler-script script.sh@:>@'
|
||||
echo ' @<:@-d@<:@escription@:>@ "dll descrption"@:>@ @<:@-cc "CC"@:>@ @<:@-f@<:@lags@:>@ "CFLAGS"@:>@'
|
||||
echo ' @<:@-ord@<:@inals@:>@@:>@ -ex@<:@clude@:>@ "symbol(s)"'
|
||||
echo ' @<:@-libf@<:@lags@:>@ "{INIT|TERM}{GLOBAL|INSTANCE}"@:>@ @<:@-nocrt@<:@dll@:>@@:>@ @<:@-nolxl@<:@ite@:>@@:>@'
|
||||
echo ' @<:@*.o@:>@ @<:@*.a@:>@'
|
||||
echo '*> "output_file" should have no extension.'
|
||||
echo ' If it has the .o, .a or .dll extension, it is automatically removed.'
|
||||
echo ' The import library name is derived from this and is set to "name".a,'
|
||||
echo ' unless overridden by -import'
|
||||
echo '*> "importlib_name" should have no extension.'
|
||||
echo ' If it has the .o, or .a extension, it is automatically removed.'
|
||||
echo ' This name is used as the import library name and may be longer and'
|
||||
echo ' more descriptive than the DLL name which has to follow the old '
|
||||
echo ' 8.3 convention of FAT.'
|
||||
echo '*> "script.sh may be given to override the output_file name by a'
|
||||
echo ' different name. It is mainly useful if the regular make process'
|
||||
echo ' of some package does not take into account OS/2 restriction of'
|
||||
echo ' DLL name lengths. It takes the importlib name as input and is'
|
||||
echo ' supposed to procude a shorter name as output. The script should'
|
||||
echo ' expect to get importlib_name without extension and should produce'
|
||||
echo ' a (max.) 8 letter name without extension.'
|
||||
echo '*> "cc" is used to use another GCC executable. (default: gcc.exe)'
|
||||
echo '*> "flags" should be any set of valid GCC flags. (default: -s -Zcrtdll)'
|
||||
echo ' These flags will be put at the start of GCC command line.'
|
||||
echo '*> -ord@<:@inals@:>@ tells dllar to export entries by ordinals. Be careful.'
|
||||
echo '*> -ex@<:@clude@:>@ defines symbols which will not be exported. You can define'
|
||||
echo ' multiple symbols, for example -ex "myfunc yourfunc _GLOBAL*".'
|
||||
echo ' If the last character of a symbol is "*", all symbols beginning'
|
||||
echo ' with the prefix before "*" will be exclude, (see _GLOBAL* above).'
|
||||
echo '*> -libf@<:@lags@:>@ can be used to add INITGLOBAL/INITINSTANCE and/or'
|
||||
echo ' TERMGLOBAL/TERMINSTANCE flags to the dynamically-linked library.'
|
||||
echo '*> -nocrt@<:@dll@:>@ switch will disable linking the library against emx''s'
|
||||
echo ' C runtime DLLs.'
|
||||
echo '*> -nolxl@<:@ite@:>@ switch will disable running lxlite on the resulting DLL.'
|
||||
echo '*> All other switches (for example -L./ or -lmylib) will be passed'
|
||||
echo ' unchanged to GCC at the end of command line.'
|
||||
echo '*> If you create a DLL from a library and you do not specify -o,'
|
||||
echo ' the basename for DLL and import library will be set to library name,'
|
||||
echo ' the initial library will be renamed to 'name'_s.a (_s for static)'
|
||||
echo ' i.e. "dllar gcc.a" will create gcc.dll and gcc.a, and the initial'
|
||||
echo ' library will be renamed into gcc_s.a.'
|
||||
echo '--------'
|
||||
echo 'Example:'
|
||||
echo ' dllar -o gcc290.dll libgcc.a -d "GNU C runtime library" -ord'
|
||||
echo ' -ex "__main __ctordtor*" -libf "INITINSTANCE TERMINSTANCE"'
|
||||
CleanUp
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Execute a command.
|
||||
# If exit code of the commnad <> 0 CleanUp() is called and we'll exit the script.
|
||||
# @Uses Whatever CleanUp() uses.
|
||||
doCommand() {
|
||||
echo "${D}*"
|
||||
eval ${D}*
|
||||
rcCmd=${D}?
|
||||
|
||||
if @<:@ ${D}rcCmd -ne 0 @:>@; then
|
||||
echo "command failed, exit code="${D}rcCmd
|
||||
CleanUp
|
||||
exit ${D}rcCmd
|
||||
fi
|
||||
}
|
||||
|
||||
# main routine
|
||||
# setup globals
|
||||
cmdLine=${D}*
|
||||
outFile=""
|
||||
outimpFile=""
|
||||
inputFiles=""
|
||||
renameScript=""
|
||||
description=""
|
||||
CC=gcc.exe
|
||||
CFLAGS="-s -Zcrtdll"
|
||||
EXTRA_CFLAGS=""
|
||||
EXPORT_BY_ORDINALS=0
|
||||
exclude_symbols=""
|
||||
library_flags=""
|
||||
curDir=\`pwd\`
|
||||
curDirS=curDir
|
||||
case ${D}curDirS in
|
||||
*/)
|
||||
;;
|
||||
*)
|
||||
curDirS=${D}{curDirS}"/"
|
||||
;;
|
||||
esac
|
||||
# Parse commandline
|
||||
libsToLink=0
|
||||
omfLinking=0
|
||||
while @<:@ ${D}1 @:>@; do
|
||||
case ${D}1 in
|
||||
-ord*)
|
||||
EXPORT_BY_ORDINALS=1;
|
||||
;;
|
||||
-o*)
|
||||
shift
|
||||
outFile=${D}1
|
||||
;;
|
||||
-i*)
|
||||
shift
|
||||
outimpFile=${D}1
|
||||
;;
|
||||
-name-mangler-script)
|
||||
shift
|
||||
renameScript=${D}1
|
||||
;;
|
||||
-d*)
|
||||
shift
|
||||
description=${D}1
|
||||
;;
|
||||
-f*)
|
||||
shift
|
||||
CFLAGS=${D}1
|
||||
;;
|
||||
-c*)
|
||||
shift
|
||||
CC=${D}1
|
||||
;;
|
||||
-h*)
|
||||
PrintHelp
|
||||
;;
|
||||
-ex*)
|
||||
shift
|
||||
exclude_symbols=${D}{exclude_symbols}${D}1" "
|
||||
;;
|
||||
-libf*)
|
||||
shift
|
||||
library_flags=${D}{library_flags}${D}1" "
|
||||
;;
|
||||
-nocrt*)
|
||||
CFLAGS="-s"
|
||||
;;
|
||||
-nolxl*)
|
||||
flag_USE_LXLITE=0
|
||||
;;
|
||||
-* | /*)
|
||||
case ${D}1 in
|
||||
-L* | -l*)
|
||||
libsToLink=1
|
||||
;;
|
||||
-Zomf)
|
||||
omfLinking=1
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1
|
||||
;;
|
||||
*.dll)
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS} \`basnam ${D}1 .dll\`"
|
||||
if @<:@ ${D}omfLinking -eq 1 @:>@; then
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.lib"
|
||||
else
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.a"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
found=0;
|
||||
if @<:@ ${D}libsToLink -ne 0 @:>@; then
|
||||
EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1
|
||||
else
|
||||
for file in ${D}1 ; do
|
||||
if @<:@ -f ${D}file @:>@; then
|
||||
inputFiles="${D}{inputFiles} ${D}file"
|
||||
found=1
|
||||
fi
|
||||
done
|
||||
if @<:@ ${D}found -eq 0 @:>@; then
|
||||
echo "ERROR: No file(s) found: "${D}1
|
||||
exit 8
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done # iterate cmdline words
|
||||
|
||||
#
|
||||
if @<:@ -z "${D}inputFiles" @:>@; then
|
||||
echo "dllar: no input files"
|
||||
PrintHelp
|
||||
fi
|
||||
|
||||
# Now extract all .o files from .a files
|
||||
newInputFiles=""
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*.a | *.lib)
|
||||
case ${D}file in
|
||||
*.a)
|
||||
suffix=".a"
|
||||
AR="ar"
|
||||
;;
|
||||
*.lib)
|
||||
suffix=".lib"
|
||||
AR="emxomfar"
|
||||
EXTRA_CFLAGS="${D}EXTRA_CFLAGS -Zomf"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
dirname=\`basnam ${D}file ${D}suffix\`"_%"
|
||||
mkdir ${D}dirname
|
||||
if @<:@ ${D}? -ne 0 @:>@; then
|
||||
echo "Failed to create subdirectory ./${D}dirname"
|
||||
CleanUp
|
||||
exit 8;
|
||||
fi
|
||||
# Append '!' to indicate archive
|
||||
newInputFiles="${D}newInputFiles ${D}{dirname}!"
|
||||
doCommand "cd ${D}dirname; ${D}AR x ../${D}file"
|
||||
cd ${D}curDir
|
||||
found=0;
|
||||
for subfile in ${D}dirname/*.o* ; do
|
||||
if @<:@ -f ${D}subfile @:>@; then
|
||||
found=1
|
||||
if @<:@ -s ${D}subfile @:>@; then
|
||||
# FIXME: This should be: is file size > 32 byte, _not_ > 0!
|
||||
newInputFiles="${D}newInputFiles ${D}subfile"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
if @<:@ ${D}found -eq 0 @:>@; then
|
||||
echo "WARNING: there are no files in archive \\'${D}file\\'"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
newInputFiles="${D}{newInputFiles} ${D}file"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
inputFiles="${D}newInputFiles"
|
||||
|
||||
# Output filename(s).
|
||||
do_backup=0;
|
||||
if @<:@ -z ${D}outFile @:>@; then
|
||||
do_backup=1;
|
||||
set outFile ${D}inputFiles; outFile=${D}2
|
||||
fi
|
||||
|
||||
# If it is an archive, remove the '!' and the '_%' suffixes
|
||||
case ${D}outFile in
|
||||
*_%!)
|
||||
outFile=\`basnam ${D}outFile _%!\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
case ${D}outFile in
|
||||
*.dll)
|
||||
outFile=\`basnam ${D}outFile .dll\`
|
||||
;;
|
||||
*.DLL)
|
||||
outFile=\`basnam ${D}outFile .DLL\`
|
||||
;;
|
||||
*.o)
|
||||
outFile=\`basnam ${D}outFile .o\`
|
||||
;;
|
||||
*.obj)
|
||||
outFile=\`basnam ${D}outFile .obj\`
|
||||
;;
|
||||
*.a)
|
||||
outFile=\`basnam ${D}outFile .a\`
|
||||
;;
|
||||
*.lib)
|
||||
outFile=\`basnam ${D}outFile .lib\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
case ${D}outimpFile in
|
||||
*.a)
|
||||
outimpFile=\`basnam ${D}outimpFile .a\`
|
||||
;;
|
||||
*.lib)
|
||||
outimpFile=\`basnam ${D}outimpFile .lib\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
if @<:@ -z ${D}outimpFile @:>@; then
|
||||
outimpFile=${D}outFile
|
||||
fi
|
||||
defFile="${D}{outFile}.def"
|
||||
arcFile="${D}{outimpFile}.a"
|
||||
arcFile2="${D}{outimpFile}.lib"
|
||||
|
||||
#create ${D}dllFile as something matching 8.3 restrictions,
|
||||
if @<:@ -z ${D}renameScript @:>@ ; then
|
||||
dllFile="${D}outFile"
|
||||
else
|
||||
dllFile=\`${D}renameScript ${D}outimpFile\`
|
||||
fi
|
||||
|
||||
if @<:@ ${D}do_backup -ne 0 @:>@ ; then
|
||||
if @<:@ -f ${D}arcFile @:>@ ; then
|
||||
doCommand "mv ${D}arcFile ${D}{outFile}_s.a"
|
||||
fi
|
||||
if @<:@ -f ${D}arcFile2 @:>@ ; then
|
||||
doCommand "mv ${D}arcFile2 ${D}{outFile}_s.lib"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Extract public symbols from all the object files.
|
||||
tmpdefFile=${D}{defFile}_%
|
||||
rm -f ${D}tmpdefFile
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*!)
|
||||
;;
|
||||
*)
|
||||
doCommand "emxexp -u ${D}file >> ${D}tmpdefFile"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Create the def file.
|
||||
rm -f ${D}defFile
|
||||
echo "LIBRARY \`basnam ${D}dllFile\` ${D}library_flags" >> ${D}defFile
|
||||
dllFile="${D}{dllFile}.dll"
|
||||
if @<:@ ! -z ${D}description @:>@; then
|
||||
echo "DESCRIPTION \\"${D}{description}\\"" >> ${D}defFile
|
||||
fi
|
||||
echo "EXPORTS" >> ${D}defFile
|
||||
|
||||
doCommand "cat ${D}tmpdefFile | sort.exe | uniq.exe > ${D}{tmpdefFile}%"
|
||||
grep -v "^ *;" < ${D}{tmpdefFile}% | grep -v "^ *${D}" >${D}tmpdefFile
|
||||
|
||||
# Checks if the export is ok or not.
|
||||
for word in ${D}exclude_symbols; do
|
||||
grep -v ${D}word < ${D}tmpdefFile >${D}{tmpdefFile}%
|
||||
mv ${D}{tmpdefFile}% ${D}tmpdefFile
|
||||
done
|
||||
|
||||
|
||||
if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then
|
||||
sed "=" < ${D}tmpdefFile | \\
|
||||
sed '
|
||||
N
|
||||
: loop
|
||||
s/^\\(@<:@0-9@:>@\\+\\)\\(@<:@^;@:>@*\\)\\(;.*\\)\\?/\\2 @\\1 NONAME/
|
||||
t loop
|
||||
' > ${D}{tmpdefFile}%
|
||||
grep -v "^ *${D}" < ${D}{tmpdefFile}% > ${D}tmpdefFile
|
||||
else
|
||||
rm -f ${D}{tmpdefFile}%
|
||||
fi
|
||||
cat ${D}tmpdefFile >> ${D}defFile
|
||||
rm -f ${D}tmpdefFile
|
||||
|
||||
# Do linking, create implib, and apply lxlite.
|
||||
gccCmdl="";
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*!)
|
||||
;;
|
||||
*)
|
||||
gccCmdl="${D}gccCmdl ${D}file"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
doCommand "${D}CC ${D}CFLAGS -Zdll -o ${D}dllFile ${D}defFile ${D}gccCmdl ${D}EXTRA_CFLAGS"
|
||||
touch "${D}{outFile}.dll"
|
||||
|
||||
doCommand "emximp -o ${D}arcFile ${D}defFile"
|
||||
if @<:@ ${D}flag_USE_LXLITE -ne 0 @:>@; then
|
||||
add_flags="";
|
||||
if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then
|
||||
add_flags="-ynd"
|
||||
fi
|
||||
doCommand "lxlite -cs -t: -mrn -mln ${D}add_flags ${D}dllFile"
|
||||
fi
|
||||
doCommand "emxomf -s -l ${D}arcFile"
|
||||
|
||||
# Successful exit.
|
||||
CleanUp 1
|
||||
exit 0
|
||||
EOF
|
||||
dnl ===================== dllar.sh ends here =====================
|
||||
])
|
@@ -1,36 +1,74 @@
|
||||
dnl
|
||||
dnl This file is part of Bakefile (http://www.bakefile.org)
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 Vaclav Slavik, David Elliott and others
|
||||
dnl
|
||||
dnl Permission is hereby granted, free of charge, to any person obtaining a
|
||||
dnl copy of this software and associated documentation files (the "Software"),
|
||||
dnl to deal in the Software without restriction, including without limitation
|
||||
dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
dnl and/or sell copies of the Software, and to permit persons to whom the
|
||||
dnl Software is furnished to do so, subject to the following conditions:
|
||||
dnl
|
||||
dnl The above copyright notice and this permission notice shall be included in
|
||||
dnl all copies or substantial portions of the Software.
|
||||
dnl
|
||||
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
dnl DEALINGS IN THE SOFTWARE.
|
||||
dnl
|
||||
dnl $Id: bakefile-lang.m4 1278 2008-11-17 22:26:10Z vadz $
|
||||
dnl
|
||||
dnl Compiler detection macros by David Elliott and Vadim Zeitlin
|
||||
dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Compiler detection macros by David Elliott
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl Macros to detect different C/C++ compilers
|
||||
dnl Macros to detect non-GNU compilers (MetroWerks, XLC)
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl Based on autoconf _AC_LANG_COMPILER_GNU
|
||||
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_MWERKS],
|
||||
[AC_CACHE_CHECK([whether we are using the Metrowerks _AC_LANG compiler],
|
||||
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks],
|
||||
[AC_TRY_COMPILE([],[#ifndef __MWERKS__
|
||||
choke me
|
||||
#endif
|
||||
],
|
||||
[bakefile_compiler_mwerks=yes],
|
||||
[bakefile_compiler_mwerks=no])
|
||||
bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks=$bakefile_compiler_mwerks
|
||||
])
|
||||
])
|
||||
|
||||
dnl Loosely based on autoconf AC_PROG_CC
|
||||
dnl TODO: Maybe this should wrap the call to AC_PROG_CC and be used instead.
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_MWCC],
|
||||
[AC_LANG_PUSH(C)
|
||||
_AC_BAKEFILE_LANG_COMPILER_MWERKS
|
||||
MWCC=`test $bakefile_cv_c_compiler_mwerks = yes && echo yes`
|
||||
AC_LANG_POP(C)
|
||||
])
|
||||
|
||||
dnl Loosely based on autoconf AC_PROG_CXX
|
||||
dnl TODO: Maybe this should wrap the call to AC_PROG_CXX and be used instead.
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_MWCXX],
|
||||
[AC_LANG_PUSH(C++)
|
||||
_AC_BAKEFILE_LANG_COMPILER_MWERKS
|
||||
MWCXX=`test $bakefile_cv_cxx_compiler_mwerks = yes && echo yes`
|
||||
AC_LANG_POP(C++)
|
||||
])
|
||||
|
||||
dnl Based on autoconf _AC_LANG_COMPILER_GNU
|
||||
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_XLC],
|
||||
[AC_CACHE_CHECK([whether we are using the IBM xlC _AC_LANG compiler],
|
||||
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_xlc],
|
||||
[AC_TRY_COMPILE([],[#ifndef __xlC__
|
||||
choke me
|
||||
#endif
|
||||
],
|
||||
[bakefile_compiler_xlc=yes],
|
||||
[bakefile_compiler_xlc=no])
|
||||
bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_xlc=$bakefile_compiler_xlc
|
||||
])
|
||||
])
|
||||
|
||||
dnl Loosely based on autoconf AC_PROG_CC
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_XLCC],
|
||||
[AC_LANG_PUSH(C)
|
||||
_AC_BAKEFILE_LANG_COMPILER_XLC
|
||||
XLCC=`test $bakefile_cv_c_compiler_xlc = yes && echo yes`
|
||||
AC_LANG_POP(C)
|
||||
])
|
||||
|
||||
dnl Loosely based on autoconf AC_PROG_CXX
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_XLCXX],
|
||||
[AC_LANG_PUSH(C++)
|
||||
_AC_BAKEFILE_LANG_COMPILER_XLC
|
||||
XLCXX=`test $bakefile_cv_cxx_compiler_xlc = yes && echo yes`
|
||||
AC_LANG_POP(C++)
|
||||
])
|
||||
|
||||
dnl Based on autoconf _AC_LANG_COMPILER_GNU
|
||||
dnl _AC_BAKEFILE_LANG_COMPILER(NAME, LANG, SYMBOL, IF-YES, IF-NO)
|
||||
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER],
|
||||
@@ -59,58 +97,6 @@ AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER],
|
||||
AC_LANG_POP($2)
|
||||
])
|
||||
|
||||
dnl More specific version of the above macro checking whether the compiler
|
||||
dnl version is at least the given one (assumes that we do use this compiler)
|
||||
dnl
|
||||
dnl _AC_BAKEFILE_LANG_COMPILER_LATER_THAN(NAME, LANG, SYMBOL, VER, VERMSG, IF-YES, IF-NO)
|
||||
AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_LATER_THAN],
|
||||
[
|
||||
AC_LANG_PUSH($2)
|
||||
AC_CACHE_CHECK(
|
||||
[whether we are using $1 $2 compiler v$5 or later],
|
||||
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4],
|
||||
[AC_TRY_COMPILE(
|
||||
[],
|
||||
[
|
||||
#ifndef $3 || $3 < $4
|
||||
choke me
|
||||
#endif
|
||||
],
|
||||
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4=yes],
|
||||
[bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4=no]
|
||||
)
|
||||
]
|
||||
)
|
||||
if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3[]_lt_[]$4" = "xyes"; then
|
||||
:; $6
|
||||
else
|
||||
:; $7
|
||||
fi
|
||||
AC_LANG_POP($2)
|
||||
])
|
||||
|
||||
dnl CodeWarrior Metrowerks compiler defines __MWERKS__ for both C and C++
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_MWCC],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER(Metrowerks, C, __MWERKS__, MWCC=yes)
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_MWCXX],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER(Metrowerks, C++, __MWERKS__, MWCXX=yes)
|
||||
])
|
||||
|
||||
dnl IBM xlC compiler defines __xlC__ for both C and C++
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_XLCC],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER([IBM xlC], C, __xlC__, XLCC=yes)
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_XLCXX],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER([IBM xlC], C++, __xlC__, XLCXX=yes)
|
||||
])
|
||||
|
||||
dnl recent versions of SGI mipsPro compiler define _SGI_COMPILER_VERSION
|
||||
dnl
|
||||
dnl NB: old versions define _COMPILER_VERSION but this could probably be
|
||||
@@ -147,29 +133,6 @@ AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX],
|
||||
_AC_BAKEFILE_LANG_COMPILER(Intel, C++, __INTEL_COMPILER, INTELCXX=yes)
|
||||
])
|
||||
|
||||
dnl Intel compiler command line options changed in incompatible ways sometimes
|
||||
dnl before v8 (-KPIC was replaced with gcc-compatible -fPIC) and again in v10
|
||||
dnl (-create-pch deprecated in favour of -pch-create) so we need to test for
|
||||
dnl its exact version too
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_INTELCC_8],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C, __INTEL_COMPILER, 800, 8, INTELCC8=yes)
|
||||
])
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX_8],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C++, __INTEL_COMPILER, 800, 8, INTELCXX8=yes)
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_INTELCC_10],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C, __INTEL_COMPILER, 1000, 10, INTELCC10=yes)
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_INTELCXX_10],
|
||||
[
|
||||
_AC_BAKEFILE_LANG_COMPILER_LATER_THAN(Intel, C++, __INTEL_COMPILER, 1000, 10, INTELCXX10=yes)
|
||||
])
|
||||
|
||||
dnl HP-UX aCC: see http://docs.hp.com/en/6162/preprocess.htm#macropredef
|
||||
AC_DEFUN([AC_BAKEFILE_PROG_HPCC],
|
||||
[
|
||||
@@ -240,19 +203,8 @@ dnl check for different proprietary compilers depending on target platform
|
||||
dnl _AC_BAKEFILE_PROG_COMPILER(LANG)
|
||||
AC_DEFUN([_AC_BAKEFILE_PROG_COMPILER],
|
||||
[
|
||||
AC_REQUIRE([AC_PROG_$1])
|
||||
|
||||
dnl Intel compiler can be used under several different OS and even
|
||||
dnl different architectures (x86, amd64 and Itanium) so it's easier to just
|
||||
dnl always test for it
|
||||
AC_PROG_$1
|
||||
AC_BAKEFILE_PROG_INTEL$1
|
||||
|
||||
dnl If we use Intel compiler we also need to know its version
|
||||
if test "$INTEL$1" = "yes"; then
|
||||
AC_BAKEFILE_PROG_INTEL$1_8
|
||||
AC_BAKEFILE_PROG_INTEL$1_10
|
||||
fi
|
||||
|
||||
dnl if we're using gcc, we can't be using any of incompatible compilers
|
||||
if test "x$G$1" != "xyes"; then
|
||||
if test "x$1" = "xC"; then
|
||||
@@ -272,23 +224,13 @@ AC_DEFUN([_AC_BAKEFILE_PROG_COMPILER],
|
||||
|
||||
Darwin)
|
||||
AC_BAKEFILE_PROG_MW$1
|
||||
if test "$MW$1" != "yes"; then
|
||||
AC_BAKEFILE_PROG_XL$1
|
||||
fi
|
||||
;;
|
||||
|
||||
IRIX*)
|
||||
AC_BAKEFILE_PROG_SGI$1
|
||||
;;
|
||||
|
||||
Linux*)
|
||||
dnl Sun CC is now available under Linux too, test for it unless
|
||||
dnl we already found that we were using a different compiler
|
||||
if test "$INTEL$1" != "yes"; then
|
||||
AC_BAKEFILE_PROG_SUN$1
|
||||
fi
|
||||
;;
|
||||
|
||||
HP-UX*)
|
||||
AC_BAKEFILE_PROG_HP$1
|
||||
;;
|
||||
|
@@ -1,36 +1,9 @@
|
||||
dnl
|
||||
dnl This file is part of Bakefile (http://www.bakefile.org)
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 Vaclav Slavik and others
|
||||
dnl
|
||||
dnl Permission is hereby granted, free of charge, to any person obtaining a
|
||||
dnl copy of this software and associated documentation files (the "Software"),
|
||||
dnl to deal in the Software without restriction, including without limitation
|
||||
dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
dnl and/or sell copies of the Software, and to permit persons to whom the
|
||||
dnl Software is furnished to do so, subject to the following conditions:
|
||||
dnl
|
||||
dnl The above copyright notice and this permission notice shall be included in
|
||||
dnl all copies or substantial portions of the Software.
|
||||
dnl
|
||||
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
dnl DEALINGS IN THE SOFTWARE.
|
||||
dnl
|
||||
dnl $Id$
|
||||
dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Support macros for makefiles generated by BAKEFILE.
|
||||
dnl
|
||||
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl Lots of compiler & linker detection code contained here was taken from
|
||||
dnl wxWidgets configure.in script (see http://www.wxwidgets.org)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl wxWindows configure.in script (see http://www.wxwindows.org)
|
||||
|
||||
|
||||
|
||||
@@ -207,10 +180,6 @@ AC_DEFUN([AC_BAKEFILE_SUFFIXES],
|
||||
dlldir="$libdir"
|
||||
|
||||
case "${BAKEFILE_HOST}" in
|
||||
dnl PA-RISC HP systems used .sl but IA64 use ELF-64 and so use the
|
||||
dnl standard .so extension
|
||||
ia64-hp-hpux* )
|
||||
;;
|
||||
*-hp-hpux* )
|
||||
SO_SUFFIX="sl"
|
||||
SO_SUFFIX_MODULE="sl"
|
||||
@@ -312,19 +281,27 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD],
|
||||
;;
|
||||
|
||||
*-*-linux* )
|
||||
dnl newer icc versions use -fPIC just as gcc does and, in fact, the
|
||||
dnl newest (v10+) ones don't even understand -KPIC any longer
|
||||
if test "$INTELCC" = "yes" -a "$INTELCC8" != "yes"; then
|
||||
PIC_FLAG="-KPIC"
|
||||
elif test "x$SUNCXX" = "xyes"; then
|
||||
SHARED_LD_CC="${CC} -G -o"
|
||||
SHARED_LD_CXX="${CXX} -G -o"
|
||||
if test "x$GCC" != "xyes"; then
|
||||
AC_CACHE_CHECK([for Intel compiler], bakefile_cv_prog_icc,
|
||||
[
|
||||
AC_TRY_COMPILE([],
|
||||
[
|
||||
#ifndef __INTEL_COMPILER
|
||||
This is not ICC
|
||||
#endif
|
||||
],
|
||||
bakefile_cv_prog_icc=yes,
|
||||
bakefile_cv_prog_icc=no
|
||||
)
|
||||
])
|
||||
if test "$bakefile_cv_prog_icc" = "yes"; then
|
||||
PIC_FLAG="-KPIC"
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
|
||||
*-*-solaris2* )
|
||||
if test "x$SUNCXX" = xyes ; then
|
||||
if test "x$GCC" != xyes ; then
|
||||
SHARED_LD_CC="${CC} -G -o"
|
||||
SHARED_LD_CXX="${CXX} -G -o"
|
||||
PIC_FLAG="-KPIC"
|
||||
@@ -336,7 +313,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD],
|
||||
chmod +x shared-ld-sh
|
||||
|
||||
SHARED_LD_MODULE_CC="`pwd`/shared-ld-sh -bundle -headerpad_max_install_names -o"
|
||||
SHARED_LD_MODULE_CXX="CXX=\"\$(CXX)\" $SHARED_LD_MODULE_CC"
|
||||
SHARED_LD_MODULE_CXX="$SHARED_LD_MODULE_CC"
|
||||
|
||||
dnl Most apps benefit from being fully binded (its faster and static
|
||||
dnl variables initialized at startup work).
|
||||
@@ -454,7 +431,8 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD],
|
||||
;;
|
||||
|
||||
*)
|
||||
AC_MSG_ERROR(unknown system type $BAKEFILE_HOST.)
|
||||
dnl wxWidgets-specific: allow unknown Unix systems
|
||||
dnl AC_MSG_ERROR(unknown system type $BAKEFILE_HOST.)
|
||||
esac
|
||||
|
||||
if test "x$PIC_FLAG" != "x" ; then
|
||||
@@ -489,33 +467,29 @@ AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS],
|
||||
USE_SOVERLINUX=0
|
||||
USE_SOVERSOLARIS=0
|
||||
USE_SOVERCYGWIN=0
|
||||
USE_SOTWOSYMLINKS=0
|
||||
USE_SOSYMLINKS=0
|
||||
USE_MACVERSION=0
|
||||
SONAME_FLAG=
|
||||
|
||||
case "${BAKEFILE_HOST}" in
|
||||
*-*-linux* | *-*-freebsd* | *-*-openbsd* | *-*-netbsd* | \
|
||||
*-*-k*bsd*-gnu | *-*-mirbsd* )
|
||||
if test "x$SUNCXX" = "xyes"; then
|
||||
SONAME_FLAG="-h "
|
||||
else
|
||||
*-*-linux* | *-*-freebsd* | *-*-k*bsd*-gnu )
|
||||
SONAME_FLAG="-Wl,-soname,"
|
||||
fi
|
||||
USE_SOVERSION=1
|
||||
USE_SOVERLINUX=1
|
||||
USE_SOTWOSYMLINKS=1
|
||||
USE_SOSYMLINKS=1
|
||||
;;
|
||||
|
||||
*-*-solaris2* )
|
||||
SONAME_FLAG="-h "
|
||||
USE_SOVERSION=1
|
||||
USE_SOVERSOLARIS=1
|
||||
USE_SOSYMLINKS=1
|
||||
;;
|
||||
|
||||
*-*-darwin* )
|
||||
USE_MACVERSION=1
|
||||
USE_SOVERSION=1
|
||||
USE_SOTWOSYMLINKS=1
|
||||
USE_SOSYMLINKS=1
|
||||
;;
|
||||
|
||||
*-*-cygwin* )
|
||||
@@ -529,7 +503,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS],
|
||||
AC_SUBST(USE_SOVERSOLARIS)
|
||||
AC_SUBST(USE_SOVERCYGWIN)
|
||||
AC_SUBST(USE_MACVERSION)
|
||||
AC_SUBST(USE_SOTWOSYMLINKS)
|
||||
AC_SUBST(USE_SOSYMLINKS)
|
||||
AC_SUBST(SONAME_FLAG)
|
||||
])
|
||||
|
||||
@@ -627,14 +601,9 @@ AC_DEFUN([AC_BAKEFILE_CHECK_BASIC_STUFF],
|
||||
dnl Sun C++ compiler requires special way of creating static libs;
|
||||
dnl see here for more details:
|
||||
dnl https://sourceforge.net/tracker/?func=detail&atid=109863&aid=1229751&group_id=9863
|
||||
AR=$CXX
|
||||
AROPTIONS="-xar -o"
|
||||
AC_SUBST(AR)
|
||||
elif test "x$SGICC" = "xyes"; then
|
||||
dnl Almost the same as above for SGI mipsPro compiler
|
||||
AR=$CXX
|
||||
AROPTIONS="-ar -o"
|
||||
AR=${AR:-"$CXX"}
|
||||
AC_SUBST(AR)
|
||||
AROPTIONS=${AROPTIONS:-"-xar -o"}
|
||||
else
|
||||
AC_CHECK_TOOL(AR, ar, ar)
|
||||
AROPTIONS=rcu
|
||||
@@ -644,21 +613,18 @@ AC_DEFUN([AC_BAKEFILE_CHECK_BASIC_STUFF],
|
||||
AC_CHECK_TOOL(STRIP, strip, :)
|
||||
AC_CHECK_TOOL(NM, nm, :)
|
||||
|
||||
dnl This check is necessary because "install -d" doesn't exist on
|
||||
dnl all platforms (e.g. HP/UX), see http://www.bakefile.org/ticket/80
|
||||
AC_MSG_CHECKING([for command to install directories])
|
||||
INSTALL_TEST_DIR=acbftest$$
|
||||
$INSTALL -d $INSTALL_TEST_DIR > /dev/null 2>&1
|
||||
if test $? = 0 -a -d $INSTALL_TEST_DIR; then
|
||||
rmdir $INSTALL_TEST_DIR
|
||||
case ${BAKEFILE_HOST} in
|
||||
*-hp-hpux* )
|
||||
dnl HP-UX install doesn't handle the "-d" switch so don't
|
||||
dnl use it there
|
||||
INSTALL_DIR="mkdir -p"
|
||||
;;
|
||||
* )
|
||||
dnl we must refer to makefile's $(INSTALL) variable and not
|
||||
dnl current value of shell variable, hence the single quoting:
|
||||
INSTALL_DIR='$(INSTALL) -d'
|
||||
AC_MSG_RESULT([$INSTALL -d])
|
||||
else
|
||||
INSTALL_DIR="mkdir -p"
|
||||
AC_MSG_RESULT([mkdir -p])
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
AC_SUBST(INSTALL_DIR)
|
||||
|
||||
LDFLAGS_GUI=
|
||||
@@ -747,19 +713,20 @@ AC_DEFUN([AC_BAKEFILE_PRECOMP_HEADERS],
|
||||
GCC_PCH=1
|
||||
],
|
||||
[
|
||||
if test "$INTELCXX8" = "yes"; then
|
||||
AC_TRY_COMPILE([],
|
||||
[
|
||||
#if !defined(__INTEL_COMPILER) || \
|
||||
(__INTEL_COMPILER < 800)
|
||||
There is no PCH support
|
||||
#endif
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([yes])
|
||||
ICC_PCH=1
|
||||
if test "$INTELCXX10" = "yes"; then
|
||||
ICC_PCH_CREATE_SWITCH="-pch-create"
|
||||
ICC_PCH_USE_SWITCH="-pch-use"
|
||||
else
|
||||
ICC_PCH_CREATE_SWITCH="-create-pch"
|
||||
ICC_PCH_USE_SWITCH="-use-pch"
|
||||
fi
|
||||
else
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
])
|
||||
])
|
||||
if test $GCC_PCH = 1 -o $ICC_PCH = 1 ; then
|
||||
USE_PCH=1
|
||||
@@ -775,8 +742,6 @@ AC_DEFUN([AC_BAKEFILE_PRECOMP_HEADERS],
|
||||
|
||||
AC_SUBST(GCC_PCH)
|
||||
AC_SUBST(ICC_PCH)
|
||||
AC_SUBST(ICC_PCH_CREATE_SWITCH)
|
||||
AC_SUBST(ICC_PCH_USE_SWITCH)
|
||||
AC_SUBST(BK_MAKE_PCH)
|
||||
])
|
||||
|
||||
@@ -807,12 +772,6 @@ AC_DEFUN([AC_BAKEFILE],
|
||||
[
|
||||
AC_PREREQ([2.58])
|
||||
|
||||
dnl We need to always run C/C++ compiler tests, but it's also possible
|
||||
dnl for the user to call these macros manually, hence this instead of
|
||||
dnl simply calling these macros. See http://www.bakefile.org/ticket/64
|
||||
AC_REQUIRE([AC_BAKEFILE_PROG_CC])
|
||||
AC_REQUIRE([AC_BAKEFILE_PROG_CXX])
|
||||
|
||||
if test "x$BAKEFILE_HOST" = "x"; then
|
||||
if test "x${host}" = "x" ; then
|
||||
AC_MSG_ERROR([You must call the autoconf "CANONICAL_HOST" macro in your configure.ac (or .in) file.])
|
||||
@@ -833,11 +792,7 @@ AC_DEFUN([AC_BAKEFILE],
|
||||
AC_BAKEFILE_DEPS
|
||||
AC_BAKEFILE_RES_COMPILERS
|
||||
|
||||
dnl OBJCFLAGS is set by Autoconf, but OBJCXXFLAGS is not:
|
||||
AC_SUBST(OBJCXXFLAGS)
|
||||
|
||||
|
||||
BAKEFILE_BAKEFILE_M4_VERSION="0.2.8"
|
||||
BAKEFILE_BAKEFILE_M4_VERSION="0.2.1"
|
||||
|
||||
dnl includes autoconf_inc.m4:
|
||||
$1
|
||||
@@ -856,6 +811,490 @@ dnl ---------------------------------------------------------------------------
|
||||
dnl Embedded copies of helper scripts follow:
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_CREATE_FILE_DLLAR_SH],
|
||||
[
|
||||
dnl ===================== dllar.sh begins here =====================
|
||||
dnl (Created by merge-scripts.py from dllar.sh
|
||||
dnl file do not edit here!)
|
||||
D='$'
|
||||
cat <<EOF >dllar.sh
|
||||
#!/bin/sh
|
||||
#
|
||||
# dllar - a tool to build both a .dll and an .a file
|
||||
# from a set of object (.o) files for EMX/OS2.
|
||||
#
|
||||
# Written by Andrew Zabolotny, bit@freya.etu.ru
|
||||
# Ported to Unix like shell by Stefan Neis, Stefan.Neis@t-online.de
|
||||
#
|
||||
# This script will accept a set of files on the command line.
|
||||
# All the public symbols from the .o files will be exported into
|
||||
# a .DEF file, then linker will be run (through gcc) against them to
|
||||
# build a shared library consisting of all given .o files. All libraries
|
||||
# (.a) will be first decompressed into component .o files then act as
|
||||
# described above. You can optionally give a description (-d "description")
|
||||
# which will be put into .DLL. To see the list of accepted options (as well
|
||||
# as command-line format) simply run this program without options. The .DLL
|
||||
# is built to be imported by name (there is no guarantee that new versions
|
||||
# of the library you build will have same ordinals for same symbols).
|
||||
#
|
||||
# dllar is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# dllar is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with dllar; see the file COPYING. If not, write to the Free
|
||||
# Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
||||
# 02111-1307, USA.
|
||||
|
||||
# To successfuly run this program you will need:
|
||||
# - Current drive should have LFN support (HPFS, ext2, network, etc)
|
||||
# (Sometimes dllar generates filenames which won't fit 8.3 scheme)
|
||||
# - gcc
|
||||
# (used to build the .dll)
|
||||
# - emxexp
|
||||
# (used to create .def file from .o files)
|
||||
# - emximp
|
||||
# (used to create .a file from .def file)
|
||||
# - GNU text utilites (cat, sort, uniq)
|
||||
# used to process emxexp output
|
||||
# - GNU file utilities (mv, rm)
|
||||
# - GNU sed
|
||||
# - lxlite (optional, see flag below)
|
||||
# (used for general .dll cleanup)
|
||||
#
|
||||
|
||||
flag_USE_LXLITE=1;
|
||||
|
||||
#
|
||||
# helper functions
|
||||
# basnam, variant of basename, which does _not_ remove the path, _iff_
|
||||
# second argument (suffix to remove) is given
|
||||
basnam(){
|
||||
case ${D}# in
|
||||
1)
|
||||
echo ${D}1 | sed 's/.*\\///' | sed 's/.*\\\\//'
|
||||
;;
|
||||
2)
|
||||
echo ${D}1 | sed 's/'${D}2'${D}//'
|
||||
;;
|
||||
*)
|
||||
echo "error in basnam ${D}*"
|
||||
exit 8
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Cleanup temporary files and output
|
||||
CleanUp() {
|
||||
cd ${D}curDir
|
||||
for i in ${D}inputFiles ; do
|
||||
case ${D}i in
|
||||
*!)
|
||||
rm -rf \`basnam ${D}i !\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Kill result in case of failure as there is just to many stupid make/nmake
|
||||
# things out there which doesn't do this.
|
||||
if @<:@ ${D}# -eq 0 @:>@; then
|
||||
rm -f ${D}arcFile ${D}arcFile2 ${D}defFile ${D}dllFile
|
||||
fi
|
||||
}
|
||||
|
||||
# Print usage and exit script with rc=1.
|
||||
PrintHelp() {
|
||||
echo 'Usage: dllar.sh @<:@-o@<:@utput@:>@ output_file@:>@ @<:@-i@<:@mport@:>@ importlib_name@:>@'
|
||||
echo ' @<:@-name-mangler-script script.sh@:>@'
|
||||
echo ' @<:@-d@<:@escription@:>@ "dll descrption"@:>@ @<:@-cc "CC"@:>@ @<:@-f@<:@lags@:>@ "CFLAGS"@:>@'
|
||||
echo ' @<:@-ord@<:@inals@:>@@:>@ -ex@<:@clude@:>@ "symbol(s)"'
|
||||
echo ' @<:@-libf@<:@lags@:>@ "{INIT|TERM}{GLOBAL|INSTANCE}"@:>@ @<:@-nocrt@<:@dll@:>@@:>@ @<:@-nolxl@<:@ite@:>@@:>@'
|
||||
echo ' @<:@*.o@:>@ @<:@*.a@:>@'
|
||||
echo '*> "output_file" should have no extension.'
|
||||
echo ' If it has the .o, .a or .dll extension, it is automatically removed.'
|
||||
echo ' The import library name is derived from this and is set to "name".a,'
|
||||
echo ' unless overridden by -import'
|
||||
echo '*> "importlib_name" should have no extension.'
|
||||
echo ' If it has the .o, or .a extension, it is automatically removed.'
|
||||
echo ' This name is used as the import library name and may be longer and'
|
||||
echo ' more descriptive than the DLL name which has to follow the old '
|
||||
echo ' 8.3 convention of FAT.'
|
||||
echo '*> "script.sh may be given to override the output_file name by a'
|
||||
echo ' different name. It is mainly useful if the regular make process'
|
||||
echo ' of some package does not take into account OS/2 restriction of'
|
||||
echo ' DLL name lengths. It takes the importlib name as input and is'
|
||||
echo ' supposed to procude a shorter name as output. The script should'
|
||||
echo ' expect to get importlib_name without extension and should produce'
|
||||
echo ' a (max.) 8 letter name without extension.'
|
||||
echo '*> "cc" is used to use another GCC executable. (default: gcc.exe)'
|
||||
echo '*> "flags" should be any set of valid GCC flags. (default: -s -Zcrtdll)'
|
||||
echo ' These flags will be put at the start of GCC command line.'
|
||||
echo '*> -ord@<:@inals@:>@ tells dllar to export entries by ordinals. Be careful.'
|
||||
echo '*> -ex@<:@clude@:>@ defines symbols which will not be exported. You can define'
|
||||
echo ' multiple symbols, for example -ex "myfunc yourfunc _GLOBAL*".'
|
||||
echo ' If the last character of a symbol is "*", all symbols beginning'
|
||||
echo ' with the prefix before "*" will be exclude, (see _GLOBAL* above).'
|
||||
echo '*> -libf@<:@lags@:>@ can be used to add INITGLOBAL/INITINSTANCE and/or'
|
||||
echo ' TERMGLOBAL/TERMINSTANCE flags to the dynamically-linked library.'
|
||||
echo '*> -nocrt@<:@dll@:>@ switch will disable linking the library against emx''s'
|
||||
echo ' C runtime DLLs.'
|
||||
echo '*> -nolxl@<:@ite@:>@ switch will disable running lxlite on the resulting DLL.'
|
||||
echo '*> All other switches (for example -L./ or -lmylib) will be passed'
|
||||
echo ' unchanged to GCC at the end of command line.'
|
||||
echo '*> If you create a DLL from a library and you do not specify -o,'
|
||||
echo ' the basename for DLL and import library will be set to library name,'
|
||||
echo ' the initial library will be renamed to 'name'_s.a (_s for static)'
|
||||
echo ' i.e. "dllar gcc.a" will create gcc.dll and gcc.a, and the initial'
|
||||
echo ' library will be renamed into gcc_s.a.'
|
||||
echo '--------'
|
||||
echo 'Example:'
|
||||
echo ' dllar -o gcc290.dll libgcc.a -d "GNU C runtime library" -ord'
|
||||
echo ' -ex "__main __ctordtor*" -libf "INITINSTANCE TERMINSTANCE"'
|
||||
CleanUp
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Execute a command.
|
||||
# If exit code of the commnad <> 0 CleanUp() is called and we'll exit the script.
|
||||
# @Uses Whatever CleanUp() uses.
|
||||
doCommand() {
|
||||
echo "${D}*"
|
||||
eval ${D}*
|
||||
rcCmd=${D}?
|
||||
|
||||
if @<:@ ${D}rcCmd -ne 0 @:>@; then
|
||||
echo "command failed, exit code="${D}rcCmd
|
||||
CleanUp
|
||||
exit ${D}rcCmd
|
||||
fi
|
||||
}
|
||||
|
||||
# main routine
|
||||
# setup globals
|
||||
cmdLine=${D}*
|
||||
outFile=""
|
||||
outimpFile=""
|
||||
inputFiles=""
|
||||
renameScript=""
|
||||
description=""
|
||||
CC=gcc.exe
|
||||
CFLAGS="-s -Zcrtdll"
|
||||
EXTRA_CFLAGS=""
|
||||
EXPORT_BY_ORDINALS=0
|
||||
exclude_symbols=""
|
||||
library_flags=""
|
||||
curDir=\`pwd\`
|
||||
curDirS=curDir
|
||||
case ${D}curDirS in
|
||||
*/)
|
||||
;;
|
||||
*)
|
||||
curDirS=${D}{curDirS}"/"
|
||||
;;
|
||||
esac
|
||||
# Parse commandline
|
||||
libsToLink=0
|
||||
omfLinking=0
|
||||
while @<:@ ${D}1 @:>@; do
|
||||
case ${D}1 in
|
||||
-ord*)
|
||||
EXPORT_BY_ORDINALS=1;
|
||||
;;
|
||||
-o*)
|
||||
shift
|
||||
outFile=${D}1
|
||||
;;
|
||||
-i*)
|
||||
shift
|
||||
outimpFile=${D}1
|
||||
;;
|
||||
-name-mangler-script)
|
||||
shift
|
||||
renameScript=${D}1
|
||||
;;
|
||||
-d*)
|
||||
shift
|
||||
description=${D}1
|
||||
;;
|
||||
-f*)
|
||||
shift
|
||||
CFLAGS=${D}1
|
||||
;;
|
||||
-c*)
|
||||
shift
|
||||
CC=${D}1
|
||||
;;
|
||||
-h*)
|
||||
PrintHelp
|
||||
;;
|
||||
-ex*)
|
||||
shift
|
||||
exclude_symbols=${D}{exclude_symbols}${D}1" "
|
||||
;;
|
||||
-libf*)
|
||||
shift
|
||||
library_flags=${D}{library_flags}${D}1" "
|
||||
;;
|
||||
-nocrt*)
|
||||
CFLAGS="-s"
|
||||
;;
|
||||
-nolxl*)
|
||||
flag_USE_LXLITE=0
|
||||
;;
|
||||
-* | /*)
|
||||
case ${D}1 in
|
||||
-L* | -l*)
|
||||
libsToLink=1
|
||||
;;
|
||||
-Zomf)
|
||||
omfLinking=1
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1
|
||||
;;
|
||||
*.dll)
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS} \`basnam ${D}1 .dll\`"
|
||||
if @<:@ ${D}omfLinking -eq 1 @:>@; then
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.lib"
|
||||
else
|
||||
EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.a"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
found=0;
|
||||
if @<:@ ${D}libsToLink -ne 0 @:>@; then
|
||||
EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1
|
||||
else
|
||||
for file in ${D}1 ; do
|
||||
if @<:@ -f ${D}file @:>@; then
|
||||
inputFiles="${D}{inputFiles} ${D}file"
|
||||
found=1
|
||||
fi
|
||||
done
|
||||
if @<:@ ${D}found -eq 0 @:>@; then
|
||||
echo "ERROR: No file(s) found: "${D}1
|
||||
exit 8
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done # iterate cmdline words
|
||||
|
||||
#
|
||||
if @<:@ -z "${D}inputFiles" @:>@; then
|
||||
echo "dllar: no input files"
|
||||
PrintHelp
|
||||
fi
|
||||
|
||||
# Now extract all .o files from .a files
|
||||
newInputFiles=""
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*.a | *.lib)
|
||||
case ${D}file in
|
||||
*.a)
|
||||
suffix=".a"
|
||||
AR="ar"
|
||||
;;
|
||||
*.lib)
|
||||
suffix=".lib"
|
||||
AR="emxomfar"
|
||||
EXTRA_CFLAGS="${D}EXTRA_CFLAGS -Zomf"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
dirname=\`basnam ${D}file ${D}suffix\`"_%"
|
||||
mkdir ${D}dirname
|
||||
if @<:@ ${D}? -ne 0 @:>@; then
|
||||
echo "Failed to create subdirectory ./${D}dirname"
|
||||
CleanUp
|
||||
exit 8;
|
||||
fi
|
||||
# Append '!' to indicate archive
|
||||
newInputFiles="${D}newInputFiles ${D}{dirname}!"
|
||||
doCommand "cd ${D}dirname; ${D}AR x ../${D}file"
|
||||
cd ${D}curDir
|
||||
found=0;
|
||||
for subfile in ${D}dirname/*.o* ; do
|
||||
if @<:@ -f ${D}subfile @:>@; then
|
||||
found=1
|
||||
if @<:@ -s ${D}subfile @:>@; then
|
||||
# FIXME: This should be: is file size > 32 byte, _not_ > 0!
|
||||
newInputFiles="${D}newInputFiles ${D}subfile"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
if @<:@ ${D}found -eq 0 @:>@; then
|
||||
echo "WARNING: there are no files in archive \\'${D}file\\'"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
newInputFiles="${D}{newInputFiles} ${D}file"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
inputFiles="${D}newInputFiles"
|
||||
|
||||
# Output filename(s).
|
||||
do_backup=0;
|
||||
if @<:@ -z ${D}outFile @:>@; then
|
||||
do_backup=1;
|
||||
set outFile ${D}inputFiles; outFile=${D}2
|
||||
fi
|
||||
|
||||
# If it is an archive, remove the '!' and the '_%' suffixes
|
||||
case ${D}outFile in
|
||||
*_%!)
|
||||
outFile=\`basnam ${D}outFile _%!\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
case ${D}outFile in
|
||||
*.dll)
|
||||
outFile=\`basnam ${D}outFile .dll\`
|
||||
;;
|
||||
*.DLL)
|
||||
outFile=\`basnam ${D}outFile .DLL\`
|
||||
;;
|
||||
*.o)
|
||||
outFile=\`basnam ${D}outFile .o\`
|
||||
;;
|
||||
*.obj)
|
||||
outFile=\`basnam ${D}outFile .obj\`
|
||||
;;
|
||||
*.a)
|
||||
outFile=\`basnam ${D}outFile .a\`
|
||||
;;
|
||||
*.lib)
|
||||
outFile=\`basnam ${D}outFile .lib\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
case ${D}outimpFile in
|
||||
*.a)
|
||||
outimpFile=\`basnam ${D}outimpFile .a\`
|
||||
;;
|
||||
*.lib)
|
||||
outimpFile=\`basnam ${D}outimpFile .lib\`
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
if @<:@ -z ${D}outimpFile @:>@; then
|
||||
outimpFile=${D}outFile
|
||||
fi
|
||||
defFile="${D}{outFile}.def"
|
||||
arcFile="${D}{outimpFile}.a"
|
||||
arcFile2="${D}{outimpFile}.lib"
|
||||
|
||||
#create ${D}dllFile as something matching 8.3 restrictions,
|
||||
if @<:@ -z ${D}renameScript @:>@ ; then
|
||||
dllFile="${D}outFile"
|
||||
else
|
||||
dllFile=\`${D}renameScript ${D}outimpFile\`
|
||||
fi
|
||||
|
||||
if @<:@ ${D}do_backup -ne 0 @:>@ ; then
|
||||
if @<:@ -f ${D}arcFile @:>@ ; then
|
||||
doCommand "mv ${D}arcFile ${D}{outFile}_s.a"
|
||||
fi
|
||||
if @<:@ -f ${D}arcFile2 @:>@ ; then
|
||||
doCommand "mv ${D}arcFile2 ${D}{outFile}_s.lib"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Extract public symbols from all the object files.
|
||||
tmpdefFile=${D}{defFile}_%
|
||||
rm -f ${D}tmpdefFile
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*!)
|
||||
;;
|
||||
*)
|
||||
doCommand "emxexp -u ${D}file >> ${D}tmpdefFile"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Create the def file.
|
||||
rm -f ${D}defFile
|
||||
echo "LIBRARY \`basnam ${D}dllFile\` ${D}library_flags" >> ${D}defFile
|
||||
dllFile="${D}{dllFile}.dll"
|
||||
if @<:@ ! -z ${D}description @:>@; then
|
||||
echo "DESCRIPTION \\"${D}{description}\\"" >> ${D}defFile
|
||||
fi
|
||||
echo "EXPORTS" >> ${D}defFile
|
||||
|
||||
doCommand "cat ${D}tmpdefFile | sort.exe | uniq.exe > ${D}{tmpdefFile}%"
|
||||
grep -v "^ *;" < ${D}{tmpdefFile}% | grep -v "^ *${D}" >${D}tmpdefFile
|
||||
|
||||
# Checks if the export is ok or not.
|
||||
for word in ${D}exclude_symbols; do
|
||||
grep -v ${D}word < ${D}tmpdefFile >${D}{tmpdefFile}%
|
||||
mv ${D}{tmpdefFile}% ${D}tmpdefFile
|
||||
done
|
||||
|
||||
|
||||
if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then
|
||||
sed "=" < ${D}tmpdefFile | \\
|
||||
sed '
|
||||
N
|
||||
: loop
|
||||
s/^\\(@<:@0-9@:>@\\+\\)\\(@<:@^;@:>@*\\)\\(;.*\\)\\?/\\2 @\\1 NONAME/
|
||||
t loop
|
||||
' > ${D}{tmpdefFile}%
|
||||
grep -v "^ *${D}" < ${D}{tmpdefFile}% > ${D}tmpdefFile
|
||||
else
|
||||
rm -f ${D}{tmpdefFile}%
|
||||
fi
|
||||
cat ${D}tmpdefFile >> ${D}defFile
|
||||
rm -f ${D}tmpdefFile
|
||||
|
||||
# Do linking, create implib, and apply lxlite.
|
||||
gccCmdl="";
|
||||
for file in ${D}inputFiles ; do
|
||||
case ${D}file in
|
||||
*!)
|
||||
;;
|
||||
*)
|
||||
gccCmdl="${D}gccCmdl ${D}file"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
doCommand "${D}CC ${D}CFLAGS -Zdll -o ${D}dllFile ${D}defFile ${D}gccCmdl ${D}EXTRA_CFLAGS"
|
||||
touch "${D}{outFile}.dll"
|
||||
|
||||
doCommand "emximp -o ${D}arcFile ${D}defFile"
|
||||
if @<:@ ${D}flag_USE_LXLITE -ne 0 @:>@; then
|
||||
add_flags="";
|
||||
if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then
|
||||
add_flags="-ynd"
|
||||
fi
|
||||
doCommand "lxlite -cs -t: -mrn -mln ${D}add_flags ${D}dllFile"
|
||||
fi
|
||||
doCommand "emxomf -s -l ${D}arcFile"
|
||||
|
||||
# Successful exit.
|
||||
CleanUp 1
|
||||
exit 0
|
||||
EOF
|
||||
dnl ===================== dllar.sh ends here =====================
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_BAKEFILE_CREATE_FILE_BK_DEPS],
|
||||
[
|
||||
dnl ===================== bk-deps begins here =====================
|
||||
@@ -865,20 +1304,24 @@ D='$'
|
||||
cat <<EOF >bk-deps
|
||||
#!/bin/sh
|
||||
|
||||
# This script is part of Bakefile (http://www.bakefile.org) autoconf
|
||||
# This script is part of Bakefile (http://bakefile.sourceforge.net) autoconf
|
||||
# script. It is used to track C/C++ files dependencies in portable way.
|
||||
#
|
||||
# Permission is given to use this file in any way.
|
||||
|
||||
DEPSMODE=${DEPSMODE}
|
||||
DEPSDIR=.deps
|
||||
DEPSFLAG="${DEPSFLAG}"
|
||||
DEPSDIRBASE=.deps
|
||||
|
||||
mkdir -p ${D}DEPSDIR
|
||||
|
||||
if test ${D}DEPSMODE = gcc ; then
|
||||
${D}* ${D}{DEPSFLAG}
|
||||
status=${D}?
|
||||
|
||||
# determine location of created files:
|
||||
if test ${D}{status} != 0 ; then
|
||||
exit ${D}{status}
|
||||
fi
|
||||
# move created file to the location we want it in:
|
||||
while test ${D}# -gt 0; do
|
||||
case "${D}1" in
|
||||
-o )
|
||||
@@ -893,37 +1336,24 @@ if test ${D}DEPSMODE = gcc ; then
|
||||
esac
|
||||
shift
|
||||
done
|
||||
objfilebase=\`basename ${D}objfile\`
|
||||
builddir=\`dirname ${D}objfile\`
|
||||
depfile=\`basename ${D}srcfile | sed -e 's/\\..*${D}/.d/g'\`
|
||||
depobjname=\`echo ${D}depfile |sed -e 's/\\.d/.o/g'\`
|
||||
depsdir=${D}builddir/${D}DEPSDIRBASE
|
||||
mkdir -p ${D}depsdir
|
||||
|
||||
# if the compiler failed, we're done:
|
||||
if test ${D}{status} != 0 ; then
|
||||
rm -f ${D}depfile
|
||||
exit ${D}{status}
|
||||
fi
|
||||
|
||||
# move created file to the location we want it in:
|
||||
if test -f ${D}depfile ; then
|
||||
sed -e "s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{depsdir}/${D}{objfilebase}.d
|
||||
sed -e "s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d
|
||||
rm -f ${D}depfile
|
||||
else
|
||||
# "g++ -MMD -o fooobj.o foosrc.cpp" produces fooobj.d
|
||||
depfile=\`echo "${D}objfile" | sed -e 's/\\..*${D}/.d/g'\`
|
||||
depfile=\`basename ${D}objfile | sed -e 's/\\..*${D}/.d/g'\`
|
||||
if test ! -f ${D}depfile ; then
|
||||
# "cxx -MD -o fooobj.o foosrc.cpp" creates fooobj.o.d (Compaq C++)
|
||||
depfile="${D}objfile.d"
|
||||
fi
|
||||
if test -f ${D}depfile ; then
|
||||
sed -e "\\,^${D}objfile,!s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{depsdir}/${D}{objfilebase}.d
|
||||
sed -e "/^${D}objfile/!s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d
|
||||
rm -f ${D}depfile
|
||||
fi
|
||||
fi
|
||||
exit 0
|
||||
|
||||
elif test ${D}DEPSMODE = mwcc ; then
|
||||
${D}* || exit ${D}?
|
||||
# Run mwcc again with -MM and redirect into the dep file we want
|
||||
@@ -943,15 +1373,8 @@ elif test ${D}DEPSMODE = mwcc ; then
|
||||
fi
|
||||
prevarg="${D}arg"
|
||||
done
|
||||
|
||||
objfilebase=\`basename ${D}objfile\`
|
||||
builddir=\`dirname ${D}objfile\`
|
||||
depsdir=${D}builddir/${D}DEPSDIRBASE
|
||||
mkdir -p ${D}depsdir
|
||||
|
||||
${D}* ${D}DEPSFLAG >${D}{depsdir}/${D}{objfilebase}.d
|
||||
${D}* ${D}DEPSFLAG >${D}{DEPSDIR}/${D}{objfile}.d
|
||||
exit 0
|
||||
|
||||
elif test ${D}DEPSMODE = unixcc; then
|
||||
${D}* || exit ${D}?
|
||||
# Run compiler again with deps flag and redirect into the dep file.
|
||||
@@ -972,15 +1395,8 @@ elif test ${D}DEPSMODE = unixcc; then
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
objfilebase=\`basename ${D}objfile\`
|
||||
builddir=\`dirname ${D}objfile\`
|
||||
depsdir=${D}builddir/${D}DEPSDIRBASE
|
||||
mkdir -p ${D}depsdir
|
||||
|
||||
eval "${D}cmd ${D}DEPSFLAG" | sed "s|.*:|${D}objfile:|" >${D}{depsdir}/${D}{objfilebase}.d
|
||||
eval "${D}cmd ${D}DEPSFLAG" | sed "s|.*:|${D}objfile:|" >${D}{DEPSDIR}/${D}{objfile}.d
|
||||
exit 0
|
||||
|
||||
else
|
||||
${D}*
|
||||
exit ${D}?
|
||||
@@ -1011,10 +1427,6 @@ objects=""
|
||||
linking_flag="-dynamiclib"
|
||||
ldargs="-r -keep_private_externs -nostdlib"
|
||||
|
||||
if test "x${D}CXX" = "x"; then
|
||||
CXX="c++"
|
||||
fi
|
||||
|
||||
while test ${D}# -gt 0; do
|
||||
case ${D}1 in
|
||||
|
||||
@@ -1028,12 +1440,6 @@ while test ${D}# -gt 0; do
|
||||
shift
|
||||
;;
|
||||
|
||||
-arch|-isysroot)
|
||||
# collect these options and values
|
||||
ldargs="${D}{ldargs} ${D}1 ${D}2"
|
||||
shift
|
||||
;;
|
||||
|
||||
-s|-Wl,*)
|
||||
# collect these load args
|
||||
ldargs="${D}{ldargs} ${D}1"
|
||||
@@ -1073,9 +1479,9 @@ status=0
|
||||
# Link one module containing all the others
|
||||
#
|
||||
if test ${D}{verbose} = 1; then
|
||||
echo "${D}CXX ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o"
|
||||
echo "c++ ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o"
|
||||
fi
|
||||
${D}CXX ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o
|
||||
c++ ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o
|
||||
status=${D}?
|
||||
|
||||
#
|
||||
@@ -1084,9 +1490,9 @@ status=${D}?
|
||||
#
|
||||
if test ${D}{status} = 0; then
|
||||
if test ${D}{verbose} = 1; then
|
||||
echo "${D}CXX ${D}{linking_flag} master.${D}${D}.o ${D}{args}"
|
||||
echo "c++ ${D}{linking_flag} master.${D}${D}.o ${D}{args}"
|
||||
fi
|
||||
${D}CXX ${D}{linking_flag} master.${D}${D}.o ${D}{args}
|
||||
c++ ${D}{linking_flag} master.${D}${D}.o ${D}{args}
|
||||
status=${D}?
|
||||
fi
|
||||
|
||||
@@ -1109,7 +1515,7 @@ D='$'
|
||||
cat <<EOF >bk-make-pch
|
||||
#!/bin/sh
|
||||
|
||||
# This script is part of Bakefile (http://www.bakefile.org) autoconf
|
||||
# This script is part of Bakefile (http://bakefile.sourceforge.net) autoconf
|
||||
# script. It is used to generated precompiled headers.
|
||||
#
|
||||
# Permission is given to use this file in any way.
|
||||
@@ -1119,8 +1525,6 @@ header="${D}{2}"
|
||||
shift
|
||||
shift
|
||||
|
||||
builddir=\`echo ${D}outfile | sed -e 's,/\\.pch/.*${D},,g'\`
|
||||
|
||||
compiler=""
|
||||
headerfile=""
|
||||
|
||||
@@ -1133,7 +1537,7 @@ while test ${D}{#} -gt 0; do
|
||||
headerfile="${D}{incdir}/${D}{header}"
|
||||
fi
|
||||
;;
|
||||
-use-pch|-use_pch|-pch-use )
|
||||
-use-pch|-use_pch )
|
||||
shift
|
||||
add_to_cmdline=0
|
||||
;;
|
||||
@@ -1152,8 +1556,8 @@ else
|
||||
else
|
||||
mkdir -p \`dirname ${D}{outfile}\`
|
||||
fi
|
||||
depsfile="${D}{builddir}/.deps/\`echo ${D}{outfile} | tr '/.' '__'\`.d"
|
||||
mkdir -p ${D}{builddir}/.deps
|
||||
depsfile=".deps/\`echo ${D}{outfile} | tr '/.' '__'\`.d"
|
||||
mkdir -p .deps
|
||||
if test "x${GCC_PCH}" = "x1" ; then
|
||||
# can do this because gcc is >= 3.4:
|
||||
${D}{compiler} -o ${D}{outfile} -MMD -MF "${D}{depsfile}" "${D}{headerfile}"
|
||||
@@ -1165,7 +1569,7 @@ else
|
||||
#include "${D}header"
|
||||
EOT
|
||||
# using -MF icc complains about differing command lines in creation/use
|
||||
${D}compiler -c ${ICC_PCH_CREATE_SWITCH} ${D}outfile -MMD ${D}file && \\
|
||||
${D}compiler -c -create_pch ${D}outfile -MMD ${D}file && \\
|
||||
sed -e "s,^.*:,${D}outfile:," -e "s, ${D}file,," < ${D}dfile > ${D}depsfile && \\
|
||||
rm -f ${D}file ${D}dfile ${D}{filename}.o
|
||||
fi
|
||||
|
@@ -1,132 +0,0 @@
|
||||
dnl visibility.m4 serial 1 (gettext-0.15)
|
||||
dnl Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
dnl From Bruno Haible.
|
||||
|
||||
dnl Modified for use in wxWidgets by Vaclav Slavik:
|
||||
dnl - don't define HAVE_VISIBILITY (=0) if not supported
|
||||
dnl - use -fvisibility-inlines-hidden too
|
||||
dnl - test in C++ mode
|
||||
|
||||
dnl Tests whether the compiler supports the command-line option
|
||||
dnl -fvisibility=hidden and the function and variable attributes
|
||||
dnl __attribute__((__visibility__("hidden"))) and
|
||||
dnl __attribute__((__visibility__("default"))).
|
||||
dnl Does *not* test for __visibility__("protected") - which has tricky
|
||||
dnl semantics (see the 'vismain' test in glibc) and does not exist e.g. on
|
||||
dnl MacOS X.
|
||||
dnl Does *not* test for __visibility__("internal") - which has processor
|
||||
dnl dependent semantics.
|
||||
dnl Does *not* test for #pragma GCC visibility push(hidden) - which is
|
||||
dnl "really only recommended for legacy code".
|
||||
dnl Set the variable CFLAG_VISIBILITY.
|
||||
dnl Defines and sets the variable HAVE_VISIBILITY.
|
||||
|
||||
AC_DEFUN([WX_VISIBILITY],
|
||||
[
|
||||
AC_REQUIRE([AC_PROG_CC])
|
||||
if test -n "$GCC"; then
|
||||
CFLAGS_VISIBILITY="-fvisibility=hidden"
|
||||
CXXFLAGS_VISIBILITY="-fvisibility=hidden -fvisibility-inlines-hidden"
|
||||
AC_MSG_CHECKING([for symbols visibility support])
|
||||
AC_CACHE_VAL(wx_cv_cc_visibility, [
|
||||
wx_save_CXXFLAGS="$CXXFLAGS"
|
||||
CXXFLAGS="$CXXFLAGS $CXXFLAGS_VISIBILITY"
|
||||
AC_LANG_PUSH(C++)
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
/* we need gcc >= 4.0, older versions with visibility support
|
||||
didn't have class visibility: */
|
||||
#if defined(__GNUC__) && __GNUC__ < 4
|
||||
error this gcc is too old;
|
||||
#endif
|
||||
|
||||
/* visibility only makes sense for ELF shared libs: */
|
||||
#if !defined(__ELF__) && !defined(__APPLE__)
|
||||
error this platform has no visibility;
|
||||
#endif
|
||||
|
||||
extern __attribute__((__visibility__("hidden"))) int hiddenvar;
|
||||
extern __attribute__((__visibility__("default"))) int exportedvar;
|
||||
extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
|
||||
extern __attribute__((__visibility__("default"))) int exportedfunc (void);
|
||||
class __attribute__((__visibility__("default"))) Foo {
|
||||
Foo() {}
|
||||
};
|
||||
],
|
||||
[],
|
||||
wx_cv_cc_visibility=yes,
|
||||
wx_cv_cc_visibility=no)
|
||||
AC_LANG_POP()
|
||||
CXXFLAGS="$wx_save_CXXFLAGS"])
|
||||
AC_MSG_RESULT([$wx_cv_cc_visibility])
|
||||
if test $wx_cv_cc_visibility = yes; then
|
||||
dnl we do have basic visibility support, now check if we can use it:
|
||||
dnl
|
||||
dnl Debian/Ubuntu's gcc 4.1 is affected:
|
||||
dnl https://bugs.launchpad.net/ubuntu/+source/gcc-4.1/+bug/109262
|
||||
AC_MSG_CHECKING([for broken libstdc++ visibility])
|
||||
AC_CACHE_VAL(wx_cv_cc_broken_libstdcxx_visibility, [
|
||||
wx_save_CXXFLAGS="$CXXFLAGS"
|
||||
wx_save_LDFLAGS="$LDFLAGS"
|
||||
CXXFLAGS="$CXXFLAGS $CXXFLAGS_VISIBILITY"
|
||||
LDFLAGS="$LDFLAGS -shared -fPIC"
|
||||
AC_LANG_PUSH(C++)
|
||||
AC_TRY_LINK(
|
||||
[
|
||||
#include <string>
|
||||
],
|
||||
[
|
||||
std::string s("hello");
|
||||
return s.length();
|
||||
],
|
||||
wx_cv_cc_broken_libstdcxx_visibility=no,
|
||||
wx_cv_cc_broken_libstdcxx_visibility=yes)
|
||||
AC_LANG_POP()
|
||||
CXXFLAGS="$wx_save_CXXFLAGS"
|
||||
LDFLAGS="$wx_save_LDFLAGS"])
|
||||
AC_MSG_RESULT([$wx_cv_cc_broken_libstdcxx_visibility])
|
||||
|
||||
if test $wx_cv_cc_broken_libstdcxx_visibility = yes; then
|
||||
AC_MSG_CHECKING([whether we can work around it])
|
||||
AC_CACHE_VAL(wx_cv_cc_visibility_workaround, [
|
||||
AC_LANG_PUSH(C++)
|
||||
AC_TRY_LINK(
|
||||
[
|
||||
#pragma GCC visibility push(default)
|
||||
#include <string>
|
||||
#pragma GCC visibility pop
|
||||
],
|
||||
[
|
||||
std::string s("hello");
|
||||
return s.length();
|
||||
],
|
||||
wx_cv_cc_visibility_workaround=no,
|
||||
wx_cv_cc_visibility_workaround=yes)
|
||||
AC_LANG_POP()
|
||||
])
|
||||
AC_MSG_RESULT([$wx_cv_cc_visibility_workaround])
|
||||
|
||||
if test $wx_cv_cc_visibility_workaround = no; then
|
||||
dnl we can't use visibility at all then
|
||||
wx_cv_cc_visibility=no
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $wx_cv_cc_visibility = yes; then
|
||||
AC_DEFINE([HAVE_VISIBILITY])
|
||||
if test $wx_cv_cc_broken_libstdcxx_visibility = yes; then
|
||||
AC_DEFINE([HAVE_BROKEN_LIBSTDCXX_VISIBILITY])
|
||||
fi
|
||||
else
|
||||
CFLAGS_VISIBILITY=""
|
||||
CXXFLAGS_VISIBILITY=""
|
||||
fi
|
||||
AC_SUBST([CFLAGS_VISIBILITY])
|
||||
AC_SUBST([CXXFLAGS_VISIBILITY])
|
||||
fi
|
||||
])
|
@@ -1,26 +0,0 @@
|
||||
# Created: 2005/03/12
|
||||
# Author: David Elliott
|
||||
|
||||
# For autoconf: Debian in their infinite wisdom decided to improve upon
|
||||
# the standard autoconf 2.59 macros. Thus Debian's autoconf generates
|
||||
# a totally different configure script. This fixes it to look
|
||||
# mostly like Debian's. There are also some fixes pulled in from the OS/2
|
||||
# fork of autoconf.
|
||||
|
||||
# Rule to freeze the m4 so autoconf will actually use it.
|
||||
# NOTE: VERY important to cd to somewhere there are no .m4 files.
|
||||
# or at least no aclocal.m4 or else autom4te helpfully picks it up.
|
||||
.PHONY: all
|
||||
all: autoconf/autoconf.m4f
|
||||
|
||||
AUTOCONF_SOURCES = \
|
||||
autoconf/c.m4 \
|
||||
autoconf/general.m4 \
|
||||
autoconf/libs.m4 \
|
||||
autoconf/status.m4
|
||||
|
||||
AUTOM4TE=autom4te
|
||||
|
||||
autoconf/autoconf.m4f: $(AUTOCONF_SOURCES)
|
||||
$(AUTOM4TE) -B . --language=Autoconf --freeze --output=autoconf/autoconf.m4f
|
||||
|
@@ -1,22 +0,0 @@
|
||||
wxAutohacks
|
||||
|
||||
wxAutohacks is a way of ensuring the configure script remains consistent
|
||||
between developer commits. Previous releases include a build/aclocal_include
|
||||
which has now been moved into the wxWidgets build/aclocal directory.
|
||||
|
||||
At the moment, it is intended to be copied and or symlinked into a wxWidgets
|
||||
source tree. For example, assume you have wxWidgets checked out in the
|
||||
/home/myname/wxCVS/wxWidgets/ path. Then from /home/myname/wxCVS do this:
|
||||
cvs -d :pserver:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets checkout wxAutohacks
|
||||
|
||||
You will now have wxAutohacks in /home/myname/wxCVS/wxAutohacks/. Now go into
|
||||
the wxWidgets build (/home/myname/wxCVS/wxWidgets/build/) and do this:
|
||||
ln -s ../../wxAutohacks/build/autoconf_prepend-include .
|
||||
|
||||
From now on from the root of your wxWidgets source tree when you do this:
|
||||
make -f build/autogen.mk
|
||||
you will also build an autoconf.m4f file which will ensure the configure
|
||||
script stays consistent.
|
||||
|
||||
Alternatively you can do this:
|
||||
make -f build/autogen.mk AUTOHACKS_PREPEND_INCLUDE_DIR=../wxAutohacks/build/autoconf_prepend-include
|
@@ -1,496 +0,0 @@
|
||||
# This file is part of Autoconf. -*- Autoconf -*-
|
||||
# Checking for libraries.
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
|
||||
# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
# 02110-1301, USA.
|
||||
|
||||
# As a special exception, the Free Software Foundation gives unlimited
|
||||
# permission to copy, distribute and modify the configure scripts that
|
||||
# are the output of Autoconf. You need not follow the terms of the GNU
|
||||
# General Public License when using or distributing such scripts, even
|
||||
# though portions of the text of Autoconf appear in them. The GNU
|
||||
# General Public License (GPL) does govern all other use of the material
|
||||
# that constitutes the Autoconf program.
|
||||
#
|
||||
# Certain portions of the Autoconf source text are designed to be copied
|
||||
# (in certain cases, depending on the input) into the output of
|
||||
# Autoconf. We call these the "data" portions. The rest of the Autoconf
|
||||
# source text consists of comments plus executable code that decides which
|
||||
# of the data portions to output in any given case. We call these
|
||||
# comments and executable code the "non-data" portions. Autoconf never
|
||||
# copies any of the non-data portions into its output.
|
||||
#
|
||||
# This special exception to the GPL applies to versions of Autoconf
|
||||
# released by the Free Software Foundation. When you make and
|
||||
# distribute a modified version of Autoconf, you may extend this special
|
||||
# exception to the GPL to apply to your modified version as well, *unless*
|
||||
# your modified version has the potential to copy into its output some
|
||||
# of the text that was the non-data portion of the version that you started
|
||||
# with. (In other words, unless your change moves or copies text from
|
||||
# the non-data portions to the data portions.) If your modification has
|
||||
# such potential, you must delete any notice of this special exception
|
||||
# to the GPL from your modified version.
|
||||
#
|
||||
# Written by David MacKenzie, with help from
|
||||
# Franc,ois Pinard, Karl Berry, Richard Pixley, Ian Lance Taylor,
|
||||
# Roland McGrath, Noah Friedman, david d zuhn, and many others.
|
||||
|
||||
# Table of contents
|
||||
#
|
||||
# 1. Generic tests for libraries
|
||||
# 2. Tests for specific libraries
|
||||
|
||||
|
||||
## --------------------------------- ##
|
||||
## 1. Generic tests for libraries.## ##
|
||||
## --------------------------------- ##
|
||||
|
||||
|
||||
|
||||
# AC_SEARCH_LIBS(FUNCTION, SEARCH-LIBS,
|
||||
# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
|
||||
# [OTHER-LIBRARIES])
|
||||
# --------------------------------------------------------
|
||||
# Search for a library defining FUNC, if it's not already available.
|
||||
AC_DEFUN([AC_SEARCH_LIBS],
|
||||
[AS_VAR_PUSHDEF([ac_Search], [ac_cv_search_$1])dnl
|
||||
AC_CACHE_CHECK([for library containing $1], [ac_Search],
|
||||
[ac_func_search_save_LIBS=$LIBS
|
||||
AC_LANG_CONFTEST([AC_LANG_CALL([], [$1])])
|
||||
for ac_lib in '' $2; do
|
||||
if test -z "$ac_lib"; then
|
||||
ac_res="none required"
|
||||
else
|
||||
ac_res=-l$ac_lib
|
||||
LIBS="-l$ac_lib $5 $ac_func_search_save_LIBS"
|
||||
fi
|
||||
AC_LINK_IFELSE([], [AS_VAR_SET([ac_Search], [$ac_res])])
|
||||
AS_VAR_SET_IF([ac_Search], [break])dnl
|
||||
done
|
||||
AS_VAR_SET_IF([ac_Search], , [AS_VAR_SET([ac_Search], [no])])dnl
|
||||
rm conftest.$ac_ext
|
||||
LIBS=$ac_func_search_save_LIBS])
|
||||
ac_res=AS_VAR_GET([ac_Search])
|
||||
AS_IF([test "$ac_res" != no],
|
||||
[test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
|
||||
$3],
|
||||
[$4])dnl
|
||||
AS_VAR_POPDEF([ac_Search])dnl
|
||||
])
|
||||
|
||||
|
||||
|
||||
# AC_CHECK_LIB(LIBRARY, FUNCTION,
|
||||
# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
|
||||
# [OTHER-LIBRARIES])
|
||||
# ------------------------------------------------------
|
||||
#
|
||||
# Use a cache variable name containing both the library and function name,
|
||||
# because the test really is for library $1 defining function $2, not
|
||||
# just for library $1. Separate tests with the same $1 and different $2s
|
||||
# may have different results.
|
||||
#
|
||||
# Note that using directly AS_VAR_PUSHDEF([ac_Lib], [ac_cv_lib_$1_$2])
|
||||
# is asking for troubles, since AC_CHECK_LIB($lib, fun) would give
|
||||
# ac_cv_lib_$lib_fun, which is definitely not what was meant. Hence
|
||||
# the AS_LITERAL_IF indirection.
|
||||
#
|
||||
# FIXME: This macro is extremely suspicious. It DEFINEs unconditionally,
|
||||
# whatever the FUNCTION, in addition to not being a *S macro. Note
|
||||
# that the cache does depend upon the function we are looking for.
|
||||
#
|
||||
# It is on purpose we used `ac_check_lib_save_LIBS' and not just
|
||||
# `ac_save_LIBS': there are many macros which don't want to see `LIBS'
|
||||
# changed but still want to use AC_CHECK_LIB, so they save `LIBS'.
|
||||
# And ``ac_save_LIBS' is too tempting a name, so let's leave them some
|
||||
# freedom.
|
||||
AC_DEFUN([AC_CHECK_LIB],
|
||||
[m4_ifval([$3], , [AH_CHECK_LIB([$1])])dnl
|
||||
AS_LITERAL_IF([$1],
|
||||
[AS_VAR_PUSHDEF([ac_Lib], [ac_cv_lib_$1_$2])],
|
||||
[AS_VAR_PUSHDEF([ac_Lib], [ac_cv_lib_$1''_$2])])dnl
|
||||
AC_CACHE_CHECK([for $2 in -l$1], [ac_Lib],
|
||||
[ac_check_lib_save_LIBS=$LIBS
|
||||
LIBS="-l$1 $5 $LIBS"
|
||||
AC_LINK_IFELSE([AC_LANG_CALL([], [$2])],
|
||||
[AS_VAR_SET([ac_Lib], [yes])],
|
||||
[AS_VAR_SET([ac_Lib], [no])])
|
||||
LIBS=$ac_check_lib_save_LIBS])
|
||||
AS_IF([test AS_VAR_GET([ac_Lib]) = yes],
|
||||
[m4_default([$3], [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_LIB$1))
|
||||
LIBS="-l$1 $LIBS"
|
||||
])],
|
||||
[$4])dnl
|
||||
AS_VAR_POPDEF([ac_Lib])dnl
|
||||
])# AC_CHECK_LIB
|
||||
|
||||
|
||||
# AH_CHECK_LIB(LIBNAME)
|
||||
# ---------------------
|
||||
m4_define([AH_CHECK_LIB],
|
||||
[AH_TEMPLATE(AS_TR_CPP([HAVE_LIB$1]),
|
||||
[Define to 1 if you have the `$1' library (-l$1).])])
|
||||
|
||||
|
||||
# AC_HAVE_LIBRARY(LIBRARY,
|
||||
# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
|
||||
# [OTHER-LIBRARIES])
|
||||
# ---------------------------------------------------------
|
||||
#
|
||||
# This macro is equivalent to calling `AC_CHECK_LIB' with a FUNCTION
|
||||
# argument of `main'. In addition, LIBRARY can be written as any of
|
||||
# `foo', `-lfoo', or `libfoo.a'. In all of those cases, the compiler
|
||||
# is passed `-lfoo'. However, LIBRARY cannot be a shell variable;
|
||||
# it must be a literal name.
|
||||
AU_DEFUN([AC_HAVE_LIBRARY],
|
||||
[m4_pushdef([AC_Lib_Name],
|
||||
m4_bpatsubst(m4_bpatsubst([[$1]],
|
||||
[lib\([^\.]*\)\.a], [\1]),
|
||||
[-l], []))dnl
|
||||
AC_CHECK_LIB(AC_Lib_Name, main, [$2], [$3], [$4])dnl
|
||||
ac_cv_lib_[]AC_Lib_Name()=ac_cv_lib_[]AC_Lib_Name()_main
|
||||
m4_popdef([AC_Lib_Name])dnl
|
||||
])
|
||||
|
||||
|
||||
|
||||
|
||||
## --------------------------------- ##
|
||||
## 2. Tests for specific libraries. ##
|
||||
## --------------------------------- ##
|
||||
|
||||
|
||||
|
||||
# --------------------- #
|
||||
# Checks for X window. #
|
||||
# --------------------- #
|
||||
|
||||
|
||||
# _AC_PATH_X_XMKMF
|
||||
# ----------------
|
||||
# Internal subroutine of _AC_PATH_X.
|
||||
# Set ac_x_includes and/or ac_x_libraries.
|
||||
m4_define([_AC_PATH_X_XMKMF],
|
||||
[AC_ARG_VAR(XMKMF, [Path to xmkmf, Makefile generator for X Window System])dnl
|
||||
rm -f -r conftest.dir
|
||||
if mkdir conftest.dir; then
|
||||
cd conftest.dir
|
||||
cat >Imakefile <<'_ACEOF'
|
||||
incroot:
|
||||
@echo incroot='${INCROOT}'
|
||||
usrlibdir:
|
||||
@echo usrlibdir='${USRLIBDIR}'
|
||||
libdir:
|
||||
@echo libdir='${LIBDIR}'
|
||||
_ACEOF
|
||||
if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
|
||||
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
|
||||
for ac_var in incroot usrlibdir libdir; do
|
||||
eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
|
||||
done
|
||||
# Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
|
||||
for ac_extension in a so sl; do
|
||||
if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
|
||||
test -f "$ac_im_libdir/libX11.$ac_extension"; then
|
||||
ac_im_usrlibdir=$ac_im_libdir; break
|
||||
fi
|
||||
done
|
||||
# Screen out bogus values from the imake configuration. They are
|
||||
# bogus both because they are the default anyway, and because
|
||||
# using them would break gcc on systems where it needs fixed includes.
|
||||
case $ac_im_incroot in
|
||||
/usr/include) ac_x_includes= ;;
|
||||
*) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
|
||||
esac
|
||||
case $ac_im_usrlibdir in
|
||||
/usr/lib | /lib) ;;
|
||||
*) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
|
||||
esac
|
||||
fi
|
||||
cd ..
|
||||
rm -f -r conftest.dir
|
||||
fi
|
||||
])# _AC_PATH_X_XMKMF
|
||||
|
||||
|
||||
# _AC_PATH_X_DIRECT
|
||||
# -----------------
|
||||
# Internal subroutine of _AC_PATH_X.
|
||||
# Set ac_x_includes and/or ac_x_libraries.
|
||||
m4_define([_AC_PATH_X_DIRECT],
|
||||
[# Standard set of common directories for X headers.
|
||||
# Check X11 before X11Rn because it is often a symlink to the current release.
|
||||
ac_x_header_dirs='
|
||||
/usr/X11/include
|
||||
/usr/X11R6/include
|
||||
/usr/X11R5/include
|
||||
/usr/X11R4/include
|
||||
|
||||
/usr/include/X11
|
||||
/usr/include/X11R6
|
||||
/usr/include/X11R5
|
||||
/usr/include/X11R4
|
||||
|
||||
/usr/local/X11/include
|
||||
/usr/local/X11R6/include
|
||||
/usr/local/X11R5/include
|
||||
/usr/local/X11R4/include
|
||||
|
||||
/usr/local/include/X11
|
||||
/usr/local/include/X11R6
|
||||
/usr/local/include/X11R5
|
||||
/usr/local/include/X11R4
|
||||
|
||||
/usr/X386/include
|
||||
/usr/x386/include
|
||||
/usr/XFree86/include/X11
|
||||
|
||||
/usr/include
|
||||
/usr/local/include
|
||||
/usr/unsupported/include
|
||||
/usr/athena/include
|
||||
/usr/local/x11r5/include
|
||||
/usr/lpp/Xamples/include
|
||||
|
||||
/usr/openwin/include
|
||||
/usr/openwin/share/include'
|
||||
|
||||
if test "$ac_x_includes" = no; then
|
||||
# Guess where to find include files, by looking for Xlib.h.
|
||||
# First, try using that file with no special directory specified.
|
||||
AC_PREPROC_IFELSE([AC_LANG_SOURCE([@%:@include <X11/Xlib.h>])],
|
||||
[# We can compile using X headers with no special include directory.
|
||||
ac_x_includes=],
|
||||
[for ac_dir in $ac_x_header_dirs; do
|
||||
if test -r "$ac_dir/X11/Xlib.h"; then
|
||||
ac_x_includes=$ac_dir
|
||||
break
|
||||
fi
|
||||
done])
|
||||
fi # $ac_x_includes = no
|
||||
|
||||
if test "$ac_x_libraries" = no; then
|
||||
# Check for the libraries.
|
||||
# See if we find them without any special options.
|
||||
# Don't add to $LIBS permanently.
|
||||
ac_save_LIBS=$LIBS
|
||||
LIBS="-lX11 $LIBS"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([@%:@include <X11/Xlib.h>],
|
||||
[XrmInitialize ()])],
|
||||
[LIBS=$ac_save_LIBS
|
||||
# We can link X programs with no special library path.
|
||||
ac_x_libraries=],
|
||||
[LIBS=$ac_save_LIBS
|
||||
for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
|
||||
do
|
||||
# Don't even attempt the hair of trying to link an X program!
|
||||
for ac_extension in a so sl; do
|
||||
if test -r "$ac_dir/libX11.$ac_extension"; then
|
||||
ac_x_libraries=$ac_dir
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done])
|
||||
fi # $ac_x_libraries = no
|
||||
])# _AC_PATH_X_DIRECT
|
||||
|
||||
|
||||
# _AC_PATH_X
|
||||
# ----------
|
||||
# Compute ac_cv_have_x.
|
||||
AC_DEFUN([_AC_PATH_X],
|
||||
[AC_CACHE_VAL(ac_cv_have_x,
|
||||
[# One or both of the vars are not set, and there is no cached value.
|
||||
ac_x_includes=no ac_x_libraries=no
|
||||
_AC_PATH_X_XMKMF
|
||||
_AC_PATH_X_DIRECT
|
||||
case $ac_x_includes,$ac_x_libraries in #(
|
||||
no,* | *,no | *\'*)
|
||||
# Didn't find X, or a directory has "'" in its name.
|
||||
ac_cv_have_x="have_x=no";; #(
|
||||
*)
|
||||
# Record where we found X for the cache.
|
||||
ac_cv_have_x="have_x=yes\
|
||||
ac_x_includes='$ac_x_includes'\
|
||||
ac_x_libraries='$ac_x_libraries'"
|
||||
esac])dnl
|
||||
])
|
||||
|
||||
|
||||
# AC_PATH_X
|
||||
# ---------
|
||||
# If we find X, set shell vars x_includes and x_libraries to the
|
||||
# paths, otherwise set no_x=yes.
|
||||
# Uses ac_ vars as temps to allow command line to override cache and checks.
|
||||
# --without-x overrides everything else, but does not touch the cache.
|
||||
AN_HEADER([X11/Xlib.h], [AC_PATH_X])
|
||||
AC_DEFUN([AC_PATH_X],
|
||||
[dnl Document the X abnormal options inherited from history.
|
||||
m4_divert_once([HELP_BEGIN], [
|
||||
X features:
|
||||
--x-includes=DIR X include files are in DIR
|
||||
--x-libraries=DIR X library files are in DIR])dnl
|
||||
AC_MSG_CHECKING([for X])
|
||||
|
||||
AC_ARG_WITH(x, [ --with-x use the X Window System])
|
||||
# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
|
||||
if test "x$with_x" = xno; then
|
||||
# The user explicitly disabled X.
|
||||
have_x=disabled
|
||||
else
|
||||
case $x_includes,$x_libraries in #(
|
||||
*\'*) AC_MSG_ERROR([Cannot use X directory names containing ']);; #(
|
||||
*,NONE | NONE,*) _AC_PATH_X;; #(
|
||||
*) have_x=yes;;
|
||||
esac
|
||||
eval "$ac_cv_have_x"
|
||||
fi # $with_x != no
|
||||
|
||||
if test "$have_x" != yes; then
|
||||
AC_MSG_RESULT([$have_x])
|
||||
no_x=yes
|
||||
else
|
||||
# If each of the values was on the command line, it overrides each guess.
|
||||
test "x$x_includes" = xNONE && x_includes=$ac_x_includes
|
||||
test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
|
||||
# Update the cache value to reflect the command line values.
|
||||
ac_cv_have_x="have_x=yes\
|
||||
ac_x_includes='$x_includes'\
|
||||
ac_x_libraries='$x_libraries'"
|
||||
AC_MSG_RESULT([libraries $x_libraries, headers $x_includes])
|
||||
fi
|
||||
])# AC_PATH_X
|
||||
|
||||
|
||||
|
||||
# AC_PATH_XTRA
|
||||
# ------------
|
||||
# Find additional X libraries, magic flags, etc.
|
||||
AC_DEFUN([AC_PATH_XTRA],
|
||||
[AC_REQUIRE([AC_PATH_X])dnl
|
||||
if test "$no_x" = yes; then
|
||||
# Not all programs may use this symbol, but it does not hurt to define it.
|
||||
AC_DEFINE([X_DISPLAY_MISSING], 1,
|
||||
[Define to 1 if the X Window System is missing or not being used.])
|
||||
X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
|
||||
else
|
||||
if test -n "$x_includes"; then
|
||||
X_CFLAGS="$X_CFLAGS -I$x_includes"
|
||||
fi
|
||||
|
||||
# It would also be nice to do this for all -L options, not just this one.
|
||||
if test -n "$x_libraries"; then
|
||||
X_LIBS="$X_LIBS -L$x_libraries"
|
||||
# For Solaris; some versions of Sun CC require a space after -R and
|
||||
# others require no space. Words are not sufficient . . . .
|
||||
AC_MSG_CHECKING([whether -R must be followed by a space])
|
||||
ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
|
||||
ac_xsave_[]_AC_LANG_ABBREV[]_werror_flag=$ac_[]_AC_LANG_ABBREV[]_werror_flag
|
||||
ac_[]_AC_LANG_ABBREV[]_werror_flag=yes
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()],
|
||||
[AC_MSG_RESULT([no])
|
||||
X_LIBS="$X_LIBS -R$x_libraries"],
|
||||
[LIBS="$ac_xsave_LIBS -R $x_libraries"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM()],
|
||||
[AC_MSG_RESULT([yes])
|
||||
X_LIBS="$X_LIBS -R $x_libraries"],
|
||||
[AC_MSG_RESULT([neither works])])])
|
||||
ac_[]_AC_LANG_ABBREV[]_werror_flag=$ac_xsave_[]_AC_LANG_ABBREV[]_werror_flag
|
||||
LIBS=$ac_xsave_LIBS
|
||||
fi
|
||||
|
||||
# Check for system-dependent libraries X programs must link with.
|
||||
# Do this before checking for the system-independent R6 libraries
|
||||
# (-lICE), since we may need -lsocket or whatever for X linking.
|
||||
|
||||
if test "$ISC" = yes; then
|
||||
X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
|
||||
else
|
||||
# Martyn Johnson says this is needed for Ultrix, if the X
|
||||
# libraries were built with DECnet support. And Karl Berry says
|
||||
# the Alpha needs dnet_stub (dnet does not exist).
|
||||
ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
|
||||
AC_LINK_IFELSE([AC_LANG_CALL([], [XOpenDisplay])],
|
||||
[],
|
||||
[AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"])
|
||||
if test $ac_cv_lib_dnet_dnet_ntoa = no; then
|
||||
AC_CHECK_LIB(dnet_stub, dnet_ntoa,
|
||||
[X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"])
|
||||
fi])
|
||||
LIBS="$ac_xsave_LIBS"
|
||||
|
||||
# msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
|
||||
# to get the SysV transport functions.
|
||||
# Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4)
|
||||
# needs -lnsl.
|
||||
# The nsl library prevents programs from opening the X display
|
||||
# on Irix 5.2, according to T.E. Dickey.
|
||||
# The functions gethostbyname, getservbyname, and inet_addr are
|
||||
# in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
|
||||
AC_CHECK_FUNC(gethostbyname)
|
||||
if test $ac_cv_func_gethostbyname = no; then
|
||||
AC_CHECK_LIB(nsl, gethostbyname, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl")
|
||||
if test $ac_cv_lib_nsl_gethostbyname = no; then
|
||||
AC_CHECK_LIB(bsd, gethostbyname, X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd")
|
||||
fi
|
||||
fi
|
||||
|
||||
# lieder@skyler.mavd.honeywell.com says without -lsocket,
|
||||
# socket/setsockopt and other routines are undefined under SCO ODT
|
||||
# 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary
|
||||
# on later versions), says Simon Leinen: it contains gethostby*
|
||||
# variants that don't use the name server (or something). -lsocket
|
||||
# must be given before -lnsl if both are needed. We assume that
|
||||
# if connect needs -lnsl, so does gethostbyname.
|
||||
AC_CHECK_FUNC(connect)
|
||||
if test $ac_cv_func_connect = no; then
|
||||
AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", ,
|
||||
$X_EXTRA_LIBS)
|
||||
fi
|
||||
|
||||
# Guillermo Gomez says -lposix is necessary on A/UX.
|
||||
AC_CHECK_FUNC(remove)
|
||||
if test $ac_cv_func_remove = no; then
|
||||
AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix")
|
||||
fi
|
||||
|
||||
# BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
|
||||
AC_CHECK_FUNC(shmat)
|
||||
if test $ac_cv_func_shmat = no; then
|
||||
AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check for libraries that X11R6 Xt/Xaw programs need.
|
||||
ac_save_LDFLAGS=$LDFLAGS
|
||||
test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries"
|
||||
# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
|
||||
# check for ICE first), but we must link in the order -lSM -lICE or
|
||||
# we get undefined symbols. So assume we have SM if we have ICE.
|
||||
# These have to be linked with before -lX11, unlike the other
|
||||
# libraries we check for below, so use a different variable.
|
||||
# John Interrante, Karl Berry
|
||||
AC_CHECK_LIB(ICE, IceConnectionNumber,
|
||||
[X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"], , $X_EXTRA_LIBS)
|
||||
LDFLAGS=$ac_save_LDFLAGS
|
||||
|
||||
fi
|
||||
AC_SUBST(X_CFLAGS)dnl
|
||||
AC_SUBST(X_PRE_LIBS)dnl
|
||||
AC_SUBST(X_LIBS)dnl
|
||||
AC_SUBST(X_EXTRA_LIBS)dnl
|
||||
])# AC_PATH_XTRA
|
@@ -51,19 +51,14 @@ configure: configure.in aclocal.m4 autoconf_inc.m4 autoconf_m4f
|
||||
$(AUTOCONF) -B $(AUTOHACKS_PREPEND_INCLUDE_DIR)
|
||||
|
||||
ACLOCAL_SOURCES = \
|
||||
build/aclocal/ac_raf_func_which_getservbyname_r.m4 \
|
||||
build/aclocal/atomic_builtins.m4 \
|
||||
build/aclocal/ax_func_which_gethostbyname_r.m4 \
|
||||
build/aclocal/bakefile-dllar.m4 \
|
||||
build/aclocal/bakefile-lang.m4 \
|
||||
build/aclocal/bakefile.m4 \
|
||||
build/aclocal/bakefile-lang.m4 \
|
||||
build/aclocal/cppunit.m4 \
|
||||
build/aclocal/gst-element-check.m4 \
|
||||
build/aclocal/gtk-2.0.m4 \
|
||||
build/aclocal/gtk.m4 \
|
||||
build/aclocal/pkg.m4 \
|
||||
build/aclocal/sdl.m4 \
|
||||
build/aclocal/visibility.m4
|
||||
build/aclocal/sdl.m4
|
||||
|
||||
# Run aclocal whenever acinclude or one of our local m4s is updated.
|
||||
aclocal.m4: configure.in acinclude.m4 $(ACLOCAL_SOURCES)
|
||||
|
2
build/bakefiles/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
.bakefile_gen.state
|
||||
Bakefiles.local.bkgen
|
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!-- $Id$ -->
|
||||
|
||||
<bakefile-gen xmlns="http://www.bakefile.org/schema/bakefile-gen">
|
||||
<bakefile-gen>
|
||||
|
||||
<!--
|
||||
Formats listed here are not generated by default. To enable them, either
|
||||
@@ -15,16 +15,23 @@
|
||||
|
||||
Reasons why these formats are disabled (and so not in CVS):
|
||||
|
||||
cbuilderx - Generated projects are too bad to be included in CVS. Please
|
||||
*do not* enable this format until FIXMEs in .bkl files related
|
||||
to cbuilderx are addressed. In particular, the project must
|
||||
be placed into build/msw(?) directory and store object files
|
||||
in its subdirectory and it must copy setup.h as others do.
|
||||
cbx_unix - Doesn't integrate well and won't be used by most Unix people.
|
||||
dmars, dmars_smake, msevc4prj - These are generated at release time and
|
||||
we don't want to clutter the source tree with these files.
|
||||
-->
|
||||
|
||||
<disable-formats>dmars,dmars_smake,msevc4prj</disable-formats>
|
||||
<disable-formats>dmars,dmars_smake,msevc4prj,cbx_unix,cbuilderx</disable-formats>
|
||||
|
||||
|
||||
<!-- These wildcards match all .bkl files in wxWidgets tree: -->
|
||||
<input>
|
||||
wx.bkl
|
||||
../../contrib/build/*/*.bkl
|
||||
../../samples/*.bkl
|
||||
../../samples/*/*.bkl
|
||||
../../samples/*/*/*.bkl
|
||||
@@ -34,49 +41,49 @@
|
||||
../../utils/*.bkl
|
||||
../../utils/*/*.bkl
|
||||
../../utils/*/*/*.bkl
|
||||
../../contrib/samples/*.bkl
|
||||
../../contrib/samples/*/*.bkl
|
||||
../../contrib/samples/*/*/*.bkl
|
||||
../../contrib/utils/*/*.bkl
|
||||
../../tests/*.bkl
|
||||
../../tests/*/*.bkl
|
||||
</input>
|
||||
|
||||
<!-- List of output formats to generate: -->
|
||||
<add-formats>
|
||||
autoconf,borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj,watcom
|
||||
autoconf,borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,watcom,cbuilderx,cbx_unix
|
||||
</add-formats>
|
||||
|
||||
<del-formats files="../../samples/*.bkl">
|
||||
autoconf,msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj
|
||||
autoconf,msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
<del-formats files="../../demos/*.bkl">
|
||||
msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj
|
||||
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
<del-formats files="../../samples/html/html_samples.bkl">
|
||||
msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj
|
||||
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
<del-formats files="../../samples/mobile/mobile_samples.bkl">
|
||||
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
<del-formats files="../../samples/opengl/opengl_samples.bkl">
|
||||
msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj
|
||||
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
<del-formats files="../../utils/*.bkl">
|
||||
msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj
|
||||
msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
|
||||
<!-- WinCE can't have console apps: -->
|
||||
<del-formats files="../../samples/console/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../samples/sockets/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../utils/HelpGen/src/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../utils/ifacecheck/src/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../utils/wxrc/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../contrib/utils/wxrc/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../tests/*">msevc4prj</del-formats>
|
||||
<del-formats files="../../tests/benchmarks/*">msevc4prj</del-formats>
|
||||
|
||||
<!-- HtmlCtrl sample is Cocoa only (autoconf format) -->
|
||||
<del-formats files="../../samples/html/htmlctrl/htmlctrl.bkl">
|
||||
borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,msvs2003prj,msvs2005prj,msvs2008prj,watcom
|
||||
borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,msvs2005prj,watcom,cbuilderx,cbx_unix
|
||||
</del-formats>
|
||||
|
||||
<!-- Some samples use MSVC-specific stuff -->
|
||||
<del-formats files="../../samples/flash/flash.bkl,../../samples/mfc/mfc.bkl">
|
||||
autoconf,borland,dmars_smake,dmars,mingw,msevc4prj,watcom
|
||||
</del-formats>
|
||||
|
||||
<!-- Default flags (for all formats and bakefiles): -->
|
||||
<add-flags>-Iformats</add-flags>
|
||||
@@ -107,18 +114,29 @@
|
||||
<add-flags files="wx.bkl" formats="msvc6prj">
|
||||
-o../msw/wx.dsw
|
||||
</add-flags>
|
||||
<add-flags files="wx.bkl" formats="msvs2003prj">
|
||||
-o../msw/wx_vc7.sln
|
||||
</add-flags>
|
||||
<add-flags files="wx.bkl" formats="msvs2005prj">
|
||||
-o../msw/wx_vc8.sln
|
||||
</add-flags>
|
||||
<add-flags files="wx.bkl" formats="msvs2008prj">
|
||||
-o../msw/wx_vc9.sln
|
||||
-o../msw/wx.sln
|
||||
</add-flags>
|
||||
<add-flags files="wx.bkl" formats="msevc4prj">
|
||||
-o../wince/wx.vcw
|
||||
</add-flags>
|
||||
<add-flags files="wx.bkl" formats="cbuilderx">
|
||||
-o../../wx.cbx
|
||||
</add-flags>
|
||||
<add-flags files="../../contrib/build/*/*.bkl" formats="autoconf">
|
||||
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/Makefile.in
|
||||
</add-flags>
|
||||
<add-flags files="../../contrib/build/*/*.bkl" formats="cbx_unix">
|
||||
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT)Unix.cbx
|
||||
</add-flags>
|
||||
<!-- FIXME: don't do this once it is possible (new CBX version) -->
|
||||
<add-flags files="../../contrib/build/*/*.bkl" formats="cbuilderx">
|
||||
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT).cbx
|
||||
</add-flags>
|
||||
<add-flags files="../../contrib/build/*/*.bkl"
|
||||
formats="mingw,borland,dmars_smake,dmars,watcom,msvc,msvc6prj,msevc4prj,msvs2005prj">
|
||||
-DSRCDIR=../../src/$(INPUT_FILE_BASENAME_NOEXT)
|
||||
</add-flags>
|
||||
|
||||
|
||||
|
||||
@@ -130,27 +148,12 @@
|
||||
<add-formats files="wx.bkl">rpmspec</add-formats>
|
||||
|
||||
|
||||
<!-- Use different names for Visual C++ 200x project files: -->
|
||||
<add-flags files="../../samples/*/*,../../samples/*/*/*,../../demos/*/*,../../utils/*/*,../../utils/*/*/*,../../tests/*,../../tests/*/*"
|
||||
formats="msvs2003prj">
|
||||
-o$(INPUT_FILE_DIR)/$(INPUT_FILE_BASENAME_NOEXT)_vc7.sln
|
||||
</add-flags>
|
||||
<add-flags files="../../samples/*/*,../../samples/*/*/*,../../demos/*/*,../../utils/*/*,../../utils/*/*/*,../../tests/*,../../tests/*/*"
|
||||
formats="msvs2005prj">
|
||||
-o$(INPUT_FILE_DIR)/$(INPUT_FILE_BASENAME_NOEXT)_vc8.sln
|
||||
</add-flags>
|
||||
<add-flags files="../../samples/*/*,../../samples/*/*/*,../../demos/*/*,../../utils/*/*,../../utils/*/*/*,../../tests/*,../../tests/*/*"
|
||||
formats="msvs2008prj">
|
||||
-o$(INPUT_FILE_DIR)/$(INPUT_FILE_BASENAME_NOEXT)_vc9.sln
|
||||
</add-flags>
|
||||
|
||||
<!-- Makefile specific settings: -->
|
||||
|
||||
<add-flags formats="borland,dmars_smake,dmars,mingw,msvc,watcom">
|
||||
-DWRITE_OPTIONS_FILE=0
|
||||
</add-flags>
|
||||
<del-flags formats="borland,dmars_smake,dmars,mingw,msvc,watcom"
|
||||
files="wx.bkl">
|
||||
<del-flags files="wx.bkl">
|
||||
-DWRITE_OPTIONS_FILE=0
|
||||
</del-flags>
|
||||
|
||||
@@ -256,15 +259,12 @@
|
||||
<add-formats files="../../samples/*/*.bkl,../../samples/*/*/*.bkl">
|
||||
gnu
|
||||
</add-formats>
|
||||
<del-formats files="../../samples/flash/flash.bkl,../../samples/mfc/mfc.bkl">
|
||||
gnu
|
||||
</del-formats>
|
||||
<add-flags files="../../samples/*/*.bkl,../../samples/*/*/*.bkl"
|
||||
formats="gnu">
|
||||
-DOUT_OF_TREE_MAKEFILES=1 -o$(INPUT_FILE_DIR)/makefile.unx
|
||||
</add-flags>
|
||||
|
||||
<!-- Personal customizations (not in VCS): -->
|
||||
<!-- Personal customizations (not in CVS): -->
|
||||
<include file="Bakefiles.local.bkgen" ignore_missing="1"/>
|
||||
|
||||
</bakefile-gen>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
|
||||
This directory contains Bakefile (see http://bakefile.sourceforge.net)
|
||||
files needed to generate native makefiles for wxWidgets library and
|
||||
files needed to generate native makefiles for wxWidgets library, contrib and
|
||||
samples.
|
||||
|
||||
Use the bakefile_gen utility to regenerate the makefiles (run it in this
|
||||
@@ -31,9 +31,11 @@ information that speed up regeneration process.
|
||||
|
||||
Note: the following files are generated using bakefile_gen:
|
||||
* build/msw/*
|
||||
* contrib/build/* (except .bkl files)
|
||||
* makefiles with same names as makefiles in above dirs, Makefile.in files
|
||||
that contain "This makefile was generated by Bakefile" banner and
|
||||
VC++ project files in samples, demos and utils directories
|
||||
VC++ project files in samples, demos and utils directories (inc. contrib
|
||||
ones)
|
||||
* src/wxWindows.dsp
|
||||
* {wxGTK,wxMotif,wxX11}.spec (only wxBase headers list)
|
||||
* autoconf_inc.m4
|
||||
|
@@ -8,7 +8,7 @@
|
||||
the library.
|
||||
-->
|
||||
|
||||
<if cond="FORMAT not in ['autoconf','msvc6prj','msevc4prj','msvs2003prj','msvs2005prj','msvs2008prj'] and
|
||||
<if cond="FORMAT not in ['autoconf','msvc6prj','msevc4prj','msvs2005prj','cbuilderx'] and
|
||||
TOOLKIT in ['PM','MSW','MGL','MOTIF']">
|
||||
|
||||
<set var="BUILD_CFG_FILE" make_var="1">
|
||||
@@ -40,8 +40,10 @@
|
||||
@echo USE_GUI=$(USE_GUI) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_HTML=$(USE_HTML) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_MEDIA=$(USE_MEDIA) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_ODBC=$(USE_ODBC) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_OPENGL=$(USE_OPENGL) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_QA=$(USE_QA) >>$(BUILD_CFG_FILE)
|
||||
@echo USE_GDIPLUS=$(USE_GDIPLUS) >>$(BUILD_CFG_FILE)
|
||||
@echo COMPILER=$(COMPILER) >>$(BUILD_CFG_FILE)
|
||||
@echo CC=$(CC) >>$(BUILD_CFG_FILE)
|
||||
@echo CXX=$(CXX) >>$(BUILD_CFG_FILE)
|
||||
|
@@ -3,7 +3,7 @@
|
||||
|
||||
<makefile>
|
||||
|
||||
<requires version="0.2.7"/>
|
||||
<requires version="0.2.1"/>
|
||||
|
||||
<!-- bakefile modules we need: -->
|
||||
<using module="datafiles"/>
|
||||
@@ -25,7 +25,6 @@
|
||||
<!-- FIXME: PalmOS is another candidate to bakefiles -->
|
||||
<set var="PLATFORM_PALMOS">0</set>
|
||||
|
||||
|
||||
<include file="config.bkl"/>
|
||||
|
||||
<include file="plugins_deps.bkl"/>
|
||||
@@ -61,20 +60,16 @@
|
||||
<if cond="PLATFORM_WIN32=='1' and OFFICIAL_BUILD=='0'">_$(VENDOR)</if>
|
||||
</set>
|
||||
|
||||
<!-- debug suffix used for Windows libraries which use debug CRT -->
|
||||
<set var="WXDEBUGFLAG">
|
||||
<if cond="BUILD=='debug' and DEBUG_RUNTIME_LIBS=='default'">d</if>
|
||||
<if cond="DEBUG_RUNTIME_LIBS=='1'">d</if>
|
||||
<if cond="BUILD=='debug' and DEBUG_FLAG=='default'">d</if>
|
||||
<if cond="DEBUG_FLAG=='1'">d</if>
|
||||
</set>
|
||||
<set var="WXUNICODEFLAG">
|
||||
<!-- WinCE is Unicode-only platform: -->
|
||||
<if cond="UNICODE=='1' and FORMAT!='msevc4prj'">u</if>
|
||||
</set>
|
||||
<set var="WX_U_D_SUFFIX">
|
||||
$(WXUNICODEFLAG)$(WXDEBUGFLAG)
|
||||
</set>
|
||||
<set var="WXNAMESUFFIX">
|
||||
$(WX_U_D_SUFFIX)$(WX_LIB_FLAVOUR)
|
||||
$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
||||
</set>
|
||||
|
||||
<set var="WXUNIVNAME">
|
||||
@@ -146,21 +141,20 @@
|
||||
<set var="WXLIB_XRC">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('xrc')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_ODBC">
|
||||
<if cond="MONOLITHIC=='0' and USE_ODBC=='1'">
|
||||
$(mk.evalExpr(wxwin.mkLibName('odbc')))
|
||||
</if>
|
||||
</set>
|
||||
<set var="WXLIB_DBGRID">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('dbgrid')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_AUI">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('aui')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_RIBBON">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('ribbon')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_PROPGRID">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('propgrid')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_RICHTEXT">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('richtext')))</if>
|
||||
</set>
|
||||
<set var="WXLIB_STC">
|
||||
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('stc')))</if>
|
||||
</set>
|
||||
|
||||
<set var="WXLIB_MONO">
|
||||
<if cond="MONOLITHIC=='1'">$(mk.evalExpr(wxwin.mkLibName('mono')))</if>
|
||||
@@ -184,15 +178,15 @@
|
||||
<if cond="SHARED=='1'">dll</if>
|
||||
</set>
|
||||
<set var="CFG_NAME_PART">
|
||||
$(PORTNAME)$(WXUNIVNAME)$(WX_U_D_SUFFIX)$(WXDLLFLAG)$(CFG)
|
||||
$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||
</set>
|
||||
|
||||
<!-- NB: this is make_var so that it can be overriden on command line
|
||||
like this: nmake -f makefile.vc COMPILER_PREFIX=vc6 -->
|
||||
<set var="COMPILER_PREFIX" make_var="1">$(COMPILER)</set>
|
||||
|
||||
<set var="OBJS" make_var="1">
|
||||
$(COMPILER_PREFIX)_$(CFG_NAME_PART)$(DIR_SUFFIX_CPU)
|
||||
<if cond="FORMAT!='cbuilderx'">
|
||||
$(COMPILER)_$(CFG_NAME_PART)$(DIR_SUFFIX_CPU)
|
||||
</if>
|
||||
<!-- FIXME: waiting for removal after CBX has better ../ dirs
|
||||
support -->
|
||||
<if cond="FORMAT=='cbuilderx'">build_cbx_$(CFG_NAME_PART)</if>
|
||||
</set>
|
||||
|
||||
<set var="BUILDDIR">$(OBJS)</set>
|
||||
@@ -208,13 +202,13 @@
|
||||
<set var="LIBDIRNAME" make_var="1">
|
||||
<if cond="FORMAT=='autoconf'">$(wx_top_builddir)/lib</if>
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
$(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER_PREFIX)$(DIR_SUFFIX_CPU)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
$(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER)$(DIR_SUFFIX_CPU)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
</if>
|
||||
</set>
|
||||
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
<set var="SETUPHDIR" make_var="1">
|
||||
$(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WX_U_D_SUFFIX)
|
||||
$(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
|
||||
</set>
|
||||
</if>
|
||||
|
||||
@@ -264,13 +258,9 @@
|
||||
</set>
|
||||
|
||||
<set var="DEBUG_DEFINE">
|
||||
<if cond="DEBUG_FLAG=='0'">wxDEBUG_LEVEL=0</if>
|
||||
<if cond="FORMAT!='autoconf' and BUILD=='debug' and DEBUG_FLAG=='default'">__WXDEBUG__</if>
|
||||
<if cond="FORMAT!='autoconf' and DEBUG_FLAG=='1'">__WXDEBUG__</if>
|
||||
</set>
|
||||
<set var="NDEBUG_DEFINE">
|
||||
<if cond="FORMAT!='autoconf' and DEBUG_RUNTIME_LIBS=='default' and BUILD=='release'">NDEBUG</if>
|
||||
<if cond="FORMAT!='autoconf' and DEBUG_RUNTIME_LIBS=='0'">NDEBUG</if>
|
||||
</set>
|
||||
|
||||
<!-- does not cover all cases, but better than nothing -->
|
||||
<set var="NO_VC_CRTDBG">
|
||||
<if cond="FORMAT=='msvc' and BUILD=='debug' and DEBUG_RUNTIME_LIBS=='0'">__NO_VC_CRTDBG__</if>
|
||||
@@ -278,7 +268,6 @@
|
||||
</set>
|
||||
<set var="UNICODE_DEFINE">
|
||||
<if cond="FORMAT!='autoconf' and UNICODE=='1'">_UNICODE</if>
|
||||
<if cond="FORMAT!='autoconf' and UNICODE=='0'">wxUSE_UNICODE=0</if>
|
||||
</set>
|
||||
<set var="MSLU_DEFINE">
|
||||
<if cond="FORMAT!='autoconf' and MSLU=='1'">wxUSE_UNICODE_MSLU=1</if>
|
||||
@@ -292,19 +281,19 @@
|
||||
<set var="UNICOWS_LIB">
|
||||
<if cond="MSLU=='1'">unicows</if>
|
||||
</set>
|
||||
<set var="CAIRO_LIB">
|
||||
<if cond="USE_CAIRO=='1'">cairo</if>
|
||||
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
<set var="GDIPLUS_LIB">
|
||||
<if cond="USE_GDIPLUS=='1'">gdiplus</if>
|
||||
</set>
|
||||
<set var="CAIRO_LIBDIR">
|
||||
<if cond="USE_CAIRO=='1'">$(DOLLAR)(CAIRO_ROOT)/lib</if>
|
||||
</set>
|
||||
<set var="CAIRO_INCLUDEDIR">
|
||||
<if cond="USE_CAIRO=='1'">$(DOLLAR)(CAIRO_ROOT)/include/cairo</if>
|
||||
<set var="GFXCTX_DEFINE">
|
||||
<if cond="USE_GDIPLUS=='1'">wxUSE_GRAPHICS_CONTEXT=1</if>
|
||||
</set>
|
||||
</if>
|
||||
|
||||
<set var="LINK_TARGET_CPU">
|
||||
<if cond="TARGET_CPU=='amd64'">/MACHINE:X64</if>
|
||||
<if cond="TARGET_CPU=='AMD64'">/MACHINE:X64</if>
|
||||
<if cond="TARGET_CPU=='amd64'">/MACHINE:AMD64</if>
|
||||
<if cond="TARGET_CPU=='AMD64'">/MACHINE:AMD64</if>
|
||||
<if cond="TARGET_CPU=='ia64'">/MACHINE:IA64</if>
|
||||
<if cond="TARGET_CPU=='IA64'">/MACHINE:IA64</if>
|
||||
</set>
|
||||
@@ -322,6 +311,13 @@
|
||||
</if>
|
||||
<define>$(NO_VC_CRTDBG)</define>
|
||||
<define>$(WIN32_WINNT)</define>
|
||||
<if cond="FORMAT=='msevc4prj' and
|
||||
BAKEFILE_VERSION in ['0.1.9'] and
|
||||
USE_RTTI=='0'">
|
||||
<!-- hack to make eVC4 2.6.2 project files compatible with what we had in 2.6.1 -->
|
||||
<set var="_ldlibs">$(_ldlibs.replace('ccrtrtti.lib', ''))</set>
|
||||
<set var="_cppflags">$(_cppflags.replace('/GR', ''))</set>
|
||||
</if>
|
||||
<if cond="FORMAT=='msvc'">
|
||||
<ldflags>$(LINK_TARGET_CPU)</ldflags>
|
||||
</if>
|
||||
@@ -335,7 +331,7 @@
|
||||
|
||||
<template id="3rdparty_lib" template="common_settings,anylib">
|
||||
<if cond="FORMAT=='autoconf'">
|
||||
<libname>$(id)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)</libname>
|
||||
<libname>$(id)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)</libname>
|
||||
</if>
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
<libname>$(id)$(WXDEBUGFLAG)$(HOST_SUFFIX)</libname>
|
||||
@@ -346,27 +342,15 @@
|
||||
-->
|
||||
<install-if>SHARED=='0'</install-if>
|
||||
<pic>$(substituteFromDict(SHARED, {'0':'off', '1':'on'}))</pic>
|
||||
|
||||
<!--
|
||||
we don't want to have asserts in the 3rd party libraries code,
|
||||
neither we nor wx users are interested in debugging them anyhow
|
||||
-->
|
||||
<define>NDEBUG</define>
|
||||
|
||||
<if cond="IS_MSVC">
|
||||
<!--
|
||||
we're not interested in deprecation warnings about the use of
|
||||
standard C functions in the 3rd party libraries (these warnings
|
||||
are only given by VC8+ but it's simpler to just always define
|
||||
this symbol which disables them, even for previous VC versions)
|
||||
-->
|
||||
<define>_CRT_SECURE_NO_WARNINGS</define>
|
||||
</if>
|
||||
</template>
|
||||
|
||||
|
||||
<!-- deal with the need to copy setup.h here: -->
|
||||
|
||||
<set var="IS_MSVC_PRJ">
|
||||
$(FORMAT in ['msvc6prj','msevc4prj','msvs2005prj'])
|
||||
</set>
|
||||
|
||||
<define-tag name="msvc-headers" rules="dll,lib">
|
||||
<if cond="IS_MSVC_PRJ">
|
||||
<msvc-project-files>
|
||||
@@ -460,8 +444,8 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<include file="png.bkl"/>
|
||||
<include file="jpeg.bkl"/>
|
||||
<include file="tiff.bkl"/>
|
||||
<include file="odbc.bkl"/>
|
||||
<include file="expat.bkl"/>
|
||||
<include file="scintilla.bkl"/>
|
||||
|
||||
|
||||
<!-- =============================================================== -->
|
||||
@@ -493,23 +477,20 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<define>__WX$(TOOLKIT)__</define>
|
||||
<define>$(WXUNIV_DEFINE)</define>
|
||||
<define>$(DEBUG_DEFINE)</define>
|
||||
<define>$(NDEBUG_DEFINE)</define>
|
||||
<define>$(EXCEPTIONS_DEFINE)</define>
|
||||
<define>$(RTTI_DEFINE)</define>
|
||||
<define>$(THREAD_DEFINE)</define>
|
||||
<define>$(UNICODE_DEFINE)</define>
|
||||
<define>$(MSLU_DEFINE)</define>
|
||||
<if cond="FORMAT!='autoconf'"><define>$(GFXCTX_DEFINE)</define></if>
|
||||
<include cond="FORMAT!='autoconf'">$(SETUPHDIR)</include>
|
||||
<include cond="FORMAT!='autoconf'">$(TOP_SRCDIR)include</include>
|
||||
<include cond="FORMAT!='autoconf'">$(CAIRO_INCLUDEDIR)</include>
|
||||
<lib-path>$(LIBDIRNAME)</lib-path>
|
||||
<if cond="TOOLKIT=='MGL' and FORMAT=='watcom'">
|
||||
<lib-path>$(MGLLIBPATH)</lib-path>
|
||||
<lib-path>$(MGLLIBPATH)/$(MGLPMLIBPATH)</lib-path>
|
||||
</if>
|
||||
|
||||
<warnings>max</warnings>
|
||||
<cxxflags cond="FORMAT=='autoconf'">$(CXXWARNINGS)</cxxflags>
|
||||
<cppflags-watcom>
|
||||
-wcd=549 <!-- 'sizeof' operand contains compiler generated information -->
|
||||
-wcd=656 <!-- define this function inside its class definition (may improve code quality) -->
|
||||
@@ -525,6 +506,7 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<template id="wx_append_base_nomono">
|
||||
<!-- link against builtin 3rd party libs, if needed: -->
|
||||
<sys-lib>$(LIB_ZLIB)</sys-lib>
|
||||
<sys-lib>$(LIB_ODBC)</sys-lib>
|
||||
<sys-lib>$(LIB_REGEX)</sys-lib>
|
||||
<sys-lib>$(LIB_EXPAT)</sys-lib>
|
||||
|
||||
@@ -547,8 +529,7 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<!-- system libraries on windows: -->
|
||||
<if cond="FORMAT!='autoconf' and PLATFORM_WIN32=='1'">
|
||||
<sys-lib>$(UNICOWS_LIB)</sys-lib>
|
||||
<sys-lib>$(CAIRO_LIB)</sys-lib>
|
||||
<lib-path>$(CAIRO_LIBDIR)</lib-path>
|
||||
<sys-lib>$(GDIPLUS_LIB)</sys-lib>
|
||||
<if cond="FORMAT=='borland'">
|
||||
<sys-lib>ole2w32</sys-lib>
|
||||
</if>
|
||||
@@ -575,13 +556,13 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<sys-lib>rpcrt4</sys-lib>
|
||||
<sys-lib>advapi32</sys-lib>
|
||||
<sys-lib>wsock32</sys-lib>
|
||||
<!-- this one is only used if wxUSE_URL_NATIVE==1 but we don't
|
||||
know if it is here so just add it unconditionally -->
|
||||
<sys-lib>wininet</sys-lib>
|
||||
</if>
|
||||
<if cond="FORMAT=='borland'">
|
||||
<sys-lib>oleacc</sys-lib>
|
||||
</if>
|
||||
<if cond="FORMAT!='msevc4prj'">
|
||||
<sys-lib>odbc32</sys-lib>
|
||||
</if>
|
||||
</if>
|
||||
</template>
|
||||
|
||||
@@ -611,8 +592,6 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<set var="WXLIBNAME">$(wxwin.mkLibName(wxid))</set>
|
||||
<libname>$(WXLIBNAME)</libname>
|
||||
|
||||
<define>WXBUILDING</define>
|
||||
|
||||
<if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
|
||||
<if cond="FORMAT!='autoconf' and TOOLKIT in ['MSW','MGL','PM','WINCE']">
|
||||
<sources>$(WXTOPDIR)src/common/dummy.cpp</sources>
|
||||
@@ -666,23 +645,21 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<if cond="FORMAT=='autoconf'">
|
||||
<res-include>$(RCDEFDIR)</res-include>
|
||||
<res-include>$(TOP_SRCDIR)include</res-include>
|
||||
<postlink-command>$(DYLIB_RPATH_POSTLINK)</postlink-command>
|
||||
</if>
|
||||
<win32-res>$(WXTOPDIR)src/msw/version.rc</win32-res>
|
||||
|
||||
</template>
|
||||
|
||||
<template id="wx_3rdparty_dependencies_gui" cond="USE_GUI=='1'">
|
||||
<depends>wxtiff</depends>
|
||||
<depends>wxjpeg</depends>
|
||||
<depends>wxpng</depends>
|
||||
<depends>wxscintilla</depends>
|
||||
</template>
|
||||
|
||||
<template id="wx_3rdparty_dependencies"
|
||||
template="wx_3rdparty_dependencies_gui">
|
||||
<depends>wxexpat</depends>
|
||||
<depends>wxzlib</depends>
|
||||
<depends cond="FORMAT=='autoconf'">wxodbc</depends>
|
||||
<depends>wxregex</depends>
|
||||
</template>
|
||||
|
||||
@@ -690,7 +667,6 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<if cond="FORMAT=='watcom' and TOOLKIT=='MGL'">
|
||||
<include>$(DOLLAR)(%SCITECH)/include</include>
|
||||
</if>
|
||||
<include>$(INC_TIFF_BUILD)</include>
|
||||
<include>$(INC_TIFF)</include>
|
||||
<include>$(INC_JPEG)</include>
|
||||
<include>$(INC_PNG)</include>
|
||||
@@ -699,6 +675,7 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<template id="wx_3rdparty_includes"
|
||||
template="wx_3rdparty_includes_gui">
|
||||
<include>$(INC_ZLIB)</include>
|
||||
<include>$(INC_ODBC)</include>
|
||||
<include>$(INC_REGEX)</include>
|
||||
<include>$(INC_EXPAT)</include>
|
||||
</template>
|
||||
@@ -741,6 +718,13 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
</set>
|
||||
<set var="PLUGIN_VERSION">$(PLUGVERDELIM)$(PLUGIN_VERSION0)</set>
|
||||
|
||||
<set var="PLUGINSUFFIX">
|
||||
<if cond="UNICODE=='0' and BUILD=='release'"></if>
|
||||
<if cond="UNICODE=='0' and BUILD=='debug'">d</if>
|
||||
<if cond="UNICODE=='1' and BUILD=='release'">u</if>
|
||||
<if cond="UNICODE=='1' and BUILD=='debug'">ud</if>
|
||||
</set>
|
||||
|
||||
<set var="PLUGINS_INST_DIR" make_var="1">
|
||||
$(LIBDIR)/wx/$(PLUGIN_VERSION0)
|
||||
</set>
|
||||
@@ -748,7 +732,7 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<define-rule name="wx-base-plugin" extends="module">
|
||||
<template>
|
||||
<dllname>
|
||||
$(id)$(WX_U_D_SUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
|
||||
$(id)$(PLUGINSUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
|
||||
</dllname>
|
||||
<define>WXUSINGDLL</define>
|
||||
<define>wxUSE_GUI=0</define>
|
||||
@@ -759,7 +743,7 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
<define-rule name="wx-gui-plugin" extends="module">
|
||||
<template template="wx">
|
||||
<dllname>
|
||||
$(id)_$(PORTNAME)$(WXUNIVNAME)$(WX_U_D_SUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
|
||||
$(id)_$(PORTNAME)$(WXUNIVNAME)$(PLUGINSUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
|
||||
</dllname>
|
||||
<define>WXUSINGDLL</define>
|
||||
<install-to>$(PLUGINS_INST_DIR)</install-to>
|
||||
@@ -767,15 +751,14 @@ $(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\r
|
||||
</define-rule>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Support for wxWidgets samples: -->
|
||||
<!-- Support for wxWidgets samples and contrib: -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
<!-- Link against one wxWin library. Value must be literal! -->
|
||||
<define-tag name="wx-lib" rules="exe,dll,module">
|
||||
<sys-lib>$(wxwin.libToLink(value))</sys-lib>
|
||||
<ldlibs>$(wxwin.extraLdflags(value))</ldlibs>
|
||||
<!-- msvs200?prj formats don't support external dependencies yet: -->
|
||||
<if cond="FORMAT in ['msvc6prj','msevc4prj'] and MONOLITHIC=='0'">
|
||||
<if cond="IS_MSVC_PRJ=='1' and MONOLITHIC=='0'">
|
||||
<depends-on-dsp>$(wxwin.makeDspDependency(value))</depends-on-dsp>
|
||||
</if>
|
||||
</define-tag>
|
||||
|
50
build/bakefiles/common_contrib.bkl
Normal file
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!-- $Id$ -->
|
||||
|
||||
<makefile>
|
||||
|
||||
<if cond="not isdefined('file_common_samples_included')">
|
||||
<include file="common.bkl"/>
|
||||
</if>
|
||||
|
||||
<set var="CONTRIB_HDR_DIR" overwrite="0">$(SRCDIR)/../../include</set>
|
||||
|
||||
<!-- =============================================================== -->
|
||||
<!-- Contrib lib helpers: -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
<template id="wx_contrib_lib" template="wx_lib_b">
|
||||
<include>$(CONTRIB_HDR_DIR)</include>
|
||||
</template>
|
||||
|
||||
<if cond="isdefined('file_common_samples_included')">
|
||||
<template id="wx_contrib_sample" template="wx_sample">
|
||||
<include>$(CONTRIB_HDR_DIR)</include>
|
||||
</template>
|
||||
<template id="wx_contrib_util" template="wx_util">
|
||||
<include>$(CONTRIB_HDR_DIR)</include>
|
||||
</template>
|
||||
</if>
|
||||
|
||||
<template id="wx_contrib_dll"
|
||||
template="wx_dll_b" template_append="wx_append">
|
||||
<include>$(CONTRIB_HDR_DIR)</include>
|
||||
</template>
|
||||
|
||||
<template id="wx_contrib_headers">
|
||||
<srcdir>$(CONTRIB_HDR_DIR)</srcdir>
|
||||
<install-to>$(INCLUDEDIR)/wx-$(WX_RELEASE)$(WX_FLAVOUR)</install-to>
|
||||
</template>
|
||||
|
||||
<!-- Link against one contrib library. Value must be literal! -->
|
||||
<define-tag name="contrib-lib" rules="exe,dll,module">
|
||||
<sys-lib>$(wxwin.libToLink(value))</sys-lib>
|
||||
<ldlibs>$(wxwin.extraLdflags(value))</ldlibs>
|
||||
<if cond="IS_MSVC_PRJ=='1' and MONOLITHIC=='0'">
|
||||
<depends-on-dsp>
|
||||
$(wxwin.makeContribDspDependency(value))
|
||||
</depends-on-dsp>
|
||||
</if>
|
||||
</define-tag>
|
||||
|
||||
</makefile>
|
@@ -3,6 +3,8 @@
|
||||
|
||||
<makefile>
|
||||
|
||||
<set var="file_common_samples_included">1</set>
|
||||
|
||||
<if cond="not isdefined('OUT_OF_TREE_MAKEFILES')">
|
||||
<set var="OUT_OF_TREE_MAKEFILES">0</set>
|
||||
</if>
|
||||
|
@@ -9,7 +9,13 @@
|
||||
<!-- Template for wxWidgets samples: -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
<set var="WX_ENABLE_PRECOMP_HEADERS">0</set>
|
||||
<if cond="FORMAT=='autoconf'">
|
||||
<set var="MACOSX_RESOURCES">
|
||||
<if cond="TOOLKIT=='MAC'">
|
||||
Carbon.r sample.r
|
||||
</if>
|
||||
</set>
|
||||
</if>
|
||||
|
||||
<set var="DLLFLAG">
|
||||
<if cond="SHARED=='1'">WXUSINGDLL</if>
|
||||
@@ -22,6 +28,7 @@
|
||||
|
||||
<template id="wx_util" template="wx_util_b">
|
||||
<app-type>gui</app-type>
|
||||
<mac-res cond="FORMAT=='autoconf'">$(MACOSX_RESOURCES)</mac-res>
|
||||
<!-- resource files includes: -->
|
||||
<include>$(SRCDIR)/$(WXTOPDIR)samples</include>
|
||||
<!-- this include is not added via <include> for autoconf, see
|
||||
@@ -38,10 +45,8 @@
|
||||
|
||||
<!-- FIXME: temporary, until bakefile can reuse existing pch files -->
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
<if cond="WX_ENABLE_PRECOMP_HEADERS=='0'">
|
||||
<define>NOPCH</define>
|
||||
</if>
|
||||
</if>
|
||||
</template>
|
||||
|
||||
<template id="wx_util_console" template="wx_util_b">
|
||||
@@ -53,11 +58,13 @@
|
||||
<if cond="FORMAT=='autoconf'">
|
||||
<wx-mac-app-bundle/>
|
||||
<ldflags>$(SAMPLES_RPATH_FLAG)</ldflags>
|
||||
<postlink-command>$(SAMPLES_RPATH_POSTLINK)</postlink-command>
|
||||
</if>
|
||||
</template>
|
||||
<template id="wx_sample_console" template="wx_util_console">
|
||||
<if cond="FORMAT=='autoconf'">
|
||||
<ldflags>$(SAMPLES_RPATH_FLAG)</ldflags>
|
||||
<postlink-command>$(SAMPLES_RPATH_POSTLINK)</postlink-command>
|
||||
</if>
|
||||
</template>
|
||||
|
||||
@@ -66,7 +73,6 @@
|
||||
<!-- Support for samples data files: -->
|
||||
<!-- =============================================================== -->
|
||||
|
||||
<if cond="FORMAT_SUPPORTS_ACTIONS=='1'">
|
||||
<define-rule name="wx-data" extends="copy-files">
|
||||
<template>
|
||||
<dependency-of>all</dependency-of>
|
||||
@@ -88,15 +94,6 @@
|
||||
</define-tag>
|
||||
-->
|
||||
</define-rule>
|
||||
</if>
|
||||
<if cond="FORMAT_SUPPORTS_ACTIONS=='0'">
|
||||
<!-- empty stub for project-files formats which don't support <command> -->
|
||||
<define-rule name="wx-data" extends="action">
|
||||
<define-tag name="dstdir"/>
|
||||
<define-tag name="srcdir"/>
|
||||
<define-tag name="files"/>
|
||||
</define-rule>
|
||||
</if>
|
||||
|
||||
|
||||
<!-- =============================================================== -->
|
||||
|
@@ -3,14 +3,6 @@
|
||||
|
||||
<makefile>
|
||||
|
||||
<set var="IS_MSVC_PRJ">
|
||||
$(FORMAT in ['msvc6prj','msevc4prj','msvs2003prj','msvs2005prj','msvs2008prj'])
|
||||
</set>
|
||||
<set var="IS_MSVC">
|
||||
$(IS_MSVC_PRJ=='1' or FORMAT=='msvc')
|
||||
</set>
|
||||
|
||||
|
||||
<set var="BUILDING_LIB" overwrite="0">0</set>
|
||||
|
||||
<set var="CPP_DEFAULT_VALUE">
|
||||
@@ -54,22 +46,14 @@
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<!-- don't include ANSI configuration in project files, it's going to be
|
||||
eventually removed anyway and it only doubles the number of build
|
||||
configs in projects: -->
|
||||
<if cond="IS_MSVC_PRJ=='1'">
|
||||
<set var="UNICODE">1</set>
|
||||
</if>
|
||||
<if cond="IS_MSVC_PRJ=='0'">
|
||||
<option name="UNICODE">
|
||||
<values>0,1</values>
|
||||
<values-description>,Unicode</values-description>
|
||||
<default-value>1</default-value>
|
||||
<default-value>0</default-value>
|
||||
<description>
|
||||
Compile Unicode build of wxWidgets?
|
||||
</description>
|
||||
</option>
|
||||
</if>
|
||||
|
||||
<if cond="FORMAT!='autoconf' and FORMAT!='watcom'">
|
||||
<option name="MSLU">
|
||||
@@ -111,16 +95,14 @@ Accepted values: AMD64, IA64.
|
||||
<set var="TARGET_CPU"/>
|
||||
</if>
|
||||
|
||||
<!--
|
||||
For MSVC enable debug information in all builds: it is needed to be
|
||||
able to debug the crash dumps produced by wxDebugReport and as it
|
||||
generates it in separate PDB files it doesn't cost us much to enable it
|
||||
(except for disk space...).
|
||||
-->
|
||||
<!-- FIXME: restore this once bakefile is fixed to not use
|
||||
/Gm /GZ (incompatible with /O2) w/ debug-info -->
|
||||
<set var="DEBUG_INFO_DEFAULT">
|
||||
<if cond="IS_MSVC=='1'">1</if>
|
||||
<if cond="IS_MSVC=='0'">default</if>
|
||||
<if cond="FORMAT in ['msvc','msvc6prj','msevc4prj','msvs2005prj']">1</if>
|
||||
<if cond="FORMAT not in ['msvc','msvc6prj','msevc4prj','msvs2005prj']">default</if>
|
||||
</set>
|
||||
-->
|
||||
<set var="DEBUG_INFO_DEFAULT">default</set>
|
||||
|
||||
<option name="DEBUG_INFO">
|
||||
<values>0,1,default</values>
|
||||
@@ -134,11 +116,10 @@ and not included if BUILD=release.
|
||||
|
||||
<option name="DEBUG_FLAG">
|
||||
<values>0,1,default</values>
|
||||
<default-value>1</default-value>
|
||||
<default-value>default</default-value>
|
||||
<description>
|
||||
Value of wxDEBUG_LEVEL. The default value is the same as 1 and means that all
|
||||
but expensive assert checks are enabled, use 0 to completely remove debugging
|
||||
code.
|
||||
Should __WXDEBUG__ be defined? The default value "default" means that it will
|
||||
be defined if BUILD=debug and not defined if BUILD=release.
|
||||
</description>
|
||||
</option>
|
||||
|
||||
@@ -147,8 +128,8 @@ code.
|
||||
<values>0,1,default</values>
|
||||
<default-value>default</default-value>
|
||||
<description>
|
||||
Link against debug (e.g. msvcrtd.dll) or release (msvcrt.dll) RTL?
|
||||
Default is to use debug CRT if and only if BUILD==debug.
|
||||
Should link against debug RTL (msvcrtd.dll) or release (msvcrt.dll)?
|
||||
Acts according to BUILD by default.
|
||||
</description>
|
||||
</option>
|
||||
</if>
|
||||
@@ -224,22 +205,6 @@ Default is to use debug CRT if and only if BUILD==debug.
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_RIBBON">
|
||||
<values>0,1</values>
|
||||
<default-value>1</default-value>
|
||||
<description>
|
||||
Build wxRibbon library (USE_GUI must be 1)?
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_PROPGRID">
|
||||
<values>0,1</values>
|
||||
<default-value>1</default-value>
|
||||
<description>
|
||||
Build wxPropertyGrid library (USE_GUI must be 1)?
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_RICHTEXT">
|
||||
<values>0,1</values>
|
||||
<default-value>1</default-value>
|
||||
@@ -248,26 +213,26 @@ Default is to use debug CRT if and only if BUILD==debug.
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_STC">
|
||||
<values>0,1</values>
|
||||
<default-value>1</default-value>
|
||||
<description>
|
||||
Build wxStyledTextCtrl library (USE_GUI must be 1)?
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_OPENGL">
|
||||
<values>0,1</values>
|
||||
<default-value>1</default-value>
|
||||
<default-value>0</default-value>
|
||||
<description>
|
||||
Build OpenGL canvas library (USE_GUI must be 1)?
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_ODBC">
|
||||
<values>0,1</values>
|
||||
<default-value>0</default-value>
|
||||
<description>
|
||||
Build ODBC database classes (USE_GUI must be 1)?
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<!-- currently only VC++ can compile wxDebugReport which is in QA lib -->
|
||||
<set var="USE_QA_DEFAULT">
|
||||
<if cond="FORMAT in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">1</if>
|
||||
<if cond="FORMAT not in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">0</if>
|
||||
<if cond="FORMAT in ['msvc','msvc6prj','msvs2005prj']">1</if>
|
||||
<if cond="FORMAT not in ['msvc','msvc6prj','msvs2005prj']">0</if>
|
||||
</set>
|
||||
<option name="USE_QA">
|
||||
<values>0,1</values>
|
||||
@@ -301,13 +266,15 @@ Default is to use debug CRT if and only if BUILD==debug.
|
||||
</description>
|
||||
</option>
|
||||
|
||||
<option name="USE_CAIRO">
|
||||
<if cond="FORMAT!='autoconf'">
|
||||
<option name="USE_GDIPLUS">
|
||||
<values>0,1</values>
|
||||
<default-value>0</default-value>
|
||||
<description>
|
||||
Enable wxCairoContext for platforms other than Linux/GTK.
|
||||
Link with gdiplus.lib? (Needed for wxGraphicsContext, will also set wxUSE_GRAPHICS_CONTEXT)
|
||||
</description>
|
||||
</option>
|
||||
</if>
|
||||
|
||||
<option name="OFFICIAL_BUILD">
|
||||
<values>0,1</values>
|
||||
@@ -372,19 +339,14 @@ to run the tests, include CppUnit library here.
|
||||
<option name="EXTRALIBS"/>
|
||||
<option name="EXTRALIBS_XML"/>
|
||||
<option name="EXTRALIBS_HTML"/>
|
||||
<option name="EXTRALIBS_MEDIA"/>
|
||||
<option name="EXTRALIBS_ODBC"/>
|
||||
<option name="EXTRALIBS_GUI"/>
|
||||
<option name="EXTRALIBS_OPENGL"/>
|
||||
<option name="EXTRALIBS_SDL"/>
|
||||
<option name="EXTRALIBS_GNOMEPRINT"/>
|
||||
<option name="CXXWARNINGS"/>
|
||||
<option name="HOST_SUFFIX"/>
|
||||
<option name="DYLIB_RPATH_INSTALL"/>
|
||||
<option name="DYLIB_RPATH_POSTLINK"/>
|
||||
<option name="SAMPLES_RPATH_FLAG"/>
|
||||
|
||||
<!-- see configure.in; it's required by some samples on Mac OS X -->
|
||||
<option name="HEADER_PAD_OPTION"/>
|
||||
<option name="SAMPLES_RPATH_POSTLINK"/>
|
||||
|
||||
<set var="TOP_SRCDIR">$(top_srcdir)/</set>
|
||||
<set var="RUNTIME_LIBS">dynamic</set>
|
||||
@@ -417,11 +379,7 @@ it if SHARED=1 unless you know what you are doing.
|
||||
|
||||
<set var="TOOLKIT" overwrite="0">
|
||||
<if cond="FORMAT=='msevc4prj'">WINCE</if>
|
||||
<if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
|
||||
<if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
|
||||
<if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='win32'">MSW</if>
|
||||
<if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='win32'">MSW</if>
|
||||
<if cond="FORMAT not in ['msevc4prj','msvs2005prj','msvs2008prj'] and PLATFORM_WIN32=='1'">MSW</if>
|
||||
<if cond="FORMAT!='msevc4prj' and PLATFORM_WIN32=='1'">MSW</if>
|
||||
<if cond="PLATFORM_MSDOS=='1'">MGL</if>
|
||||
<if cond="PLATFORM_OS2=='1'">PM</if>
|
||||
</set>
|
||||
@@ -432,7 +390,7 @@ it if SHARED=1 unless you know what you are doing.
|
||||
<set var="EXTRALIBS"/>
|
||||
<set var="EXTRALIBS_XML"/>
|
||||
<set var="EXTRALIBS_HTML"/>
|
||||
<set var="EXTRALIBS_MEDIA"/>
|
||||
<set var="EXTRALIBS_ODBC"/>
|
||||
<set var="EXTRALIBS_GUI"/>
|
||||
<set var="EXTRALIBS_OPENGL">
|
||||
<if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if>
|
||||
@@ -444,9 +402,10 @@ it if SHARED=1 unless you know what you are doing.
|
||||
|
||||
<set var="WITH_PLUGIN_SDL">0</set>
|
||||
|
||||
<if cond="BUILDING_LIB=='1'">
|
||||
<set-srcdir>../..</set-srcdir>
|
||||
</if>
|
||||
<set var="SRCDIR">
|
||||
<if cond="BUILDING_LIB=='1'">..$(DIRSEP)..</if>
|
||||
<if cond="BUILDING_LIB=='0'">.</if>
|
||||
</set>
|
||||
<set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
|
||||
</if>
|
||||
|
||||
@@ -466,6 +425,12 @@ Set the version of your Mingw installation here.
|
||||
<set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set>
|
||||
</if>
|
||||
|
||||
<if cond="FORMAT=='cbuilderx'">
|
||||
<set var="EXTRACFLAGS">
|
||||
<if cond="COMPILER=='gcc'">-DHAVE_W32API_H</if>
|
||||
</set>
|
||||
</if>
|
||||
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Project files - hardcode some defaults -->
|
||||
@@ -475,27 +440,38 @@ Set the version of your Mingw installation here.
|
||||
<set var="RUNTIME_LIBS">dynamic</set>
|
||||
<set var="OFFICIAL_BUILD">0</set>
|
||||
<set var="USE_AUI">1</set>
|
||||
<set var="USE_RIBBON">1</set>
|
||||
<set var="USE_PROPGRID">1</set>
|
||||
<set var="USE_RICHTEXT">1</set>
|
||||
<set var="USE_STC">1</set>
|
||||
<set var="USE_HTML">1</set>
|
||||
<set var="USE_MEDIA">1</set>
|
||||
<set var="USE_XRC">1</set>
|
||||
<set var="USE_OPENGL">1</set>
|
||||
<set var="USE_ODBC">1</set>
|
||||
<set var="USE_QA">1</set>
|
||||
<set var="MONOLITHIC">0</set>
|
||||
<set var="USE_GUI">1</set>
|
||||
<set var="USE_EXCEPTIONS">1</set>
|
||||
<set var="USE_RTTI">1</set>
|
||||
<set var="USE_THREADS">1</set>
|
||||
<set var="USE_CAIRO">0</set>
|
||||
<if cond="FORMAT!='autoconf'"><set var="USE_GDIPLUS">0</set></if>
|
||||
<set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set>
|
||||
<set var="DEBUG_FLAG">default</set>
|
||||
<set var="MSLU">0</set>
|
||||
</if>
|
||||
|
||||
|
||||
<!-- FIXME:
|
||||
C++BuilderX supports only wxMSW, monolithic (sic!) static build
|
||||
and the project can't be put into build/msw and store objects in
|
||||
build/msw/something. This *must* be fixed! -->
|
||||
<if cond="FORMAT=='cbuilderx'">
|
||||
<set var="WXUNIV">0</set>
|
||||
<set var="MONOLITHIC">1</set>
|
||||
<set var="SRCDIR">.</set>
|
||||
<set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
|
||||
<set var="SHARED">0</set>
|
||||
</if>
|
||||
|
||||
|
||||
<!-- DigitalMars make is braindead, it doesn't have conditional
|
||||
processing: -->
|
||||
<if cond="FORMAT=='dmars'">
|
||||
@@ -503,25 +479,23 @@ Set the version of your Mingw installation here.
|
||||
<set var="BUILD">debug</set>
|
||||
<set var="SHARED">0</set>
|
||||
<set var="WXUNIV">0</set>
|
||||
<set var="UNICODE">1</set>
|
||||
<set var="UNICODE">0</set>
|
||||
<!-- Free version does not distribute OpenGL,
|
||||
in commercial distribution better use dmars_smake format -->
|
||||
<set var="USE_OPENGL">0</set>
|
||||
</if>
|
||||
|
||||
<!-- No need for wxUniv on embedded devices (yet): -->
|
||||
<if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')">
|
||||
<if cond="FORMAT=='msevc4prj'">
|
||||
<set var="WXUNIV">0</set>
|
||||
<set var="UNICODE">1</set>
|
||||
<!-- Uploading debug reports from PDAs seems impractical -->
|
||||
<set var="USE_QA">0</set>
|
||||
<set var="MONOLITHIC">1</set> <!-- sic! -->
|
||||
<set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first -->
|
||||
<!-- RTTI and exceptions need separate cccrtti.lib with eVC4 -->
|
||||
<if cond="FORMAT=='msevc4prj'">
|
||||
<set var="USE_RTTI">0</set>
|
||||
<set var="USE_EXCEPTIONS">0</set>
|
||||
</if>
|
||||
</if>
|
||||
|
||||
<!-- Need for wxUniv within wxMGL: -->
|
||||
<if cond="FORMAT!='autoconf' and TOOLKIT=='MGL'">
|
||||
|
@@ -1,6 +1,13 @@
|
||||
<?xml version="1.0" ?>
|
||||
|
||||
<bakefile-manifest xmlns="http://www.bakefile.org/schema/bakefile-formats">
|
||||
<bakefile-manifest>
|
||||
|
||||
<format id="wx24dsp">
|
||||
<description>
|
||||
src/wxWindows.dsp which makes same files as 2.4 version
|
||||
</description>
|
||||
<default-filename>wxWindows.dsp</default-filename>
|
||||
</format>
|
||||
|
||||
<format id="rpmspec">
|
||||
<description>
|
||||
@@ -9,4 +16,13 @@
|
||||
<default-filename>xxx.spec</default-filename>
|
||||
</format>
|
||||
|
||||
<format id="cbx_unix">
|
||||
<description>
|
||||
C++BuilderX projects for Unix (use configure)
|
||||
</description>
|
||||
<default-filename>
|
||||
$(os.path.splitext(os.path.basename(INPUT_FILE))[0])Unix.cbx
|
||||
</default-filename>
|
||||
</format>
|
||||
|
||||
</bakefile-manifest>
|
||||
|
@@ -1,4 +1,6 @@
|
||||
|
||||
This directory contains misc Bakefile backends that are wxWidgets-specific:
|
||||
|
||||
wx24dsp - generates wx2.4-compatible VC++ project file (src/wxWindows.dsp)
|
||||
rpmspec - generates part of .spec files with list of wxBase headers
|
||||
cbx_unix - Borland C++BuilderX project files for configure-based build
|
||||
|
21
build/bakefiles/formats/cbx_unix.bkl
Normal file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!-- $Id$ -->
|
||||
|
||||
<makefile>
|
||||
|
||||
<include file="presets/fake.bkl"/>
|
||||
<set var="COMPILER">vc</set>
|
||||
|
||||
|
||||
<define-tag name="__fake_hook" rules="__fake">
|
||||
<set var="type" overwrite="0">fake</set>
|
||||
</define-tag>
|
||||
|
||||
<define-tag name="__fake_hook" rules="exe">
|
||||
<set var="type">exe</set>
|
||||
</define-tag>
|
||||
|
||||
<output file="$(OUTPUT_FILE)" writer="cbx_unix.empy"/>
|
||||
<set var="FORMAT_OUTPUT_VARIABLES">type</set>
|
||||
|
||||
</makefile>
|