You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ra...@hyperreal.org on 1999/07/24 20:05:05 UTC
cvs commit: apache-1.3/src/support apxs.pl
rasmus 99/07/24 11:05:03
Modified: src Configure
src/support apxs.pl
Log:
This builds DSO's correctly on linux2 using gcc -shared instead of
ld -Bshareable. It also tweaks apxs to correctly pass -Wl args to
the linker in case the linker is gcc and not ld. Theoretically all
systems that use gcc should be using gcc -shared, but I have only tested
this on linux2 so far and therefore have only turned it on for this
platform. I will test other platforms as well, but could use some
help.
Revision Changes Path
1.362 +2 -1 apache-1.3/src/Configure
Index: Configure
===================================================================
RCS file: /home/cvs/apache-1.3/src/Configure,v
retrieving revision 1.361
retrieving revision 1.362
diff -u -r1.361 -r1.362
--- Configure 1999/07/22 17:41:47 1.361
+++ Configure 1999/07/24 18:05:01 1.362
@@ -957,8 +957,9 @@
LDFLAGS_SHLIB_EXPORT="-rdynamic"
;;
*-linux2)
+ LD_SHLIB="gcc"
CFLAGS_SHLIB="-fpic"
- LDFLAGS_SHLIB="-Bshareable"
+ LDFLAGS_SHLIB="-shared"
LDFLAGS_MOD_SHLIB=$LDFLAGS_SHLIB
LDFLAGS_SHLIB_EXPORT="-rdynamic"
SHLIB_SUFFIX_DEPTH=0
1.25 +5 -1 apache-1.3/src/support/apxs.pl
Index: apxs.pl
===================================================================
RCS file: /home/cvs/apache-1.3/src/support/apxs.pl,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- apxs.pl 1999/07/09 21:44:32 1.24
+++ apxs.pl 1999/07/24 18:05:02 1.25
@@ -382,7 +382,11 @@
$opt = '';
my ($opt_Wl, $opt_L, $opt_l);
foreach $opt_Wl (@opt_W) {
- $opt .= " $1" if ($opt_Wl =~ m|^\s*l,(.*)$|);
+ if($CFG_LD_SHLIB ne "gcc") {
+ $opt .= " $1" if ($opt_Wl =~ m|^\s*l,(.*)$|);
+ } else {
+ $opt .= " -W$opt_Wl";
+ }
}
foreach $opt_L (@opt_L) {
$opt .= " -L$opt_L";