First Commit
[librecmc/package-feed.git] / net / privoxy / Makefile
1 #
2 # Copyright (C) 2006-2016 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:=privoxy
11 PKG_VERSION:=3.0.26
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=privoxy-$(PKG_VERSION)-stable-src.tar.gz
15 PKG_SOURCE_URL:=@SF/ijbswa
16 PKG_MD5SUM:=8a1c842112ccea68c19b7ceb4a0e999f
17 PKG_BUILD_DIR:=$(BUILD_DIR)/privoxy-$(PKG_VERSION)-stable
18 PKG_FIXUP:=autoreconf
19 PKG_INSTALL:=1
20
21 PKG_LICENSE:=GPL-2.0
22 PKG_LICENSE_FILES:=LICENSE
23
24 PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
25
26 PKG_CONFIG_DEPENDS:= \
27   CONFIG_IPV6 \
28   \
29   CONFIG_PRIVOXY_disable-pthread \
30   CONFIG_PRIVOXY_disable-dynamic-pcre \
31   CONFIG_PRIVOXY_disable-zlib \
32   \
33   CONFIG_PRIVOXY_disable-toggle \
34   CONFIG_PRIVOXY_disable-force \
35   CONFIG_PRIVOXY_disable-fast-redirects \
36   CONFIG_PRIVOXY_disable-stats \
37   CONFIG_PRIVOXY_enable-ie-images \
38   CONFIG_PRIVOXY_disable-image-blocking \
39   CONFIG_PRIVOXY_disable-acl-support \
40   CONFIG_PRIVOXY_disable-trust-files \
41   CONFIG_PRIVOXY_disable-editor \
42   CONFIG_PRIVOXY_enable-no-gifs \
43   CONFIG_PRIVOXY_enable-graceful-termination \
44   CONFIG_PRIVOXY_enable-extended-host-patterns \
45   CONFIG_PRIVOXY_enable-external-filters \
46   CONFIG_PRIVOXY_enable-accept-filter \
47   CONFIG_PRIVOXY_enable-strptime-sanity-checks \
48   CONFIG_PRIVOXY_enable-compression
49
50 include $(INCLUDE_DIR)/package.mk
51
52 define Package/$(PKG_NAME)
53   SECTION:=net
54   CATEGORY:=Network
55   SUBMENU:=Web Servers/Proxies
56   TITLE:=Privoxy WEB Proxy
57   URL:=http://www.privoxy.org/
58   USERID:=privoxy=8118:privoxy=8118
59   MENU:=1
60   DEPENDS:=+!PRIVOXY_no_pcre:libpcre +!PRIVOXY_no_pthread:libpthread +!PRIVOXY_no_zlib:zlib
61 endef
62
63 # shown in LuCI package description
64 define Package/$(PKG_NAME)/description
65 $(TITLE) - Homepage: www.privoxy.org
66 endef
67
68 # shown in make menuconfig <Help>
69 define Package/$(PKG_NAME)/config
70         help
71                 Privoxy is a web proxy with advanced filtering capabilities for protecting
72                 privacy, modifying web page content, managing cookies, controlling access,
73                 and removing ads, banners, pop-ups and other obnoxious Internet junk. 
74                 Privoxy has a very flexible configuration and can be customized to suit
75                 individual needs and tastes. 
76                 Privoxy has application for both stand-alone systems and multi-user networks.
77                 Run as : $(USERID)
78                 Version: $(PKG_VERSION)-$(PKG_RELEASE)
79                 Home   : $(URL)
80                 $(PKG_MAINTAINER)
81
82         source "$(SOURCE)/Config.in"
83 endef
84
85 CONFIGURE_ARGS += \
86         --sysconfdir=/etc/privoxy \
87         $(if $(CONFIG_IPV6),,--disable-ipv6-support) \
88         \
89         $(if $(CONFIG_PRIVOXY_disable-pthread),--disable-pthread) \
90         $(if $(CONFIG_PRIVOXY_disable-dynamic-pcre),--disable-dynamic-pcre) \
91         $(if $(CONFIG_PRIVOXY_disable-zlib),--disable-zlib) \
92         \
93         $(if $(CONFIG_PRIVOXY_disable-toggle),--disable-toggle) \
94         $(if $(CONFIG_PRIVOXY_disable-force),--disable-force) \
95         $(if $(CONFIG_PRIVOXY_disable-fast-redirects),--disable-fast-redirects) \
96         $(if $(CONFIG_PRIVOXY_disable-stats),--disable-stats) \
97         $(if $(CONFIG_PRIVOXY_enable-ie-images),--enable-ie-images) \
98         $(if $(CONFIG_PRIVOXY_disable-image-blocking),--disable-image-blocking) \
99         $(if $(CONFIG_PRIVOXY_disable-acl-support),--disable-acl-support) \
100         $(if $(CONFIG_PRIVOXY_disable-trust-files),--disable-trust-files) \
101         $(if $(CONFIG_PRIVOXY_disable-editor),--disable-editor) \
102         $(if $(CONFIG_PRIVOXY_enable-no-gifs),--enable-no-gifs) \
103         $(if $(CONFIG_PRIVOXY_enable-graceful-termination),--enable-graceful-termination) \
104         $(if $(CONFIG_PRIVOXY_enable-extended-host-patterns),--enable-extended-host-patterns) \
105         $(if $(CONFIG_PRIVOXY_enable-external-filters),--enable-external-filters) \
106         $(if $(CONFIG_PRIVOXY_enable-accept-filter),--enable-accept-filter) \
107         $(if $(CONFIG_PRIVOXY_enable-strptime-sanity-checks),--enable-strptime-sanity-checks) \
108         $(if $(CONFIG_PRIVOXY_enable-compression),--enable-compression)
109
110 # needed otherwise errors during compile
111 MAKE_FLAGS:=
112
113 define Package/$(PKG_NAME)/conffiles
114 /etc/config/privoxy
115 /etc/privoxy/user.action
116 /etc/privoxy/user.filter
117 /etc/privoxy/user.trust
118 endef
119
120 define Package/$(PKG_NAME)/preinst
121         #!/bin/sh
122         [ -n "$${IPKG_INSTROOT}" ] && exit 0    # if run within buildroot exit
123
124         # stop service if PKG_UPGRADE
125         [ "$${PKG_UPGRADE}" = "1" ] && /etc/init.d/privoxy stop >/dev/null 2>&1
126                 
127         exit 0  # suppress errors from stop command
128 endef
129
130 define Package/$(PKG_NAME)/install
131         if [ -f $(PKG_INSTALL_DIR)/etc/privoxy/trust ]; then \
132                 mv -f $(PKG_INSTALL_DIR)/etc/privoxy/trust $(PKG_INSTALL_DIR)/etc/privoxy/user.trust; \
133         fi
134         if [ -f $(PKG_INSTALL_DIR)/etc/privoxy/config ]; then \
135                 rm -f $(PKG_INSTALL_DIR)/etc/privoxy/config; \
136         fi
137
138         $(INSTALL_DIR) \
139                 $(1)/usr/sbin\
140                 $(1)/etc/privoxy/templates
141         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/privoxy $(1)/usr/sbin/
142         find $(PKG_INSTALL_DIR)/etc/privoxy/templates -maxdepth 1 -type f \
143                 -exec $(INSTALL_DATA) -t $(1)/etc/privoxy/templates {} \;
144         find $(PKG_INSTALL_DIR)/etc/privoxy -maxdepth 1 -type f \
145                 -exec install -m0664 -t $(1)/etc/privoxy {} \;
146
147         $(INSTALL_DIR) \
148                 $(1)/lib/upgrade/keep.d \
149                 $(1)/etc/init.d \
150                 $(1)/etc/hotplug.d/iface \
151                 $(1)/etc/config
152         $(INSTALL_DATA) ./files/privoxy.upgrade $(1)/lib/upgrade/keep.d/privoxy
153         $(INSTALL_BIN)  ./files/privoxy.init $(1)/etc/init.d/privoxy
154         $(INSTALL_BIN)  ./files/privoxy.hotplug $(1)/etc/hotplug.d/iface/95-privoxy
155         $(INSTALL_CONF) ./files/privoxy.config $(1)/etc/config/privoxy
156 endef
157
158 define Package/$(PKG_NAME)/postinst
159         #!/bin/sh
160         grep -i privoxy $${IPKG_INSTROOT}/etc/services >/dev/null 2>&1 || \
161                 echo -e "privoxy\t8118" >> $${IPKG_INSTROOT}/etc/services
162 endef
163
164 $(eval $(call BuildPackage,$(PKG_NAME)))