Annotation of embedaddon/php/sapi/apache/apMakefile.tmpl, revision 1.1

1.1     ! misho       1: ##
        !             2: ##  Apache 1.3 Makefile template for PHP 5.0 Module
        !             3: ##  [src/modules/php5/Makefile.tmpl]
        !             4: ##
        !             5: 
        !             6: #   the parametrized target
        !             7: LIB=libphp5.$(LIBEXT)
        !             8: 
        !             9: #   objects for building the static library
        !            10: OBJS=mod_php5.o
        !            11: OBJS_LIB=libmodphp5.a
        !            12: 
        !            13: #   objects for building the shared object library
        !            14: SHLIB_OBJS=mod_php5.so-o
        !            15: SHLIB_OBJS_LIB=libmodphp5.a
        !            16: 
        !            17: #   the general targets
        !            18: all: lib
        !            19: lib: $(LIB)
        !            20: 
        !            21: #   build the static library by merging the object files
        !            22: libphp5.a: $(OBJS) $(OBJS_LIB)
        !            23:        cp $(OBJS_LIB) $@
        !            24:        ar r $@ $(OBJS)
        !            25:        $(RANLIB) $@
        !            26: 
        !            27: #   ugly hack to support older Apache-1.3 betas that don't set $LIBEXT
        !            28: libphp5.: $(OBJS) $(OBJS_LIB)
        !            29:        cp $(OBJS_LIB) $@
        !            30:        ar r $@ $(OBJS)
        !            31:        $(RANLIB) $@
        !            32:        cp libphp5. libphp5.a
        !            33: 
        !            34: #   build the shared object library by linking the object files
        !            35: libphp5.so: $(SHLIB_OBJS) $(SHLIB_OBJS_LIB)
        !            36:        rm -f $@
        !            37:        $(LD_SHLIB) $(LDFLAGS_SHLIB) -o $@ $(SHLIB_OBJS) $(SHLIB_OBJS_LIB) $(LIBS) $(PHP_LIBS) 
        !            38: 
        !            39: # 1. extension .o for shared objects cannot be used here because
        !            40: #    first these files aren't still shared objects and second we
        !            41: #    have to use a different name to trigger the different
        !            42: #    implicit Make rule
        !            43: # 2. extension -so.o (as used elsewhere) cannot be used because
        !            44: #    the suffix feature of Make really wants just .x, so we use
        !            45: #    extension .so-o
        !            46: .SUFFIXES: .o .so-o
        !            47: .c.o:
        !            48:        $(CC) -c $(INCLUDES) $(CFLAGS) $(PHP_CFLAGS) $(CPPFLAGS) $(SPACER) $<
        !            49: .c.so-o:
        !            50:        $(CC) -c $(INCLUDES) $(CFLAGS) $(CFLAGS_SHLIB) $(PHP_CFLAGS) $(CPPFLAGS) $(SPACER) $< && mv $*.o $*.so-o
        !            51: 
        !            52: #   cleanup
        !            53: clean:
        !            54:        -rm -f $(OBJS) $(SHLIB_OBJS) $(LIB)
        !            55: 
        !            56: # We really don't expect end users to use this rule.  It works only with
        !            57: # gcc, and rebuilds Makefile.tmpl.  You have to re-run Configure after
        !            58: # using it.
        !            59: depend:
        !            60:        cp Makefile.tmpl Makefile.tmpl.bak \
        !            61:            && sed -ne '1,/^# DO NOT REMOVE/p' Makefile.tmpl > Makefile.new \
        !            62:            && gcc -MM $(INCLUDES) $(CFLAGS) $(PHP_CFLAGS) $(CPPFLAGS) *.c >> Makefile.new \
        !            63:            && sed -e '1,$$s: $(INCDIR)/: $$(INCDIR)/:g' Makefile.new \
        !            64:                > Makefile.tmpl \
        !            65:            && rm Makefile.new
        !            66: 
        !            67: #Dependencies
        !            68: 
        !            69: $(OBJS): Makefile
        !            70: 
        !            71: # DO NOT REMOVE
        !            72: mod_php5.o: mod_php5.c $(INCDIR)/httpd.h $(INCDIR)/conf.h \
        !            73:  $(INCDIR)/buff.h \
        !            74:  $(INCDIR)/http_config.h \
        !            75:  $(INCDIR)/http_core.h $(INCDIR)/http_main.h \
        !            76:  $(INCDIR)/http_protocol.h $(INCDIR)/http_request.h \
        !            77:  $(INCDIR)/http_log.h $(INCDIR)/util_script.h mod_php5.h

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>