2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
16 PKG_SOURCE_URL
:=http
://www.snort.org
/dl
/current
/
17 PKG_MD5SUM
:=9dc9060d1f2e248663eceffadfc45e7e
20 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(PKG_VERSION
)
21 PKG_INSTALL_DIR
:=$(PKG_BUILD_DIR
)/ipkg-install
23 include $(INCLUDE_DIR
)/package.mk
25 define Package
/snort
/Default
26 SUBMENU
:=snort
(Ligthweight Network Intrusion Detection System
)
29 DEPENDS
:=+libnet0
+libpcap
+libpcre
30 TITLE
:=Ligthweight Network Intrusion Detection System
31 URL
:=http
://www.snort.org
/
35 $(call Package
/snort
/Default
)
38 define Package
/snort-mysql
39 $(call Package
/snort
/Default
)
40 DEPENDS
+= +libmysqlclient
44 define Package
/snort-pgsql
45 $(call Package
/snort
/Default
)
52 CONFIG_PACKAGE_snort
:=m
53 CONFIG_PACKAGE_snort-mysql
:=m
54 CONFIG_PACKAGE_snort-pgsql
:=m
57 define Compile
/Template
59 $(PKG_BUILD_DIR
)/snort-
$(1): $(PKG_BUILD_DIR
)/.configured
60 touch
-r
$(PKG_BUILD_DIR
)/Makefile.am
$(PKG_BUILD_DIR
)/configure.in
61 touch
-r
$(PKG_BUILD_DIR
)/Makefile.in
$(PKG_BUILD_DIR
)/configure
62 -$(MAKE
) -C
$(PKG_BUILD_DIR
) distclean
63 $(call Build
/Configure
/Default
, \
65 --with-libnet-includes
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/include" \
66 --with-libnet-libraries
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/lib" \
67 --with-libpcap-includes
="$(STAGING_DIR)/usr/include" \
68 --with-libpcap-libraries
="$(STAGING_DIR)/usr/lib" \
69 --with-libpcre-includes
="$(STAGING_DIR)/usr/include" \
70 --with-libpcre-libraries
="$(STAGING_DIR)/usr/lib" \
73 CPPFLAGS
="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/mysql" \
74 LDFLAGS
="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib/mysql" \
75 PATH
="$(STAGING_DIR)/usr/lib/libnet-1.0.x/bin:$$$$PATH" \
78 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
81 mv
$(PKG_BUILD_DIR
)/src
/snort
$(PKG_BUILD_DIR
)/snort-
$(1)
83 $(PKG_BUILD_DIR
)/.built
: $(PKG_BUILD_DIR
)/snort-
$(1)
88 define Install
/Template
90 define Package
/$(1)/conffiles
93 /etc
/snort
/threshold.conf
96 define Package
/$(1)/install
97 install -d
-m0755
$$(1)/usr
/sbin
98 install -m0755
$(PKG_BUILD_DIR
)/snort-
$(2) $$(1)/usr
/sbin
/snort
99 install -d
-m0755
$$(1)/etc
/snort
100 install -m0644
$(PKG_BUILD_DIR
)/etc
/snort.conf
$$(1)/etc
/snort
/
101 install -m0644
$(PKG_BUILD_DIR
)/etc
/classification.config
$$(1)/etc
/snort
/
102 install -m0644
$(PKG_BUILD_DIR
)/etc
/gen-msg.map
$$(1)/etc
/snort
/
103 install -m0644
$(PKG_BUILD_DIR
)/etc
/reference.config
$$(1)/etc
/snort
/
104 install -m0644
$(PKG_BUILD_DIR
)/etc
/sid-msg.map
$$(1)/etc
/snort
/
105 install -m0644
$(PKG_BUILD_DIR
)/etc
/threshold.conf
$$(1)/etc
/snort
/
106 install -m0644
$(PKG_BUILD_DIR
)/etc
/unicode.map
$$(1)/etc
/snort
/
107 install -d
-m0755
$$(1)/etc
/default
108 install -m0644 .
/files
/snort.default
$$(1)/etc
/default
/snort
109 install -d
-m0755
$$(1)/etc
/init.d
110 install -m0755 .
/files
/snort.init
$$(1)/etc
/init.d
/snort
116 ifneq ($(CONFIG_PACKAGE_snort
),)
117 $(eval
$(call Compile
/Template
,basic
, \
119 --without-postgresql \
121 $(eval
$(call Install
/Template
,snort
,basic
))
123 ifneq ($(CONFIG_PACKAGE_snort-mysql
),)
124 $(eval
$(call Compile
/Template
,mysql
, \
125 --with-mysql
="$(STAGING_DIR)/usr" \
126 --without-postgresql \
128 $(eval
$(call Install
/Template
,snort-mysql
,mysql
))
130 ifneq ($(CONFIG_PACKAGE_snort-pgsql
),)
131 $(eval
$(call Compile
/Template
,pgsql
, \
133 --with-postgresql
="$(STAGING_DIR)/usr" \
135 $(eval
$(call Install
/Template
,snort-pgsql
,pgsql
))
138 define Build
/Configure
144 $(eval
$(call BuildPackage
,snort
))
145 $(eval
$(call BuildPackage
,snort-mysql
))
146 $(eval
$(call BuildPackage
,snort-pgsql
))