Magellan Linux

Contents of /branches/R11-stable/extras/avahi/avahi-0.6.31-r6.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 21699 - (show annotations) (download)
Mon Jul 21 09:35:07 2014 UTC (9 years, 9 months ago) by niro
File size: 8241 byte(s)
-release branches/R11-stable
1 # $Id$
2
3 PNAME="avahi"
4 PVER="0.6.31"
5 PBUILD="r6"
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.38
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.10"
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 src_prepare()
81 {
82 munpack ${SRCFILE} || die
83 all-abis 'sed -i "s:-DG[^ ]*_DISABLE_DEPRECATED=1::g" avahi-ui/Makefile.* || die'
84 }
85
86 src_compile()
87 {
88 local myconf="--localstatedir=/var
89 --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \
90 --with-distro=none
91 --enable-compat-libdns_sd
92 --enable-compat-howl
93 --enable-autoipd
94 --with-autoipd-user=avahi
95 --with-autoipd-group=avahi
96 --disable-python-dbus
97 --disable-pygtk
98 --disable-monodoc
99 --disable-doxygen-doc
100 --disable-xmltoman
101 --disable-gdbm
102 --disable-mono
103 --disable-python
104 --enable-dbus
105 --enable-glib
106 --enable-gtk
107 --enable-gtk3"
108
109 # qt3/qt4 are not multilib on 64bit systems!
110 # exclude them from multlib, but build everything else mutlilib
111 if [[ ${ARCH} = x86_64 ]]
112 then
113 only-m32 mconfigure ${myconf} --disable-qt3 --disable-qt4 || die
114 only-m64 mconfigure ${myconf} --enable-qt3 --enable-qt4 || die
115 else
116 mconfigure ${myconf} --enable-qt3 --enable-qt4 || die
117 fi
118
119 mmake || die
120 }
121
122 src_install_avahi()
123 {
124 mmake DESTDIR=${BINDIR} install || die
125
126 # for howl and mdnsresponder compat
127 mlink avahi-compat-howl.pc /usr/$(mlibdir)/pkgconfig/howl.pc || die
128 mlink avahi-compat-libdns_sd.pc /usr/$(mlibdir)/pkgconfig/libdns_sd.pc || die
129 mlink avahi-compat-libdns_sd/dns_sd.h /usr/include/dns_sd.h || die
130
131 # remove examples
132 mdelete /etc/avahi/services/ssh.service || die
133 mdelete /etc/avahi/services/sftp-ssh.service || die
134
135 minstalldocs ChangeLog LICENSE README
136
137 # remove stuff from other packages
138 # gtk2+3
139 mdelete /usr/bin/bssh || die
140 mdelete /usr/bin/bshell || die
141 mdelete /usr/bin/bvnc || die
142 mdelete -r /usr/share/applications || die
143 mdelete -r /usr/share/avahi/interfaces || die
144 mdelete -r /usr/include/avahi-ui || die
145 mdelete /usr/$(mlibdir)/libavahi-ui\*.\* || die
146 mdelete /usr/$(mlibdir)/pkgconfig/avahi-ui-gtk3.pc
147 mdelete /usr/$(mlibdir)/pkgconfig/avahi-ui.pc
148 if [[ $(mlibdir) != lib ]]
149 then
150 mdelete /usr/lib/libavahi-ui\*.\* || die
151 mdelete /usr/lib/pkgconfig/avahi-ui-gtk3.pc
152 mdelete /usr/lib/pkgconfig/avahi-ui.pc
153 fi
154 # qt3
155 mdelete /usr/$(mlibdir)/libavahi-qt3\*.\* || die
156 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt3\*.\* || die
157 mdelete -r /usr/include/avahi-qt3 || die
158 # qt4
159 mdelete /usr/$(mlibdir)/libavahi-qt4\*.\* || die
160 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt4\*.\* || die
161 mdelete -r /usr/include/avahi-qt4 || die
162 }
163
164 src_install_avahi-gtk()
165 {
166 # first install needed libs to fix link issues
167 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
168 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
169 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
170
171 # install gtk-ui
172 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
173
174 # then remove temp libs
175 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
176 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
177 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
178 mdelete -r /usr/include/avahi-common || die
179 mdelete -r /usr/include/avahi-client || die
180 mdelete -r /usr/include/avahi-glib || die
181
182 # only keep gtk2 libs
183 zapmost ${BINDIR} \
184 usr/$(mlibdir)/libavahi-ui.* \
185 $([[ $(mlibdir) != lib ]] && echo 'usr/lib/libavahi-ui.*') \
186 || die
187
188 # missing pkgconfig file
189 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
190 all-abis 'minstallfile avahi-ui.pc /usr/$(mlibdir)/pkgconfig' || die
191 }
192
193 src_install_avahi-gtk3()
194 {
195 # first install needed libs to fix link issues
196 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
197 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
198 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
199
200 # install gtk-ui
201 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
202
203 # then remove temp libs
204 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
205 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
206 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
207 mdelete -r /usr/include/avahi-common || die
208 mdelete -r /usr/include/avahi-client || die
209 mdelete -r /usr/include/avahi-glib || die
210
211 # only keep gtk3 libs, remove gtk2 libs
212 mdelete /usr/$(mlibdir)/libavahi-ui.\* || die
213 if [[ $(mlibdir) != lib ]]
214 then
215 mdelete /usr/lib/libavahi-ui.\* || die
216 fi
217
218 # missing pkgconfig file
219 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
220 all-abis 'minstallfile avahi-ui-gtk3.pc /usr/$(mlibdir)/pkgconfig' || die
221 }
222
223 src_install_avahi-qt3()
224 {
225 # first install needed libs to fix link issues
226 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
227
228 # install qt-ui
229 mmake -j1 -C avahi-qt DESTDIR=${BINDIR} install || die
230
231 # then remove temp libs
232 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
233 mdelete -r /usr/include/avahi-common || die
234
235 # missing pkgconfig file
236 if [[ ${ARCH} = x86_64 ]]
237 then
238 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
239 only-m64 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
240 else
241 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
242 all-abis 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
243 fi
244
245 zapmost ${BINDIR} \
246 usr/$(mlibdir)/libavahi-qt3*.* \
247 usr/$(mlibdir)/pkgconfig/avahi-qt3*.* \
248 usr/include/avahi-qt3 \
249 || die
250 }
251
252 src_install_avahi-qt4()
253 {
254 # first install needed libs to fix link issues
255 mmake -C avahi-common DESTDIR=${BINDIR} install || die
256
257 # install qt-ui
258 mmake -C avahi-qt DESTDIR=${BINDIR} install || die
259
260 # then remove temp libs
261 mmake -C avahi-common DESTDIR=${BINDIR} uninstall || die
262 mdelete -r /usr/include/avahi-common || die
263
264 # missing pkgconfig file
265 if [[ ${ARCH} = x86_64 ]]
266 then
267 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
268 only-m64 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
269 else
270 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
271 all-abis 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
272 fi
273
274 zapmost ${BINDIR} \
275 usr/$(mlibdir)/libavahi-qt4*.* \
276 usr/$(mlibdir)/pkgconfig/avahi-qt4*.* \
277 usr/include/avahi-qt4 \
278 || die
279 }
280
281 preinstall_avahi()
282 {
283 if [[ ! -z $(magequery -n mdnsresponder) ]]
284 then
285 echo -e ${COLRED}
286 echo -e "Error: net-misc/mdnsresponder is installed!!"
287 echo -e "mdnsresponder is now superseeded by avahi and deprecated in this distribution."
288 echo -e "Please uninstall net-misc/mdnsresponder first!"
289 echo -e ${COLDEFAULT}
290 die "net-misc/mdnsresponder found!"
291 fi
292
293 # adding avahi user
294 ${MLIBDIR}/mgroupadd -o "-g 303" netdev
295 ${MLIBDIR}/mgroupadd -o "-g 304" avahi
296 ${MLIBDIR}/museradd -o "-u 304 -g avahi -d /dev/null -s /bin/false" avahi
297 }
298
299 postinstall_avahi()
300 {
301 mstartunit avahi-daemon.service
302 }
303
304 postremove_avahi()
305 {
306 mstopunit avahi-daemon.service
307 }