Magellan Linux

Annotation of /trunk/extras/avahi/avahi-0.6.31-r6.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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