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