rse 98/04/03 04:12:54
Modified: . STATUS
src CHANGES Configure
Log:
Add the fallback strategy for shared object support
Rasmus has suggested some time ago.
Revision Changes Path
1.256 +1 -0 apache-1.3/STATUS
Index: STATUS
===================================================================
RCS file: /export/home/cvs/apache-1.3/STATUS,v
retrieving revision 1.255
retrieving revision 1.256
diff -u -r1.255 -r1.256
--- STATUS 1998/04/03 07:59:27 1.255
+++ STATUS 1998/04/03 12:12:48 1.256
@@ -135,6 +135,7 @@
* Ralf's APACI --without-support option
* Martin's fix accept (and pass) http://user:[EMAIL PROTECTED] proxy
requests
* Martin's fix CONNECT proxy handling again
+ * Ralf's fallback strategy for DSO by trying to guess flags from Perl
Available Patches:
1.753 +8 -0 apache-1.3/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
retrieving revision 1.752
retrieving revision 1.753
diff -u -r1.752 -r1.753
--- CHANGES 1998/04/01 11:28:29 1.752
+++ CHANGES 1998/04/03 12:12:50 1.753
@@ -1,5 +1,13 @@
Changes with Apache 1.3b6
+ *) Now src/Configure uses a fallback strategy for the shared object support
+ on platforms where no explicit information is available: If a Perl
+ installation exists we ask it about its shared object support and if
it's
+ the dlopen-style one we shamelessly guess the compiler and linker flags
+ for creating shared objects from Perls knowledge. Of course, the user is
+ warning about what we are doing and informed that he should send us
+ the guessed flags when they work. [Ralf S. Engelschall]
+
*) Provide APACI --without-support option to be able to disable the build
and installation of the support tools from the src/support/ area.
Although its useful to have these installed per default we should
provide
1.224 +38 -6 apache-1.3/src/Configure
Index: Configure
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/Configure,v
retrieving revision 1.223
retrieving revision 1.224
diff -u -r1.223 -r1.224
--- Configure 1998/03/31 15:59:54 1.223
+++ Configure 1998/04/03 12:12:52 1.224
@@ -805,6 +805,36 @@
LDFLAGS_SHLIB="-Bdynamic -G"
LDFLAGS_SHLIB_EXPORT=""
;;
+ *)
+ ## ok, no known explict support for shared objects
+ ## on this platform, but we give not up immediately.
+ ## We take a second chance by guessing the compiler
+ ## and linker flags from the Perl installation
+ ## if it exists.
+ if [ ".`perl -V:dlsrc 2>/dev/null | grep dlopen`" != . ]; then
+ # cool, Perl is installed on this platform
+ # and actually uses the dlopen-style interface,
+ # so we can guess the flags from its knowledge
+ CFLAGS_SHLIB="`perl -V:cccdlflags | cut -d\' -f2`"
+ LDFLAGS_SHLIB="`perl -V:lddlflags | cut -d\' -f2`"
+ LDFLAGS_SHLIB_EXPORT="`perl -V:ccdlflags | cut -d\' -f2`"
+ # but additionally we have to inform the
+ # user that we are just guessing the flags
+ echo ""
+ echo "** WARNING: We have no explicit knowledge about shared
object"
+ echo "** support for your particular platform. But perhaps
you have"
+ echo "** luck: We were able to guess the compiler and linker
flags"
+ echo "** for creating shared objects from your Perl
installation."
+ echo "** If they actually work, please send the following
information"
+ echo "** for inclusion into later releases to [EMAIL
PROTECTED] or"
+ echo "** make a suggestion report at
http://bugs.apache.org/:"
+ echo "** PLATFORM=$PLAT"
+ echo "** CFLAGS_SHLIB=$CFLAGS_SHLIB"
+ echo "** LDFLAGS_SHLIB=$LDFLAGS_SHLIB"
+ echo "** LDFLAGS_SHLIB_EXPORT=$LDFLAGS_SHLIB_EXPORT"
+ echo ""
+ fi
+ ;;
esac
fi
@@ -815,12 +845,14 @@
if [ "x$using_shlib" = "x1" ] ; then
if [ "x$TCFLAGS_SHLIB" = x -a "x$CFLAGS_SHLIB" = x -a \
"x$TLDFLAGS_SHLIB" = x -a "x$LDFLAGS_SHLIB" = x ]; then
- echo "Sorry, no shared object support available."
- echo "Either compile all modules statically (use AddModule instead"
- echo "of SharedModule in the Configuration file) or at least provide"
- echo "us with the apropriate compiler and linker flags via the"
- echo "CFLAGS_SHLIB, LDFLAGS_SHLIB and LDFLAGS_SHLIB_EXPORT entries"
- echo "in the configuration file."
+ echo ""
+ echo "** FAILURE: Sorry, no shared object support available."
+ echo "** Either compile all modules statically (use AddModule
instead"
+ echo "** of SharedModule in the Configuration file) or at least
provide"
+ echo "** us with the apropriate compiler and linker flags via the"
+ echo "** CFLAGS_SHLIB, LDFLAGS_SHLIB and LDFLAGS_SHLIB_EXPORT
entries"
+ echo "** in the Configuration file."
+ echo ""
exit 1
fi
fi