518b5d2ffb
2. POSIX threads are in src/unix/threadpsx.cpp 3. some more functions are detected using configure and not guessed from the platform type git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1594 lines
42 KiB
Plaintext
1594 lines
42 KiB
Plaintext
dnl ////////////////////////////////////////////////////////////////////////
|
|
dnl
|
|
dnl Top-level configure.in for wxWindows by Robert Roebling, Wolfram Gloger
|
|
dnl and Martin Sperl.
|
|
dnl
|
|
dnl This script is under the wxWindows licence.
|
|
dnl $Id$
|
|
dnl ////////////////////////////////////////////////////////////////////////
|
|
|
|
dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
|
|
dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
|
|
dnl
|
|
AC_DEFUN(AM_PATH_GTK,
|
|
[dnl
|
|
dnl Get the cflags and libraries from the gtk-config script
|
|
dnl
|
|
AC_ARG_WITH(gtk-prefix,[**--with-gtk-prefix=PFX Prefix where GTK is installed],
|
|
gtk_config_prefix="$withval", gtk_config_prefix="")
|
|
AC_ARG_WITH(gtk-exec-prefix,[**--with-gtk-exec-prefix=PFX Exec prefix where GTK is installed],
|
|
gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
|
|
|
|
if test x$gtk_config_exec_prefix != x ; then
|
|
gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
|
|
if test x${GTK_CONFIG+set} != xset ; then
|
|
GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config
|
|
fi
|
|
fi
|
|
if test x$gtk_config_prefix != x ; then
|
|
gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
|
|
if test x${GTK_CONFIG+set} != xset ; then
|
|
GTK_CONFIG=$gtk_config_prefix/bin/gtk-config
|
|
fi
|
|
fi
|
|
|
|
AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
|
|
min_gtk_version=ifelse([$1], ,0.99.7,$1)
|
|
AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
|
|
no_gtk=""
|
|
if test "$GTK_CONFIG" != "no" ; then
|
|
GTK_CFLAGS=`$GTK_CONFIG --cflags`
|
|
GTK_LIBS=`$GTK_CONFIG --libs`
|
|
ac_save_CFLAGS="$CFLAGS"
|
|
ac_save_LIBS="$LIBS"
|
|
CFLAGS="$CFLAGS $GTK_CFLAGS"
|
|
LIBS="$LIBS $GTK_LIBS"
|
|
dnl
|
|
dnl Now check if the installed GTK is sufficiently new. (Also sanity
|
|
dnl checks the results of gtk-config to some extent
|
|
dnl
|
|
AC_TRY_RUN([
|
|
#include <gtk/gtk.h>
|
|
#include <stdio.h>
|
|
|
|
int
|
|
main ()
|
|
{
|
|
int major, minor, micro;
|
|
|
|
if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, µ) != 3) {
|
|
printf("%s, bad version string\n", "$min_gtk_version");
|
|
exit(1);
|
|
}
|
|
|
|
if (gtk_minor_version > 0) return FALSE;
|
|
|
|
return !((gtk_major_version > major) ||
|
|
((gtk_major_version == major) && (gtk_minor_version > minor)) ||
|
|
((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
|
|
}
|
|
],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
|
|
CFLAGS="$ac_save_CFLAGS"
|
|
LIBS="$ac_save_LIBS"
|
|
else
|
|
no_gtk=yes
|
|
fi
|
|
if test "x$no_gtk" = x ; then
|
|
AC_MSG_RESULT(yes)
|
|
ifelse([$2], , :, [$2])
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
GTK_CFLAGS=""
|
|
GTK_LIBS=""
|
|
ifelse([$3], , :, [$3])
|
|
fi
|
|
AC_SUBST(GTK_CFLAGS)
|
|
AC_SUBST(GTK_LIBS)
|
|
])
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl custom macros
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
AC_DEFUN(AC_OVERRIDES_PREPARE,
|
|
[
|
|
rm -f ${OSTYPE}.system.cache.tmp
|
|
touch ${OSTYPE}.system.cache.tmp
|
|
touch ${OSTYPE}.system.cache
|
|
])
|
|
|
|
AC_DEFUN(AC_OVERRIDES_DONE,
|
|
[
|
|
mv ${OSTYPE}.system.cache.tmp ${OSTYPE}.system.cache
|
|
])
|
|
|
|
dnl package,message,helpmessage,variable
|
|
AC_DEFUN(AC_OVERRIDES,
|
|
[
|
|
AC_MSG_CHECKING("for $2")
|
|
AC_ARG_WITH($1,$3,
|
|
[if test "x$with_$1" = xyes; then
|
|
ac_cv_use_$1='$4="1"'
|
|
else
|
|
ac_cv_use_$1='$4="0"'
|
|
fi],
|
|
[
|
|
LINE=`grep "$4" ${OSTYPE}.system.cache`
|
|
if test "x$LINE" != x ; then
|
|
eval "DEFAULT_$LINE"
|
|
fi
|
|
ac_cv_use_$1='$4='$DEFAULT_$4
|
|
])
|
|
eval "$ac_cv_use_$1"
|
|
echo $ac_cv_use_$1 >> ${OSTYPE}.system.cache.tmp
|
|
if test "$$4" = 1; then
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
])
|
|
|
|
dnl package,message,helpmessage,variable
|
|
AC_DEFUN(AC_OVERRIDES_OLD,
|
|
[
|
|
AC_MSG_CHECKING("for $2")
|
|
AC_CACHE_VAL(ac_cv_use_$1,
|
|
[
|
|
AC_ARG_WITH($1,$3,
|
|
[if test "x$with_$1" = xyes; then
|
|
ac_cv_use_$1='$4="1"'
|
|
else
|
|
ac_cv_use_$1='$4="0"'
|
|
fi],[ac_cv_use_$1='$4=$DEFAULT_$4'])
|
|
])
|
|
eval "$ac_cv_use_$1"
|
|
|
|
if test "$$4" = 1; then
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
])
|
|
|
|
AC_DEFUN(AC_PATH_FIND_INCLUDES,
|
|
[
|
|
ac_find_includes=
|
|
for ac_dir in $1;
|
|
do
|
|
if test -f "$ac_dir/$2"; then
|
|
ac_find_includes=$ac_dir
|
|
break
|
|
fi
|
|
done
|
|
])
|
|
|
|
AC_DEFUN(AC_PATH_FIND_LIBRARIES,
|
|
[
|
|
ac_find_libraries=
|
|
for ac_dir in $1;
|
|
do
|
|
for ac_extension in a so sl; do
|
|
if test -f "$ac_dir/lib$2.$ac_extension"; then
|
|
ac_find_libraries=$ac_dir
|
|
break 2
|
|
fi
|
|
done
|
|
done
|
|
])
|
|
|
|
dnl Path to include, allready defined
|
|
AC_DEFUN(AC_INCLUDE_PATH_EXIST,
|
|
[
|
|
ac_path_to_include=$1
|
|
echo "$2" | grep "\-I$1" > /dev/null
|
|
result=$?
|
|
if test $result = 0; then
|
|
ac_path_to_include=""
|
|
else
|
|
ac_path_to_include="-I$1"
|
|
fi
|
|
])
|
|
|
|
dnl Path to link, allready defined
|
|
AC_DEFUN(AC_LINK_PATH_EXIST,
|
|
[
|
|
echo "$2" | grep "\-L$1" > /dev/null
|
|
result=$?
|
|
if test $result = 0; then
|
|
ac_path_to_link=""
|
|
else
|
|
ac_path_to_link="-L$1"
|
|
fi
|
|
])
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
AC_INIT(configure.in)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl Check platform
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
OS="${OSTYPE}"
|
|
|
|
if test "x$OS" = "x"; then
|
|
UNAME=`uname`
|
|
AC_MSG_ERROR("The system variable OS has not been set"
|
|
"please set is everytime befor compiling on this system"
|
|
"A good example for this system would be:"
|
|
"setenv OSTYPE $UNAME for csh as a SHELL"
|
|
"EXPORT OSTYPE=$UNAME for sh as SHELL"
|
|
"please set this and restart again."
|
|
)
|
|
fi
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl Set base directory
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
WXBASEDIR=`pwd`
|
|
AC_SUBST(WXBASEDIR)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl search path for includes and libraries
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
dnl VZ: added standard locations for Xm.h for Irix, HP-UX and SunOS (19.02.99)
|
|
SEARCH_INCLUDE="\
|
|
/usr/Motif-1.2/include \
|
|
/usr/Motif-2.1/include \
|
|
\
|
|
/usr/include/Motif1.2 \
|
|
/opt/xpm/include/X11 \
|
|
\
|
|
/usr/Motif1.2/include \
|
|
/usr/dt/include \
|
|
/usr/include/Xm \
|
|
\
|
|
/usr/X11R6/include \
|
|
/usr/X11R5/include \
|
|
/usr/X11R4/include \
|
|
\
|
|
/usr/X11R6/lib \
|
|
/usr/X11R5/lib \
|
|
/usr/X11R4/lib \
|
|
\
|
|
/usr/include/X11R6 \
|
|
/usr/include/X11R5 \
|
|
/usr/include/X11R4 \
|
|
\
|
|
/usr/local/X11R6/include \
|
|
/usr/local/X11R5/include \
|
|
/usr/local/X11R4/include \
|
|
\
|
|
/usr/local/include/X11R6 \
|
|
/usr/local/include/X11R5 \
|
|
/usr/local/include/X11R4 \
|
|
\
|
|
/usr/X11/include \
|
|
/usr/include/X11 \
|
|
/usr/local/X11/include \
|
|
/usr/local/include/X11 \
|
|
\
|
|
/usr/X386/include \
|
|
/usr/x386/include \
|
|
/usr/XFree86/include/X11 \
|
|
\
|
|
/usr/include \
|
|
/usr/include/gtk \
|
|
/usr/include/gdk \
|
|
/usr/include/glib \
|
|
/usr/local/include \
|
|
/usr/unsupported/include \
|
|
/usr/athena/include \
|
|
/usr/local/x11r5/include \
|
|
/usr/lpp/Xamples/include \
|
|
\
|
|
/usr/local/include/gtk \
|
|
/usr/local/include/qt \
|
|
/usr/include/qt \
|
|
\
|
|
/usr/openwin/include \
|
|
/usr/openwin/share/include \
|
|
"
|
|
|
|
SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl standard checks
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
dnl ###################
|
|
dnl # checks programs #
|
|
dnl ###################
|
|
|
|
dnl C-compiler checks
|
|
dnl =================
|
|
dnl use what compiler
|
|
AC_PROG_CC
|
|
dnl defines CC with the compiler to use
|
|
dnl defines GCC with yes if using gcc
|
|
dnl defines GCC empty if not using gcc
|
|
dnl defines CFLAGS
|
|
|
|
CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
|
|
|
|
dnl does compiler support -c and -o simultaniously
|
|
AC_PROG_CC_C_O
|
|
dnl defines NO_MINUS_C_MINUS_O if compiler does not accept
|
|
dnl both switches simultaniously
|
|
dnl what is the c-preprocessor
|
|
AC_PROG_CPP
|
|
dnl defines CPP with the c-preprocessor
|
|
dnl is -traditional needed for correct compilations
|
|
AC_PROG_GCC_TRADITIONAL
|
|
dnl adds -traditional for gcc if needed
|
|
|
|
AC_LANG_SAVE
|
|
|
|
dnl C++-compiler checks
|
|
dnl ===================
|
|
dnl use what compiler
|
|
AC_PROG_CXX
|
|
dnl defines CXX with the compiler to use
|
|
dnl defines GXX with yes if using gxx
|
|
dnl defines GXX empty if not using gxx
|
|
dnl defines CXXFLAGS
|
|
dnl what is the C++-preprocessor
|
|
AC_PROG_CXXCPP
|
|
dnl defines CXXCPP with the C++-preprocessor
|
|
|
|
CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
|
|
|
|
AC_LANG_RESTORE
|
|
|
|
dnl ranlib command
|
|
dnl ==============
|
|
AC_PROG_RANLIB
|
|
dnl defines RANLIB with the appropriate command
|
|
|
|
dnl ar command
|
|
dnl ==========
|
|
AC_CHECK_PROG(AR, ar, ar, ar)
|
|
dnl defines AR with the appropriate command
|
|
|
|
dnl install checks
|
|
dnl ==============
|
|
AC_PROG_INSTALL
|
|
dnl defines INSTALL with the appropriate command
|
|
|
|
dnl does ln -s works
|
|
dnl ================
|
|
AC_PROG_LN_S
|
|
dnl defines LN_S with the appropriate command
|
|
|
|
dnl awk command
|
|
dnl ===========
|
|
AC_PROG_AWK
|
|
dnl defines AWK with the appropriate command
|
|
|
|
dnl ###############
|
|
dnl # make checks #
|
|
dnl ###############
|
|
dnl check if VPATH works
|
|
AC_MSG_CHECKING("make for VPATH support")
|
|
dnl create Makefile
|
|
cat - << EOF > confMake
|
|
check : file
|
|
cp \$? \$@
|
|
cp \$? final_file
|
|
EOF
|
|
|
|
if test ! -d sub ; then
|
|
mkdir sub
|
|
fi
|
|
echo dummy > sub/file
|
|
${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
|
|
RESULT=$?
|
|
rm -f sub/file check final_file confMake
|
|
rmdir sub
|
|
if test "$RESULT" = 0; then
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_ERROR(
|
|
You need a make-utility that is able to use the variable
|
|
VPATH correctly.
|
|
If your version of make does not support VPATH correctly,
|
|
please install GNU-make (possibly as gmake), and start
|
|
configure with the following command:
|
|
export MAKE=gmake; ./configure for sh-type shells
|
|
setenv MAKE gmake; ./configure for csh-type shells
|
|
Also please do remember to use gmake in this case every time
|
|
you are trying to compile.
|
|
)
|
|
fi
|
|
|
|
dnl ####################
|
|
dnl # checks libraries #
|
|
dnl ####################
|
|
|
|
dnl find the X11 include and library files
|
|
AC_PATH_XTRA
|
|
dnl defines x_includes and x_libraries
|
|
|
|
dnl #######################
|
|
dnl # checks header files #
|
|
dnl #######################
|
|
AC_HEADER_DIRENT
|
|
dnl defines DIR
|
|
dnl defines MACRO HAVE_DIRENT_H if dirent.h exists
|
|
dnl defines MACRO HAVE_SYS_NDIR_H if sys/ndir.h exists
|
|
dnl defines MACRO HAVE_SYS_DIR_H if sys/dir.h exists
|
|
dnl defines MACRO HAVE_NDIR_H if ndir.h exists
|
|
AC_HEADER_STDC
|
|
dnl defines STDC_HEADERS if ANSI-C header
|
|
AC_HEADER_SYS_WAIT
|
|
dnl defines HAVE_SYS_WAIT_H if sys/wait.h exist and is POSIX.1
|
|
AC_CHECK_HEADERS(fcntl.h)
|
|
dnl defines HAVE_FCNTL_H
|
|
AC_CHECK_HEADERS(limits.h)
|
|
dnl defines HAVE_LIMITS_h
|
|
AC_CHECK_HEADERS(sys/file.h)
|
|
dnl defines HAVE_SYS_FILE_H
|
|
AC_CHECK_HEADERS(sys/time.h)
|
|
dnl defines HAVE_SYS_TIME_H
|
|
AC_CHECK_HEADERS(unistd.h)
|
|
dnl defines HAVE_UNISTD_H
|
|
AC_CHECK_HEADERS(fnmatch.h)
|
|
dnl defines HAVE_FNMATCH_H
|
|
dnl As it needs Linux 2.1.x for the moment: check whether the file exists (GL).
|
|
AC_CHECK_HEADERS(linux/joystick.h)
|
|
GTK_JOYSTICK=""
|
|
if test "$ac_cv_header_linux_joystick_h" = "yes"; then
|
|
GTK_JOYSTICK="gtk/joystick.cpp"
|
|
fi
|
|
AC_SUBST(GTK_JOYSTICK)
|
|
|
|
dnl check for vprintf/vsprintf() which are GNU extensions
|
|
AC_FUNC_VPRINTF
|
|
|
|
dnl check for several standard functions we use if they are available
|
|
AC_CHECK_FUNCS(vsnprintf vfork)
|
|
|
|
dnl check for usleep() and nanosleep() which is better in MT programs
|
|
dnl AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
|
|
dnl [
|
|
dnl AC_CHECK_LIB(posix4, nanosleep,
|
|
dnl AC_DEFINE(HAVE_NANOSLEEP),
|
|
dnl AC_CHECK_FUNCS(usleep))
|
|
dnl ]
|
|
dnl )
|
|
AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
|
|
[AC_CHECK_LIB(posix4, nanosleep, AC_DEFINE(HAVE_NANOSLEEP),
|
|
[AC_CHECK_FUNCS(usleep, AC_DEFINE(HAVE_USLEEP),
|
|
AC_MSG_WARN(Sleep() function will not work)
|
|
)]
|
|
)]
|
|
)
|
|
|
|
dnl check for uname (POSIX) and gethostname (BSD)
|
|
AC_CHECK_FUNCS(uname gethostname, break)
|
|
|
|
AC_LANG_SAVE
|
|
AC_LANG_CPLUSPLUS
|
|
AC_CHECK_HEADERS(iostream)
|
|
if test "x$HAVE_IOSTREAM" = "x" ; then
|
|
AC_DEFINE(wxUSE_IOSTREAMH)
|
|
fi
|
|
AC_LANG_RESTORE
|
|
|
|
dnl defines HAVE_IOSTREAM
|
|
dnl ###################
|
|
dnl # checks typedefs #
|
|
dnl ###################
|
|
AC_TYPE_GETGROUPS
|
|
dnl defines GETGROUPS_T
|
|
AC_TYPE_MODE_T
|
|
dnl defines mode_t if not already defined
|
|
AC_TYPE_OFF_T
|
|
dnl defines off_t if not already defined
|
|
AC_TYPE_PID_T
|
|
dnl defines pid_t if not already defined
|
|
AC_TYPE_SIGNAL
|
|
dnl defines RETSIGTYPE for the correct return type of signal
|
|
AC_TYPE_SIZE_T
|
|
dnl defines size_t if not already defined
|
|
AC_TYPE_UID_T
|
|
dnl defines uid_t and gid_t if not already defined
|
|
|
|
dnl #####################
|
|
dnl # checks structures #
|
|
dnl #####################
|
|
|
|
AC_HEADER_STAT
|
|
dnl defines STAT_MACROS_BROKEN if S_ISDIR and S_ISREG
|
|
dnl do not work properly
|
|
AC_HEADER_TIME
|
|
dnl defines TIME_WITH_SYS_TIME if time.h and sys/time.h can
|
|
dnl both be included
|
|
AC_STRUCT_ST_BLKSIZE
|
|
dnl defines HAVE_ST_BLKSIZE if struct stat contains st_blksize
|
|
AC_STRUCT_ST_BLOCKS
|
|
dnl defines HAVE_ST_BLOCKS if struct stat contains st_blocks
|
|
AC_STRUCT_ST_RDEV
|
|
dnl defines HAVE_ST_RDEV if struct stat contains st_rdev
|
|
AC_STRUCT_TM
|
|
dnl defines TM_IN_SYS_TIME if struct tm is not in time.h
|
|
AC_STRUCT_TIMEZONE
|
|
dnl defines HAVE_ST_BLKSIZE if struct tm contains tm_zone
|
|
dnl otherwise
|
|
dnl defines HAVE_TZNAME if external array tzname is found
|
|
|
|
dnl ###################################
|
|
dnl # checks compiler characteristics #
|
|
dnl ###################################
|
|
dnl AC_C_CROSS
|
|
|
|
AC_C_CONST
|
|
dnl defines const to be empty if c-compiler does not support const fully
|
|
AC_C_INLINE
|
|
dnl defines inline to a sensible value for the c-compiler
|
|
AC_C_CHAR_UNSIGNED
|
|
dnl defines __CHAR_UNSIGNED__ if char is unsigned
|
|
AC_C_LONG_DOUBLE
|
|
dnl defines HAVE_LONGDOUBLE if compiler supports long double
|
|
|
|
AC_C_BIGENDIAN
|
|
dnl defines WORDS_BIGENDIAN if system is big endian
|
|
|
|
AC_CHECK_SIZEOF(int *)
|
|
AC_CHECK_SIZEOF(int)
|
|
AC_CHECK_SIZEOF(long)
|
|
AC_CHECK_SIZEOF(long long)
|
|
dnl defines the size of certain types of variables in SIZEOF_???
|
|
|
|
dnl ############################
|
|
dnl # checks library functions #
|
|
dnl ############################
|
|
|
|
dnl ##########################
|
|
dnl # checks system services #
|
|
dnl ##########################
|
|
|
|
|
|
AC_SYS_LONG_FILE_NAMES
|
|
dnl defines HAVE_LONG_FILENAMES if filenames longer then
|
|
dnl 14 chars are supported
|
|
|
|
dnl AC_SYS_RESTARTABLE_SYSCALLS
|
|
dnl defines HAVE_RESTARTABLE_SYSCALLS if the system restarts a
|
|
dnl system call that is interrupted
|
|
dnl by a signal
|
|
|
|
dnl #################
|
|
dnl # checks PARSER #
|
|
dnl #################
|
|
|
|
dnl YACC checks
|
|
dnl ===========
|
|
AC_PROG_YACC
|
|
dnl defines YACC with the appropriate command
|
|
|
|
dnl LEX checks
|
|
dnl ==========
|
|
AC_PROG_LEX
|
|
dnl defines LEX with the appropriate command
|
|
dnl defines LEXLIB with the appropriate library
|
|
dnl what type is yytext
|
|
AC_DECL_YYTEXT
|
|
dnl defines YYTEXT_POINTER if yytext is char*
|
|
dnl defines LEX_OUTPUT_ROOT as to the base of the
|
|
dnl filename output by the lexer
|
|
|
|
dnl ###################################
|
|
dnl ## Check for dynamic load module #
|
|
dnl ###################################
|
|
|
|
DL_LIBRARY=
|
|
AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL),
|
|
[AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) DL_LIBRARY="-ldl"],
|
|
[AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) DL_LIBRARY="-ldld"],
|
|
[AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )]
|
|
)]
|
|
)]
|
|
)
|
|
AC_SUBST(DL_LIBRARY)
|
|
|
|
AC_CACHE_CHECK([for underscore before symbols], libltdl_cv_uscore, [
|
|
echo "main(){int i=1;} fnord(){int i=23; int ltuae=42;}" > conftest.c
|
|
${CC} -c conftest.c > /dev/null
|
|
if (nm conftest.o | grep _fnord) > /dev/null; then
|
|
libltdl_cv_uscore=yes
|
|
else
|
|
libltdl_cv_uscore=no
|
|
fi
|
|
rm -f conftest*
|
|
])
|
|
|
|
if test x"$libltdl_cv_uscore" = xyes; then
|
|
if test x"$ac_cv_func_dlopen" = xyes ||
|
|
test x"$ac_cv_lib_dl_dlopen" = xyes ; then
|
|
AC_CACHE_CHECK([whether we have to add an underscore for dlsym],
|
|
libltdl_cv_need_uscore, [dnl
|
|
AC_TRY_RUN([
|
|
#include <dlfcn.h>
|
|
#include <stdio.h>
|
|
fnord() { int i=42;}
|
|
main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
|
|
if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
|
|
if(ptr1 && !ptr2) exit(0); } exit(1); }
|
|
], libltdl_cv_need_uscore=no, libltdl_cv_need_uscore=yes,
|
|
libltdl_cv_need_uscore=no
|
|
)])
|
|
fi
|
|
fi
|
|
|
|
if test x"$libltdl_cv_need_uscore" = xyes; then
|
|
AC_DEFINE(NEED_USCORE)
|
|
fi
|
|
|
|
dnl ##########################################
|
|
dnl ## Check for specific library functions #
|
|
dnl ##########################################
|
|
|
|
dnl Checks for library functions.
|
|
AC_CHECK_FUNCS(strerror)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl main includes
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
|
|
CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl host system
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
AC_CANONICAL_HOST
|
|
canonical=$host
|
|
configuration=$host_alias
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl system settings
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
USE_UNIX=1
|
|
|
|
USE_LINUX=
|
|
USE_SGI=
|
|
USE_HPUX=
|
|
USE_SYSV=
|
|
USE_SVR4=
|
|
USE_AIX=
|
|
USE_SUN=
|
|
USE_SOLARIS=
|
|
USE_SUNOS=
|
|
USE_ALPHA=
|
|
USE_OSF=
|
|
USE_BSD=
|
|
USE_FREEBSD=
|
|
USE_VMS=
|
|
USE_ULTRIX=
|
|
USE_DATA_GENERAL=
|
|
|
|
AC_DEFINE(__UNIX__)
|
|
case "${canonical}" in
|
|
*-hp-hpux* )
|
|
USE_HPUX=1
|
|
AC_DEFINE(__HPUX__)
|
|
;;
|
|
*-*-linux* )
|
|
USE_LINUX=1
|
|
AC_DEFINE(__LINUX__)
|
|
TMP=`uname -m`
|
|
if test "x$TMP" = "xalpha"
|
|
then
|
|
USE_ALPHA=1
|
|
AC_DEFINE(__ALPHA__)
|
|
fi
|
|
;;
|
|
*-*-irix5* | *-*-irix6* )
|
|
USE_SGI=1
|
|
USE_SVR4=1
|
|
AC_DEFINE(__SGI__)
|
|
AC_DEFINE(__SVR4__)
|
|
;;
|
|
*-*-solaris2* )
|
|
USE_SUN=1
|
|
USE_SOLARIS=1
|
|
USE_SVR4=1
|
|
AC_DEFINE(__SUN__)
|
|
AC_DEFINE(__SOLARIS__)
|
|
AC_DEFINE(__SVR4__)
|
|
;;
|
|
*-*-sunos4* )
|
|
USE_SUN=1
|
|
USE_SUNOS=1
|
|
USE_BSD=1
|
|
AC_DEFINE(__SUN__)
|
|
AC_DEFINE(__SUNOS__)
|
|
AC_DEFINE(__BSD__)
|
|
;;
|
|
*-*-freebsd* | *-*-netbsd*)
|
|
USE_BSD=1
|
|
USE_FREEBSD=1
|
|
AC_DEFINE(__FREEBSD__)
|
|
AC_DEFINE(__BSD__)
|
|
;;
|
|
*-*-osf* )
|
|
USE_ALPHA=1
|
|
USE_OSF=1
|
|
AC_DEFINE(__ALPHA__)
|
|
AC_DEFINE(__OSF__)
|
|
;;
|
|
*-*-dgux5* )
|
|
USE_ALPHA=1
|
|
USE_SVR4=1
|
|
AC_DEFINE(__ALPHA__)
|
|
AC_DEFINE(__SVR4__)
|
|
;;
|
|
*-*-sysv5* )
|
|
USE_SYSV=1
|
|
USE_SVR4=1
|
|
AC_DEFINE(__SYSV__)
|
|
AC_DEFINE(__SVR4__)
|
|
;;
|
|
*-*-aix* )
|
|
USE_AIX=1
|
|
USE_SYSV=1
|
|
USE_SVR4=1
|
|
AC_DEFINE(__AIX__)
|
|
AC_DEFINE(__SYSV__)
|
|
AC_DEFINE(__SVR4__)
|
|
;;
|
|
*)
|
|
AC_MSG_ERROR(I don't know your system type.)
|
|
esac
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl defaults for command options
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
AC_OVERRIDES_PREPARE
|
|
|
|
DEFAULT_wxUSE_GTK=1
|
|
DEFAULT_wxUSE_QT=0
|
|
DEFAULT_wxUSE_MOTIF=0
|
|
|
|
DEFAULT_wxUSE_THREADS=0
|
|
|
|
DEFAULT_wxUSE_SHARED=1
|
|
DEFAULT_wxUSE_OPTIMISE=1
|
|
DEFAULT_wxUSE_PROFILE=0
|
|
DEFAULT_wxUSE_DEBUG_FLAG=0
|
|
DEFAULT_wxUSE_DEBUG_INFO=0
|
|
DEFAULT_wxUSE_MEM_TRACING=0
|
|
DEFAULT_wxUSE_DMALLOC=0
|
|
DEFAULT_wxUSE_APPLE_IEEE=1
|
|
DEFAULT_wxUSE_IOSTREAMH=1
|
|
|
|
DEFAULT_wxUSE_ZLIB=1
|
|
DEFAULT_wxUSE_LIBPNG=1
|
|
DEFAULT_wxUSE_LIBJPEG=0
|
|
DEFAULT_wxUSE_ODBC=1
|
|
|
|
DEFAULT_wxUSE_TIMEDATE=1
|
|
DEFAULT_wxUSE_INTL=1
|
|
DEFAULT_wxUSE_CONFIG=1
|
|
DEFAULT_wxUSE_STREAMS=1
|
|
DEFAULT_wxUSE_SOCKETS=1
|
|
DEFAULT_wxUSE_SERIAL=1
|
|
DEFAULT_wxUSE_DYNLIB_CLASS=1
|
|
|
|
DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=1
|
|
DEFAULT_WX_NORMALIZED_PS_FONTS=1
|
|
DEFAULT_wxUSE_POSTSCRIPT=1
|
|
|
|
DEFAULT_wxUSE_IPC=1
|
|
DEFAULT_wxUSE_RESOURCES=1
|
|
DEFAULT_wxUSE_CLIPBOARD=1
|
|
DEFAULT_wxUSE_TOOLTIPS=1
|
|
DEFAULT_wxUSE_DRAG_AND_DROP=1
|
|
|
|
DEFAULT_wxUSE_MDI_ARCHITECTURE=1
|
|
DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=1
|
|
DEFAULT_wxUSE_PRINTING_ARCHITECTURE=1
|
|
|
|
DEFAULT_wxUSE_PROLOGIO=1
|
|
DEFAULT_wxUSE_WX_RESOURCES=1
|
|
DEFAULT_wxUSE_RPC=0
|
|
DEFAULT_wxUSE_HELP=1
|
|
|
|
DEFAULT_wxUSE_UNICODE=1
|
|
DEFAULT_wxUSE_WCSRTOMBS=0
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl toolkit options
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(gtk,gtk,
|
|
**--with-gtk use GTK,
|
|
wxUSE_GTK)
|
|
|
|
AC_OVERRIDES(qt,qt,
|
|
**--with-qt use Qt,
|
|
wxUSE_QT)
|
|
|
|
AC_OVERRIDES(motif,motif,
|
|
**--with-motif use Motif/Lesstif,
|
|
wxUSE_MOTIF)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl compile options
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(shared,shared,
|
|
**--with-shared create shared libraries,
|
|
wxUSE_SHARED)
|
|
|
|
AC_OVERRIDES(optimise,optimise,
|
|
**--with-optimise create optimised code,
|
|
wxUSE_OPTIMISE)
|
|
|
|
AC_OVERRIDES(debug_flag,debug_flag,
|
|
**--with-debug_flag create code with WXDEBUG define set to 1,
|
|
wxUSE_DEBUG_FLAG)
|
|
|
|
AC_OVERRIDES(debug_info,debug_info,
|
|
**--with-debug_info create code with debuging information,
|
|
wxUSE_DEBUG_INFO)
|
|
|
|
AC_OVERRIDES(debug_gdb,debug_gdb,
|
|
**--with-debug_gdb create code with extra GDB debuging information,
|
|
wxUSE_DEBUG_GDB)
|
|
|
|
AC_OVERRIDES(mem_tracing,mem_tracing,
|
|
**--with-mem_traing create code with memory tracing,
|
|
wxUSE_MEM_TRACING)
|
|
|
|
AC_OVERRIDES(dmalloc,dmalloc,
|
|
**--with-dmalloc use dmalloc memory debug library (www.letters.com/dmalloc/),
|
|
wxUSE_DMALLOC)
|
|
|
|
AC_OVERRIDES(profile,profile,
|
|
**--with-profile create code with profiling information,
|
|
wxUSE_PROFILE)
|
|
|
|
AC_OVERRIDES(apple_ieee, apple_ieee,
|
|
**--with_apple_ieee use the Apple IEEE codec,
|
|
wxUSE_APPLE_IEEE)
|
|
|
|
AC_OVERRIDES(threads,threads,
|
|
**--with-threads for enabling threads,
|
|
wxUSE_THREADS)
|
|
|
|
AC_OVERRIDES(dynlib,dynlib,
|
|
**--with-dynlib to compile wxLibrary class,
|
|
wxUSE_DYNLIB_CLASS)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for libraries
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(zlib,zlib,
|
|
**--with-zlib use zlib for LZW comression,
|
|
wxUSE_ZLIB)
|
|
|
|
AC_OVERRIDES(libpng,libpng,
|
|
**--with-libpng use libpng (PNG image format),
|
|
wxUSE_LIBPNG)
|
|
|
|
AC_OVERRIDES(libjpeg,libjpeg,
|
|
**--with-libjpeg use libjpeg (JPEG image format),
|
|
wxUSE_LIBJPEG)
|
|
|
|
AC_OVERRIDES(odbc,odbc,
|
|
**--with-odbc use iODBC and wxODBC classes,
|
|
wxUSE_ODBC)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for non-GUI classes
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(timedate, timedate,
|
|
**--with-timedate use wxTime and wxDate classes,
|
|
wxUSE_TIMEDATE)
|
|
|
|
AC_OVERRIDES(intl,intl,
|
|
**--with-intl use internationalization system,
|
|
wxUSE_INTL)
|
|
|
|
AC_OVERRIDES(config,config,
|
|
**--with-config use wxConfig class,
|
|
wxUSE_CONFIG)
|
|
|
|
AC_OVERRIDES(streams,streams,
|
|
**--with-streams use wxStream etc classes,
|
|
wxUSE_STREAMS)
|
|
|
|
AC_OVERRIDES(serial,serial,
|
|
**--with-serial use class serialization,
|
|
wxUSE_SERIAL)
|
|
|
|
AC_OVERRIDES(sockets,sockets,
|
|
**--with-sockets use wxSocket etc classes,
|
|
wxUSE_SOCKETS)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for PostScript
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(afmfonts,afmfonts,
|
|
**--with-afmfonts use Adobe Font Metric Font table,
|
|
wxUSE_AFM_FOR_POSTSCRIPT)
|
|
|
|
AC_OVERRIDES(normalized, normalized,
|
|
**--with-PS-normalized use normalized PS fonts,
|
|
WX_NORMALIZED_PS_FONTS)
|
|
|
|
AC_OVERRIDES(postscript, postscript,
|
|
**--with-postscript use wxPostscriptDC device context,
|
|
wxUSE_POSTSCRIPT)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for wxString and Unicode
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(unicode,unicode,
|
|
**--with-unicode compile wxString with Unicode support,
|
|
wxUSE_UNICODE)
|
|
|
|
AC_OVERRIDES(wcsrtombs,wcsrtombs,
|
|
**--with-wcsrtombs use wcsrtombs instead of (buggy in GNU libc5) wcstombs,
|
|
wxUSE_WCSRTOMBS)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for Prolog and Resources
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(wxresources,wxresources,
|
|
**--with-wxresources use wxWindows's resources,
|
|
wxUSE_WX_RESOURCES)
|
|
|
|
AC_OVERRIDES(prologio,prologio,
|
|
**--with-prologio use Prolog IO library,
|
|
wxUSE_PROLOGIO)
|
|
|
|
AC_OVERRIDES(rpc,RPC,
|
|
**--with-rpc use Prolog's remote procedure calls,
|
|
wxUSE_RPC)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for misc stuff
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(ipc,IPC,
|
|
**--with-ipc use interprocess communication (wxSocket etc.),
|
|
wxUSE_IPC)
|
|
|
|
AC_OVERRIDES(resources,resources,
|
|
**--with-resources use X resources for saving information,
|
|
wxUSE_RESOURCES)
|
|
|
|
AC_OVERRIDES(clipboard,clipboard,
|
|
**--with-clipboard use wxClipboard classes,
|
|
wxUSE_CLIPBOARD)
|
|
|
|
AC_OVERRIDES(tooltips,tooltips,
|
|
**--with-tooltips use tooltips,
|
|
wxUSE_TOOLTIPS)
|
|
|
|
AC_OVERRIDES(dnd,dnd,
|
|
**--with-dnd use Drag'n'Drop classes,
|
|
wxUSE_DRAG_AND_DROP)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl user options for architectures
|
|
dnl ----------------------------------------------------------------
|
|
|
|
AC_OVERRIDES(mdi,mdi,
|
|
**--with-mdi use multiple document interface architecture,
|
|
wxUSE_MDI_ARCHITECTURE)
|
|
|
|
AC_OVERRIDES(docview,docview,
|
|
**--with-docview use document view architecture,
|
|
wxUSE_DOC_VIEW_ARCHITECTURE)
|
|
|
|
AC_OVERRIDES(printarch,printarch,
|
|
**--with-printarch use printing architecture,
|
|
wxUSE_PRINTING_ARCHITECTURE)
|
|
|
|
AC_OVERRIDES(help,help,
|
|
**--with-help use help (using external browser at present),
|
|
wxUSE_HELP)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Unix, obviously
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_UNIX" = 1 ; then
|
|
AC_DEFINE(__UNIX__)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
|
|
dnl ----------------------------------------------------------------
|
|
if test "$USE_LINUX" = 1; then
|
|
AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl search for toolkit (widget sets)
|
|
dnl ----------------------------------------------------------------
|
|
|
|
TOOLKIT=
|
|
TOOLKIT_DEF=
|
|
|
|
GUI_TK_INCLUDE=
|
|
GUI_TK_LIBRARY=
|
|
GUI_TK_LINK=
|
|
|
|
WX_LINK=
|
|
|
|
MAKEINCLUDE=
|
|
|
|
if test "$wxUSE_GTK" = 1; then
|
|
AM_PATH_GTK(1.0.4, [
|
|
GUI_TK_INCLUDE="$GTK_CFLAGS"
|
|
GUI_TK_LIBRARY="$GTK_LIBS"
|
|
], AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.0.4 up-to 1.0.6?))
|
|
TOOLKIT=GTK
|
|
TOOLKIT_DEF=__WXGTK__
|
|
WX_LINK=-lwx_gtk2
|
|
MAKEINCLUDE=../gtk.inc
|
|
fi
|
|
|
|
if test "$wxUSE_QT" = 1; then
|
|
AC_MSG_CHECKING(for Qt includes)
|
|
AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,qapp.h)
|
|
if test "$ac_find_includes" != "" ; then
|
|
AC_MSG_RESULT(found $ac_find_includes)
|
|
AC_MSG_CHECKING(for Qt library)
|
|
AC_PATH_FIND_LIBRARIES($SEARCH_LIB,qt)
|
|
if test "$ac_find_libraries" != "" ; then
|
|
AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
|
|
AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
|
|
CHECK_LINK="$CHECK_INCLUDE $ac_path_to_link"
|
|
CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
|
|
AC_MSG_RESULT(found Qt at $ac_find_libraries)
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
GUI_TK_LINK="-lX11 -lqt -lm"
|
|
TOOLKIT=QT
|
|
TOOLKIT_DEF=__WXQT__
|
|
WX_LINK=-lwx_qt
|
|
MAKEINCLUDE=../qt.inc
|
|
fi
|
|
|
|
if test "$wxUSE_MOTIF" = 1; then
|
|
AC_MSG_CHECKING(for Motif/Lesstif includes)
|
|
AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE,Xm/Xm.h)
|
|
if test "$ac_find_includes" != "" ; then
|
|
AC_MSG_RESULT(found $ac_find_includes)
|
|
AC_MSG_CHECKING(for Motif/Lesstif library)
|
|
AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xm)
|
|
if test "$ac_find_libraries" != "" ; then
|
|
AC_INCLUDE_PATH_EXIST($ac_find_includes,$CHECK_INCLUDE)
|
|
AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
|
|
CHECK_LINK="$CHECK_LIB $ac_path_to_link"
|
|
CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
|
|
AC_MSG_RESULT(found at $ac_find_libraries)
|
|
AC_MSG_CHECKING(for Xt library)
|
|
AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
|
|
if test "$ac_find_libraries" != "" ; then
|
|
AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
|
|
CHECK_LINK="$CHECK_LIB $ac_path_to_link"
|
|
AC_MSG_RESULT(found at $ac_find_libraries)
|
|
AC_MSG_CHECKING(for Xpm library)
|
|
AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
|
|
if test "$ac_find_libraries" != "" ; then
|
|
AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
|
|
CHECK_LINK="$CHECK_LIB $ac_path_to_link"
|
|
AC_MSG_RESULT(found at $ac_find_libraries)
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
else
|
|
AC_MSG_ERROR(no)
|
|
fi
|
|
|
|
GUI_TK_LINK="-lXm -lXpm -lXmu -lXt -lX11 -lm"
|
|
GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
|
|
TOOLKIT=MOTIF
|
|
TOOLKIT_DEF=__WXMOTIF__
|
|
WX_LINK=-lwx_motif2
|
|
MAKEINCLUDE=../motif.inc
|
|
fi
|
|
|
|
if test "$TOOLKIT" = ""; then
|
|
AC_MSG_ERROR(You must specify a toolkit: --with-gtk --with-qt --with-motif)
|
|
fi
|
|
|
|
AC_SUBST(GUI_TK_INCLUDE)
|
|
AC_SUBST(GUI_TK_LIBRARY)
|
|
AC_SUBST(GUI_TK_LINK)
|
|
|
|
AC_SUBST(WX_LINK)
|
|
|
|
AC_SUBST(TOOLKIT)
|
|
AC_SUBST(TOOLKIT_DEF)
|
|
|
|
AC_SUBST(MAKEINCLUDE)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register compile options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
EXTRA_LINK=
|
|
|
|
WXDEBUG=
|
|
if test "$wxUSE_DEBUG_GDB" = 1 ; then
|
|
wxUSE_DEBUG_INFO=1
|
|
WXDEBUG="-ggdb"
|
|
wxUSE_OPTIMISE=0
|
|
else
|
|
if test "$wxUSE_DEBUG_INFO" = 1 ; then
|
|
WXDEBUG="-g"
|
|
wxUSE_OPTIMISE=0
|
|
else
|
|
EXTRA_LINK="-s $EXTRA_LINK"
|
|
fi
|
|
fi
|
|
AC_SUBST(WXDEBUG)
|
|
|
|
if test "$wxUSE_DEBUG_FLAG" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(WXDEBUG,$wxUSE_DEBUG_FLAG)
|
|
WXDEBUG_DEFINE="-D__WXDEBUG__"
|
|
AC_SUBST(WXDEBUG_DEFINE)
|
|
else
|
|
WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
|
|
AC_SUBST(WXDEBUG_DEFINE)
|
|
fi
|
|
|
|
if test "$wxUSE_MEM_TRACING" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_MEMORY_TRACING,$wxUSE_MEM_TRACING)
|
|
AC_DEFINE_UNQUOTED(wxUSE_GLOBAL_MEMORY_OPERATORS,$wxUSE_MEM_TRACING)
|
|
fi
|
|
|
|
if test "$wxUSE_DMALLOC" = 1 ; then
|
|
EXTRA_LINK="$EXTRA_LINK -ldmalloc"
|
|
fi
|
|
AC_SUBST(EXTRA_LINK)
|
|
|
|
PROFILE=
|
|
if test "$wxUSE_PROFILE" = 1 ; then
|
|
PROFILE="-pg"
|
|
fi
|
|
AC_SUBST(PROFILE)
|
|
|
|
CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
|
|
CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
|
|
if test "$wxUSE_OPTIMISE" = 0 ; then
|
|
OPTIMISE=
|
|
else
|
|
if test "$GCC" = yes ; then
|
|
OPTIMISE="-O2"
|
|
case "${canonical}" in
|
|
i586-*-*|i686-*-* )
|
|
OPTIMISE="${OPTIMISE} "
|
|
;;
|
|
esac
|
|
else
|
|
OPTIMISE="-O"
|
|
fi
|
|
fi
|
|
AC_SUBST(OPTIMISE)
|
|
|
|
APPLE_IEEE=NONE
|
|
if test "$wxUSE_APPLE_IEEE" = 1 ; then
|
|
APPLE_IEEE="APPLE_IEEE"
|
|
AC_DEFINE_UNQUOTED(wxUSE_APPLE_IEEE,$wxUSE_APPLE_IEEE)
|
|
fi
|
|
|
|
wxUSE_IOSTREAMH=$DEFAULT_wxUSE_IOSTREAMH
|
|
AC_DEFINE_UNQUOTED(wxUSE_IOSTREAMH,$wxUSE_IOSTREAMH)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register library options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_ZLIB" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_ZLIB,$wxUSE_ZLIB)
|
|
Z_C_SRC="\$(Z_C_SRC)"
|
|
fi
|
|
AC_SUBST(Z_C_SRC)
|
|
|
|
if test "$wxUSE_LIBPNG" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_LIBPNG,$wxUSE_LIBPNG)
|
|
PNG_C_SRC="\$(PNG_C_SRC)"
|
|
fi
|
|
AC_SUBST(PNG_C_SRC)
|
|
|
|
JPEG_LINK=""
|
|
if test "$wxUSE_LIBJPEG" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_LIBJPEG,$wxUSE_LIBJPEG)
|
|
AC_CHECK_LIB(jpeg)
|
|
JPEG_LINK="-ljpeg"
|
|
fi
|
|
AC_SUBST(JPEG_LINK)
|
|
|
|
IODBC_C_SRC=""
|
|
if test "$wxUSE_ODBC" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_ODBC,$wxUSE_ODBC)
|
|
IODBC_C_SRC="\$(IODBC_C_SRC)"
|
|
fi
|
|
AC_SUBST(IODBC_C_SRC)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register non-GUI class options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_CONFIG" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_CONFIG,$wxUSE_CONFIG)
|
|
fi
|
|
|
|
if test "$wxUSE_TIMEDATE" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_TIMEDATE,$wxUSE_TIMEDATE)
|
|
fi
|
|
|
|
if test "$wxUSE_INTL" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_INTL,$wxUSE_INTL)
|
|
fi
|
|
|
|
if test "$wxUSE_STREAMS" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_STREAMS,$wxUSE_STREAMS)
|
|
fi
|
|
|
|
if test "$wxUSE_SOCKETS" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_SOCKETS,$wxUSE_SOCKETS)
|
|
fi
|
|
|
|
if test "$wxUSE_SERIAL" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_SERIAL,$wxUSE_SERIAL)
|
|
fi
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl wxLibrary class
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
HAVE_DL_FUNCS=0
|
|
if test "$wxUSE_DYNLIB_CLASS" = "1"; then
|
|
dnl the test is a bit complicated because we check for dlopen() both with
|
|
dnl and without -ldl
|
|
AC_CHECK_FUNCS(dlopen,
|
|
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
|
|
[AC_CHECK_LIB(dl, dlopen,
|
|
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
|
|
AC_CHECK_FUNCS(shl_load, [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1])
|
|
|
|
if test "$HAVE_DL_FUNCS" = 0; then
|
|
AC_MSG_WARN("--with-dynlib will be disabled because no function was found to load a shared library on this platform")
|
|
|
|
wxUSE_DYNLIB_CLASS=0
|
|
fi
|
|
fi
|
|
|
|
if test "$wxUSE_DYNLIB_CLASS" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_DYNLIB_CLASS,$wxUSE_DYNLIB_CLASS)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register Prolog and Resources options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_RPC" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_RPC,$wxUSE_RPC)
|
|
fi
|
|
|
|
if test "$wxUSE_WX_RESOURCES" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_WX_RESOURCES,$wxUSE_WX_RESOURCES)
|
|
fi
|
|
|
|
if test "$wxUSE_PROLOGIO" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_PROLOGIO)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register PostScript options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_POSTSCRIPT" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_POSTSCRIPT)
|
|
fi
|
|
|
|
AC_DEFINE_UNQUOTED(wxUSE_AFM_FOR_POSTSCRIPT,$wxUSE_AFM_FOR_POSTSCRIPT)
|
|
|
|
AC_DEFINE_UNQUOTED(WX_NORMALIZED_PS_FONTS,$WX_NORMALIZED_PS_FONTS)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register architecture options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_MDI_ARCHITECTURE" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_MDI_ARCHITECTURE,$wxUSE_MDI_ARCHITECTURE)
|
|
fi
|
|
|
|
if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_DOC_VIEW_ARCHITECTURE,$wxUSE_DOC_VIEW_ARCHITECTURE)
|
|
fi
|
|
|
|
if test "$wxUSE_PRINTING_ARCHITECTURE" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_PRINTING_ARCHITECTURE,$wxUSE_PRINTING_ARCHITECTURE)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register wxString options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_UNICODE" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_UNICODE)
|
|
fi
|
|
|
|
if test "$wxUSE_WCSRTOMBS" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_WCSRTOMBS)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl Register misc options for makefiles and setup.h
|
|
dnl ----------------------------------------------------------------
|
|
|
|
if test "$wxUSE_IPC" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_IPC)
|
|
fi
|
|
|
|
if test "$wxUSE_RESOURCES" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_RESOURCES,$wxUSE_RESOURCES)
|
|
fi
|
|
|
|
if test "$wxUSE_CLIPBOARD" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
|
|
fi
|
|
|
|
if test "$wxUSE_TOOLTIPS" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS)
|
|
fi
|
|
|
|
if test "$wxUSE_DRAG_AND_DROP" = 1 ; then
|
|
AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP)
|
|
fi
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl No effect yet
|
|
dnl ----------------------------------------------------------------
|
|
|
|
HELP=NONE
|
|
if test "$wxUSE_HELP" = 1 ; then
|
|
HELP="HELP"
|
|
AC_DEFINE_UNQUOTED(wxUSE_HELP,$wxUSE_HELP)
|
|
fi
|
|
AC_SUBST(HELP)
|
|
|
|
dnl ----------------------------------------------------------------
|
|
dnl thread support
|
|
dnl ----------------------------------------------------------------
|
|
|
|
dnl defines UNIX_THREAD it contains the source file to use for threads. (GL)
|
|
dnl defines THREADS_LINK it contains the thread library to link with. (GL)
|
|
dnl defines wxUSE_THREADS if thread support is activated. (GL)
|
|
|
|
THREADS_LINK=""
|
|
UNIX_THREAD=""
|
|
|
|
if test "$wxUSE_THREADS" = "1"; then
|
|
dnl For glibc 2 users who have the old libc 5 too
|
|
|
|
AC_CHECK_LIB(pthread-0.7, pthread_create, [
|
|
UNIX_THREAD="unix/threadpsx.cpp"
|
|
THREADS_LINK="pthread-0.7"
|
|
],[
|
|
AC_CHECK_HEADER(sys/prctl.h, [
|
|
UNIX_THREAD="gtk/threadsgi.cpp"
|
|
])
|
|
|
|
dnl pthread_create is always available in pthread but it seems not to be
|
|
dnl the case for pthread_setcanceltype.
|
|
|
|
AC_CHECK_LIB(pthread, pthread_setcanceltype, [
|
|
UNIX_THREAD="unix/threadpsx.cpp"
|
|
THREADS_LINK="pthread"
|
|
])
|
|
])
|
|
|
|
if test "x$THREADS_LINK" = "x"; then
|
|
dnl thread functions are in libc_r under FreeBSD
|
|
AC_CHECK_LIB(c_r, pthread_create,
|
|
[
|
|
UNIX_THREAD="unix/threadpsx.cpp"
|
|
THREADS_LINK="c_r"
|
|
])
|
|
fi
|
|
|
|
if test "$THREADS_LINK" != ""; then
|
|
AC_DEFINE(wxUSE_THREADS)
|
|
fi
|
|
fi
|
|
|
|
if test -z "$UNIX_THREAD"; then
|
|
wxUSE_THREADS=0
|
|
fi
|
|
|
|
dnl do other tests only if we are using threads
|
|
if test "$wxUSE_THREADS" = "1"; then
|
|
THREADS_LINK2=""
|
|
AC_CHECK_LIB($THREADS_LINK, sched_yield,
|
|
AC_DEFINE(HAVE_SCHED_YIELD),
|
|
[AC_CHECK_LIB("posix4", sched_yield,
|
|
[AC_DEFINE(HAVE_SCHED_YIELD) THREADS_LINK2="-lposix4"],
|
|
AC_MSG_WARN(wxThread::Yield() will not work properly)
|
|
)]
|
|
)
|
|
|
|
AC_CHECK_LIB($THREADS_LINK, sched_get_priority_min,
|
|
AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
|
|
[AC_CHECK_LIB("posix4", sched_get_priority_min,
|
|
[AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) THREADS_LINK2="-lposix4"],
|
|
AC_MSG_WARN(Setting thread priority will not work)
|
|
)]
|
|
)
|
|
|
|
AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
|
|
AC_DEFINE(HAVE_PTHREAD_CANCEL),
|
|
AC_MSG_WARN(wxThread::Kill() will not work properly))
|
|
|
|
THREADS_LINK="-l$THREADS_LINK $THREADS_LINK2"
|
|
fi
|
|
|
|
AC_SUBST(UNIX_THREAD)
|
|
AC_SUBST(THREADS_LINK)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl compiler options for shared libs
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
PICFLAGS=
|
|
CREATE_SHARED=
|
|
case "${canonical}" in
|
|
*-hp-hpux* )
|
|
if test "$GCC" != "yes" ; then
|
|
CXXFLAGS="${CXXFLAGS} +a1 -z -Aa -D_HPUX_SOURCE"
|
|
CFLAGS="${CFLAGS} -z -D_HPUX_SOURCE"
|
|
PICFLAGS="+z"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
LDFLAGS="-Wl,+s"
|
|
CREATE_SHARED=sharedHpux
|
|
;;
|
|
|
|
*-*-linux* )
|
|
PICFLAGS=-fPIC
|
|
CREATE_SHARED=sharedLinux
|
|
;;
|
|
|
|
*-*-irix5* | *-*-irix6* )
|
|
# PICFLAGS can remain empty, as pic is the default
|
|
LDFLAGS="-Wl,+s"
|
|
CREATE_SHARED=sharedIrix
|
|
AC_DEFINE(SVR4)
|
|
;;
|
|
|
|
*-*-solaris2* )
|
|
if test "$GCC" != "yes" ; then
|
|
PICFLAGS="-KPIC"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
CREATE_SHARED=sharedSolaris2
|
|
AC_DEFINE(SVR4)
|
|
;;
|
|
|
|
*-*-sunos4* )
|
|
if test "$GCC" != "yes" ; then
|
|
PICFLAGS="-PIC"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
LDFLAGS="-Wl,+s"
|
|
CREATE_SHARED=sharedSunos4
|
|
AC_DEFINE(BSD)
|
|
;;
|
|
|
|
*-*-freebsd* | *-*-netbsd*)
|
|
PICFLAGS=-fPIC
|
|
CREATE_SHARED=sharedBsd
|
|
AC_DEFINE(BSD)
|
|
;;
|
|
|
|
*-*-osf* )
|
|
PICFLAGS="-fPIC"
|
|
CREATE_SHARED=sharedOSF
|
|
;;
|
|
|
|
*-*-dgux5* )
|
|
if test "$GCC" != "yes" ; then
|
|
PICFLAGS="-K PIC"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
CREATE_SHARED=sharedDgux
|
|
AC_DEFINE(SVR4)
|
|
;;
|
|
|
|
*-*-sysv5* )
|
|
if test "$GCC" != "yes" ; then
|
|
PICFLAGS="-K PIC"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
CREATE_SHARED=sharedSysV
|
|
AC_DEFINE(SVR4)
|
|
;;
|
|
|
|
*-*-aix* )
|
|
if test "$GCC" != "yes" ; then
|
|
PICFLAGS="-bM\:SRE"
|
|
else
|
|
PICFLAGS="-fPIC"
|
|
fi
|
|
CREATE_SHARED=sharedAIX
|
|
AC_DEFINE(SYSV)
|
|
;;
|
|
|
|
*)
|
|
CREATE_SHARED=
|
|
PICFLAGS=
|
|
esac
|
|
|
|
if test "x$GCC" = xyes; then
|
|
CFLAGS="${CFLAGS} -Wall -Wno-unused -Wno-uninitialized -D_REENTRANT -DLEX_SCANNER -DHAVE_LIBDL"
|
|
fi
|
|
|
|
if test "x$GXX" = xyes; then
|
|
if test "$wxUSE_MOTIF" = 1; then
|
|
CXXFLAGS="${CXXFLAGS} -Wall -Wno-unused -D_REENTRANT"
|
|
else
|
|
CXXFLAGS="${CXXFLAGS} -Wall -D_REENTRANT"
|
|
fi
|
|
fi
|
|
|
|
if test "$wxUSE_SHARED" != 1; then
|
|
CREATE_SHARED=
|
|
PICFLAGS=
|
|
fi
|
|
|
|
AC_SUBST(OS)
|
|
AC_SUBST(PICFLAGS)
|
|
AC_SUBST(CREATE_SHARED)
|
|
|
|
dnl ------------------------------------------------------------------------
|
|
dnl finish and clean-up
|
|
dnl ------------------------------------------------------------------------
|
|
|
|
dnl add OS to list of configured
|
|
echo $OS >> system.list
|
|
|
|
AC_CONFIG_HEADER(./include/wx/gtk/setup.h:./setup/setup.hin)
|
|
AC_OUTPUT(./setup/substit ./wx-config:./wx-config.in,./setup/general/createall)
|
|
|
|
AC_OVERRIDES_DONE
|
|
|