# ========================================================================= # # # # The Apache Software License, Version 1.1 # # # # Copyright (c) 1999-2001 The Apache Software Foundation. # # All rights reserved. # # # # ========================================================================= # # # # Redistribution and use in source and binary forms, with or without modi- # # fication, are permitted provided that the following conditions are met: # # # # 1. Redistributions of source code must retain the above copyright notice # # notice, this list of conditions and the following disclaimer. # # # # 2. Redistributions in binary form must reproduce the above copyright # # notice, this list of conditions and the following disclaimer in the # # documentation and/or other materials provided with the distribution. # # # # 3. The end-user documentation included with the redistribution, if any, # # must include the following acknowlegement: # # # # "This product includes software developed by the Apache Software # # Foundation ." # # # # Alternately, this acknowlegement may appear in the software itself, if # # and wherever such third-party acknowlegements normally appear. # # # # 4. The names "The Jakarta Project", "WebApp", and "Apache Software # # Foundation" must not be used to endorse or promote products derived # # from this software without prior written permission. For written # # permission, please contact . # # # # 5. Products derived from this software may not be called "Apache" nor may # # "Apache" appear in their names without prior written permission of the # # Apache Software Foundation. # # # # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES # # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY # # AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL # # THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY # # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS # # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, # # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN # # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # # POSSIBILITY OF SUCH DAMAGE. # # # # ========================================================================= # # # # This software consists of voluntary contributions made by many indivi- # # duals on behalf of the Apache Software Foundation. For more information # # on the Apache Software Foundation, please see . # # # # ========================================================================= # # @author Pier Fumagalli # @version $Id$ include @TGT_DIR@/Makedefs # ========================================================================= # # Generic/global compilation targets # # ========================================================================= # all: build distclean: extra-clean rm -f $(MODULE)/Makefile rm -f lib/Makefile rm -f Makedefs rm -f Makefile rm -f DETAILS.txt rm -fr $(DST_DIR) build: $(OBJ_DIR) @EXTRA_BUILD@ lib-build $(MODULE)-build $(BLD_DIR)/DETAILS.txt @echo "" @cat $(BLD_DIR)/DETAILS.txt @echo "" @echo All done... extra-clean: @EXTRA_CLEAN@ clean clean: lib-clean $(MODULE)-clean rm -rf $(OBJ_DIR) # ========================================================================= # # Build the MODULE module, and copy the resulting file in the build dir. # # ========================================================================= # $(MODULE)-build: $(BLD_DIR) @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(TGT_DIR)/$(MODULE)" SUBT="build" subdir @$(INSTALL) $(TGT_DIR)/$(MODULE)/$(MODFILE) $(BLD_DIR) $(MODULE)-clean: @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(TGT_DIR)/$(MODULE)" SUBT="clean" subdir @rm -f $(BLD_DIR)/$(MODFILE) # ========================================================================= # # Build all WebApp library files # # ========================================================================= # lib-build: @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(TGT_DIR)/lib" SUBT="build" subdir lib-clean: @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(TGT_DIR)/lib" SUBT="clean" subdir # ========================================================================= # # Run ANT to generate all stuff it generates (jar,docs,javadocs) # # ========================================================================= # ant-build: $(ANT) -buildfile "$(SRC_DIR)/build.xml" init $(ANT_TARGETS) ant-clean: $(ANT) -buildfile "$(SRC_DIR)/build.xml" clean # ========================================================================= # # Run PERL to generate our C-API documentation with scandoc # # ========================================================================= # capi-build: $(API_DIR) $(PERL) "$(SRC_DIR)/support/scandoc.pl" \ -i "$(SRC_DIR)/support/template.pl" \ -p "$(API_DIR)/" \ $(SRC_DIR)/include/*.h capi-clean: @echo "Cleaning up generated C-API documentation" @rm -rf "$(API_DIR)/*" # ========================================================================= # # Call APR and generate the library when we are building for Apache 1.3 # # ========================================================================= # apr-build: $(LIB_DIR) @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(APR_DIR)" SUBT="all" subdir $(LIBTOOL) --mode=install \ cp $(APR_DIR)/$(APR_LIBNAME) $(LIB_DIR)/$(APR_LIBNAME) $(LIBTOOL) --mode=finish $(LIB_DIR) apr-clean: @$(MAKE) SUBF="$(MAKEFLAGS)" SUBD="$(APR_DIR)" SUBT="clean" subdir # ========================================================================= # # Invoke MAKE into a subdir (nicely notified by some messages) # # ========================================================================= # subdir: @echo "" @echo "$(MAKE)[$(MAKELEVEL)]: Entering directory \"$(SUBD)\"" @$(MAKE) -C "$(SUBD)" $(SUBF) "$(SUBT)" @echo "$(MAKE)[$(MAKELEVEL)]: Exiting directory \"$(SUBD)\"" # ========================================================================= # # Targets to build the directory structure (non-PHONY) # # ========================================================================= # $(LIB_DIR): $(BLD_DIR) @if test ! -d "$(LIB_DIR)" ; then mkdir $(LIB_DIR) ; fi $(OBJ_DIR): $(BLD_DIR) @if test ! -d "$(OBJ_DIR)" ; then mkdir $(OBJ_DIR) ; fi $(DOC_DIR): $(BLD_DIR) @if test ! -d "$(DOC_DIR)" ; then mkdir $(DOC_DIR) ; fi $(API_DIR): $(DOC_DIR) @if test ! -d "$(API_DIR)" ; then mkdir $(API_DIR) ; fi $(BLD_DIR): @if test ! -d "$(BLD_DIR)" ; then mkdir $(BLD_DIR) ; fi $(DST_DIR): @if test ! -d "$(DST_DIR)" ; then mkdir $(DST_DIR) ; fi # ========================================================================= # # Our compilation details file # # ========================================================================= # $(BLD_DIR)/DETAILS.txt: $(BLD_DIR) @echo "Storing build details" ; { \ echo "Coonfiguration details:" ; \ echo "" ; \ echo "module version: $(WEBAPP_VERSION)" ; \ echo "httpd version: $(APACHE_VERSION)" ; \ echo "host machine/os: $(HOST)" ; \ echo "cration date: $(DATE)" ; \ } > $@