You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ws...@apache.org on 2001/11/26 09:07:17 UTC

cvs commit: apache-1.3/src Configure

wsanchez    01/11/26 00:07:17

  Modified:    src      Configure
  Log:
  Default to use -flat_namespace on Darwin expect for v1.3 and prior (including rhapsody).
  Submitted by:	Sander Temme
  Reviewed by:	Wilfredo Sanchez
  
  Revision  Changes    Path
  1.445     +3 -3      apache-1.3/src/Configure
  
  Index: Configure
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/Configure,v
  retrieving revision 1.444
  retrieving revision 1.445
  diff -u -r1.444 -r1.445
  --- Configure	2001/10/08 20:59:36	1.444
  +++ Configure	2001/11/26 08:07:17	1.445
  @@ -1163,11 +1163,11 @@
   	    LD_SHLIB="cc"
   	    CFLAGS_SHLIB=""
   	    case "$PLAT" in
  -		*-apple-darwin1.4 )
  -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'
  +		*-apple-rhapsody* | *-apple-darwin1.[0-3]* )
  +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
   		    ;;
   		* )
  -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
  +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'
   		    ;;
   	    esac
   	    LDFLAGS_MOD_SHLIB=$LDFLAGS_SHLIB
  
  
  

Re: cvs commit: apache-1.3/src Configure

Posted by Aaron Bannert <aa...@clove.org>.
On Mon, Nov 26, 2001 at 09:12:05AM -0800, Ian Holsman wrote:
> Is it possible to do this for 2.0 as well?

> On Mon, 2001-11-26 at 00:07, wsanchez@apache.org wrote:
[snip]
> >   -		*-apple-darwin1.4 )
> >   -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'
> >   +		*-apple-rhapsody* | *-apple-darwin1.[0-3]* )
> >   +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
> >    		    ;;
> >    		* )
> >   -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
> >   +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'

I was going to suggest something like the following, but AIUI we'll
have to also come up with a way to get libtool _not_ to include the
-flat_namespace param that it's implicitly passing to the compiler/linker.

-aaron


Index: configure.in
===================================================================
RCS file: /home/cvs/httpd-2.0/configure.in,v
retrieving revision 1.186
diff -u -u -r1.186 configure.in
--- configure.in	2001/11/22 20:29:11	1.186
+++ configure.in	2001/11/26 17:01:01
@@ -290,6 +290,10 @@
     *os390)
       HTTPD_LDFLAGS="$HTTPD_LDFLAGS --main=$abs_srcdir/server/main.o --core-dll=$abs_srcdir/apachecore.dll"
       SH_LDFLAGS="$SH_LDFLAGS --core-dll=$abs_srcdir/apachecore.dll"
+      ;;
+    *-apple-rhapsody* | *-apple-darwin1.[0-3]* )
+      SH_LDFLAGS="$SH_LDFLAGS -Wl,-bundle -Wl,-undefined\ suppress"
+      ;;
   esac
   shared_build="shared-build"
 fi

Re: cvs commit: apache-1.3/src Configure

Posted by Sander Temme <sc...@covalent.net>.
on 11/26/01 9:12 AM, Ian Holsman at ianh@cnet.com wrote:

> Is it possible to do this for 2.0 as well?

In 2.0, this is taken care of by GNU libtool. This is why Greg had a
separate 2.0.28 tarball for darwin: that one has libtool 1.4.2 which already
contains the patch but has issues on some other platforms.

Going forward, we can a) continue this practice until all platforms can use
a 1.4 version of libtool or b) backport darwin support to libtool 1.3.5 as
described on: 

<http://fink.sourceforge.net/doc/porting/libtool.php>.

This would have to be done on the box where the tarballs are rolled so that
contains the correct ltconf and ltmain.sh.

Folks working from the CVS tree need to hack the GNU libtool on their system
as Apple hasn't seen fit to update the libtool they ship. Here's what I use:

--- /usr/share/libtool/ltconfig.bak     Tue Oct  2 17:53:33 2001
+++ /usr/share/libtool/ltconfig Wed Oct 24 15:14:24 2001
@@ -1372,7 +1372,7 @@
     ;;
 
   darwin* | rhapsody*)
-    allow_undefined_flag='-undefined warning'
+    allow_undefined_flag='-undefined warning -flat_namespace'
     archive_cmds='$CC $(if test .$module = .yes; then echo -bundle; else
echo -dynamiclib; fi) $allow_undefined_flag -o $lib $libobjs $deplibs
$linkopts'
     #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols $lib'
     hardcode_direct=yes

(the archive_cmds assignment is a single line) and then re-run buildconf.

S.

-- 
Covalent Technologies                             sctemme@covalent.net
Engineering group                                Voice: (415) 536 5214
645 Howard St.                                     Fax: (415) 536 5210
San Francisco CA 94105

   PGP Fingerprint: 1E74 4E58 DFAC 2CF5 6A03  5531 AFB1 96AF B584 0AB1

=======================================================
This email message is for the sole use of the intended recipient(s) and may
contain confidential and privileged information. Any unauthorized review,
use, disclosure or distribution is prohibited.  If you are not the intended
recipient, please contact the sender by reply email and destroy all copies
of the original message
=======================================================


Re: cvs commit: apache-1.3/src Configure

Posted by Wilfredo Sánchez <ws...@MIT.EDU>.
On Monday, November 26, 2001, at 09:12  AM, Ian Holsman wrote:

> Is it possible to do this for 2.0 as well?

   2.0 uses libtool to get ld flags, and it looks like libtool 1.4.2 does 
this correctly.

	-Fred


Re: cvs commit: apache-1.3/src Configure

Posted by Ian Holsman <ia...@cnet.com>.
On Mon, 2001-11-26 at 00:07, wsanchez@apache.org wrote:
> wsanchez    01/11/26 00:07:17
> 
Is it possible to do this for 2.0 as well?
>   Modified:    src      Configure
>   Log:
>   Default to use -flat_namespace on Darwin expect for v1.3 and prior (including rhapsody).
>   Submitted by:	Sander Temme
>   Reviewed by:	Wilfredo Sanchez
>   
>   Revision  Changes    Path
>   1.445     +3 -3      apache-1.3/src/Configure
>   
>   Index: Configure
>   ===================================================================
>   RCS file: /home/cvs/apache-1.3/src/Configure,v
>   retrieving revision 1.444
>   retrieving revision 1.445
>   diff -u -r1.444 -r1.445
>   --- Configure	2001/10/08 20:59:36	1.444
>   +++ Configure	2001/11/26 08:07:17	1.445
>   @@ -1163,11 +1163,11 @@
>    	    LD_SHLIB="cc"
>    	    CFLAGS_SHLIB=""
>    	    case "$PLAT" in
>   -		*-apple-darwin1.4 )
>   -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'
>   +		*-apple-rhapsody* | *-apple-darwin1.[0-3]* )
>   +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
>    		    ;;
>    		* )
>   -		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress'
>   +		    LDFLAGS_SHLIB='$(EXTRA_LDFLAGS) -bundle -undefined suppress -flat_namespace'
>    		    ;;
>    	    esac
>    	    LDFLAGS_MOD_SHLIB=$LDFLAGS_SHLIB
>   
>   
>   
-- 
Ian Holsman          IanH@cnet.com
Performance Measurement & Analysis
CNET Networks   -   (415) 344-2608