Revert package feed back
[librecmc/package-feed.git] / net / ulogd / Makefile
1 #
2 # Copyright (C) 2006-2015 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=ulogd
11 PKG_VERSION:=2.0.5
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=ftp://ftp.netfilter.org/pub/ulogd/ \
16         ftp://ftp.be.netfilter.org/pub/netfilter/ulogd/ \
17         ftp://ftp.de.netfilter.org/pub/netfilter/ulogd/ \
18         ftp://ftp.no.netfilter.org/pub/netfilter/ulogd/
19 PKG_MD5SUM:=f0f8fe1371fa28b5e06cb16aaa0111dd
20
21 PKG_LICENSE:=GPL-2.0
22 PKG_LICENSE_FILES:=COPYING
23 PKG_MAINTAINER:=Nicolas Thill <nico@openwrt.org>
24
25 PKG_FIXUP:=autoreconf
26 PKG_INSTALL:=1
27
28 include $(INCLUDE_DIR)/package.mk
29
30 define Package/ulogd/Default
31   SECTION:=net
32   CATEGORY:=Network
33   URL:=http://www.netfilter.org/projects/ulogd/index.html
34 endef
35
36 define Package/ulogd
37   $(call Package/ulogd/Default)
38   DEPENDS:=+libmnl +libnfnetlink +libpthread
39   TITLE:=Netfilter userspace logging daemon
40   MENU:=1
41 endef
42
43 define Package/ulogd/conffiles
44 /etc/ulogd.conf
45 endef
46
47 define Package/ulogd-mod-dbi
48   $(call Package/ulogd/Default)
49   DEPENDS:=ulogd +libdbi
50   TITLE:=Output plugin for logging to a database using libdbi
51 endef
52
53 define Package/ulogd-mod-json
54   $(call Package/ulogd/Default)
55   DEPENDS:=ulogd +jansson
56   TITLE:=JSON output plugin
57 endef
58
59 define Package/ulogd-mod-mysql
60   $(call Package/ulogd/Default)
61   DEPENDS:=ulogd +libmysqlclient
62   TITLE:=Output plugin for logging to a MySQL database
63 endef
64
65 define Package/ulogd-mod-nfacct
66   $(call Package/ulogd/Default)
67   DEPENDS:=ulogd +libnetfilter-acct
68   TITLE:=Input plugin for flow-based logging (accounting)
69 endef
70
71 define Package/ulogd-mod-nfct
72   $(call Package/ulogd/Default)
73   DEPENDS:=ulogd +libnetfilter-conntrack
74   TITLE:=Input plugin for flow-based logging (conntracking)
75 endef
76
77 define Package/ulogd-mod-nflog
78   $(call Package/ulogd/Default)
79   DEPENDS:=ulogd +libnetfilter-log
80   TITLE:=Input plugin using NFLOG
81 endef
82
83 define Package/ulogd-mod-pcap
84   $(call Package/ulogd/Default)
85   DEPENDS:=ulogd +libpcap
86   TITLE:=Output plugin for logging in pcap format
87 endef
88
89 define Package/ulogd-mod-pgsql
90   $(call Package/ulogd/Default)
91   DEPENDS:=ulogd +libpq
92   TITLE:=Output plugin for logging to a PostgreSQL database
93 endef
94
95 define Package/ulogd-mod-sqlite
96   $(call Package/ulogd/Default)
97   DEPENDS:=ulogd +libsqlite3
98   TITLE:=Output plugin for logging to an SQLite database
99 endef
100
101 define Package/ulogd-mod-syslog
102   $(call Package/ulogd/Default)
103   DEPENDS:=ulogd
104   TITLE:=Syslog output plugin
105 endef
106
107 define Package/ulogd-mod-xml
108   $(call Package/ulogd/Default)
109   DEPENDS:=ulogd +libnetfilter-acct +libnetfilter-conntrack +libnetfilter-log
110   TITLE:=XML output plugin
111 endef
112
113 define Package/ulogd-mod-extra
114   $(call Package/ulogd/Default)
115   DEPENDS:=ulogd
116   TITLE:=Extra plugins
117 endef
118
119 PKG_BUILD_DEPENDS:=libnetfilter-acct libnetfilter-conntrack libnetfilter-log
120
121 PKG_CONFIG_DEPENDS:= \
122         CONFIG_PACKAGE_ulogd-mod-dbi \
123         CONFIG_PACKAGE_ulogd-mod-mysql \
124         CONFIG_PACKAGE_ulogd-mod-pgsql \
125         CONFIG_PACKAGE_ulogd-mod-sqlite \
126
127 TARGET_CFLAGS += \
128         -D_GNU_SOURCE \
129
130 CONFIGURE_ARGS += \
131         --enable-nfacct \
132         --enable-nfct \
133         --enable-nflog \
134
135 ifneq ($(DEVELOPER)$(SDK)$(CONFIG_PACKAGE_ulogd-mod-dbi),)
136         CONFIGURE_ARGS += --with-dbi \
137                 --with-dbi-inc=$(STAGING_DIR)/usr/include/dbi \
138                 --with-dbi-lib=$(STAGING_DIR)/usr/lib
139 else
140         CONFIGURE_ARGS += --without-dbi
141 endif
142
143 ifneq ($(DEVELOPER)$(SDK)$(CONFIG_PACKAGE_ulogd-mod-mysql),)
144         CONFIGURE_ARGS += --with-mysql="$(STAGING_DIR)/usr"
145 else
146         CONFIGURE_ARGS += --without-mysql
147 endif
148
149 ifneq ($(DEVELOPER)$(SDK)$(CONFIG_PACKAGE_ulogd-mod-pgsql),)
150         CONFIGURE_ARGS += --with-pgsql="$(STAGING_DIR)/usr"
151 else
152         CONFIGURE_ARGS += --without-pgsql
153 endif
154
155 ifneq ($(SDK)$(CONFIG_PACKAGE_ulogd-mod-sqlite),)
156         CONFIGURE_ARGS += --with-sqlite="$(STAGING_DIR)/usr"
157 else
158         CONFIGURE_ARGS += --without-sqlite
159 endif
160
161 define Package/ulogd/install
162         $(INSTALL_DIR) $(1)/etc
163         $(CP) $(PKG_BUILD_DIR)/ulogd.conf $(1)/etc/
164         $(INSTALL_DIR) $(1)/usr/sbin
165         $(CP) $(PKG_INSTALL_DIR)/usr/sbin/ulogd $(1)/usr/sbin/
166         $(INSTALL_DIR) $(1)/usr/lib/ulogd
167         $(CP) $(PKG_INSTALL_DIR)/usr/lib/ulogd/ulogd_raw2packet_BASE.so $(1)/usr/lib/ulogd/
168         $(INSTALL_DIR) $(1)/etc/init.d
169         $(INSTALL_BIN) ./files/ulogd.init $(1)/etc/init.d/ulogd
170 endef
171
172 define BuildPlugin
173   define Package/ulogd-mod-$(1)/install
174         $(INSTALL_DIR) $$(1)/usr/lib/ulogd
175         for m in $(2); do \
176                 $(CP) $(PKG_INSTALL_DIR)/usr/lib/ulogd/ulogd_$$$$$$$${m}.so $$(1)/usr/lib/ulogd/ ; \
177         done
178   endef
179   $$(eval $$(call BuildPackage,ulogd-mod-$(1)))
180 endef
181
182 ULOGD_EXTRA_PLUGINS:= \
183         filter_HWHDR \
184         filter_IFINDEX \
185         filter_IP2BIN \
186         filter_IP2HBIN \
187         filter_IP2STR \
188         filter_MARK \
189         filter_PRINTFLOW \
190         filter_PRINTPKT \
191         filter_PWSNIFF \
192         inppkt_UNIXSOCK \
193         output_GPRINT \
194         output_GRAPHITE \
195         output_LOGEMU \
196         output_OPRINT \
197
198 $(eval $(call BuildPackage,ulogd))
199 $(eval $(call BuildPlugin,dbi,output_DBI))
200 $(eval $(call BuildPlugin,json,output_JSON))
201 $(eval $(call BuildPlugin,mysql,output_MYSQL))
202 $(eval $(call BuildPlugin,nfacct,inpflow_NFACCT))
203 $(eval $(call BuildPlugin,nfct,inpflow_NFCT))
204 $(eval $(call BuildPlugin,nflog,inppkt_NFLOG))
205 $(eval $(call BuildPlugin,pcap,output_PCAP))
206 $(eval $(call BuildPlugin,pgsql,output_PGSQL))
207 $(eval $(call BuildPlugin,sqlite,output_SQLITE3))
208 $(eval $(call BuildPlugin,syslog,output_SYSLOG))
209 $(eval $(call BuildPlugin,xml,output_XML))
210 $(eval $(call BuildPlugin,extra,$(ULOGD_EXTRA_PLUGINS)))