X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=aclocal.m4;h=a19ee2cf54747a4ada72a2c32c19d331a34342a3;hp=338a35ec9f214247fb2ca4584f33a70fda4a0c7b;hb=18f51bcf99101e5bf4c737239c44064227f34db8;hpb=c55d387cebf1cee4757ca2c2ef4fbeae59ee4175 diff --git a/aclocal.m4 b/aclocal.m4 index 338a35ec..a19ee2cf 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,5 +1,6 @@ dnl*************************************************************************** -dnl Copyright (c) 1998-2019,2020 Free Software Foundation, Inc. * +dnl Copyright 2018-2019,2020 Thomas E. Dickey * +dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. * dnl * dnl Permission is hereby granted, free of charge, to any person obtaining a * dnl copy of this software and associated documentation files (the * @@ -28,7 +29,7 @@ dnl*************************************************************************** dnl dnl Author: Thomas E. Dickey 1995-on dnl -dnl $Id: aclocal.m4,v 1.893 2020/01/18 17:30:44 tom Exp $ +dnl $Id: aclocal.m4,v 1.897 2020/02/29 21:30:04 anonymous.maarten Exp $ dnl Macros used in NCURSES auto-configuration script. dnl dnl These macros are maintained separately from NCURSES. The copyright on @@ -1818,6 +1819,28 @@ if test "$cf_disable_rpath_hack" = no ; then fi ]) dnl --------------------------------------------------------------------------- +dnl CF_ENABLE_BROKEN_LINKER version: 1 updated: 2020/02/08 15:59:30 +dnl ----------------------- +dnl Some linkers cannot reference a data-only object. Cygwin used to be one. +dnl This usually follows CF_LINK_DATAONLY, but is not required in case we need +dnl an unconditional feature. +AC_DEFUN([CF_ENABLE_BROKEN_LINKER],[ + +AC_MSG_CHECKING(if you want broken-linker support code) +AC_ARG_ENABLE(broken_linker, + [ --enable-broken_linker compile with broken-linker support code], + [with_broken_linker=$enableval], + [with_broken_linker=no]) +AC_MSG_RESULT($with_broken_linker) + +: ${BROKEN_LINKER:=0} +if test "x$with_broken_linker" = xyes ; then + AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules]) + BROKEN_LINKER=1 +fi +AC_SUBST(BROKEN_LINKER) +])dnl +dnl --------------------------------------------------------------------------- dnl CF_ENABLE_PC_FILES version: 13 updated: 2015/11/01 05:27:39 dnl ------------------ dnl This is the "--enable-pc-files" option, which is available if there is a @@ -4695,7 +4718,7 @@ AC_DEFUN([CF_LIB_TYPE], test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" ])dnl dnl --------------------------------------------------------------------------- -dnl CF_LINK_DATAONLY version: 12 updated: 2017/07/23 17:46:07 +dnl CF_LINK_DATAONLY version: 13 updated: 2020/02/08 15:59:30 dnl ---------------- dnl Some systems have a non-ANSI linker that doesn't pull in modules that have dnl only data (i.e., no functions), for example NeXT. On those systems we'll @@ -4755,6 +4778,7 @@ if test "$cf_cv_link_dataonly" = no ; then AC_DEFINE(BROKEN_LINKER,1,[if data-only library module does not link]) BROKEN_LINKER=1 fi +AC_SUBST(BROKEN_LINKER) ])dnl dnl --------------------------------------------------------------------------- @@ -6509,7 +6533,7 @@ do done ])dnl dnl --------------------------------------------------------------------------- -dnl CF_SHARED_OPTS version: 93 updated: 2018/08/18 16:36:35 +dnl CF_SHARED_OPTS version: 94 updated: 2020/02/29 16:09:19 dnl -------------- dnl -------------- dnl Attempt to determine the appropriate CC/LD options for creating a shared @@ -6735,6 +6759,37 @@ CF_EOF CF_SHARED_SONAME MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]' ;; + (mingw*msvc*) + cf_cv_shlib_version=mingw + cf_cv_shlib_version_infix=mingw + shlibdir=$bindir + MAKE_DLLS= + if test "$DFT_LWR_MODEL" = "shared" ; then + LOCAL_LDFLAGS="-link -dll" + LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" + EXTRA_LDFLAGS="-link -dll $EXTRA_LDFLAGS" + fi + CC_SHARED_OPTS= + MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh $@ ${LD} ${CFLAGS}' + RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" + cat >mk_shared_lib.sh <<-CF_EOF + #!$SHELL + SHARED_LIB=\$1 + IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$\.dll.a/'\` + shift + my_ld=\$1 + shift + cat <<-EOF + Linking shared library + ** SHARED LIB \$SHARED_LIB + ** IMPORT_LIB \$IMPORT_LIB +EOF + args=\$(echo \$* | sed -E "s#-l(\w*)#lib\1.a#g" | sed -E "s#-L(\w*)#-LIBPATH:\1#g") + exec \$my_ld -DLL -IMPLIB:"\${IMPORT_LIB}" -OUT:"\${SHARED_LIB}" ${LDFLAGS} \$args + mv "\${IMPORT_LIB}" "\${IMPORT_LIB}" +CF_EOF + chmod +x mk_shared_lib.sh + ;; (mingw*) cf_cv_shlib_version=mingw cf_cv_shlib_version_infix=mingw @@ -8444,7 +8499,7 @@ AC_ARG_WITH($2-path, ]) ]) dnl --------------------------------------------------------------------------- -dnl CF_WITH_PCRE2 version: 2 updated: 2018/07/14 16:47:56 +dnl CF_WITH_PCRE2 version: 3 updated: 2020/02/29 16:09:19 dnl ------------- dnl Add PCRE2 (Perl-compatible regular expressions v2) to the build if it is dnl available and the user requests it. Assume the application will otherwise @@ -8482,7 +8537,7 @@ if test "x$with_pcre2" != xno ; then esac # either way, check for the library header files - AC_CHECK_HEADERS(pcre2-posix.h pcreposix.h) + AC_CHECK_HEADERS(pcre2posix.h pcreposix.h) fi ])dnl dnl ---------------------------------------------------------------------------