Based on David Hull's fix in bug report 804599, we now check for solaris
authorDaniel Stenberg <daniel@haxx.se>
Fri, 24 Oct 2003 21:26:04 +0000 (21:26 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 24 Oct 2003 21:26:04 +0000 (21:26 +0000)
and gcc, to set the -mimpure-text link flag for linking the lib better.

configure.ac
lib/Makefile.am

index b6d27d1..1af4333 100644 (file)
@@ -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
index e09e921..0c3d8a2 100644 (file)
@@ -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      \