aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac17
-rw-r--r--lib/Makefile.am10
2 files changed, 23 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac
index b6d27d18b..1af433377 100644
--- a/configure.ac
+++ b/configure.ac
@@ -66,6 +66,7 @@ AC_LIBTOOL_WIN32_DLL
dnl libtool setup
AM_PROG_LIBTOOL
+AC_MSG_CHECKING([if we need -no-undefined])
case $host in
*-*-cygwin | *-*-mingw* | *-*-pw32*)
need_no_undefined=yes
@@ -74,9 +75,23 @@ case $host in
need_no_undefined=no
;;
esac
-
+AC_MSG_RESULT($need_no_undefined)
AM_CONDITIONAL(NO_UNDEFINED, test x$need_no_undefined = xyes)
+AC_MSG_CHECKING([if we need -mimpure-text])
+case $host in
+ *-*-solaris2*)
+ if test "$GCC" = "yes"; then
+ mimpure="yes"
+ fi
+ ;;
+ *)
+ mimpure=no
+ ;;
+esac
+AC_MSG_RESULT($mimpure)
+AM_CONDITIONAL(MIMPURE, test x$mimpure = xyes)
+
dnl The install stuff has already been taken care of by the automake stuff
dnl AC_PROG_INSTALL
AC_PROG_MAKE_SET
diff --git a/lib/Makefile.am b/lib/Makefile.am
index e09e921a5..0c3d8a24a 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -54,15 +54,19 @@ VERSION=-version-info 2:2:0
if NO_UNDEFINED
# The -no-undefined flag is CRUCIAL for this to build fine on Cygwin.
UNDEF = -no-undefined
-else
-UNDEF =
+endif
+
+if MIMPURE
+# This is for gcc on Solaris (8+ ?) to avoid "relocations remain against
+# allocatable but non-writable sections" problems.
+MIMPURE = -mimpure-text
endif
if ARES
ARESLIB = -lares -L$(top_builddir)/ares
endif
-libcurl_la_LDFLAGS = $(UNDEF) $(VERSION) $(ARESLIB)
+libcurl_la_LDFLAGS = $(UNDEF) $(VERSION) $(ARESLIB) $(MIMPURE)
libcurl_la_SOURCES = arpa_telnet.h file.c netrc.h timeval.c \
base64.c file.h hostip.c progress.c timeval.h base64.h formdata.c \