|
Packit Service |
384592 |
###########################################################################
|
|
Packit Service |
384592 |
#
|
|
Packit Service |
384592 |
# Usage: NMAKE -f Makefile.win APACHE={httpd installion dir} PCRE={pcre dir} LIBXML2={LibXML2 dir} [ LUA={Lua dir} ]
|
|
Packit Service |
384592 |
#
|
|
Packit Service |
384592 |
!IF "$(APACHE)" == "" || "$(PCRE)" == "" || "$(LIBXML2)" == "" || "$(CURL)" == ""
|
|
Packit Service |
384592 |
!ERROR NMAKE arguments: APACHE=dir PCRE=dir LIBXML2=dir CURL=dir are required to build mod_security2 for Windows
|
|
Packit Service |
384592 |
!ENDIF
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# Linking libraries
|
|
Packit Service |
384592 |
LIBS = $(APACHE)\lib\libapr-1.lib \
|
|
Packit Service |
384592 |
$(APACHE)\lib\libaprutil-1.lib \
|
|
Packit Service |
384592 |
$(PCRE)\pcre.lib \
|
|
Packit Service |
384592 |
$(CURL)\libcurl.lib \
|
|
Packit Service |
384592 |
$(LIBXML2)\win32\bin.msvc\libxml2.lib \
|
|
Packit Service |
384592 |
"kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" \
|
|
Packit Service |
384592 |
"oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" "ws2_32.lib" \
|
|
Packit Service |
384592 |
"iphlpapi.lib"
|
|
Packit Service |
384592 |
# $(SSDEEP)\fuzzy.lib \
|
|
Packit Service |
384592 |
###########################################################################
|
|
Packit Service |
384592 |
###########################################################################
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
CC = CL
|
|
Packit Service |
384592 |
LINK = link.exe
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
MT = mt
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
DEFS = /nologo /O2 /LD /W3 /wd4244 /wd4018 -DWITH_YAJL -DWIN32 -DWINNT -Dinline=APR_INLINE -DAP_DECLARE_STATIC -D_MBCS -D$(VERSION)
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
DLL = ModSecurityIIS.dll
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
INCLUDES = -I. -I.. \
|
|
Packit Service |
384592 |
-I$(YAJL)\.. \
|
|
Packit Service |
384592 |
-I$(PCRE)\include -I$(PCRE) \
|
|
Packit Service |
384592 |
-I$(LIBXML2)\include \
|
|
Packit Service |
384592 |
-I$(CURL)\include -I$(CURL) \
|
|
Packit Service |
384592 |
-I$(APACHE)\include \
|
|
Packit Service |
384592 |
-I..\apache2 \
|
|
Packit Service |
384592 |
-I..\standalone
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# Enables support for SecRemoteRules and external resources.
|
|
Packit Service |
384592 |
DEFS=$(DEFS) -DWITH_CURL -DWITH_REMOTE_RULES
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# -I$(SSDEEP) \
|
|
Packit Service |
384592 |
# Lua is optional
|
|
Packit Service |
384592 |
!IF "$(LUA)" != ""
|
|
Packit Service |
384592 |
LIBS = $(LIBS) $(LUA)\lua5.1.lib
|
|
Packit Service |
384592 |
DEFS=$(DEFS) -DWITH_LUA
|
|
Packit Service |
384592 |
INCLUDES = $(INCLUDES) -I$(LUA)\include -I$(LUA) \
|
|
Packit Service |
384592 |
!ENDIF
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# Yajl/Json is optional
|
|
Packit Service |
384592 |
!IF "$(YAJL)" != ""
|
|
Packit Service |
384592 |
LIBS = $(LIBS) $(YAJL)\lib\yajl.lib
|
|
Packit Service |
384592 |
DEFS=$(DEFS) -DWITH_YAJL
|
|
Packit Service |
384592 |
INCLUDES = $(INCLUDES) -I$(YAJL)\include -I$(YAJL) \
|
|
Packit Service |
384592 |
!ENDIF
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# ssdeep is optional
|
|
Packit Service |
384592 |
# !IF "$(SSDEEP)" != ""
|
|
Packit Service |
384592 |
# LIBS = $(LIBS) $(SSDEEP)\fuzzy.lib
|
|
Packit Service |
384592 |
# DEFS=$(DEFS) -DWITH_SSDEEP
|
|
Packit Service |
384592 |
# INCLUDES = $(INCLUDES) -I$(SSDEEP)\include -I$(SSDEEP) \
|
|
Packit Service |
384592 |
# !ENDIF
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
CFLAGS= -MD /Zi $(INCLUDES) $(DEFS)
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
LDFLAGS = /DEF:"mymodule.def" /DEBUG /OPT:REF /OPT:ICF /MANIFEST /ManifestFile:"ModSecurityIIS.dll.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /TLBID:1 /DYNAMICBASE /NXCOMPAT
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
OBJS1 = mod_security2.obj apache2_config.obj apache2_io.obj apache2_util.obj \
|
|
Packit Service |
384592 |
re.obj re_operators.obj re_actions.obj re_tfns.obj re_variables.obj \
|
|
Packit Service |
384592 |
msc_logging.obj msc_xml.obj msc_multipart.obj modsecurity.obj \
|
|
Packit Service |
384592 |
msc_parsers.obj msc_util.obj msc_pcre.obj persist_dbm.obj \
|
|
Packit Service |
384592 |
msc_reqbody.obj msc_geo.obj msc_gsb.obj msc_unicode.obj acmp.obj msc_lua.obj \
|
|
Packit Service |
384592 |
msc_release.obj msc_crypt.obj msc_tree.obj \
|
|
Packit Service |
384592 |
msc_status_engine.obj \
|
|
Packit Service |
384592 |
msc_json.obj \
|
|
Packit Service |
384592 |
msc_remote_rules.obj
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
OBJS2 = api.obj buckets.obj config.obj filters.obj hooks.obj regex.obj server.obj
|
|
Packit Service |
384592 |
OBJS3 = main.obj moduleconfig.obj mymodule.obj
|
|
Packit Service |
384592 |
OBJS4 = libinjection_html5.obj \
|
|
Packit Service |
384592 |
libinjection_sqli.obj \
|
|
Packit Service |
384592 |
libinjection_xss.obj
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
all: $(DLL)
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
dll: $(DLL)
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
$(OBJS1): ..\apache2\$*.c
|
|
Packit Service |
384592 |
$(CC) $(CFLAGS) -c ..\apache2\$*.c -Fo$@
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
$(OBJS4): ..\apache2\libinjection\$*.c
|
|
Packit Service |
384592 |
$(CC) $(CFLAGS) -c ..\apache2\libinjection\$*.c -Fo$@
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
$(OBJS2): ..\standalone\$*.c
|
|
Packit Service |
384592 |
$(CC) $(CFLAGS) -c ..\standalone\$*.c -Fo$@
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
.cpp.obj:
|
|
Packit Service |
384592 |
$(CC) $(CFLAGS) -c $< -Fo$@
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
$(DLL): $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4)
|
|
Packit Service |
384592 |
$(LINK) $(LDFLAGS) $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(LIBS)
|
|
Packit Service |
384592 |
IF EXIST $(DLL).manifest $(MT) -manifest $(DLL).manifest -outputresource:$(DLL);#1
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
clean:
|
|
Packit Service |
384592 |
del /f *.obj
|
|
Packit Service |
384592 |
del /f *.dll
|
|
Packit Service |
384592 |
del /f *.exp
|
|
Packit Service |
384592 |
del /f *.lib
|