The attached patch will allow non hardcoded names for the shared
library, which is currently harcoded to
lib$(TARGET).$${SHLIB_SUFFIX_NAME} by adding a SHLIB_PREFIX_NAME and
resulting in a new
$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} value in the
Makefile templates.

This is mainly used for the Cygwin platform, which uses conventions to
use cygfoobar.dll names of shared system libraries instead of
libfoobar.dll, but other platforms may benefit from it too and it does
not break or change anything in the other platforms.

The changes against cvs tree of 2002-05-28 are:

  * Makfile.tmpl: substituting lib$(TARGET).$${SHLIB_SUFFIX_NAME} to
$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} and adding
another substitution regexp for Cygwin's .dll extensions of shared
libs.

  * src/Configure: added default SHLIB_PREFIX_NAME="lib" before
processing platform specific blocks. Changes Cygwin's define block to
use "cyg" prefix instead of "lib".

  * src/Makefile.tmpl: same substitutions as in upper directory.


Please review and apply to cvs head. Thanks.

Stipe

[EMAIL PROTECTED]
-------------------------------------------------------------------
Wapme Systems AG

M�nsterstr. 248
40470 D�sseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
-------------------------------------------------------------------
wapme.net - wherever you are
diff -ur apache-1.3/Makefile.tmpl apache-1.3-cygwin/Makefile.tmpl
--- apache-1.3/Makefile.tmpl    Wed Mar 13 20:05:27 2002
+++ apache-1.3-cygwin/Makefile.tmpl     Tue May 28 11:15:10 2002
@@ -304,19 +304,20 @@
                $(INSTALL_PROGRAM) $(TOP)/$(SRC)/$(TARGET) 
$(root)$(sbindir)/$(TARGET); \
        fi
        -@if [ ".`grep 'SUBTARGET=target_shared' $(TOP)/$(SRC)/Makefile`" != . ]; then 
\
+               SHLIB_PREFIX_NAME="`grep '^SHLIB_PREFIX_NAME=' $(TOP)/$(SRC)/Makefile 
+| sed -e 's:^.*=::'`"; \
                SHLIB_SUFFIX_NAME="`grep '^SHLIB_SUFFIX_NAME=' $(TOP)/$(SRC)/Makefile 
| sed -e 's:^.*=::'`"; \
                SHLIB_SUFFIX_LIST="`grep '^SHLIB_SUFFIX_LIST=' $(TOP)/$(SRC)/Makefile 
| sed -e 's:^.*=::'`"; \
-               echo "$(INSTALL_CORE) $(TOP)/$(SRC)/lib$(TARGET).ep 
$(root)$(libexecdir)/lib$(TARGET).ep"; \
-               $(INSTALL_CORE) $(TOP)/$(SRC)/lib$(TARGET).ep 
$(root)$(libexecdir)/lib$(TARGET).ep; \
-               echo "$(INSTALL_DSO) $(TOP)/$(SRC)/lib$(TARGET).$${SHLIB_SUFFIX_NAME} 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}"; \
-               $(INSTALL_DSO) $(TOP)/$(SRC)/lib$(TARGET).$${SHLIB_SUFFIX_NAME} 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}; \
+               echo "$(INSTALL_CORE) $(TOP)/$(SRC)/$${SHLIB_PREFIX_NAME}$(TARGET).ep 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).ep"; \
+               $(INSTALL_CORE) $(TOP)/$(SRC)/$${SHLIB_PREFIX_NAME}$(TARGET).ep 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).ep; \
+               echo "$(INSTALL_DSO) 
+$(TOP)/$(SRC)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}"; \
+               $(INSTALL_DSO) 
+$(TOP)/$(SRC)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}; \
                if [ ".$${SHLIB_SUFFIX_LIST}" != . ]; then \
-                       echo "$(RM) 
$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}.*"; \
-                       $(RM) $(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}.*; \
+                       echo "$(RM) 
+$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}.*"; \
+                       $(RM) 
+$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}.*; \
                        for suffix in $${SHLIB_SUFFIX_LIST} ""; do \
                                [ ".$${suffix}" = . ] && continue; \
-                               echo "$(LN) 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME} 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}.$${suffix}"; \
-                               $(LN) 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME} 
$(root)$(libexecdir)/lib$(TARGET).$${SHLIB_SUFFIX_NAME}.$${suffix}; \
+                               echo "$(LN) 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}.$${suffix}";
+ \
+                               $(LN) 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME} 
+$(root)$(libexecdir)/$${SHLIB_PREFIX_NAME}$(TARGET).$${SHLIB_SUFFIX_NAME}.$${suffix}; 
+\
                        done; \
                fi; \
        fi
@@ -341,7 +342,7 @@
                sed     -e 's:SharedModule:AddModule:' \
                        -e 's:modules/[^/]*/::' \
                        -e 's:[         ]lib: mod_:' \
-                       -e 's:\.[soam].*$$:.c:' >>$(SRC)/.apaci.install.conf; \
+                       -e 's:\.[soamd].*$$:.c:' >>$(SRC)/.apaci.install.conf; \
        fi
        @echo "<=== [programs]"
 
diff -ur apache-1.3/src/Configure apache-1.3-cygwin/src/Configure
--- apache-1.3/src/Configure    Mon May 13 08:13:06 2002
+++ apache-1.3-cygwin/src/Configure     Tue May 28 11:15:10 2002
@@ -254,6 +254,7 @@
 DB_LIB="-ldb"
 SHELL="/bin/sh"
 SUBTARGET="target_static"
+SHLIB_PREFIX_NAME="lib"
 SHLIB_SUFFIX_NAME=""
 SHLIB_SUFFIX_LIST=""
 CAT="cat"
@@ -1416,6 +1417,7 @@
            DEF_SHARED_CORE=yes
            LDFLAGS_SHLIB="--export-all"
            LDFLAGS_MOD_SHLIB=$LDFLAGS_SHLIB
+           SHLIB_PREFIX_NAME=cyg
            SHLIB_SUFFIX_NAME=dll
            SHMOD_SUFFIX_NAME=dll
            SHLIB_SUFFIX_DEPTH=0
@@ -1423,8 +1425,8 @@
            LD_SHCORE_DEF=''
            LD_SHCORE_LIBS="$LIBS"
            LIBS_SHLIB='$(EXTRA_LIBS)'
-           SHARED_CORE_EP='lib$(TARGET).ep'
-           SHCORE_IMPLIB='lib$(TARGET).dll'
+           SHARED_CORE_EP='$(SHLIB_PREFIX_NAME)$(TARGET).ep'
+           SHCORE_IMPLIB='$(SHLIB_PREFIX_NAME)$(TARGET).dll'
            OS_MODULE_INCLUDE='$(SRCDIR)/modules/standard/Makefile.Cygwin'
            ;;
        *)
@@ -1984,6 +1986,7 @@
     echo "LD_SHCORE_DEF=$LD_SHCORE_DEF" >> Makefile.config
     echo "LD_SHCORE_LIBS=$LD_SHCORE_LIBS" >> Makefile.config
     echo "SHARED_CORE_EP=$SHARED_CORE_EP" >> Makefile.config
+    echo "SHLIB_PREFIX_NAME=$SHLIB_PREFIX_NAME" >> Makefile.config
     echo "SHCORE_IMPLIB=$SHCORE_IMPLIB" >> Makefile.config
 fi
 
diff -ur apache-1.3/src/Makefile.tmpl apache-1.3-cygwin/src/Makefile.tmpl
--- apache-1.3/src/Makefile.tmpl        Mon May 13 08:13:06 2002
+++ apache-1.3-cygwin/src/Makefile.tmpl Tue May 28 11:15:10 2002
@@ -38,25 +38,25 @@
 target_compile_only: subdirs modules.o
        $(CC) -c $(INCLUDES) $(CFLAGS) buildmark.c
 
-target_shared: $(SHCORE_IMPLIB) $(SHARED_CORE_EP) lib$(TARGET).$(SHLIB_SUFFIX_NAME)
+target_shared: $(SHCORE_IMPLIB) $(SHARED_CORE_EP) 
+$(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME)
        $(CC) $(INCLUDES) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_SHLIB_EXPORT) \
              -o $(TARGET) -DSHARED_CORE_BOOTSTRAP main/http_main.c \
              ap/libap.a $(LIBS) $(SHCORE_IMPLIB)
 
-lib$(TARGET).ep: lib$(TARGET).$(SHLIB_SUFFIX_NAME)
+$(SHLIB_PREFIX_NAME)$(TARGET).ep: $(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME)
        $(CC) $(INCLUDES) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_SHLIB_EXPORT) \
-             -o lib$(TARGET).ep -DSHARED_CORE_TIESTATIC main/http_main.c \
+             -o $(SHLIB_PREFIX_NAME)$(TARGET).ep -DSHARED_CORE_TIESTATIC 
+main/http_main.c \
                  -L. -l$(TARGET) $(LIBS)
 
-lib$(TARGET).$(SHLIB_SUFFIX_NAME): subdirs modules.o
+$(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME): subdirs modules.o
        $(CC) -c $(INCLUDES) $(CFLAGS) buildmark.c
-       $(LD_SHLIB) $(LDFLAGS_SHLIB) -o lib$(TARGET).$(SHLIB_SUFFIX_NAME) buildmark.o 
$(OBJS) $(REGLIB) $(EXPATLIB) $(LD_SHCORE_DEF) $(LD_SHCORE_LIBS)
+       $(LD_SHLIB) $(LDFLAGS_SHLIB) -o 
+$(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME) buildmark.o $(OBJS) $(REGLIB) 
+$(EXPATLIB) $(LD_SHCORE_DEF) $(LD_SHCORE_LIBS)
        @if [ ".$(SHLIB_SUFFIX_LIST)" != . ]; then \
-               rm -f lib$(TARGET).$(SHLIB_SUFFIX_NAME).*; \
+               rm -f $(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME).*; \
                for suffix in $(SHLIB_SUFFIX_LIST) ""; do \
                        [ ".$$suffix" = . ] && continue; \
-                   echo "ln lib$(TARGET).$(SHLIB_SUFFIX_NAME) 
lib$(TARGET).$(SHLIB_SUFFIX_NAME).$$suffix"; \
-                   ln lib$(TARGET).$(SHLIB_SUFFIX_NAME) 
lib$(TARGET).$(SHLIB_SUFFIX_NAME).$$suffix; \
+                   echo "ln $(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME) 
+$(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME).$$suffix"; \
+                   ln $(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME) 
+$(SHLIB_PREFIX_NAME)$(TARGET).$(SHLIB_SUFFIX_NAME).$$suffix; \
                done; \
        fi
 
@@ -78,7 +78,7 @@
        echo "<=== $(SDP)support"
 
 clean:
-       -rm -f $(TARGET) lib$(TARGET).* *.o
+       -rm -f $(TARGET) $(SHLIB_PREFIX_NAME)$(TARGET).* *.o
        @for i in $(SUBDIRS); do \
                echo "===> $(SDP)$$i"; \
                ( cd $$i && $(MAKE) $(MFLAGS_STATIC) SDP='$(SDP)' OPTIM='$(OPTIM)' $@ 
) || exit 1; \
@@ -86,7 +86,7 @@
        done
 
 distclean:
-       -rm -f $(TARGET) lib$(TARGET).* *.o
+       -rm -f $(TARGET) $(SHLIB_PREFIX_NAME)$(TARGET).* *.o
        @for i in $(SUBDIRS); do \
                echo "===> $(SDP)$$i"; \
                ( cd $$i && $(MAKE) $(MFLAGS_STATIC) SDP='$(SDP)' $@ ) || exit 1; \

Reply via email to