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.porchdogsoft.com/download/
17 PKG_MD5SUM:=c389d3ffba0e69a179de2ec650f1fdcc
19 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
20 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
22 include $(INCLUDE_DIR)/package.mk
24 define Package/howl/Default
27 TITLE:=Zeroconf networking implementation
28 URL:=http://www.porchdogsoft.com/products/howl/
31 define Package/libhowl
32 $(call Package/howl/Default)
38 define Package/libhowl/description
40 Howl is a cross-platform implementation of Zeroconf networking.
41 This package contains the Howl shared libraries, used by other programs.
44 define Package/howl-autoipd
45 $(call Package/howl/Default)
47 TITLE:=An IPv4 Link-Local address self-assigner daemon
50 define Package/howl-autoipd/description
52 Howl is a cross-platform implementation of Zeroconf networking.
53 This package contains an IPv4 Link-Local address self-assigner daemon.
56 define Package/howl-mdnsresponder
57 $(call Package/howl/Default)
59 TITLE:=An mDNS (Multicast DNS) service responder daemon
62 define Package/howl-mdnsresponder/description
64 Howl is a cross-platform implementation of Zeroconf networking.
65 This package contains an mDNS (Multicast DNS) service responder daemon.
68 define Package/howl-mdnsresponder/conffiles
69 /etc/mDNSResponder.conf
72 define Package/howl-nifd
73 $(call Package/howl/Default)
75 TITLE:=A network interface monitor daemon
78 define Package/howl-nifd/description
81 This package contains a network interface monitor daemon.
84 define Package/howl-utils
85 $(call Package/howl/Default)
90 define Package/howl-utils/description
93 This package contains mDNS (Multicast DNS) client utilities.
96 define Build/Configure
97 $(call Build/Configure/Default, \
104 $(MAKE) -C $(PKG_BUILD_DIR) \
105 DESTDIR="$(PKG_INSTALL_DIR)" \
109 define Build/InstallDev
110 mkdir -p $(1)/usr/include
111 $(CP) $(PKG_INSTALL_DIR)/usr/include/howl $(1)/usr/include/
112 mkdir -p $(1)/usr/lib
113 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{howl,mDNSResponder}.{a,so*} $(1)/usr/lib/
114 mkdir -p $(1)/usr/lib/pkgconfig
115 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/howl.pc $(1)/usr/lib/pkgconfig/
116 $(SED) 's,-I/usr/include,-I$$$${includedir},g' $(1)/usr/lib/pkgconfig/howl.pc
117 $(SED) 's,-L/usr/lib/howl,-L$$$${libdir}/howl,g' $(1)/usr/lib/pkgconfig/howl.pc
120 define Build/UninstallDev
121 rm -rf $(STAGING_DIR)/usr/include/howl \
122 $(STAGING_DIR)/usr/lib/lib{howl,mDNSResponder}.{a,so*} \
123 $(STAGING_DIR)/usr/lib/pkgconfig/howl.pc
126 define Package/libhowl/install
127 $(INSTALL_DIR) $(1)/usr/lib
128 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{howl,mDNSResponder}.so.* $(1)/usr/lib/
131 define Package/howl-autoipd/install
132 $(INSTALL_DIR) $(1)/usr/sbin
133 $(CP) $(PKG_INSTALL_DIR)/usr/bin/autoipd $(1)/usr/sbin/
134 $(INSTALL_DIR) $(1)/etc/init.d
135 $(INSTALL_DATA) ./files/autoipd.init $(1)/etc/init.d/autoipd
138 define Package/howl-mdnsresponder/install
139 $(INSTALL_DIR) $(1)/usr/sbin
140 $(CP) $(PKG_INSTALL_DIR)/usr/bin/mDNSResponder $(1)/usr/sbin/
141 $(INSTALL_DIR) $(1)/etc
142 $(INSTALL_DATA) ./files/mDNSResponder.conf $(1)/etc/mDNSResponder.conf
143 $(INSTALL_DIR) $(1)/etc/init.d
144 $(INSTALL_BIN) ./files/mDNSResponder.init $(1)/etc/init.d/mDNSResponder
147 define Package/howl-nifd/install
148 $(INSTALL_DIR) $(1)/usr/sbin
149 $(CP) $(PKG_INSTALL_DIR)/usr/bin/nifd $(1)/usr/sbin/
150 $(INSTALL_DIR) $(1)/etc/init.d
151 $(INSTALL_DATA) ./files/nifd.init $(1)/etc/init.d/nifd
154 define Package/howl-utils/install
155 $(INSTALL_DIR) $(1)/usr/bin
156 $(CP) $(PKG_INSTALL_DIR)/usr/bin/mDNS{Browse,Publish,Query,Resolve} $(1)/usr/bin/
159 $(eval $(call BuildPackage,libhowl))
160 $(eval $(call BuildPackage,howl-autoipd))
161 $(eval $(call BuildPackage,howl-mdnsresponder))
162 $(eval $(call BuildPackage,howl-nifd))
163 $(eval $(call BuildPackage,howl-utils))