X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=aclocal.m4;h=6782f0fb183fdad6083f570690e1c6cab1e07af2;hp=490bbed7a557880b4445caef528f5532bacd17a3;hb=c633e5103a29a38532cf1925257b91cea33fd090;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/aclocal.m4 b/aclocal.m4 index 490bbed7..6782f0fb 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -26,11 +26,13 @@ dnl sale, use or other dealings in this Software without prior written * dnl authorization. * dnl*************************************************************************** dnl -dnl Author: Thomas E. Dickey 1996,1997,1998 +dnl Author: Thomas E. Dickey 1996,1997,1998,1999,2000 dnl -dnl $Id: aclocal.m4,v 1.214 2000/07/07 15:11:34 tom Exp $ +dnl $Id: aclocal.m4,v 1.238 2000/10/20 22:57:49 tom Exp $ dnl Macros used in NCURSES auto-configuration script. dnl +dnl See http://dickey.his.com/autoconf/ for additional information. +dnl dnl --------------------------------------------------------------------------- dnl --------------------------------------------------------------------------- dnl Construct the list of include-options for the C programs in the Ada95 @@ -41,7 +43,7 @@ ACPPFLAGS="$ACPPFLAGS -I. -I../../include" if test "$srcdir" != "."; then ACPPFLAGS="$ACPPFLAGS -I\$(srcdir)/../../include" fi -if test -z "$GCC"; then +if test "$GCC" != yes; then ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" elif test "$includedir" != "/usr/include"; then if test "$includedir" = '${prefix}/include' ; then @@ -129,7 +131,7 @@ dnl Treat the configuration-variable specially here, since we're directly dnl substituting its value (i.e., 1/0). AC_DEFUN([CF_BOOL_DECL], [ -AC_MSG_CHECKING([for builtin ifelse(AC_LANG,[C],$CC,$CXX) bool type]) +AC_MSG_CHECKING([for builtin bool type]) AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[ AC_TRY_COMPILE([ #include @@ -138,7 +140,7 @@ AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[ [ifelse($1,,cf_cv_builtin_bool,[$1])=1], [ifelse($1,,cf_cv_builtin_bool,[$1])=0]) ]) -if test $ifelse($1,,cf_cv_builtin_bool,[$1]) = 1 +if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1 then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi @@ -148,13 +150,13 @@ dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type). dnl Don't bother looking for bool.h, since it's been deprecated. AC_DEFUN([CF_BOOL_SIZE], [ -AC_MSG_CHECKING([for size of ifelse(AC_LANG,[C],$CC,$CXX) bool]) +AC_MSG_CHECKING([for size of bool]) AC_CACHE_VAL(cf_cv_type_of_bool,[ rm -f cf_test.out AC_TRY_RUN([ #include #include -#if HAVE_GXX_BUILTIN_H +#ifdef HAVE_GXX_BUILTIN_H #include #elif HAVE_GPP_BUILTIN_H #include @@ -259,18 +261,20 @@ AC_TRY_LINK([ [cf_cv_cgetent=no]) ]) AC_MSG_RESULT($cf_cv_cgetent) -test $cf_cv_cgetent = yes && AC_DEFINE(HAVE_BSD_CGETENT) +test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT) ])dnl dnl --------------------------------------------------------------------------- dnl Check if we're accidentally using a cache from a different machine. dnl Derive the system name, as a check for reusing the autoconf cache. dnl dnl If we've packaged config.guess and config.sub, run that (since it does a -dnl better job than uname). +dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow +dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM +dnl which is useful in cross-compiles. AC_DEFUN([CF_CHECK_CACHE], [ if test -f $srcdir/config.guess ; then - AC_CANONICAL_HOST + ifelse([$1],,[AC_CANONICAL_HOST],[$1]) system_name="$host_os" else system_name="`(uname -s -r) 2>/dev/null`" @@ -359,7 +363,7 @@ dnl is a late feature for the standard and is not in some recent compilers dnl (1999/9/11). AC_DEFUN([CF_CPP_PARAM_INIT], [ -if test -n "$CXX" ; then +if test "$CXX" = yes ; then AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[ AC_LANG_CPLUSPLUS AC_TRY_RUN([ @@ -456,7 +460,7 @@ int main() { [cf_cv_good_bcopy=unknown]) ]) ],[cf_cv_good_bcopy=no]) - if test $cf_cv_good_bcopy = yes ; then + if test "$cf_cv_good_bcopy" = yes ; then AC_DEFINE(USE_OK_BCOPY) else AC_DEFINE(USE_MY_MEMMOVE) @@ -490,12 +494,39 @@ int main() { test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL) ])dnl dnl --------------------------------------------------------------------------- +dnl Some old/broken variations define tcgetattr() only as a macro in +dnl termio(s).h +AC_DEFUN([CF_FUNC_TERMIOS],[ +AC_REQUIRE([CF_STRUCT_TERMIOS]) +AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[ +AC_TRY_LINK([ +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_TERMIOS_H +#include +#define TTY struct termios +#else +#ifdef HAVE_TERMIO_H +#include +#define TTY struct termio +#endif +#endif +],[ +TTY foo; +tcgetattr(1, &foo);], +[cf_cv_have_tcgetattr=yes], +[cf_cv_have_tcgetattr=no])]) +test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR) +])dnl +dnl --------------------------------------------------------------------------- dnl Test for availability of useful gcc __attribute__ directives to quiet dnl compiler warnings. Though useful, not all are supported -- and contrary dnl to documentation, unrecognized directives cause older compilers to barf. AC_DEFUN([CF_GCC_ATTRIBUTES], [ -if test -n "$GCC" +if test "$GCC" = yes then cat > conftest.i < conftest.i < conftest.$ac_ext <> Makefile <>headers.sh </<\$END\/\$NAME>/" >> \$TMPSED done - rm -f \$TMPSRC - sed -f \$TMPSED \$SRC > \$TMPSRC - eval \$PRG \$TMPSRC \$DST/\$SRC - rm -f \$TMPSRC \$TMPSED ;; *) - eval \$PRG \$SRC \$DST + echo "" >> \$TMPSED ;; esac CF_EOF +else + cat >>headers.sh <//" >> \$TMPSED + NAME=ncurses.h + fi + echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED + done + ;; +*) + echo "s///" >> \$TMPSED + ;; +esac +CF_EOF +fi +cat >>headers.sh < \$TMPSRC +NAME=\`basename \$SRC\` +CF_EOF +if test $WITH_CURSES_H != yes; then + cat >>headers.sh <>headers.sh <>$cf_dir/Makefile <>$cf_dir/Makefile for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"` do - echo " @ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(INSTALL_PREFIX)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile - test $i = curses.h && echo " @ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile + echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(DESTDIR)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile + test $i = curses.h && test $WITH_CURSES_H = yes && echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile done cat >>$cf_dir/Makefile <>$cf_dir/Makefile - test $i = curses.h && echo " -@ (cd \$(INSTALL_PREFIX)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile + echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f $i)" >>$cf_dir/Makefile + test $i = curses.h && echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile done fi done @@ -1030,6 +1108,7 @@ AC_DEFUN([CF_LIB_SUFFIX], [ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) case $1 in + libtool) $2='.la' ;; normal) $2='.a' ;; debug) $2='_g.a' ;; profile) $2='_p.a' ;; @@ -1049,6 +1128,7 @@ dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. AC_DEFUN([CF_LIB_TYPE], [ case $1 in + libtool) $2='' ;; normal) $2='' ;; debug) $2='_g' ;; profile) $2='_p' ;; @@ -1114,7 +1194,7 @@ EOF LIBS="$cf_saveLIBS" ]) AC_MSG_RESULT($cf_cv_link_dataonly) -test $cf_cv_link_dataonly = no && AC_DEFINE(BROKEN_LINKER) +test "$cf_cv_link_dataonly" = no && AC_DEFINE(BROKEN_LINKER) ])dnl dnl --------------------------------------------------------------------------- dnl Most Unix systems have both link and symlink, a few don't have symlink. @@ -1161,14 +1241,14 @@ int main() } ],[ cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" - eval 'ac_cv_func_'$cf_func'=yes' - CF_UPPER(cf_FUNC,$cf_func) - AC_DEFINE_UNQUOTED(HAVE_$cf_FUNC)],[ + eval 'ac_cv_func_'$cf_func'=yes'],[ eval 'ac_cv_func_'$cf_func'=no'],[ eval 'ac_cv_func_'$cf_func'=error']) done test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no ]) + test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK) + test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK) fi ])dnl dnl --------------------------------------------------------------------------- @@ -1208,6 +1288,33 @@ AC_MSG_RESULT($cf_cv_makeflags) AC_SUBST(cf_cv_makeflags) ])dnl dnl --------------------------------------------------------------------------- +dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have +dnl a monocase filesystem. +AC_DEFUN([CF_MAKE_TAGS],[ +AC_REQUIRE([CF_MIXEDCASE_FILENAMES]) +AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no) + +if test "$cf_cv_mixedcase" = yes ; then + AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no) +else + MAKE_UPPER_TAGS=no +fi + +if test "$MAKE_UPPER_TAGS" = yes ; then + MAKE_UPPER_TAGS= +else + MAKE_UPPER_TAGS="#" +fi +AC_SUBST(MAKE_UPPER_TAGS) + +if test "$MAKE_LOWER_TAGS" = yes ; then + MAKE_LOWER_TAGS= +else + MAKE_LOWER_TAGS="#" +fi +AC_SUBST(MAKE_LOWER_TAGS) +])dnl +dnl --------------------------------------------------------------------------- dnl Option to allow user to override automatic configuration of manpage format. dnl There are several special cases. AC_DEFUN([CF_MANPAGE_FORMAT], @@ -1317,6 +1424,20 @@ AC_ARG_WITH(manpage-symlinks, AC_MSG_RESULT($cf_manpage_symlinks) ])dnl dnl --------------------------------------------------------------------------- +dnl This option causes manpages to be run through tbl(1) to generate tables +dnl correctly. +AC_DEFUN([CF_MANPAGE_TBL], +[ +AC_MSG_CHECKING(for manpage tbl) + +AC_ARG_WITH(manpage-tbl, + [ --with-manpage-tbl specify manpage processing with tbl], + [cf_manpage_tbl=$withval], + [cf_manpage_tbl=no]) + +AC_MSG_RESULT($cf_manpage_tbl) +])dnl +dnl --------------------------------------------------------------------------- dnl Try to determine if the man-pages on the system are compressed, and if dnl so, what format is used. Use this information to construct a script that dnl will install man-pages. @@ -1326,6 +1447,7 @@ CF_HELP_MESSAGE(Options to Specify How Manpages are Installed:) CF_MANPAGE_FORMAT CF_MANPAGE_RENAMES CF_MANPAGE_SYMLINKS +CF_MANPAGE_TBL if test "$prefix" = "NONE" ; then cf_prefix="$ac_default_prefix" @@ -1351,9 +1473,11 @@ changequote({{,}})dnl # this script is generated by the configure-script prefix="$cf_prefix" datadir="$datadir" +TERMINFO="$TERMINFO" MKDIRS="`cd $srcdir && pwd`/mkinstalldirs" INSTALL="$INSTALL" INSTALL_DATA="$INSTALL_DATA" +transform="$program_transform_name" TMP=\${TMPDIR-/tmp}/man\$\$ trap "rm -f \$TMP" 0 1 2 5 15 @@ -1379,16 +1503,52 @@ case \$i in #(vi fi aliases= source=\`basename \$i\` + inalias=\$source + test ! -f \$inalias && inalias="\$srcdir/\$inalias" + if test ! -f \$inalias ; then + echo .. skipped \$source + continue + fi CF_EOF if test "$cf_manpage_symlinks" = yes ; then cat >>man/edit_man.sh <>man/edit_man.sh <\$TMP + # perform program transformations for section 1 man pages + if test \$section = 1 ; then + target=$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\` + else + target=$cf_subdir\${section}/\$source + fi + + # replace variables in man page +CF_EOF + ifelse($1,,,{{ + for cf_name in $1 + do +cat >>man/edit_man.sh <>man/edit_man.sh <>man/edit_man.sh <>man/edit_man.sh <\$TMP CF_EOF else cat >>man/edit_man.sh <>man/edit_man.sh <\$TMP CF_EOF fi +if test $cf_manpage_tbl = yes ; then +cat >>man/edit_man.sh <\$TMP.out + mv \$TMP.out \$TMP +CF_EOF +fi +if test $with_curses_h != yes ; then +cat >>man/edit_man.sh <\$TMP.out + mv \$TMP.out \$TMP +CF_EOF +fi if test $cf_format = yes ; then cat >>man/edit_man.sh <\$TMP.out @@ -1438,15 +1610,19 @@ CF_EOF ;; esac cat >>man/edit_man.sh <>man/edit_man.sh <conftest + if test -f CONFTEST ; then + cf_cv_mixedcase=no + else + cf_cv_mixedcase=yes + fi + rm -f conftest CONFTEST +]) +test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) +])dnl +dnl --------------------------------------------------------------------------- dnl Compute the object-directory name from the given model name AC_DEFUN([CF_OBJ_SUBDIR], [ case $1 in + libtool) $2='obj_lo' ;; normal) $2='objects' ;; debug) $2='obj_g' ;; profile) $2='obj_p' ;; @@ -1665,7 +1867,7 @@ AC_DEFUN([CF_SHARED_OPTS], # Some less-capable ports of gcc support only -fpic CC_SHARED_OPTS= - if test -n "$GCC" + if test "$GCC" = yes then AC_MSG_CHECKING(which $CC option to use) cf_save_CFLAGS="$CFLAGS" @@ -1682,23 +1884,9 @@ AC_DEFUN([CF_SHARED_OPTS], beos*) MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0' ;; - hpux10.*) - # (tested with gcc 2.7.2 -- I don't have c89) - if test -n "$GCC"; then - LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)' - else - CC_SHARED_OPTS='+Z' - LD_SHARED_OPTS='-Wl,+b,$(libdir)' - fi - MK_SHARED_LIB='$(LD) +b $(libdir) -b +h `basename $[@]` -o $[@]' - # HP-UX shared libraries must be executable, and should be - # readonly to exploit a quirk in the memory manager. - INSTALL_LIB="-m 555" - cf_cv_do_symlinks=reverse - ;; hpux*) # (tested with gcc 2.7.2 -- I don't have c89) - if test -n "$GCC"; then + if test "$GCC" = yes; then LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)' else CC_SHARED_OPTS='+Z' @@ -1710,21 +1898,27 @@ AC_DEFUN([CF_SHARED_OPTS], INSTALL_LIB="-m 555" ;; irix*) + if test "$cf_cv_ld_rpath" = yes ; then + cf_ld_rpath_opt="-Wl,-rpath," + EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" + fi # tested with IRIX 5.2 and 'cc'. - if test -z "$GCC"; then + if test "$GCC" != yes; then CC_SHARED_OPTS='-KPIC' fi MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]' cf_cv_rm_so_locs=yes ;; linux*|gnu*) - # tested with Linux 2.0.29 and gcc 2.7.2 (ELF) - test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath," - if test $DFT_LWR_MODEL = "shared" ; then - LOCAL_LDFLAGS='-Wl,-rpath,../lib' - LOCAL_LDFLAGS2='-Wl,-rpath,../../lib' + if test "$DFT_LWR_MODEL" = "shared" ; then + LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" + LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" + fi + if test "$cf_cv_ld_rpath" = yes ; then + cf_ld_rpath_opt="-Wl,-rpath," + EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" fi - test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel + test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $[@]' ;; openbsd2*) @@ -1734,17 +1928,17 @@ AC_DEFUN([CF_SHARED_OPTS], openbsd*|freebsd*) CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' - test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel + test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ;; netbsd*) CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-Wl,-rpath," - if test $DFT_LWR_MODEL = "shared" && test $cf_cv_ld_rpath = yes ; then - LOCAL_LDFLAGS='-Wl,-rpath,../lib' - LOCAL_LDFLAGS2='-Wl,-rpath,../../lib' + test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath," + if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then + LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" + LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' - if test $cf_cv_shlib_version = auto; then + if test "$cf_cv_shlib_version" = auto; then if test ! -f /usr/libexec/ld.elf_so; then cf_cv_shlib_version=rel fi @@ -1758,56 +1952,63 @@ AC_DEFUN([CF_SHARED_OPTS], # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't # link with shared libs). MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`' - test $cf_cv_ld_rpath = yes && cf_ld_rpath_opt="-rpath" case $host_os in osf4*) MK_SHARED_LIB="${MK_SHARED_LIB} -msym" ;; esac MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]' - if test $DFT_LWR_MODEL = "shared" ; then - LOCAL_LDFLAGS='-Wl,-rpath,../lib' - LOCAL_LDFLAGS2='-Wl,-rpath,../../lib' + if test "$DFT_LWR_MODEL" = "shared" ; then + LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" + LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" + fi + if test "$cf_cv_ld_rpath" = yes ; then + cf_ld_rpath_opt="-rpath" + # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" fi cf_cv_rm_so_locs=yes ;; sco3.2v5*) # (also uw2* and UW7) hops 13-Apr-98 # tested with osr5.0.5 - if test $ac_cv_prog_gcc != yes; then + if test "$ac_cv_prog_gcc" != yes; then CC_SHARED_OPTS='-belf -KPIC' fi MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@' - if test $cf_cv_ld_rpath = yes ; then + if test "$cf_cv_ld_rpath" = yes ; then # only way is to set LD_RUN_PATH but no switch for it RUN_PATH=$libdir fi - test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel + test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel LINK_PROGS='LD_RUN_PATH=$(libdir)' LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib' ;; sunos4*) # tested with SunOS 4.1.1 and gcc 2.7.0 - if test $ac_cv_prog_gcc != yes; then + if test "$ac_cv_prog_gcc" != yes; then CC_SHARED_OPTS='-KPIC' fi MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]' - test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel + test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ;; solaris2*) # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2 - if test $ac_cv_prog_gcc != yes; then + if test "$ac_cv_prog_gcc" != yes; then CC_SHARED_OPTS='-KPIC' fi MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' - if test $cf_cv_ld_rpath = yes ; then + if test "$DFT_LWR_MODEL" = "shared" ; then + LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)" + LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" + fi + if test "$cf_cv_ld_rpath" = yes ; then cf_ld_rpath_opt="-R" - EXTRA_LDFLAGS="-R ../lib:\$(libdir) $EXTRA_LDFLAGS" + EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" fi - test $cf_cv_shlib_version = auto && cf_cv_shlib_version=rel + test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ;; sysv5uw7*|unix_sv*) # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc) - if test $ac_cv_prog_gcc != yes; then + if test "$ac_cv_prog_gcc" != yes; then CC_SHARED_OPTS='-KPIC' fi MK_SHARED_LIB='$(LD) -d y -G -o [$]@' @@ -1835,11 +2036,11 @@ AC_DEFUN([CF_SHARED_OPTS], if test -n "$cf_ld_rpath_opt" ; then AC_MSG_CHECKING(if we need a space after rpath option) cf_save_LIBS="$LIBS" - LIBS="$LIBS ${cf_ld_rpath_opt}/usr/lib" + LIBS="$LIBS ${cf_ld_rpath_opt}$libdir" AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) LIBS="$cf_save_LIBS" AC_MSG_RESULT($cf_rpath_space) - test $cf_rpath_space = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt " + test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt " MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)" fi @@ -1858,8 +2059,8 @@ dnl Check for definitions & structures needed for window size-changing dnl FIXME: check that this works with "snake" (HP-UX 10.x) AC_DEFUN([CF_SIZECHANGE], [ -AC_MSG_CHECKING([declaration of size-change]) -AC_CACHE_VAL(cf_cv_sizechange,[ +AC_REQUIRE([CF_STRUCT_TERMIOS]) +AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[ cf_cv_sizechange=unknown cf_save_CFLAGS="$CFLAGS" @@ -1869,14 +2070,14 @@ do CFLAGS="$cf_save_CFLAGS" test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts" AC_TRY_COMPILE([#include -#if HAVE_TERMIOS_H +#ifdef HAVE_TERMIOS_H #include #else -#if HAVE_TERMIO_H +#ifdef HAVE_TERMIO_H #include #endif #endif -#if NEED_PTEM_H +#ifdef NEED_PTEM_H /* This is a workaround for SCO: they neglected to define struct winsize in * termios.h -- it's only in termio.h and ptem.h */ @@ -1907,36 +2108,18 @@ do CFLAGS="$cf_save_CFLAGS" if test "$cf_cv_sizechange" = yes ; then echo "size-change succeeded ($cf_opts)" >&AC_FD_CC - test -n "$cf_opts" && AC_DEFINE_UNQUOTED($cf_opts) + test -n "$cf_opts" && cf_cv_sizechange="$cf_opts" break fi done - ]) -AC_MSG_RESULT($cf_cv_sizechange) -test $cf_cv_sizechange != no && AC_DEFINE(HAVE_SIZECHANGE) -])dnl -dnl --------------------------------------------------------------------------- -dnl Check for datatype 'speed_t', which is normally declared via either -dnl sys/types.h or termios.h -AC_DEFUN([CF_SPEED_TYPE], -[ -AC_MSG_CHECKING(for speed_t) -OSPEED_INCLUDES= -AC_TRY_COMPILE([#include ], - [speed_t some_variable = 0], - [OSPEED_TYPE=speed_t], - [OSPEED_TYPE=unsigned]) -AC_TRY_COMPILE([#include ], - [speed_t some_variable = 0], - [OSPEED_TYPE=speed_t - OSPEED_INCLUDES="#include "],[]) -AC_SUBST(OSPEED_TYPE) -AC_SUBST(OSPEED_INCLUDES) -if test "$OSPEED_TYPE" = "unsigned" ; then - AC_MSG_RESULT(no) - AC_DEFINE(speed_t,unsigned) -else - AC_MSG_RESULT(yes) +]) +if test "$cf_cv_sizechange" != no ; then + AC_DEFINE(HAVE_SIZECHANGE) + case $cf_cv_sizechange in #(vi + NEED*) + AC_DEFINE_UNQUOTED($cf_cv_sizechange ) + ;; + esac fi ])dnl dnl --------------------------------------------------------------------------- @@ -1952,7 +2135,11 @@ AC_MSG_CHECKING(for src modules) # dependencies and linker-arguments for test-programs TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${LIB_NAME}${DFT_DEP_SUFFIX} $TEST_DEPS" -TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" +if test "$DFT_LWR_MODEL" = "libtool"; then + TEST_ARGS="${TEST_DEPS}" +else + TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" +fi # dependencies and linker-arguments for utility-programs PROG_ARGS="$TEST_ARGS" @@ -1987,7 +2174,11 @@ do AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H) AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include}) TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS" - TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" + if test "$DFT_LWR_MODEL" = "libtool"; then + TEST_ARGS="${TEST_DEPS}" + else + TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" + fi fi fi done @@ -2005,7 +2196,7 @@ do SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir" done SRC_SUBDIRS="$SRC_SUBDIRS misc test" -test $cf_with_cxx_binding != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" +test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" ADA_SUBDIRS= if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then @@ -2052,7 +2243,7 @@ strstreambuf foo(buf, sizeof(buf)) [cf_cv_libstdcpp=no]) LIBS="$cf_save" ]) -test $cf_cv_libstdcpp = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname" +test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname" fi ])dnl dnl --------------------------------------------------------------------------- @@ -2065,7 +2256,7 @@ dnl do this if we've found the sigaction function. dnl dnl If needed, define SVR4_ACTION. AC_DEFUN([CF_STRUCT_SIGACTION],[ -if test $ac_cv_func_sigaction = yes; then +if test "$ac_cv_func_sigaction" = yes; then AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE) AC_TRY_COMPILE([ #include @@ -2088,13 +2279,21 @@ dnl --------------------------------------------------------------------------- dnl Some machines require _POSIX_SOURCE to completely define struct termios. dnl If so, define SVR4_TERMIO AC_DEFUN([CF_STRUCT_TERMIOS],[ -if test $ac_cv_header_termios_h = yes ; then +AC_CHECK_HEADERS( \ +termio.h \ +termios.h \ +unistd.h \ +) +if test "$ISC" = yes ; then + AC_CHECK_HEADERS( sys/termio.h ) +fi +if test "$ac_cv_header_termios_h" = yes ; then case "$CFLAGS" in *-D_POSIX_SOURCE*) termios_bad=dunno ;; *) termios_bad=maybe ;; esac - if test $termios_bad = maybe ; then + if test "$termios_bad" = maybe ; then AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE) AC_TRY_COMPILE([#include ], [struct termios foo; int x = foo.c_iflag], @@ -2159,17 +2358,17 @@ AC_MSG_CHECKING(if sys/time.h works with sys/select.h) AC_CACHE_VAL(cf_cv_sys_time_select,[ AC_TRY_COMPILE([ #include -#if HAVE_SYS_TIME_H +#ifdef HAVE_SYS_TIME_H #include #endif -#if HAVE_SYS_SELECT_H +#ifdef HAVE_SYS_SELECT_H #include #endif ],[],[cf_cv_sys_time_select=yes], [cf_cv_sys_time_select=no]) ]) AC_MSG_RESULT($cf_cv_sys_time_select) -test $cf_cv_sys_time_select = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) +test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) ])dnl dnl --------------------------------------------------------------------------- dnl Determine the type we should use for chtype (and attr_t, which is treated @@ -2182,7 +2381,7 @@ AC_REQUIRE([CF_UNSIGNED_LITERALS]) AC_MSG_CHECKING([for type of chtype]) AC_CACHE_VAL(cf_cv_typeof_chtype,[ AC_TRY_RUN([ -#if USE_WIDEC_SUPPORT +#ifdef USE_WIDEC_SUPPORT #include /* we want wchar_t */ #define WANT_BITS 39 #else @@ -2194,7 +2393,7 @@ int main() FILE *fp = fopen("cf_test.out", "w"); if (fp != 0) { char *result = "long"; -#if USE_WIDEC_SUPPORT +#ifdef USE_WIDEC_SUPPORT /* * If wchar_t is smaller than a long, it must be an int or a * short. We prefer not to use a short anyway. @@ -2252,7 +2451,7 @@ AC_CACHE_VAL(cf_cv_type_sigaction,[ [cf_cv_type_sigaction=yes], [cf_cv_type_sigaction=no])]) AC_MSG_RESULT($cf_cv_type_sigaction) -test $cf_cv_type_sigaction = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) +test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) ])dnl dnl --------------------------------------------------------------------------- dnl Test if the compiler supports 'U' and 'L' suffixes. Only old compilers @@ -2273,7 +2472,7 @@ dnl $1=uppercase($2) AC_DEFUN([CF_UPPER], [ changequote(,)dnl -$1=`echo $2 | tr '[a-z]' '[A-Z]'` +$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` changequote([,])dnl ])dnl dnl ---------------------------------------------------------------------------