mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-15 09:23:44 +00:00
Fix two bugs in my previous fix for the `-lm' portability problem:
Estimated hours taken: 0.75 (about half of it by Tyson) configure.in: Fix two bugs in my previous fix for the `-lm' portability problem: - AC_CHECK_LIB should have been AC_HAVE_LIBRARY - SHARED_LIB needed to be valid as *both* Make and sh syntax. To fix this one, we've added a new variable SHARED_LIB_SH which has the sh-syntax version of it, while SHARED_LIB now has the Make-syntax version of it. scripts/ml.in: Use SHARED_LIB_SH rather than SHARED_LIB. bindist/bindist.build_vars.in: Pass on the value of SHARED_LIB_SH.
This commit is contained in:
@@ -31,6 +31,7 @@ EXT_FOR_PIC_OBJECTS="@EXT_FOR_PIC_OBJECTS@"
|
||||
EXT_FOR_SHARED_LIB="@EXT_FOR_SHARED_LIB@"
|
||||
CFLAGS_FOR_PIC="@CFLAGS_FOR_PIC@"
|
||||
SHARED_LIBS='@SHARED_LIBS@'
|
||||
SHARED_LIBS_SH='@SHARED_LIBS_SH@'
|
||||
HAVE_DELAY_SLOT="@HAVE_DELAY_SLOT@"
|
||||
DEFAULT_RM_C="@DEFAULT_RM_C@"
|
||||
ERROR_UNDEFINED="@ERROR_UNDEFINED@"
|
||||
|
||||
@@ -224,7 +224,7 @@ AC_C_CROSS
|
||||
AC_RETSIGTYPE
|
||||
#-----------------------------------------------------------------------------#
|
||||
# Check for `-lm': some systems, e.g. MacOS X (Darwin), don't have it.
|
||||
AC_CHECK_LIB(m,[MATH_LIB=-lm],[MATH_LIB=])
|
||||
AC_HAVE_LIBRARY(m,[MATH_LIB=-lm],[MATH_LIB=])
|
||||
AC_SUBST(MATH_LIB)
|
||||
#-----------------------------------------------------------------------------#
|
||||
AC_MSG_CHECKING(for use of a Microsoft compiler)
|
||||
@@ -2018,7 +2018,8 @@ AC_MSG_CHECKING(whether Mercury supports shared libraries on this system)
|
||||
# see Mmake.common.in for documentation on the meaning of these variables
|
||||
LINK_SHARED_OBJ="$CC -shared"
|
||||
LINK_SHARED_OBJ_SH="$CC -shared"
|
||||
SHARED_LIBS='`gcc -print-libgcc-file-name` $MATH_LIB -lc'
|
||||
SHARED_LIBS='`gcc -print-libgcc-file-name` $(MATH_LIB) -lc'
|
||||
SHARED_LIBS_SH='`gcc -print-libgcc-file-name` $MATH_LIB -lc'
|
||||
EXE_RPATH_OPT="-Wl,-rpath,"
|
||||
EXE_RPATH_SEP=" -Wl,-rpath,"
|
||||
SHLIB_RPATH_OPT="-Wl,-rpath,"
|
||||
@@ -2055,7 +2056,8 @@ case "$host" in
|
||||
;;
|
||||
sparc-sun-solaris2.*)
|
||||
AC_MSG_RESULT(yes)
|
||||
SHARED_LIBS="$MATH_LIB -lc" # don't link in libgcc.a
|
||||
SHARED_LIBS="$(MATH_LIB) -lc" # don't link in libgcc.a
|
||||
SHARED_LIBS_SH="$MATH_LIB -lc" # don't link in libgcc.a
|
||||
LINK_SHARED_OBJ="$CC -G"
|
||||
LINK_SHARED_OBJ_SH="$CC -G"
|
||||
ERROR_UNDEFINED="-Wl,-z,defs"
|
||||
@@ -2209,6 +2211,7 @@ AC_SUBST(EXT_FOR_SHARED_LIB)
|
||||
AC_SUBST(EXT_FOR_EXE)
|
||||
AC_SUBST(USE_DLLS)
|
||||
AC_SUBST(SHARED_LIBS)
|
||||
AC_SUBST(SHARED_LIBS_SH)
|
||||
AC_SUBST(DEFAULT_RM_C)
|
||||
AC_SUBST(LIBRARY_RM_C)
|
||||
if test $USE_DLLS = "yes"; then
|
||||
|
||||
@@ -31,9 +31,11 @@ EXT_FOR_SHARED_LIB=${MERCURY_EXT_FOR_SHARED_LIB="@EXT_FOR_SHARED_LIB@"}
|
||||
LINK_SHARED_OBJ=${MERCURY_LINK_SHARED_OBJ="@LINK_SHARED_OBJ_SH@"}
|
||||
SHLIB_RPATH_OPT=${MERCURY_SHLIB_RPATH_OPT="@SHLIB_RPATH_OPT@"}
|
||||
SHLIB_RPATH_SEP=${MERCURY_SHLIB_RPATH_SEP="@SHLIB_RPATH_SEP@"}
|
||||
SHARED_LIBS=${MERCURY_SHARED_LIBS="@SHARED_LIBS@"}
|
||||
TMPDIR=${TMPDIR=/tmp}
|
||||
MATH_LIB=${MERCURY_MATH_LIB="@MATH_LIB@"}
|
||||
# Note: the setting of SHARED_LIBS needs to come after the setting of MATH_LIB,
|
||||
# since @SHARED_LIBS_SH@ may refer to $MATH_LIB.
|
||||
SHARED_LIBS=${MERCURY_SHARED_LIBS="@SHARED_LIBS_SH@"}
|
||||
|
||||
# When compiling in the hlc.gc grade using the Microsoft Visual C
|
||||
# compiler, the default maximum stack size of 4Mb is too low for a
|
||||
|
||||
Reference in New Issue
Block a user