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>