2 # Copyright (C) 2007-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
10 ifeq ($(BUILD_VARIANT
),dbus
)
11 PKG_BUILD_DIR
=$(BUILD_DIR
)/$(PKG_NAME
)-dbus
/$(PKG_NAME
)-$(PKG_VERSION
)
13 PKG_BUILD_DIR
=$(BUILD_DIR
)/$(PKG_NAME
)-nodbus
/$(PKG_NAME
)-$(PKG_VERSION
)
22 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
23 PKG_SOURCE_URL
:=http
://avahi.org
/download
/
24 PKG_MD5SUM
:=e4db89a2a403ff4c47d66ac66fad1f43
26 PKG_BUILD_DEPENDS
:=libexpat libdaemon libgdbm intltool
/host libpthread dbus
29 PKG_REMOVE_FILES
:=autogen.sh
36 include $(INCLUDE_DIR
)/package.mk
38 define Package
/avahi
/Default
41 TITLE
:=An mDNS
/DNS-SD implementation
42 URL
:=http
://www.avahi.org
/
45 define Package
/avahi
/Default
/description
46 Avahi is an mDNS
/DNS-SD
(aka RendezVous
/Bonjour
/ZeroConf
)
47 implementation
(library
). It facilitates
48 service discovery on a local network
-- this means that
49 you can plug your laptop or computer into a network and
50 instantly be able to view other people who you can chat with
,
51 find printers to
print to or find files being shared.
52 This kind of technology is already found in MacOS X
53 (branded
'Rendezvous', 'Bonjour' and sometimes
'ZeroConf')
54 and is very convenient.
57 define Package
/libavahi
58 $(call Package
/avahi
/Default
)
61 DEPENDS
:=+libdaemon
+libpthread
+libgdbm
65 define Package
/libavahi
/description
66 $(call Package
/avahi
/Default
/description
)
68 The libavahi package contains the mDNS
/DNS-SD shared libraries
,
69 used by other programs. Specifically
, it provides
70 libavahi-core and libavahi-common libraries.
71 By default
, it is compiled without D-Bus support
,
72 i.e. the
--disable-dbus compilation flag is set.
73 To enable D-Bus support
, select the package
74 libavahi-dbus-support.
77 define Package
/avahi-autoipd
78 $(call Package
/avahi
/Default
)
79 SUBMENU
:=IP Addresses and Names
81 TITLE
:=IPv4LL network address configuration daemon
84 define Package
/avahi-autoipd
/description
85 $(call Package
/avahi
/Default
/description
)
87 This package implements IPv4LL
, "Dynamic Configuration of IPv4 Link-Local
88 Addresses" (IETF RFC3927
), a protocol for automatic IP address configuration
89 from the link-local
169.254.0.0/16 range without the need for a central
90 server. It is primarily intended to be used in ad-hoc networks which lack a
94 define Package
/avahi-daemon
95 $(call Package
/avahi
/Default
)
96 SUBMENU
:=IP Addresses and Names
97 DEPENDS
:=+libavahi
+libexpat
101 define Package
/avahi-daemon
/description
102 $(call Package
/avahi
/Default
/description
)
104 This package contains an mDNS
/DNS-SD daemon.
107 define Package
/avahi-daemon
/conffiles
108 /etc
/avahi
/avahi-daemon.conf
109 /etc
/avahi
/services
/http.service
110 /etc
/avahi
/services
/ssh.service
113 define Package
/avahi-dnsconfd
114 $(call Package
/avahi
/Default
)
115 SUBMENU
:=IP Addresses and Names
117 TITLE
:=A Unicast DNS server from mDNS
/DNS-SD configuration daemon
120 define Package
/avahi-dnsconfd
/description
121 $(call Package
/avahi
/Default
/description
)
123 This package contains a Unicast DNS server from mDNS
/DNS-SD configuration
124 daemon
, which may be used to configure conventional DNS servers using mDNS
125 in a DHCP-like fashion. Especially useful on IPv6.
128 define Package
/libavahi-dbus-support
129 $(call Package
/avahi
/Default
)
133 DEPENDS
:=+dbus
+libavahi
134 TITLE
+= (D-Bus support
)
137 define Package
/libavahi-dbus-support
/description
138 $(call Package
/libavahi
/description
)
140 The libavahi-dbus-support package enables
141 D-Bus support in libavahi
, needed to support
142 the libavahi-client library and avahi-utils.
143 Selecting this package modifies the contents of the
144 libavahi package by setting the
--enable-dbus compilation flag
;
145 it does not generate a separate binary of its own.
146 It also automatically adds the D-Bus package to the build.
147 libavahi-dbus-support is selected automatically if you select
148 libavahi-client or avahi-utils.
151 define Package
/libavahi-client
152 $(call Package
/avahi
/Default
)
155 DEPENDS
:=+libavahi-dbus-support
+avahi-daemon
156 TITLE
+= (libavahi-client library
)
159 define Package
/libavahi-client
/description
160 $(call Package
/avahi
/Default
/description
)
162 This packages adds the libavahi-client library.
163 It also automatically adds the required
164 libavahi-dbus-support and the avahi-daemon packages.
165 For more information please see the avahi documentation.
168 define Package
/avahi-utils
169 $(call Package
/avahi
/Default
)
170 SUBMENU
:=IP Addresses and Names
171 DEPENDS
:=+libavahi-client
175 define Package
/avahi-utils
/description
176 $(call Package
/avahi
/Default
/description
)
178 This packages installs the following avahi utility programs
:
179 avahi-browse
, avahi-publish
, avahi-resolve
, avahi-set-host-name.
180 It also automatically adds the required libavahi-client package.
181 For more information please see the avahi documentation.
184 TARGET_CFLAGS
+= $(FPIC
) -DGETTEXT_PACKAGE
201 --disable-python-dbus \
204 --disable-doxygen-doc \
205 --disable-doxygen-dot \
206 --disable-doxygen-man \
207 --disable-doxygen-rtf \
208 --disable-doxygen-xml \
209 --disable-doxygen-chm \
210 --disable-doxygen-chi \
211 --disable-doxygen-html \
212 --disable-doxygen-ps \
213 --disable-doxygen-pdf \
216 --with-avahi-user
=nobody \
217 --with-avahi-group
=nogroup \
218 --with-autoipd-user
=nobody \
219 --with-autoipd-group
=nogroup
221 ifneq ($(CONFIG_SSP_SUPPORT
),y
)
223 --disable-stack-protector
226 ifeq ($(BUILD_VARIANT
),dbus
)
235 CFLAGS
="$$$$CFLAGS -DNDEBUG -DDISABLE_SYSTEMD" \
237 define Build
/InstallDev
238 $(INSTALL_DIR
) $(1)/usr
/include
239 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/* $(1)/usr
/include/
240 $(INSTALL_DIR
) $(1)/usr
/lib
241 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libavahi-
* $(1)/usr
/lib
/
242 $(INSTALL_DIR
) $(1)/usr
/lib
/pkgconfig
243 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/* $(1)/usr
/lib
/pkgconfig
/
246 define Package
/libavahi-dbus-support
/install
247 $(INSTALL_DIR
) $(1)/usr
/lib
250 define Package
/libavahi
/install
251 $(INSTALL_DIR
) $(1)/usr
/lib
252 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libavahi-
{common
,core
}.so.
* $(1)/usr
/lib
/
253 ifeq ($(BUILD_VARIANT
),dbus
)
254 $(INSTALL_DIR
) $(1)/etc
/dbus-1
/system.d
255 $(CP
) $(PKG_INSTALL_DIR
)/etc
/dbus-1
/system.d
/* $(1)/etc
/dbus-1
/system.d
259 define Package
/libavahi-client
/install
260 $(INSTALL_DIR
) $(1)/usr
/lib
261 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libavahi-client.so.
* $(1)/usr
/lib
/
264 define Package
/avahi-utils
/install
265 $(INSTALL_DIR
) $(1)/usr
/bin
266 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/* $(1)/usr
/bin
/
269 define Package
/avahi-autoipd
/install
270 $(INSTALL_DIR
) $(1)/etc
/avahi
271 $(CP
) $(PKG_INSTALL_DIR
)/etc
/avahi
/avahi-autoipd.action
$(1)/etc
/avahi
/
272 $(INSTALL_DIR
) $(1)/usr
/sbin
273 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/avahi-autoipd
$(1)/usr
/sbin
/
276 define Package
/avahi-daemon
/install
277 $(INSTALL_DIR
) $(1)/usr
/sbin
278 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/avahi-daemon
$(1)/usr
/sbin
/
279 $(INSTALL_DIR
) $(1)/etc
/avahi
280 $(INSTALL_DATA
) .
/files
/avahi-daemon.conf
$(1)/etc
/avahi
/
281 $(INSTALL_DIR
) $(1)/etc
/avahi
/services
282 $(INSTALL_DATA
) .
/files
/service-http
$(1)/etc
/avahi
/services
/http.service
283 $(INSTALL_DATA
) .
/files
/service-ssh
$(1)/etc
/avahi
/services
/ssh.service
284 $(INSTALL_DIR
) $(1)/etc
/init.d
285 $(INSTALL_BIN
) .
/files
/avahi-daemon.init
$(1)/etc
/init.d
/avahi-daemon
288 define Package
/avahi-dnsconfd
/install
289 $(INSTALL_DIR
) $(1)/etc
/avahi
290 $(CP
) $(PKG_INSTALL_DIR
)/etc
/avahi
/avahi-dnsconfd.action
$(1)/etc
/avahi
/
291 $(INSTALL_DIR
) $(1)/usr
/sbin
292 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/avahi-dnsconfd
$(1)/usr
/sbin
/
295 $(eval
$(call BuildPackage
,libavahi-client
))
296 $(eval
$(call BuildPackage
,avahi-utils
))
297 $(eval
$(call BuildPackage
,libavahi-dbus-support
))
298 $(eval
$(call BuildPackage
,libavahi
))
299 $(eval
$(call BuildPackage
,avahi-autoipd
))
300 $(eval
$(call BuildPackage
,avahi-daemon
))
301 $(eval
$(call BuildPackage
,avahi-dnsconfd
))