[packages] Use default templates instead of custom reimplementations where applicable
[packages.git] / net / cups / Makefile
1 #
2 # Copyright (C) 2006-2009 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:=cups
11 PKG_VERSION:=1.3.10
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-source.tar.bz2
15 PKG_SOURCE_URL:= \
16         http://ftp.rz.tu-bs.de/pub/mirror/ftp.easysw.com/ftp/pub/cups/$(PKG_VERSION) \
17         ftp://ftp.easysw.com/pub/cups/$(PKG_VERSION) \
18         ftp://ftp3.easysw.com/pub/cups/$(PKG_VERSION)
19 PKG_MD5SUM:=84fffe96b8537c81a463faccead80026
20
21 PKG_BUILD_DEPENDS:=zlib
22
23 TARGET_LDFLAGS+=-Wl,-rpath-link=$(STAGING_DIR)/usr/lib
24
25 include $(INCLUDE_DIR)/package.mk
26
27 define Package/cups
28   SECTION:=net
29   CATEGORY:=Network
30   DEPENDS:=+zlib +libpthread +libpng +libjpeg
31   TITLE:=Common UNIX Printing System
32   URL:=http://www.cups.org/
33   SUBMENU:=printing
34 endef
35
36 define Package/cups/description
37         A printer spooling system for devices with USB or LP support.
38 endef
39
40 define Package/cups/conffiles
41 /etc/cups/classes.conf
42 /etc/cups/client.conf
43 /etc/cups/cupsd.conf
44 /etc/cups/printers.conf
45 endef
46
47 define Build/Configure
48         $(call Build/Configure/Default, \
49                 --with-cups-user=root \
50                 --with-cups-group=root \
51                 --without-perl \
52                 --without-python \
53                 --without-php \
54                 --enable-shared \
55                 --disable-dbus \
56                 --disable-pam \
57                 --disable-slp \
58                 --disable-gnutls \
59                 --disable-openssl \
60                 --disable-cdsassl \
61                 --disable-ssl \
62                 --disable-gssapi \
63                 --disable-slp, \
64                 UNAME="Linux" \
65                 LIBS="$(TARGET_LDFLAGS) -lz -lpng -ljpeg" \
66         )
67 endef
68
69 define Build/Compile
70         $(MAKE) -C $(PKG_BUILD_DIR) \
71                 $(TARGET_CONFIGURE_OPTS) \
72                 DSTROOT="$(PKG_INSTALL_DIR)" \
73                 STRIP="/bin/true" \
74                 all install
75 endef
76
77 define Package/cups/install
78         rm -rf $(1)/etc/cups
79         $(INSTALL_DIR) $(1)/etc/cups
80         $(CP) $(PKG_INSTALL_DIR)/etc/cups/* $(1)/etc/cups/
81         rm -rf $(1)/etc/cups/certs
82         ln -sf /tmp $(1)/etc/cups/certs
83         $(INSTALL_DIR) $(1)/usr/bin
84         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
85         rm -f $(1)/usr/bin/cups-config
86         $(INSTALL_DIR) $(1)/usr/lib
87         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcups.so* $(1)/usr/lib/
88         $(CP) $(PKG_INSTALL_DIR)/usr/lib/cups $(1)/usr/lib/
89         $(INSTALL_DIR) $(1)/usr/share/cups/templates
90         $(CP) $(PKG_INSTALL_DIR)/usr/share/cups/templates/*.tmpl $(1)/usr/share/cups/templates/
91         $(INSTALL_DIR) $(1)/usr/share/doc/cups
92         $(CP) $(PKG_INSTALL_DIR)/usr/share/doc/cups/index.html $(1)/usr/share/doc/cups/
93         $(CP) $(PKG_INSTALL_DIR)/usr/share/doc/cups/*.css $(1)/usr/share/doc/cups/
94         $(CP) $(PKG_INSTALL_DIR)/usr/share/doc/cups/images $(1)/usr/share/doc/cups/
95         $(INSTALL_DIR) $(1)/usr/sbin
96         $(INSTALL_BIN) \
97                 $(PKG_INSTALL_DIR)/usr/sbin/{accept,cupsaddsmb,cupsctl,cupsd,cupsfilter,lpadmin,lpc,lpinfo,lpmove} \
98                 $(1)/usr/sbin/
99         (cd $(1)/usr/sbin; ln -sf accept reject; ln -sf accept cupsenable; ln -sf accept cupsdisable;)
100         # overwrite default config with our own
101         $(CP) ./files/etc/cups/* $(1)/etc/cups/
102         # install initscript with priority 60
103         $(INSTALL_DIR) $(1)/etc/init.d
104         $(INSTALL_BIN) ./files/cupsd.init $(1)/etc/init.d/cupsd
105 endef
106
107 define Build/InstallDev
108         $(INSTALL_DIR) $(2)/bin
109         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/cups-config $(2)/bin/
110         $(INSTALL_DIR) $(1)/usr/include
111         $(CP) $(PKG_INSTALL_DIR)/usr/include/cups $(1)/usr/include/
112         $(INSTALL_DIR) $(1)/usr/lib
113         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcups.so* $(1)/usr/lib/
114 endef
115
116 $(eval $(call BuildPackage,cups))