1af70d2fe82e18baf8a2820de171223b69a6df15
[openwrt/svn-archive/archive.git] / libs / howl / Makefile
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=howl
12 PKG_VERSION:=1.0.0
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=http://www.porchdogsoft.com/download/
17 PKG_MD5SUM:=c389d3ffba0e69a179de2ec650f1fdcc
18 PKG_CAT:=zcat
19
20 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
21 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
22
23 include $(INCLUDE_DIR)/package.mk
24
25 define Package/howl/Default
26 SECTION:=net
27 CATEGORY:=Network
28 TITLE:=Zeroconf networking implementation
29 URL:=http://www.porchdogsoft.com/products/howl/
30 endef
31
32 define Package/libhowl
33 $(call Package/howl/Default)
34 SECTION:=libs
35 CATEGORY:=Libraries
36 TITLE+= (library)
37 endef
38
39 define Package/libhowl/description
40
41 Howl is a cross-platform implementation of Zeroconf networking.
42 This package contains the Howl shared libraries, used by other programs.
43 endef
44
45 define Package/howl-autoipd
46 $(call Package/howl/Default)
47 DEPENDS:=+libhowl
48 TITLE:=An IPv4 Link-Local address self-assigner daemon
49 endef
50
51 define Package/howl-autoipd/description
52
53 Howl is a cross-platform implementation of Zeroconf networking.
54 This package contains an IPv4 Link-Local address self-assigner daemon.
55 endef
56
57 define Package/howl-mdnsresponder
58 $(call Package/howl/Default)
59 DEPENDS:=+libhowl
60 TITLE:=An mDNS (Multicast DNS) service responder daemon
61 endef
62
63 define Package/howl-mdnsresponder/description
64
65 Howl is a cross-platform implementation of Zeroconf networking.
66 This package contains an mDNS (Multicast DNS) service responder daemon.
67 endef
68
69 define Package/howl-mdnsresponder/conffiles
70 /etc/mDNSResponder.conf
71 endef
72
73 define Package/howl-nifd
74 $(call Package/howl/Default)
75 DEPENDS:=+libhowl
76 TITLE:=A network interface monitor daemon
77 endef
78
79 define Package/howl-nifd/description
80
81
82 This package contains a network interface monitor daemon.
83 endef
84
85 define Package/howl-utils
86 $(call Package/howl/Default)
87 DEPENDS:=+libhowl
88 TITLE+= (utilities)
89 endef
90
91 define Package/howl-utils/description
92
93
94 This package contains mDNS (Multicast DNS) client utilities.
95 endef
96
97 define Build/Configure
98 $(call Build/Configure/Default, \
99 --enable-shared \
100 --enable-static \
101 );
102 endef
103
104 define Build/Compile
105 $(MAKE) -C $(PKG_BUILD_DIR) \
106 DESTDIR="$(PKG_INSTALL_DIR)" \
107 all install
108 endef
109
110 define Build/InstallDev
111 mkdir -p $(1)/usr/include
112 $(CP) $(PKG_INSTALL_DIR)/usr/include/howl $(1)/usr/include/
113 mkdir -p $(1)/usr/lib
114 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{howl,mDNSResponder}.{a,so*} $(1)/usr/lib/
115 mkdir -p $(1)/usr/lib/pkgconfig
116 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/howl.pc $(1)/usr/lib/pkgconfig/
117 $(SED) 's,-I/usr/include,-I$$$${includedir},g' $(1)/usr/lib/pkgconfig/howl.pc
118 $(SED) 's,-L/usr/lib/howl,-L$$$${libdir}/howl,g' $(1)/usr/lib/pkgconfig/howl.pc
119 endef
120
121 define Build/UninstallDev
122 rm -rf $(STAGING_DIR)/usr/include/howl \
123 $(STAGING_DIR)/usr/lib/lib{howl,mDNSResponder}.{a,so*} \
124 $(STAGING_DIR)/usr/lib/pkgconfig/howl.pc
125 endef
126
127 define Package/libhowl/install
128 $(INSTALL_DIR) $(1)/usr/lib
129 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{howl,mDNSResponder}.so.* $(1)/usr/lib/
130 endef
131
132 define Package/howl-autoipd/install
133 $(INSTALL_DIR) $(1)/usr/sbin
134 $(CP) $(PKG_INSTALL_DIR)/usr/bin/autoipd $(1)/usr/sbin/
135 $(INSTALL_DIR) $(1)/etc/init.d
136 $(INSTALL_DATA) ./files/autoipd.init $(1)/etc/init.d/autoipd
137 endef
138
139 define Package/howl-mdnsresponder/install
140 $(INSTALL_DIR) $(1)/usr/sbin
141 $(CP) $(PKG_INSTALL_DIR)/usr/bin/mDNSResponder $(1)/usr/sbin/
142 $(INSTALL_DIR) $(1)/etc
143 $(INSTALL_DATA) ./files/mDNSResponder.conf $(1)/etc/mDNSResponder.conf
144 $(INSTALL_DIR) $(1)/etc/init.d
145 $(INSTALL_BIN) ./files/mDNSResponder.init $(1)/etc/init.d/mDNSResponder
146 endef
147
148 define Package/howl-nifd/install
149 $(INSTALL_DIR) $(1)/usr/sbin
150 $(CP) $(PKG_INSTALL_DIR)/usr/bin/nifd $(1)/usr/sbin/
151 $(INSTALL_DIR) $(1)/etc/init.d
152 $(INSTALL_DATA) ./files/nifd.init $(1)/etc/init.d/nifd
153 endef
154
155 define Package/howl-utils/install
156 $(INSTALL_DIR) $(1)/usr/bin
157 $(CP) $(PKG_INSTALL_DIR)/usr/bin/mDNS{Browse,Publish,Query,Resolve} $(1)/usr/bin/
158 endef
159
160 $(eval $(call BuildPackage,libhowl))
161 $(eval $(call BuildPackage,howl-autoipd))
162 $(eval $(call BuildPackage,howl-mdnsresponder))
163 $(eval $(call BuildPackage,howl-nifd))
164 $(eval $(call BuildPackage,howl-utils))