1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-13 17:20:21 +02:00

For each AC_DEFINE, add 2nd and 3rd args.

Replace direct LIBOBJS setting w/ AC_LIBOBJ constructs.
Update sed commands for computing LIBLOBJS and EXTRA_DOT_DOC_FILES.
This commit is contained in:
Thien-Thi Nguyen 2002-05-03 09:14:05 +00:00
parent 271be4000a
commit 938d5f4530

View file

@ -46,19 +46,22 @@ AC_CONFIG_SUBDIRS(guile-readline)
AC_ARG_ENABLE(debug-freelist, AC_ARG_ENABLE(debug-freelist,
[ --enable-debug-freelist include garbage collector freelist debugging code], [ --enable-debug-freelist include garbage collector freelist debugging code],
if test "$enable_debug_freelist" = y || test "$enable_debug_freelist" = yes; then if test "$enable_debug_freelist" = y || test "$enable_debug_freelist" = yes; then
AC_DEFINE(GUILE_DEBUG_FREELIST) AC_DEFINE(GUILE_DEBUG_FREELIST, 1,
[Define this if you want to debug the free list (helps w/ GC bugs).])
fi) fi)
AC_ARG_ENABLE(debug-malloc, AC_ARG_ENABLE(debug-malloc,
[ --enable-debug-malloc include malloc debugging code], [ --enable-debug-malloc include malloc debugging code],
if test "$enable_debug_malloc" = y || test "$enable_debug_malloc" = yes; then if test "$enable_debug_malloc" = y || test "$enable_debug_malloc" = yes; then
AC_DEFINE(GUILE_DEBUG_MALLOC) AC_DEFINE(GUILE_DEBUG_MALLOC, 1,
[Define this if you want to debug scm_must_malloc/realloc/free calls.])
fi) fi)
AC_ARG_ENABLE(guile-debug, AC_ARG_ENABLE(guile-debug,
[ --enable-guile-debug include internal debugging functions], [ --enable-guile-debug include internal debugging functions],
if test "$enable_guile_debug" = y || test "$enable_guile_debug" = yes; then if test "$enable_guile_debug" = y || test "$enable_guile_debug" = yes; then
AC_DEFINE(GUILE_DEBUG) AC_DEFINE(GUILE_DEBUG, 1,
[Define this to include various undocumented functions used to debug.])
fi) fi)
AC_ARG_ENABLE(arrays, AC_ARG_ENABLE(arrays,
@ -79,28 +82,36 @@ AC_ARG_ENABLE(regex,
dnl The --disable-debug used to control these two. But now they are dnl The --disable-debug used to control these two. But now they are
dnl a required part of the distribution. dnl a required part of the distribution.
AC_DEFINE(DEBUG_EXTENSIONS) AC_DEFINE(DEBUG_EXTENSIONS, 1,
AC_DEFINE(READER_EXTENSIONS) [Define if you want support for debugging Scheme programs.])
AC_DEFINE(READER_EXTENSIONS, 1,
[Define if you want support for debugging Scheme programs.])
dnl files which are destined for separate modules. dnl files which are destined for separate modules.
if test "$enable_arrays" = yes; then if test "$enable_arrays" = yes; then
LIBOBJS="$LIBOBJS ramap.o unif.o" AC_LIBOBJ([ramap])
AC_DEFINE(HAVE_ARRAYS) AC_LIBOBJ([unif])
AC_DEFINE(HAVE_ARRAYS, 1,
[Define this if you want support for arrays and uniform arrays.])
fi fi
if test "$enable_posix" = yes; then if test "$enable_posix" = yes; then
LIBOBJS="$LIBOBJS filesys.o posix.o" AC_LIBOBJ([filesys])
AC_DEFINE(HAVE_POSIX) AC_LIBOBJ([posix])
AC_DEFINE(HAVE_POSIX, 1,
[Define this if you want support for POSIX system calls in Guile.])
fi fi
if test "$enable_networking" = yes; then if test "$enable_networking" = yes; then
LIBOBJS="$LIBOBJS net_db.o socket.o" AC_LIBOBJ([net_db])
AC_DEFINE(HAVE_NETWORKING) AC_LIBOBJ([socket])
AC_DEFINE(HAVE_NETWORKING, 1,
[Define this if you want support for networking in Guile.])
fi fi
if test "$enable_debug_malloc" = yes; then if test "$enable_debug_malloc" = yes; then
LIBOBJS="$LIBOBJS debug-malloc.o" AC_LIBOBJ([debug-malloc])
fi fi
#-------------------------------------------------------------------- #--------------------------------------------------------------------
@ -129,7 +140,7 @@ AC_CACHE_CHECK([for long longs], scm_cv_long_longs,
scm_cv_long_longs=yes, scm_cv_long_longs=yes,
scm_cv_long_longs=no)) scm_cv_long_longs=no))
if test "$scm_cv_long_longs" = yes; then if test "$scm_cv_long_longs" = yes; then
AC_DEFINE(HAVE_LONG_LONGS) AC_DEFINE(HAVE_LONG_LONGS, 1, [Define if the compiler supports long longs.])
fi fi
AC_HEADER_STDC AC_HEADER_STDC
@ -162,7 +173,8 @@ use_modules="$withval")
test -z "$use_modules" && use_modules=yes test -z "$use_modules" && use_modules=yes
DLPREOPEN= DLPREOPEN=
if test "$use_modules" != no; then if test "$use_modules" != no; then
AC_DEFINE(DYNAMIC_LINKING) AC_DEFINE(DYNAMIC_LINKING, 1,
[Define if you want support for dynamic linking.])
if test "$use_modules" = yes; then if test "$use_modules" = yes; then
DLPREOPEN="-dlpreopen force" DLPREOPEN="-dlpreopen force"
else else
@ -191,7 +203,8 @@ AC_DEFUN(GUILE_FUNC_DECLARED, [
guile_cv_func_$1_declared=yes, guile_cv_func_$1_declared=yes,
guile_cv_func_$1_declared=no)) guile_cv_func_$1_declared=no))
if test [x$guile_cv_func_]$1[_declared] = xno; then if test [x$guile_cv_func_]$1[_declared] = xno; then
AC_DEFINE([MISSING_]translit($1, [a-z], [A-Z])[_DECL]) AC_DEFINE([MISSING_]translit($1, [a-z], [A-Z])[_DECL], 1,
[Define if the operating system supplies $1 without declaring it.])
fi fi
]) ])
@ -209,7 +222,8 @@ AC_CACHE_CHECK([return type of usleep], guile_cv_func_usleep_return_type,
[guile_cv_func_usleep_return_type=int])]) [guile_cv_func_usleep_return_type=int])])
case "$guile_cv_func_usleep_return_type" in case "$guile_cv_func_usleep_return_type" in
"void" ) "void" )
AC_DEFINE(USLEEP_RETURNS_VOID) AC_DEFINE(USLEEP_RETURNS_VOID, 1,
[Define if the system headers declare usleep to return void.])
;; ;;
esac esac
@ -217,7 +231,8 @@ dnl <GNU-WIN32 hacks>
AC_CHECK_HEADER(sys/un.h, have_sys_un_h=1) AC_CHECK_HEADER(sys/un.h, have_sys_un_h=1)
if test -n "$have_sys_un_h" ; then if test -n "$have_sys_un_h" ; then
AC_DEFINE(HAVE_UNIX_DOMAIN_SOCKETS) AC_DEFINE(HAVE_UNIX_DOMAIN_SOCKETS, 1,
[Define if the system supports Unix-domain (file-domain) sockets.])
fi fi
AC_CHECK_FUNCS(socketpair getgroups setpwent pause tzset) AC_CHECK_FUNCS(socketpair getgroups setpwent pause tzset)
@ -299,7 +314,7 @@ else
fi])dnl fi])dnl
AC_MSG_RESULT($guile_cv_localtime_cache) AC_MSG_RESULT($guile_cv_localtime_cache)
if test $guile_cv_localtime_cache = yes; then if test $guile_cv_localtime_cache = yes; then
AC_DEFINE(LOCALTIME_CACHE) AC_DEFINE(LOCALTIME_CACHE, 1, [Define if localtime caches the TZ setting.])
fi fi
dnl Test whether system calls are restartable by default on the dnl Test whether system calls are restartable by default on the
@ -318,15 +333,19 @@ if test "$enable_regex" = yes; then
if test "$ac_cv_header_regex_h" = yes || if test "$ac_cv_header_regex_h" = yes ||
test "$ac_cv_header_rxposix_h" = yes || test "$ac_cv_header_rxposix_h" = yes ||
test "$ac_cv_header_rx_rxposix_h" = yes; then test "$ac_cv_header_rx_rxposix_h" = yes; then
GUILE_NAMED_CHECK_FUNC(regcomp, norx, [LIBOBJS="regex-posix.o $LIBOBJS"], GUILE_NAMED_CHECK_FUNC(regcomp, norx, [AC_LIBOBJ([regex-posix])],
[AC_CHECK_LIB(rx, main) [AC_CHECK_LIB(rx, main)
GUILE_NAMED_CHECK_FUNC(regcomp, rx, [LIBOBJS="regex-posix.o $LIBOBJS"])] GUILE_NAMED_CHECK_FUNC(regcomp, rx, [AC_LIBOBJ([regex-posix])],
[AC_CHECK_LIB(regex, main)
GUILE_NAMED_CHECK_FUNC(regcomp, regex, [AC_LIBOBJ([regex-posix])])])]
) )
dnl The following should not be necessary, but for some reason dnl The following should not be necessary, but for some reason
dnl autoheader misses it if we don't include it! dnl autoheader misses it if we don't include it!
if test "$ac_cv_func_regcomp_norx" = yes || if test "$ac_cv_func_regcomp_norx" = yes ||
test "$ac_cv_func_regcomp_regex" = yes ||
test "$ac_cv_func_regcomp_rx" = yes; then test "$ac_cv_func_regcomp_rx" = yes; then
AC_DEFINE(HAVE_REGCOMP) AC_DEFINE(HAVE_REGCOMP, 1,
[This is included as part of a workaround for a autoheader bug.])
fi fi
fi fi
fi fi
@ -337,7 +356,7 @@ AC_REPLACE_FUNCS(inet_aton putenv strerror memmove)
# explicitly to LIBOBJS to make sure that it is translated to # explicitly to LIBOBJS to make sure that it is translated to
# `alloca.lo' for libtool later on. This can and should be done more cleanly. # `alloca.lo' for libtool later on. This can and should be done more cleanly.
AC_FUNC_ALLOCA AC_FUNC_ALLOCA
if test "$ALLOCA" = "alloca.o"; then LIBOBJS="alloca.o $LIBOBJS"; fi if test "$ALLOCA" = "alloca.o"; then AC_LIBOBJ([alloca]); fi
AC_CHECK_MEMBERS([struct stat.st_rdev]) AC_CHECK_MEMBERS([struct stat.st_rdev])
AC_CHECK_MEMBERS([struct stat.st_blksize]) AC_CHECK_MEMBERS([struct stat.st_blksize])
@ -352,7 +371,8 @@ AC_CACHE_CHECK([for S_ISLNK in sys/stat.h], ac_cv_macro_S_ISLNK,
ac_cv_macro_S_ISLNK=yes, ac_cv_macro_S_ISLNK=yes,
ac_cv_macro_S_ISLNK=no)]) ac_cv_macro_S_ISLNK=no)])
if test $ac_cv_macro_S_ISLNK = yes; then if test $ac_cv_macro_S_ISLNK = yes; then
AC_DEFINE(HAVE_S_ISLNK) AC_DEFINE(HAVE_S_ISLNK, 1,
[Define this if your system defines S_ISLNK in sys/stat.h.])
fi fi
AC_STRUCT_TIMEZONE AC_STRUCT_TIMEZONE
@ -367,7 +387,15 @@ GUILE_STRUCT_UTIMBUF
AC_TRY_RUN(aux (l) unsigned long l; AC_TRY_RUN(aux (l) unsigned long l;
{ int x; exit (l >= ((unsigned long)&x)); } { int x; exit (l >= ((unsigned long)&x)); }
main () { int q; aux((unsigned long)&q); }, main () { int q; aux((unsigned long)&q); },
AC_DEFINE(SCM_STACK_GROWS_UP),,AC_MSG_WARN(Guessing that stack grows down -- see scmconfig.h.in)) [AC_DEFINE([SCM_STACK_GROWS_UP], 1,
[Define this if a callee's stack frame has a higher address
than the caller's stack frame. On most machines, this is
not the case.])],
[],
[AC_MSG_WARN(Guessing that stack grows down -- see scmconfig.h.in)])
AH_TEMPLATE([SCM_SINGLES],
[Define this if floats are the same size as longs.])
AC_CACHE_CHECK([whether floats fit in longs], guile_cv_type_float_fits_long, AC_CACHE_CHECK([whether floats fit in longs], guile_cv_type_float_fits_long,
[AC_TRY_RUN([main () { exit (sizeof(float) > sizeof(long)); }], [AC_TRY_RUN([main () { exit (sizeof(float) > sizeof(long)); }],
@ -396,7 +424,9 @@ AC_CACHE_VAL(scm_cv_struct_linger,
scm_cv_struct_linger="no")) scm_cv_struct_linger="no"))
AC_MSG_RESULT($scm_cv_struct_linger) AC_MSG_RESULT($scm_cv_struct_linger)
if test $scm_cv_struct_linger = yes; then if test $scm_cv_struct_linger = yes; then
AC_DEFINE(HAVE_STRUCT_LINGER) AC_DEFINE(HAVE_STRUCT_LINGER, 1,
[Define this if your system defines struct linger, for use with the
getsockopt and setsockopt system calls.])
fi fi
@ -409,7 +439,8 @@ AC_CACHE_VAL(scm_cv_struct_timespec,
scm_cv_struct_timespec="no")) scm_cv_struct_timespec="no"))
AC_MSG_RESULT($scm_cv_struct_timespec) AC_MSG_RESULT($scm_cv_struct_timespec)
if test $scm_cv_struct_timespec = yes; then if test $scm_cv_struct_timespec = yes; then
AC_DEFINE(HAVE_STRUCT_TIMESPEC) AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
[Define this if your system defines struct timespec via <time.h>.])
fi fi
#-------------------------------------------------------------------- #--------------------------------------------------------------------
@ -451,16 +482,17 @@ esac
## If we're using threads, bring in some other parts of Guile which ## If we're using threads, bring in some other parts of Guile which
## work with them. ## work with them.
if test "${THREAD_PACKAGE}" != "" ; then if test "${THREAD_PACKAGE}" != "" ; then
AC_DEFINE(USE_THREADS, 1) AC_DEFINE(USE_THREADS, 1, [Define if using any sort of threads.])
## Include the Guile thread interface in the library... ## Include the Guile thread interface in the library...
LIBOBJS="$LIBOBJS threads.o" AC_LIBOBJ([threads])
EXTRA_DOT_DOC_FILES="$EXTRA_DOT_DOC_FILES threads.doc" EXTRA_DOT_DOC_FILES="$EXTRA_DOT_DOC_FILES threads.doc"
## ... and tell it which package to talk to. ## ... and tell it which package to talk to.
case "${THREAD_PACKAGE}" in case "${THREAD_PACKAGE}" in
"QT" ) "QT" )
AC_DEFINE(USE_COOP_THREADS, 1) AC_DEFINE(USE_COOP_THREADS, 1,
[Define if using cooperative multithreading.])
;; ;;
* ) * )
AC_MSG_ERROR(invalid value for THREAD_PACKAGE: ${THREAD_PACKAGE}) AC_MSG_ERROR(invalid value for THREAD_PACKAGE: ${THREAD_PACKAGE})
@ -470,12 +502,13 @@ if test "${THREAD_PACKAGE}" != "" ; then
## Bring in scm_internal_select, if appropriate. ## Bring in scm_internal_select, if appropriate.
if test $ac_cv_func_gettimeofday = yes && if test $ac_cv_func_gettimeofday = yes &&
test $ac_cv_func_select = yes; then test $ac_cv_func_select = yes; then
AC_DEFINE(GUILE_ISELECT, 1) AC_DEFINE(GUILE_ISELECT, 1, [Define to implement scm_internal_select.])
fi fi
## Workaround for linuxthreads (currently disabled) ## Workaround for linuxthreads (currently disabled)
if test $host_os = linux-gnu; then if test $host_os = linux-gnu; then
AC_DEFINE(GUILE_PTHREAD_COMPAT, 1) AC_DEFINE(GUILE_PTHREAD_COMPAT, 1,
[Define to enable workaround for COOP-linuxthreads compatibility.])
AC_CHECK_LIB(pthread, main) AC_CHECK_LIB(pthread, main)
fi fi
fi fi
@ -496,10 +529,10 @@ AC_PROG_AWK
## If we're creating a shared library (using libtool!), then we'll ## If we're creating a shared library (using libtool!), then we'll
## need to generate a list of .lo files corresponding to the .o files ## need to generate a list of .lo files corresponding to the .o files
## given in LIBOBJS. We'll call it LIBLOBJS. ## given in LIBOBJS. We'll call it LIBLOBJS.
LIBLOBJS="`echo ${LIBOBJS} | sed 's/\.o/.lo/g'`" LIBLOBJS="`echo ${LIB@&t@OBJS} | sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`"
## We also need to create corresponding .doc files ## We also need to create corresponding .doc files
EXTRA_DOT_DOC_FILES="`echo ${LIBOBJS} | sed 's/\.o/.doc/g'`" EXTRA_DOT_DOC_FILES="`echo ${LIB@&t@OBJS} | sed 's,\.[[^.]]* ,.doc ,g;s,\.[[^.]]*$,.doc,'`"
AC_SUBST(GUILE_MAJOR_VERSION) AC_SUBST(GUILE_MAJOR_VERSION)
AC_SUBST(GUILE_MINOR_VERSION) AC_SUBST(GUILE_MINOR_VERSION)