$NetBSD: patch-ab,v 1.27 2024/06/18 12:49:22 markd Exp $ Port the configure script to C99. Add missing header files, avoid calling the undeclared exit function, and add missing return types main. This improves compatibility with compilers which do not accept language features that were removed from C99. --- dist/configure.orig 2010-04-12 20:25:23.000000000 +0000 +++ dist/configure @@ -4523,11 +4523,12 @@ bsdi3*) CC=${CC-"shlicc2"} LIBSO_LIBS="$LIBSO_LIBS -lipc";; cygwin*) CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE -D_REENTRANT";; -freebsd*) +freebsd*|dragonfly*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" LDFLAGS="$LDFLAGS -pthread";; gnu*|k*bsd*-gnu|linux*) CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE -D_REENTRANT";; +haiku*) LIBSO_LIBS="$LIBSO_LIBS -lnetwork";; hpux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT";; irix*) optimize_debug="-O2" CPPFLAGS="$CPPFLAGS -D_SGI_MP_SOURCE";; @@ -6282,7 +6283,7 @@ fi # we're using. case "$host_os" in sysv5UnixWare*|sysv5OpenUNIX8*) - if test "$GCC" == "yes"; then + if test "$GCC" = "yes"; then CPPFLAGS="$CPPFLAGS -pthread" LDFLAGS="$LDFLAGS -pthread" else @@ -7343,6 +7344,10 @@ gnu*) lt_cv_deplibs_check_method=pass_all ;; +haiku*) + lt_cv_deplibs_check_method=pass_all + ;; + hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in @@ -10131,6 +10136,12 @@ $as_echo_n "checking for $compiler optio lt_prog_compiler_pic='-fno-common' ;; + haiku*) + # PIC is the default for Haiku + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; + hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag @@ -11202,7 +11213,7 @@ if test -z "$aix_libpath"; then aix_libp hardcode_shlibpath_var=no ;; - freebsd1*) + freebsd1|freebsd1.*) ld_shlibs=no ;; @@ -11977,6 +11988,19 @@ beos*) shlibpath_var=LIBRARY_PATH ;; +haiku*) + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libame}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/system/lib' + hardcode_into_libs=yes + shlibpath_var=LIBRARY_PATH + ;; + bsdi[45]*) version_type=linux need_version=no @@ -12077,7 +12101,7 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) +freebsd1|freebsd1.*) dynamic_linker=no ;; @@ -12088,7 +12112,7 @@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[123].freebsd[123].*) objformat=aout ;; *) objformat=elf ;; esac fi @@ -13772,7 +13796,7 @@ if test -z "$aix_libpath"; then aix_libp esac ;; - freebsd[12]*) + freebsd[12]|freebsd[12].*) # C++ shared libraries reported to be fairly broken before # switch to ELF ld_shlibs_CXX=no @@ -14666,6 +14690,11 @@ $as_echo_n "checking for $compiler optio # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic_CXX='-fno-common' ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; *djgpp*) # DJGPP does not support shared libraries at all lt_prog_compiler_pic_CXX= @@ -15530,7 +15559,7 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) +freebsd1|freebsd1.*) dynamic_linker=no ;; @@ -15541,7 +15570,7 @@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[123]|freebsd[123].*) objformat=aout ;; *) objformat=elf ;; esac fi @@ -15588,6 +15617,19 @@ gnu*) hardcode_into_libs=yes ;; +haiku*) + version_type=linux + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libame}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/system/lib' + hardcode_into_libs=yes + shlibpath_var=LIBRARY_PATH + ;; + hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. @@ -16161,7 +16203,7 @@ LIBTOOL="./libtool" INSTALLER="\$(LIBTOOL) --mode=install cp -p" MAKEFILE_CC="\$(LIBTOOL) --mode=compile ${MAKEFILE_CC}" -MAKEFILE_SOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK} -avoid-version" +MAKEFILE_SOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK}" MAKEFILE_CCLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK}" MAKEFILE_CXX="\$(LIBTOOL) --mode=compile ${MAKEFILE_CXX}" MAKEFILE_XSOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CXXLINK} -avoid-version" @@ -16890,7 +16932,7 @@ if test "$_JTOPDIR" != "/usr"; then aix*) _JNI_INC_SUBDIRS="aix";; bsdi*) _JNI_INC_SUBDIRS="bsdos";; cygwin*) _JNI_INC_SUBDIRS="win32";; - freebsd*) _JNI_INC_SUBDIRS="freebsd";; + freebsd*|dragonfly*) _JNI_INC_SUBDIRS="freebsd";; hp*) _JNI_INC_SUBDIRS="hp-ux";; linux*) _JNI_INC_SUBDIRS="linux genunix";; osf*) _JNI_INC_SUBDIRS="alpha";; @@ -18755,6 +18797,7 @@ if test "$cross_compiling" = yes; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include int main () @@ -18791,8 +18834,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include -main() { +int main() { pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -18827,6 +18871,7 @@ if test "$cross_compiling" = yes; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include int main () @@ -18863,8 +18908,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include -main() { +int main() { pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -18898,6 +18944,7 @@ if test "$cross_compiling" = yes; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include int main () @@ -18932,8 +18979,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include -main() { +int main() { pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -18966,6 +19014,7 @@ if test "$cross_compiling" = yes; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include int main () @@ -19000,8 +19049,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include -main() { +int main() { pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -19037,6 +19087,7 @@ fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include int main () @@ -19067,6 +19118,7 @@ rm -f core conftest.err conftest.$ac_obj cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include #include int @@ -19097,6 +19149,7 @@ rm -f core conftest.err conftest.$ac_obj cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include #include int @@ -19141,7 +19194,7 @@ main () { #if (defined(i386) || defined(__i386__)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19164,7 +19217,7 @@ main () { #if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19216,7 +19269,7 @@ main () #if defined(__sparc__) && defined(__GNUC__) asm volatile ("membar #StoreStore|#StoreLoad|#LoadStore"); - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19287,7 +19340,7 @@ main () msem_init(&x, 0); msem_lock(&x, 0); msem_unlock(&x, 0); - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19319,7 +19372,7 @@ main () msem_init(&x, 0); msem_lock(&x, 0); msem_unlock(&x, 0); - exit(0); + return 0; ; return 0; @@ -19371,7 +19424,7 @@ main () { #if defined(__USLC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19502,7 +19555,7 @@ main () { #if defined(__alpha) && defined(__DECC) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19527,7 +19580,7 @@ main () { #if defined(__alpha) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19552,7 +19605,7 @@ main () { #if defined(__arm__) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19567,6 +19620,31 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +# AARCH64/gcc: Linux +if test "$db_cv_mutex" = no; then +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + +#if defined(__aarch64__) && defined(__GNUC__) + return 0; +#else + FAIL TO COMPILE/LINK +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + db_cv_mutex=AARCH64/gcc-assembly +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + # MIPS/gcc: Linux if test "$db_cv_mutex" = no; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -19577,7 +19655,7 @@ main () { #if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19602,7 +19680,7 @@ main () { #if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19627,7 +19705,7 @@ main () { #if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19652,7 +19730,7 @@ main () { #if (defined(mc68020) || defined(sun3)) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19677,7 +19755,7 @@ main () { #if defined(__MVS__) && defined(__IBMC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19702,7 +19780,7 @@ main () { #if defined(__s390__) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19727,7 +19805,7 @@ main () { #if defined(__ia64) && defined(__GNUC__) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19752,7 +19830,7 @@ main () { #if defined(_UTS) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -19862,6 +19940,10 @@ ARM/gcc-assembly) ADDITIONAL_OBJS="mut_t $as_echo "#define HAVE_MUTEX_ARM_GCC_ASSEMBLY 1" >>confdefs.h ;; +AARCH64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + $as_echo "#define HAVE_MUTEX_AARCH64_GCC_ASSEMBLY 1" >>confdefs.h + + ;; HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" $as_echo "#define HAVE_MUTEX_HPPA_MSEM_INIT 1" >>confdefs.h @@ -20203,9 +20285,9 @@ main () { #if ((defined(i386) || defined(__i386__)) && defined(__GNUC__)) - exit(0); + return 0; #elif ((defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__)) - exit(0); + return 0; #else FAIL TO COMPILE/LINK #endif @@ -20720,6 +20802,7 @@ if test "$cross_compiling" = yes; then : /* end confdefs.h. */ #include +#include int main () { @@ -20743,7 +20826,8 @@ else /* end confdefs.h. */ #include -main() { +#include +int main() { struct timespec t; return (clock_gettime(CLOCK_MONOTONIC, &t) != 0); } @@ -21600,6 +21684,8 @@ $as_echo_n "checking for 64-bit integral cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include +#include int main () { @@ -21634,7 +21720,9 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - main() { + #include + #include + int main() { $db_cv_seq_type l; unsigned $db_cv_seq_type u; char buf[100];