Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 21093 - (show annotations) (download)
Tue Mar 11 08:24:45 2014 UTC (10 years, 2 months ago) by niro
Original Path: trunk/extras/avahi/avahi-0.6.31-r6.smage2
File size: 7924 byte(s)
-disable deprecated functions to fix ftbfs against newer gtk2 versions, use mdelete() everywhere and set systemdunit path
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 # qt3
146 mdelete /usr/$(mlibdir)/libavahi-qt3\*.\* || die
147 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt3\*.\* || die
148 mdelete -r /usr/include/avahi-qt3 || die
149 # qt4
150 mdelete /usr/$(mlibdir)/libavahi-qt4\*.\* || die
151 mdelete /usr/$(mlibdir)/pkgconfig/avahi-qt4\*.\* || die
152 mdelete -r /usr/include/avahi-qt4 || die
153 }
154
155 src_install_avahi-gtk()
156 {
157 # first install needed libs to fix link issues
158 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
159 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
160 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
161
162 # install gtk-ui
163 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
164
165 # then remove temp libs
166 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
167 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
168 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
169 mdelete -r /usr/include/avahi-common || die
170 mdelete -r /usr/include/avahi-client || die
171 mdelete -r /usr/include/avahi-glib || die
172
173 # only keep gtk2 libs
174 zapmost ${BINDIR} \
175 usr/$(mlibdir)/libavahi-ui.\* \
176 $([[ $(mlibdir) != lib ]] && echo 'usr/lib/libavahi-ui.*') \
177 || die
178
179 # missing pkgconfig file
180 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
181 all-abis 'minstallfile avahi-ui.pc /usr/$(mlibdir)/pkgconfig' || die
182 }
183
184 src_install_avahi-gtk3()
185 {
186 # first install needed libs to fix link issues
187 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
188 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} install || die
189 mmake -j1 -C avahi-client DESTDIR=${BINDIR} install || die
190
191 # install gtk-ui
192 mmake -j1 -C avahi-ui DESTDIR=${BINDIR} install || die
193
194 # then remove temp libs
195 mmake -j1 -C avahi-client DESTDIR=${BINDIR} uninstall || die
196 mmake -j1 -C avahi-glib DESTDIR=${BINDIR} uninstall || die
197 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
198 mdelete -r /usr/include/avahi-common || die
199 mdelete -r /usr/include/avahi-client || die
200 mdelete -r /usr/include/avahi-glib || die
201
202 # only keep gtk3 libs, remove gtk2 libs
203 mdelete /usr/$(mlibdir)/libavahi-ui.* || die
204 if [[ $(mlibdir) != lib ]]
205 then
206 mdelete /usr/lib/libavahi-ui.* || die
207 fi
208
209 # missing pkgconfig file
210 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
211 all-abis 'minstallfile avahi-ui-gtk3.pc /usr/$(mlibdir)/pkgconfig' || die
212 }
213
214 src_install_avahi-qt3()
215 {
216 # first install needed libs to fix link issues
217 mmake -j1 -C avahi-common DESTDIR=${BINDIR} install || die
218
219 # install qt-ui
220 mmake -j1 -C avahi-qt DESTDIR=${BINDIR} install || die
221
222 # then remove temp libs
223 mmake -j1 -C avahi-common DESTDIR=${BINDIR} uninstall || die
224 mdelete -r /usr/include/avahi-common || die
225
226 # missing pkgconfig file
227 if [[ ${ARCH} = x86_64 ]]
228 then
229 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
230 only-m64 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
231 else
232 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
233 all-abis 'minstallfile avahi-qt3.pc /usr/$(mlibdir)/pkgconfig' || die
234 fi
235
236 zapmost ${BINDIR} \
237 usr/$(mlibdir)/libavahi-qt3*.* \
238 usr/$(mlibdir)/pkgconfig/avahi-qt3*.* \
239 usr/include/avahi-qt3 \
240 || die
241 }
242
243 src_install_avahi-qt4()
244 {
245 # first install needed libs to fix link issues
246 mmake -C avahi-common DESTDIR=${BINDIR} install || die
247
248 # install qt-ui
249 mmake -C avahi-qt DESTDIR=${BINDIR} install || die
250
251 # then remove temp libs
252 mmake -C avahi-common DESTDIR=${BINDIR} uninstall || die
253 mdelete -r /usr/include/avahi-common || die
254
255 # missing pkgconfig file
256 if [[ ${ARCH} = x86_64 ]]
257 then
258 only-m64 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
259 only-m64 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
260 else
261 all-abis 'minstalldir /usr/$(mlibdir)/pkgconfig' || die
262 all-abis 'minstallfile avahi-qt4.pc /usr/$(mlibdir)/pkgconfig' || die
263 fi
264
265 zapmost ${BINDIR} \
266 usr/$(mlibdir)/libavahi-qt4*.* \
267 usr/$(mlibdir)/pkgconfig/avahi-qt4*.* \
268 usr/include/avahi-qt4 \
269 || die
270 }
271
272 preinstall_avahi()
273 {
274 if [[ ! -z $(magequery -n mdnsresponder) ]]
275 then
276 echo -e ${COLRED}
277 echo -e "Error: net-misc/mdnsresponder is installed!!"
278 echo -e "mdnsresponder is now superseeded by avahi and deprecated in this distribution."
279 echo -e "Please uninstall net-misc/mdnsresponder first!"
280 echo -e ${COLDEFAULT}
281 die "net-misc/mdnsresponder found!"
282 fi
283
284 # adding avahi user
285 ${MLIBDIR}/mgroupadd -o "-g 303" netdev
286 ${MLIBDIR}/mgroupadd -o "-g 304" avahi
287 ${MLIBDIR}/museradd -o "-u 304 -g avahi -d /dev/null -s /bin/false" avahi
288 }
289
290 postinstall_avahi()
291 {
292 mstartunit avahi-daemon.service
293 }
294
295 postremove_avahi()
296 {
297 mstopunit avahi-daemon.service
298 }