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
  
  
  

Reply via email to