Magellan Linux

Contents of /trunk/extras/avahi/avahi-0.6.31-r7.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 22027 - (show annotations) (download)
Sat Aug 16 14:58:05 2014 UTC (9 years, 9 months ago) by niro
File size: 8243 byte(s)
-rebuild
1 # $Id$
2
3 PNAME="avahi"
4 PVER="0.6.31"
5 PBUILD="r7"
6
7 SPLIT_PACKAGES="avahi avahi-gtk avahi-gtk3 avahi-qt3 avahi-qt4"
8
9 PCAT="net-dns"
10 HOMEPAGE="http://avahi.org/"
11
12 AVAHI_DEPEND=">= dev-libs/libdaemon-0.14
13 >= dev-libs/expat-2
14 >= dev-libs/glib2-2.40
15 >= sys-apps/dbus-1.8
16 >= sys-libs/libcap-2.24
17 >= sys-libs/libssp-4.8
18 >= sys-libs/libstdc++-4.8
19 >= virtual/initscripts
20 >= net-dns/nss-mdns-0.10"
21 GTK_DEPEND=">= x11-libs/gtk2+-2.24
22 >= gnome-base/libglade-2.6.4"
23 GTK3_DEPEND=">= x11-libs/gtk3+-3.12"
24 QT3_DEPEND=">= x11-libs/qt3-3.3"
25 QT4_DEPEND=">= x11-libs/qt4-core-4.8"
26
27 SDEPEND="${AVAHI_DEPEND}
28 ${GTK_DEPEND}
29 ${QT3_DEPEND}
30 ${QT4_DEPEND}
31 >= dev-util/intltool-0.50
32 >= dev-util/pkgconfig-0.25"
33
34 SRCFILE="${PNAME}-${PVER}.tar.gz"
35 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
36
37 sminclude mtools qt3 qt4 multilib systemd cleanutils
38
39 SRC_URI=(
40 http://avahi.org/download/${SRCFILE}
41 mirror://${PNAME}/${SRCFILE}
42 )
43
44 UP2DATE="updatecmd ${HOMEPAGE}/download | grep ${PNAME}- | lasttarball gz"
45
46 split_info_avahi()
47 {
48 DESCRIPTION="Avahi is a system which facilitates service discovery on a local network."
49 DEPEND="${AVAHI_DEPEND}"
50 }
51
52 split_info_avahi-gtk()
53 {
54 DESCRIPTION="GTK2 user interface library for Avahi."
55 DEPEND="== net-dns/avahi-${PVER}
56 ${GTK_DEPEND}"
57 }
58
59 split_info_avahi-gtk3()
60 {
61 DESCRIPTION="GTK3 user interface library for Avahi."
62 DEPEND="== net-dns/avahi-${PVER}
63 ${GTK3_DEPEND}"
64 }
65
66 split_info_avahi-qt3()
67 {
68 DESCRIPTION="QT3 user interface library for Avahi."
69 DEPEND="== net-dns/avahi-${PVER}
70 ${QT3_DEPEND}"
71 }
72
73 split_info_avahi-qt4()
74 {
75 DESCRIPTION="QT4 user interface library for Avahi."
76 DEPEND="== net-dns/avahi-${PVER}
77 ${QT4_DEPEND}"
78 }
79
80 pkg_setup()
81 {
82 preinstall_avahi
83 }
84
85 src_prepare()
86 {
87 munpack ${SRCFILE} || die
88 all-abis 'sed -i "s:-DG[^ ]*_DISABLE_DEPRECATED=1::g" avahi-ui/Makefile.* || die'
89 }
90
91 src_compile()
92 {
93 local myconf="--localstatedir=/var
94 --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \
95 --with-distro=none
96 --enable-compat-libdns_sd
97 --enable-compat-howl
98 --enable-autoipd
99 --with-autoipd-user=avahi
100 --with-autoipd-group=avahi
101 --disable-python-dbus
102 --disable-pygtk
103 --disable-monodoc
104 --disable-doxygen-doc
105 --disable-xmltoman
106 --disable-gdbm
107 --disable-mono
108 --disable-python
109 --enable-dbus
110 --enable-glib
111 --enable-gtk
112 --enable-gtk3"
113
114 # qt3/qt4 are not multilib on 64bit systems!
115 # exclude them from multlib, but build everything else mutlilib
116 if [[ ${ARCH} = x86_64 ]]
117 then
118 only-m32 mconfigure ${myconf} --disable-qt3 --disable-qt4 || die
119 only-m64 mconfigure ${myconf} --enable-qt3 --enable-qt4 || die
120 else
121 mconfigure ${myconf} --enable-qt3 --enable-qt4 || die
122 fi
123
124 mmake || die
125 }
126
127 src_install_avahi()
128 {
129 mmake DESTDIR=${BINDIR} install || die
130
131 # for howl and mdnsresponder compat
132 mlink avahi-compat-howl.pc /usr/$(mlibdir)/pkgconfig/howl.pc || die
133 mlink avahi-compat-libdns_sd.pc /usr/$(mlibdir)/pkgconfig/libdns_sd.pc || die
134 mlink avahi-compat-libdns_sd/dns_sd.h /usr/include/dns_sd.h || die
135
136 # remove examples
137 mdelete /etc/avahi/services/ssh.service || die
138 mdelete /etc/avahi/services/sftp-ssh.service || die
139
140 minstalldocs ChangeLog LICENSE README
141
142 # remove stuff from other packages
143 # gtk2+3
144 mdelete /usr/bin/bssh || die
145 mdelete /usr/bin/bshell || die
146 mdelete /usr/bin/bvnc || die
147 mdelete -r /usr/share/applications || die
148 mdelete -r /usr/share/avahi/interfaces || die
149 mdelete -r /usr/include/avahi-ui || die
150 mdelete /usr/$(mlibdir)/libavahi-ui\*.\* || die
151 mdelete /usr/$(mlibdir)/pkgconfig/avahi-ui-gtk3.pc
152 mdelete /usr/$(mlibdir)/pkgconfig/avahi-ui.pc
153 if [[ $(mlibdir) != lib ]]
154 then
155 mdelete /usr/lib/libavahi-ui\*.\* || die
156 mdelete /usr/lib/pkgconfig/avahi-ui-gtk3.pc
157 mdelete /usr/lib/pkgconfig/avahi-ui.pc
158 fi
159 # qt3
160 mdelete /usr/$(mlibdir)/libavahi-qt3\*.\* || die
161 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt3\*.\* || die
162 mdelete -r /usr/include/avahi-qt3 || die
163 # qt4
164 mdelete /usr/$(mlibdir)/libavahi-qt4\*.\* || die
165 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt4\*.\* || die
166 mdelete -r /usr/include/avahi-qt4 || die
167 }
168
169 src_install_avahi-gtk()
170 {
171 # first install needed libs to fix link issues
172 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
173 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
174 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
175
176 # install gtk-ui
177 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
178
179 # then remove temp libs
180 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
181 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
182 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
183 mdelete -r /usr/include/avahi-common || die
184 mdelete -r /usr/include/avahi-client || die
185 mdelete -r /usr/include/avahi-glib || die
186
187 # only keep gtk2 libs
188 zapmost ${BINDIR} \
189 usr/$(mlibdir)/libavahi-ui.* \
190 $([[ $(mlibdir) != lib ]] && echo 'usr/lib/libavahi-ui.*') \
191 || die
192
193 # missing pkgconfig file
194 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
195 all-abis 'minstallfile avahi-ui.pc /usr/$(mlibdir)/pkgconfig' || die
196 }
197
198 src_install_avahi-gtk3()
199 {
200 # first install needed libs to fix link issues
201 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
202 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
203 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
204
205 # install gtk-ui
206 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
207
208 # then remove temp libs
209 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
210 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
211 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
212 mdelete -r /usr/include/avahi-common || die
213 mdelete -r /usr/include/avahi-client || die
214 mdelete -r /usr/include/avahi-glib || die
215
216 # only keep gtk3 libs, remove gtk2 libs
217 mdelete /usr/$(mlibdir)/libavahi-ui.\* || die
218 if [[ $(mlibdir) != lib ]]
219 then
220 mdelete /usr/lib/libavahi-ui.\* || die
221 fi
222
223 # missing pkgconfig file
224 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
225 all-abis 'minstallfile avahi-ui-gtk3.pc /usr/$(mlibdir)/pkgconfig' || die
226 }
227
228 src_install_avahi-qt3()
229 {
230 # first install needed libs to fix link issues
231 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
232
233 # install qt-ui
234 mmake -j1 -C avahi-qt DESTDIR=${BINDIR} install || die
235
236 # then remove temp libs
237 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
238 mdelete -r /usr/include/avahi-common || die
239
240 # missing pkgconfig file
241 if [[ ${ARCH} = x86_64 ]]
242 then
243 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
244 only-m64 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
245 else
246 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
247 all-abis 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
248 fi
249
250 zapmost ${BINDIR} \
251 usr/$(mlibdir)/libavahi-qt3*.* \
252 usr/$(mlibdir)/pkgconfig/avahi-qt3*.* \
253 usr/include/avahi-qt3 \
254 || die
255 }
256
257 src_install_avahi-qt4()
258 {
259 # first install needed libs to fix link issues
260 mmake -C avahi-common DESTDIR=${BINDIR} install || die
261
262 # install qt-ui
263 mmake -C avahi-qt DESTDIR=${BINDIR} install || die
264
265 # then remove temp libs
266 mmake -C avahi-common DESTDIR=${BINDIR} uninstall || die
267 mdelete -r /usr/include/avahi-common || die
268
269 # missing pkgconfig file
270 if [[ ${ARCH} = x86_64 ]]
271 then
272 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
273 only-m64 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
274 else
275 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
276 all-abis 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
277 fi
278
279 zapmost ${BINDIR} \
280 usr/$(mlibdir)/libavahi-qt4*.* \
281 usr/$(mlibdir)/pkgconfig/avahi-qt4*.* \
282 usr/include/avahi-qt4 \
283 || die
284 }
285
286 preinstall_avahi()
287 {
288 if [[ ! -z $(magequery -n mdnsresponder) ]]
289 then
290 echo -e ${COLRED}
291 echo -e "Error: net-misc/mdnsresponder is installed!!"
292 echo -e "mdnsresponder is now superseeded by avahi and deprecated in this distribution."
293 echo -e "Please uninstall net-misc/mdnsresponder first!"
294 echo -e ${COLDEFAULT}
295 die "net-misc/mdnsresponder found!"
296 fi
297
298 # adding avahi user
299 mgroupadd -o "-g 303" netdev
300 mgroupadd -o "-g 304" avahi
301 museradd -o "-u 304 -g avahi -d /dev/null -s /bin/false" avahi
302 }
303
304 postinstall_avahi()
305 {
306 mstartunit avahi-daemon.service
307 }
308
309 postremove_avahi()
310 {
311 mstopunit avahi-daemon.service
312 }