X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3fd9c29882a1562a45d77c6722f5ca9a53e430c1..8329fea8ad89a4df6c2f0441facdc5ad189473ea:/aclocal.m4 diff --git a/aclocal.m4 b/aclocal.m4 index 508bb74aa0..c2d2be391f 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -101,14 +101,11 @@ dnl WX_CPP_NEW_HEADERS checks whether the compiler has "new" header dnl or only the old one - it may be generally assumed that if dnl exists, the other "new" headers (without .h) exist too. dnl -dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false-or-cross-compiling) +dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false) dnl --------------------------------------------------------------------------- AC_DEFUN([WX_CPP_NEW_HEADERS], [ - if test "$cross_compiling" = "yes"; then - ifelse([$2], , :, [$2]) - else AC_LANG_SAVE AC_LANG_CPLUSPLUS @@ -121,7 +118,6 @@ AC_DEFUN([WX_CPP_NEW_HEADERS], fi AC_LANG_RESTORE - fi ]) dnl --------------------------------------------------------------------------- @@ -612,6 +608,27 @@ if test "$ac_cv_cxx_const_cast" = yes; then 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 +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(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<>, @@ -638,7 +655,7 @@ dnl AM_PATH_GTK_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, dnl Test for GTK+, and define GTK_CFLAGS and GTK_LIBS, if gthread is specified in MODULES, dnl pass to pkg-config dnl -AC_DEFUN(AM_PATH_GTK_2_0, +AC_DEFUN([AM_PATH_GTK_2_0], [dnl dnl Get the cflags and libraries from pkg-config dnl @@ -663,7 +680,7 @@ AC_ARG_ENABLE(gtktest, [ --disable-gtktest do not try to compile and run if pkg-config --atleast-pkgconfig-version 0.7 ; then : else - echo *** pkg-config too old; version 0.7 or better required. + echo "*** pkg-config too old; version 0.7 or better required." no_gtk=yes PKG_CONFIG=no fi @@ -1135,8 +1152,10 @@ AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` if test "x$enable_sdltest" = "xyes" ; then ac_save_CFLAGS="$CFLAGS" + ac_save_CXXFLAGS="$CXXFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" LIBS="$LIBS $SDL_LIBS" dnl dnl Now check if the installed SDL is sufficiently new. (Also sanity @@ -1202,6 +1221,7 @@ int main (int argc, char *argv[]) ],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" LIBS="$ac_save_LIBS" fi fi @@ -1221,6 +1241,7 @@ int main (int argc, char *argv[]) else echo "*** Could not run SDL test program, checking why..." CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" LIBS="$LIBS $SDL_LIBS" AC_TRY_LINK([ #include @@ -1245,6 +1266,7 @@ int main(int argc, char *argv[]) echo "*** or that you have moved SDL since it was installed. In the latter case, you" echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ]) CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" LIBS="$ac_save_LIBS" fi fi @@ -1272,7 +1294,7 @@ dnl dnl Detects GNU make dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_GNUMAKE, +AC_DEFUN([AC_BAKEFILE_GNUMAKE], [ dnl does make support "-include" (only GNU make does AFAIK)? AC_CACHE_CHECK([if make is GNU make], bakefile_cv_prog_makeisgnu, @@ -1299,14 +1321,16 @@ dnl dnl Detects platform and sets PLATFORM_XXX variables accordingly dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_PLATFORM, +AC_DEFUN([AC_BAKEFILE_PLATFORM], [ PLATFORM_UNIX=0 PLATFORM_WIN32=0 PLATFORM_MSDOS=0 PLATFORM_MAC=0 + PLATFORM_MACOS=0 PLATFORM_MACOSX=0 PLATFORM_OS2=0 + PLATFORM_BEOS=0 if test "x$BAKEFILE_FORCE_PLATFORM" = "x"; then case "${BAKEFILE_HOST}" in @@ -1322,6 +1346,13 @@ AC_DEFUN(AC_BAKEFILE_PLATFORM, powerpc-*-darwin* ) PLATFORM_MAC=1 PLATFORM_MACOSX=1 + ;; + *-*-beos* ) + PLATFORM_BEOS=1 + ;; + powerpc-apple-macos* ) + PLATFORM_MAC=1 + PLATFORM_MACOS=1 ;; * ) PLATFORM_UNIX=1 @@ -1345,6 +1376,9 @@ AC_DEFUN(AC_BAKEFILE_PLATFORM, unix ) PLATFORM_UNIX=1 ;; + beos ) + PLATFORM_BEOS=1 + ;; * ) AC_MSG_ERROR([Unknown platform: $BAKEFILE_FORCE_PLATFORM]) ;; @@ -1355,8 +1389,10 @@ AC_DEFUN(AC_BAKEFILE_PLATFORM, AC_SUBST(PLATFORM_WIN32) AC_SUBST(PLATFORM_MSDOS) AC_SUBST(PLATFORM_MAC) + AC_SUBST(PLATFORM_MACOS) AC_SUBST(PLATFORM_MACOSX) AC_SUBST(PLATFORM_OS2) + AC_SUBST(PLATFORM_BEOS) ]) @@ -1366,9 +1402,10 @@ dnl dnl Sets misc platform-specific settings dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_PLATFORM_SPECIFICS, +AC_DEFUN([AC_BAKEFILE_PLATFORM_SPECIFICS], [ - AC_ARG_ENABLE([omf], [ --enable-omf use OMF object format (OS/2)], + AC_ARG_ENABLE([omf], AS_HELP_STRING([--enable-omf], + [use OMF object format (OS/2)]), [bk_os2_use_omf="$enableval"]) case "${BAKEFILE_HOST}" in @@ -1391,6 +1428,10 @@ AC_DEFUN(AC_BAKEFILE_PLATFORM_SPECIFICS, OS2_LIBEXT="a" fi ;; + + i*86-*-beos* ) + LDFLAGS="-L/boot/develop/lib/x86 $LDFLAGS" + ;; esac ]) @@ -1401,7 +1442,7 @@ dnl Detects shared various suffixes for shared libraries, libraries, programs, dnl plugins etc. dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_SUFFIXES, +AC_DEFUN([AC_BAKEFILE_SUFFIXES], [ SO_SUFFIX="so" SO_SUFFIX_MODULE="so" @@ -1474,26 +1515,23 @@ dnl Detects command for making shared libraries, substitutes SHARED_LD_CC dnl and SHARED_LD_CXX. dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_SHARED_LD, +AC_DEFUN([AC_BAKEFILE_SHARED_LD], [ - dnl Defaults for GCC and ELF .so shared libs: - SHARED_LD_CC="\$(CC) -shared -o" - SHARED_LD_CXX="\$(CXX) -shared -o" - dnl the extra compiler flags needed for compilation of shared library + PIC_FLAG="" if test "x$GCC" = "xyes"; then dnl the switch for gcc is the same under all platforms PIC_FLAG="-fPIC" fi + + dnl Defaults for GCC and ELF .so shared libs: + SHARED_LD_CC="\$(CC) -shared ${PIC_FLAG} -o" + SHARED_LD_CXX="\$(CXX) -shared ${PIC_FLAG} -o" case "${BAKEFILE_HOST}" in *-hp-hpux* ) dnl default settings are good for gcc but not for the native HP-UX - if test "x$GCC" = "xyes"; then - dnl -o flag must be after PIC flag - SHARED_LD_CC="${CC} -shared ${PIC_FLAG} -o" - SHARED_LD_CXX="${CXX} -shared ${PIC_FLAG} -o" - else + if test "x$GCC" != "xyes"; then dnl no idea why it wants it, but it does LDFLAGS="$LDFLAGS -L/usr/lib" @@ -1593,8 +1631,8 @@ AC_DEFUN(AC_BAKEFILE_SHARED_LD, *-*-beos* ) dnl can't use gcc under BeOS for shared library creation because it dnl complains about missing 'main' - SHARED_LD_CC="${LD} -shared -o" - SHARED_LD_CXX="${LD} -shared -o" + SHARED_LD_CC="${LD} -nostart -o" + SHARED_LD_CXX="${LD} -nostart -o" ;; *-*-irix* ) @@ -1606,6 +1644,8 @@ AC_DEFUN(AC_BAKEFILE_SHARED_LD, *-*-cygwin* | *-*-mingw32* ) PIC_FLAG="" + SHARED_LD_CC="\$(CC) -shared -o" + SHARED_LD_CXX="\$(CXX) -shared -o" ;; *-pc-os2_emx | *-pc-os2-emx ) @@ -1616,6 +1656,7 @@ AC_DEFUN(AC_BAKEFILE_SHARED_LD, chmod +x dllar.sh ;; + powerpc-apple-macos* | \ *-*-freebsd* | *-*-openbsd* | *-*-netbsd* | \ *-*-sunos4* | \ *-*-osf* | \ @@ -1628,6 +1669,10 @@ AC_DEFUN(AC_BAKEFILE_SHARED_LD, AC_MSG_ERROR(unknown system type $BAKEFILE_HOST.) esac + if test "x$PIC_FLAG" != "x" ; then + PIC_FLAG="$PIC_FLAG -DPIC" + fi + if test "x$SHARED_LD_MODULE_CC" = "x" ; then SHARED_LD_MODULE_CC="$SHARED_LD_CC" fi @@ -1649,7 +1694,7 @@ dnl dnl Detects linker options for attaching versions (sonames) to shared libs. dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_SHARED_VERSIONS, +AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS], [ USE_SOVERSION=0 USE_SOVERLINUX=0 @@ -1695,7 +1740,7 @@ dnl dnl Detects available C/C++ dependency tracking options dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_DEPS, +AC_DEFUN([AC_BAKEFILE_DEPS], [ AC_MSG_CHECKING([for dependency tracking method]) DEPS_TRACKING=0 @@ -1733,7 +1778,7 @@ dnl Checks for presence of basic programs, such as C and C++ compiler, "ranlib" dnl or "install" dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_CHECK_BASIC_STUFF, +AC_DEFUN([AC_BAKEFILE_CHECK_BASIC_STUFF], [ AC_PROG_RANLIB AC_PROG_INSTALL @@ -1748,7 +1793,9 @@ AC_DEFUN(AC_BAKEFILE_CHECK_BASIC_STUFF, case ${BAKEFILE_HOST} in *-hp-hpux* ) - INSTALL_DIR="mkdir" + dnl HP-UX install doesn't handle the "-d" switch so don't + dnl use it there + INSTALL_DIR="mkdir -p" ;; *) INSTALL_DIR="$INSTALL -d" ;; @@ -1770,7 +1817,7 @@ dnl dnl Checks for presence of resource compilers for win32 or mac dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_RES_COMPILERS, +AC_DEFUN([AC_BAKEFILE_RES_COMPILERS], [ RESCOMP= SETFILE= @@ -1785,7 +1832,7 @@ AC_DEFUN(AC_BAKEFILE_RES_COMPILERS, fi ;; - *-*-darwin* ) + *-*-darwin* | powerpc-apple-macos* ) AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez) AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile) ;; @@ -1801,11 +1848,12 @@ dnl dnl Check for precompiled headers support (GCC >= 3.4) dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_PRECOMP_HEADERS, +AC_DEFUN([AC_BAKEFILE_PRECOMP_HEADERS], [ AC_ARG_ENABLE([precomp-headers], - [ --disable-precomp-headers don't use precompiled headers even if compiler can], + AS_HELP_STRING([--disable-precomp-headers], + [don't use precompiled headers even if compiler can]), [bk_use_pch="$enableval"]) GCC_PCH=0 @@ -1830,58 +1878,13 @@ AC_DEFUN(AC_BAKEFILE_PRECOMP_HEADERS, ], [ AC_MSG_RESULT([yes]) - dnl FIXME - this is temporary, till .gch dependencies - dnl are fixed in generated Makefiles - CPPFLAGS="-fpch-deps $CPPFLAGS" GCC_PCH=1 ], [ AC_MSG_RESULT([no]) ]) if test $GCC_PCH = 1 ; then - cat <bk-make-pch -#!/bin/sh - -# 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. - -outfile="\${1}" -header="\${2}" -shift -shift - -compiler= -headerfile= -while test \${#} -gt 0; do - case "\${1}" in - -I* ) - incdir=\`echo \${1} | sed -e 's/-I\(.*\)/\1/g'\` - if test "x\${headerfile}" = "x" -a -f "\${incdir}/\${header}" ; then - headerfile="\${incdir}/\${header}" - fi - ;; - esac - compiler="\${compiler} \${1}" - shift -done - -if test "x\${headerfile}" = "x" ; then - echo "error: can't find header \${header} in include paths" >2 -else - if test -f \${outfile} ; then - rm -f \${outfile} - else - mkdir -p \`dirname \${outfile}\` - fi - depsfile=".deps/\`basename \${outfile}\`.d" - mkdir -p .deps - # can do this because gcc is >= 3.4: - \${compiler} -o \${outfile} -MMD -MF "\${depsfile}" "\${headerfile}" - exit \${?} -fi -EOF + AC_BAKEFILE_CREATE_FILE_BK_MAKE_PCH chmod +x bk-make-pch fi fi @@ -1905,8 +1908,10 @@ dnl to ${host} dnl BAKEFILE_FORCE_PLATFORM set to override platform detection dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE, +AC_DEFUN([AC_BAKEFILE], [ + AC_PREREQ(2.58) + if test "x$BAKEFILE_HOST" = "x"; then BAKEFILE_HOST="${host}" fi @@ -1923,7 +1928,13 @@ AC_DEFUN(AC_BAKEFILE, AC_BAKEFILE_DEPS AC_BAKEFILE_RES_COMPILERS + BAKEFILE_BAKEFILE_M4_VERSION="0.1.4" + builtin(include, autoconf_inc.m4) + + if test "$BAKEFILE_BAKEFILE_M4_VERSION" != "$BAKEFILE_AUTOCONF_INC_M4_VERSION" ; then + AC_MSG_ERROR([Versions of Bakefile used to generate makefiles ($BAKEFILE_AUTOCONF_INC_M4_VERSION) and configure ($BAKEFILE_BAKEFILE_M4_VERSION) do not match.]) + fi ]) @@ -1931,7 +1942,7 @@ dnl --------------------------------------------------------------------------- dnl Embedded copies of helper scripts follow: dnl --------------------------------------------------------------------------- -AC_DEFUN(AC_BAKEFILE_CREATE_FILE_DLLAR_SH, +AC_DEFUN([AC_BAKEFILE_CREATE_FILE_DLLAR_SH], [ dnl ===================== dllar.sh begins here ===================== D='$' @@ -1996,7 +2007,7 @@ flag_USE_LXLITE=1; basnam(){ case ${D}# in 1) - echo ${D}1 | sed 's/.*\///' | sed 's/.*\\//' + echo ${D}1 | sed 's/.*\\///' | sed 's/.*\\\\//' ;; 2) echo ${D}1 | sed 's/'${D}2'${D}//' @@ -2023,18 +2034,18 @@ CleanUp() { # 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 + 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 [-o[utput] output_file] [-i[mport] importlib_name]' - 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 'Usage: dllar @<:@-o@<:${utput}:>@ output_file@:>@ @<:@-i@<:${mport}:>@ importlib_name@:>@' + 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,' @@ -2047,16 +2058,16 @@ PrintHelp() { 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 '*> -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 '*> -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 '*> -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 '*> -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,' @@ -2080,7 +2091,7 @@ doCommand() { eval ${D}* rcCmd=${D}? - if [ ${D}rcCmd -ne 0 ]; then + if @<:@ ${D}rcCmd -ne 0 @:>@; then echo "command failed, exit code="${D}rcCmd CleanUp exit ${D}rcCmd @@ -2111,7 +2122,7 @@ case ${D}curDirS in esac # Parse commandline libsToLink=0 -while [ ${D}1 ]; do +while @<:@ ${D}1 @:>@; do case ${D}1 in -ord*) EXPORT_BY_ORDINALS=1; @@ -2165,16 +2176,16 @@ while [ ${D}1 ]; do ;; *) found=0; - if [ ${D}libsToLink -ne 0 ]; then + 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 + if @<:@ -f ${D}file @:>@; then inputFiles="${D}{inputFiles} ${D}file" found=1 fi done - if [ ${D}found -eq 0 ]; then + if @<:@ ${D}found -eq 0 @:>@; then echo "ERROR: No file(s) found: "${D}1 exit 8 fi @@ -2185,7 +2196,7 @@ while [ ${D}1 ]; do done # iterate cmdline words # -if [ -z "${D}inputFiles" ]; then +if @<:@ -z "${D}inputFiles" @:>@; then echo "dllar: no input files" PrintHelp fi @@ -2210,7 +2221,7 @@ for file in ${D}inputFiles ; do esac dirname=\`basnam ${D}file ${D}suffix\`"_%" mkdir ${D}dirname - if [ ${D}? -ne 0 ]; then + if @<:@ ${D}? -ne 0 @:>@; then echo "Failed to create subdirectory ./${D}dirname" CleanUp exit 8; @@ -2221,16 +2232,16 @@ for file in ${D}inputFiles ; do cd ${D}curDir found=0; for subfile in ${D}dirname/*.o* ; do - if [ -f ${D}subfile ]; then + if @<:@ -f ${D}subfile @:>@; then found=1 - if [ -s ${D}subfile ]; then + 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\'" + if @<:@ ${D}found -eq 0 @:>@; then + echo "WARNING: there are no files in archive \\'${D}file\\'" fi ;; *) @@ -2242,7 +2253,7 @@ inputFiles="${D}newInputFiles" # Output filename(s). do_backup=0; -if [ -z ${D}outFile ]; then +if @<:@ -z ${D}outFile @:>@; then do_backup=1; set outFile ${D}inputFiles; outFile=${D}2 fi @@ -2287,7 +2298,7 @@ case ${D}outimpFile in *) ;; esac -if [ -z ${D}outimpFile ]; then +if @<:@ -z ${D}outimpFile @:>@; then outimpFile=${D}outFile fi defFile="${D}{outFile}.def" @@ -2297,11 +2308,11 @@ dllFile="${D}outFile" # Add suffix to dllFile later, first we need a version to use as # name in .def file. -if [ ${D}do_backup -ne 0 ] ; then - if [ -f ${D}arcFile ] ; then +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 + if @<:@ -f ${D}arcFile2 @:>@ ; then doCommand "mv ${D}arcFile2 ${D}{outFile}_s.lib" fi fi @@ -2323,8 +2334,8 @@ done rm -f ${D}defFile echo "LIBRARY \`basnam ${D}dllFile\` ${D}library_flags" >> ${D}defFile dllFile="${D}dllFile.dll" -if [ -n ${D}description ]; then - echo "DESCRIPTION \"${D}{description}\"" >> ${D}defFile +if @<:@ -n ${D}description @:>@; then + echo "DESCRIPTION \\"${D}{description}\\"" >> ${D}defFile fi echo "EXPORTS" >> ${D}defFile @@ -2338,12 +2349,12 @@ for word in ${D}exclude_symbols; do done -if [ ${D}EXPORT_BY_ORDINALS -ne 0 ]; then - sed "=" < ${D}tmpdefFile | \ +if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then + sed "=" < ${D}tmpdefFile | \\ sed ' N : loop - s/^\([0-9]\+\)\([^;]*\)\(;.*\)\?/\2 @\1 NONAME/ + s/^\\(@<:@0-9@:>@\\+\\)\\(@<:@^;@:>@*\\)\\(;.*\\)\\?/\\2 @\\1 NONAME/ t loop ' > ${D}{tmpdefFile}% grep -v "^ *${D}" < ${D}{tmpdefFile}% > ${D}tmpdefFile @@ -2368,9 +2379,9 @@ doCommand "${D}CC ${D}CFLAGS -Zdll -o ${D}dllFile ${D}defFile ${D}gccCmdl ${D}EX touch "${D}{outFile}.dll" doCommand "emximp -o ${D}arcFile ${D}defFile" -if [ ${D}flag_USE_LXLITE -ne 0 ]; then +if @<:@ ${D}flag_USE_LXLITE -ne 0 @:>@; then add_flags=""; - if [ ${D}EXPORT_BY_ORDINALS -ne 0 ]; then + if @<:@ ${D}EXPORT_BY_ORDINALS -ne 0 @:>@; then add_flags="-ynd" fi doCommand "lxlite -cs -t: -mrn -mln ${D}add_flags ${D}dllFile" @@ -2384,7 +2395,7 @@ EOF dnl ===================== dllar.sh ends here ===================== ]) -AC_DEFUN(AC_BAKEFILE_CREATE_FILE_BK_DEPS, +AC_DEFUN([AC_BAKEFILE_CREATE_FILE_BK_DEPS], [ dnl ===================== bk-deps begins here ===================== D='$' @@ -2423,13 +2434,13 @@ if test ${D}DEPSMODE = gcc ; then esac shift done - depfile=\`basename ${D}srcfile | sed -e 's/\..*${D}/.d/g'\` - depobjname=\`echo ${D}depfile |sed -e 's/\.d/.o/g'\` + depfile=\`basename ${D}srcfile | sed -e 's/\\..*${D}/.d/g'\` + depobjname=\`echo ${D}depfile |sed -e 's/\\.d/.o/g'\` if test -f ${D}depfile ; then sed -e "s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d rm -f ${D}depfile else - depfile=\`basename ${D}objfile | sed -e 's/\..*${D}/.d/g'\` + depfile=\`basename ${D}objfile | sed -e 's/\\..*${D}/.d/g'\` if test -f ${D}depfile ; then sed -e "/^${D}objfile/!s,${D}depobjname:,${D}objfile:,g" ${D}depfile >${D}{DEPSDIR}/${D}{objfile}.d rm -f ${D}depfile @@ -2444,7 +2455,7 @@ EOF dnl ===================== bk-deps ends here ===================== ]) -AC_DEFUN(AC_BAKEFILE_CREATE_FILE_SHARED_LD_SH, +AC_DEFUN([AC_BAKEFILE_CREATE_FILE_SHARED_LD_SH], [ dnl ===================== shared-ld-sh begins here ===================== D='$' @@ -2538,8 +2549,58 @@ EOF dnl ===================== shared-ld-sh ends here ===================== ]) +AC_DEFUN([AC_BAKEFILE_CREATE_FILE_BK_MAKE_PCH], +[ +dnl ===================== bk-make-pch begins here ===================== +D='$' +cat <bk-make-pch +#!/bin/sh + +# 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. + +outfile="${D}{1}" +header="${D}{2}" +shift +shift + +compiler= +headerfile= +while test ${D}{#} -gt 0; do + case "${D}{1}" in + -I* ) + incdir=\`echo ${D}{1} | sed -e 's/-I\\(.*\\)/\\1/g'\` + if test "x${D}{headerfile}" = "x" -a -f "${D}{incdir}/${D}{header}" ; then + headerfile="${D}{incdir}/${D}{header}" + fi + ;; + esac + compiler="${D}{compiler} ${D}{1}" + shift +done + +if test "x${D}{headerfile}" = "x" ; then + echo "error: can't find header ${D}{header} in include paths" >2 +else + if test -f ${D}{outfile} ; then + rm -f ${D}{outfile} + else + mkdir -p \`dirname ${D}{outfile}\` + fi + depsfile=".deps/\`echo ${D}{outfile} | tr '/.' '__'\`.d" + mkdir -p .deps + # can do this because gcc is >= 3.4: + ${D}{compiler} -o ${D}{outfile} -MMD -MF "${D}{depsfile}" "${D}{headerfile}" + exit ${D}{?} +fi +EOF +dnl ===================== bk-make-pch ends here ===================== +]) + dnl -dnl AM_PATH_CPPUNIT([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl AM_PATH_CPPUNIT(MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) dnl AC_DEFUN(AM_PATH_CPPUNIT, [