# Makefile for ModSecurity MOD_SECURITY2 = mod_security2 apache2_config apache2_io apache2_util \ re re_operators re_actions re_tfns re_variables \ msc_logging msc_xml msc_multipart modsecurity msc_parsers msc_util msc_pcre \ persist_dbm msc_reqbody pdf_protect msc_geo acmp msc_lua MOD_SECURITY2_H = re.h modsecurity.h msc_logging.h msc_multipart.h msc_parsers.h \ msc_pcre.h msc_util.h msc_xml.h persist_dbm.h apache2.h pdf_protect.h \ msc_geo.h acmp.h utf8tables.h msc_lua.h CC = @CC@ PERL = @PERL@ EXTRA_CFLAGS = @EXTRA_CFLAGS@ MODSEC_EXTRA_CFLAGS = @MODSEC_EXTRA_CFLAGS@ ### Note: must be in APXS format: -Wc,-flag APXS_EXTRA_CFLAGS = @APXS_EXTRA_CFLAGS@ MODSEC_APXS_EXTRA_CFLAGS = @MODSEC_APXS_EXTRA_CFLAGS@ APXS = @APXS@ APXS_INCLUDES = @APXS_INCLUDES@ APXS_CFLAGS = @APXS_CFLAGS@ APXS_LDFLAGS = @APXS_LDFLAGS@ APXS_LIBS = @APXS_LIBS@ PCRE_CFLAGS = @PCRE_CFLAGS@ PCRE_LIBS = @PCRE_LIBS@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ LIBXML_CFLAGS = @LIBXML_CFLAGS@ LIBXML_LIBS = @LIBXML_LIBS@ APR_CFLAGS = @APR_CFLAGS@ APR_LDFLAGS = @APR_LDFLAGS@ APR_LIBS = @APR_LIBS@ APR_LINK_LD = @APR_LINK_LD@ APU_CFLAGS = @APU_CFLAGS@ APU_LDFLAGS = @APU_LDFLAGS@ APU_LIBS = @APU_LIBS@ APU_LINK_LD = @APU_LINK_LD@ CPPFLAGS=$(PCRE_CFLAGS) $(LIBXML_CFLAGS) $(LUA_CFLAGS) LIBS=$(PCRE_LIBS) $(LIBXML_LIBS) $(LUA_LIBS) LDFLAGS= COMPILE_APACHE_MOD = $(APXS) -c $(CPPFLAGS) $(LDFLAGS) $(LIBS) INSTALL_MOD_SHARED = $(APXS) -i all: mod_security2.la install: install-mods clean-extras: @for dir in mlogc-src; do \ test -e $$dir && $(MAKE) -C $$dir clean; \ done; \ rm -rf mlogc mlogc-static clean: clean-extras @rm -rf *.la *.lo *.o *.slo .libs msc_test maintainer-clean: clean @rm -rf Makefile mlogc-src/Makefile t/run-tests.pl config config.log config.status configure mod_security2_config.h dist-clean: maintainer-clean install-mods: mod_security2.la $(INSTALL_MOD_SHARED) mod_security2.la ${MOD_SECURITY2:=.slo}: $(MOD_SECURITY2_H) ${MOD_SECURITY2:=.lo}: $(MOD_SECURITY2_H) ${MOD_SECURITY2:=.o}: $(MOD_SECURITY2_H}) mod_security2.la: $(MOD_SECURITY2_H) *.c @src=""; \ for f in $(MOD_SECURITY2); do \ src="$$src $$f.c"; \ done; \ $(COMPILE_APACHE_MOD) $(APXS_EXTRA_CFLAGS) $(MODSEC_APXS_EXTRA_CFLAGS) $$src ### Experimental Test Framework (UNIX only right now) TESTOBJS = re.o re_operators.o re_actions.o re_tfns.o re_variables.o \ msc_logging.o msc_xml.o msc_multipart.o modsecurity.o \ msc_parsers.o msc_util.o msc_pcre.o persist_dbm.o \ msc_reqbody.o msc_geo.o acmp.o msc_lua.o msc_test: mod_security2.la msc_test.c @$(CC) $(CPPFLAGS) $(LDFLAGS) $(APXS_INCLUDES) $(EXTRA_CFLAGS) $(MODSEC_EXTRA_CFLAGS) $(APR_CFLAGS) $(APU_CFLAGS) -o msc_test $(TESTOBJS) msc_test.c $(LIBS) $(APR_LIBS) $(APU_LIBS) $(APXS_LIBS) $(APR_LINK_LD) $(APU_LINK_LD) test: t/run-tests.pl msc_test @$(PERL) t/run-tests.pl mlogc: @$(MAKE) -C mlogc-src mlogc \ && cp -p mlogc-src/mlogc . \ && echo "mlogc-src/INSTALL" \ && echo mlogc-static: @$(MAKE) -C mlogc-src static \ && cp -p mlogc-src/mlogc mlogc-static \ && echo "mlogc-src/INSTALL" \ && echo