Magellan Linux

Contents of /branches/magellan-next/core/samba/samba-3.5.5-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 7002 - (show annotations) (download)
Mon Sep 27 16:49:58 2010 UTC (13 years, 7 months ago) by niro
File size: 6818 byte(s)
auto added: ver bump to 3.5.5-r1
1 # $Id: samba-3.4.8-r1.smage2 5455 2010-06-24 22:24:45Z niro $
2
3 PNAME="samba"
4 PVER="3.5.5"
5 PBUILD="r1"
6
7 PCATEGORIE="net-fs"
8 STATE="unstable"
9
10 DESCRIPTION="Samba provides seamless file and print services to SMB/CIFS clients."
11 HOMEPAGE="http://www.samba.org"
12
13 DEPEND=">= virtual/glibc
14 >= net-print/cups-1.4
15 >= dev-libs/popt-1.16
16 >= sys-libs/ncurses-5.7
17 >= sys-libs/readline-6.1
18 >= app-admin/gamin-0.1.10
19 >= dev-libs/openssl-1.0.0
20 >= net-dns/avahi-0.6.27"
21
22 SDEPEND=">= sys-dev/automake-4
23 >= sys-dev/autoconf-5
24 >= sys-apps/sed-4"
25
26 SRCFILE="${PNAME}-${PVER}.tar.gz"
27 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
28
29 FILESDIR="${SOURCEDIR}/samba"
30
31 sminclude mtools
32
33 SRC_URI=(
34 http://us1.samba.org/samba/ftp/stable/${SRCFILE}
35 mirror://${PNAME}/${SRCFILE}
36 mirror://${PNAME}/smb.conf-3.0.14a
37 mirror://${PNAME}/lmhosts
38 mirror://${PNAME}/smbusers
39 mirror://${PNAME}/samba.rc
40 )
41
42 UP2DATE="updatecmd http://ftp.samba.org/samba/ftp | grep ${PNAME}-[0-9].* | lasttarball gz"
43
44 src_prepare()
45 {
46 munpack ${SRCFILE} || die
47 cd ${SRCDIR}
48
49 # examples: to be copied as docs
50 rm -rf ${SRCDIR}/examples.ORIG || die
51
52 # add our vendor suffix
53 sed -i "s:^\(SAMBA_VERSION_VENDOR_SUFFIX=\).*:\1\"magellan\":" ${SRCDIR}/source3/VERSION || die
54 cd ${SRCDIR}/source3
55 sh script/mkversion.sh || die
56
57 # compilation fix
58 # (u)mount.cifs is broken; missing include/version.h header
59 ln -snf ../include ${SRCDIR}/source3/client || die
60 }
61
62 src_compile()
63 {
64 cd ${SRCDIR}/source3
65
66 # remove swat completely now; since we have no httpd server yet
67 # if really needed we make an extra package to save diskspace
68 # --disable-swat option is there, no patches needed anymore ;)
69 mconfigure \
70 --with-fhs \
71 --sysconfdir=/etc/samba \
72 --localstatedir=/var \
73 --with-configdir=/etc/samba \
74 --libdir=/usr/$(mlibdir)/samba \
75 --with-swatdir=/usr/share/doc/${PNAME}-${PVER}/swat \
76 --with-piddir=/var/run/samba \
77 --with-lockdir=/var/cache/samba \
78 --with-logfilebase=/var/log/samba \
79 --with-privatedir=/var/lib/samba/private \
80 --enable-shared-libs \
81 --with-cifsmount \
82 --with-automount \
83 --with-libsmbclient \
84 --with-syslog \
85 --without-acl-support \
86 --enable-cups \
87 --without-krb5 \
88 --without-ldap \
89 --with-readline \
90 --with-winbind \
91 --without-pam \
92 --without-pam_smbpass \
93 --with-quotas \
94 --with-sys-quotas \
95 --with-cifsmount=no \
96 --disable-swat \
97 --enable-avahi \
98 --disable-developer \
99 --disable-dmalloc \
100 || die
101
102 mmake proto || die
103 mmake everything || die
104
105 # build mount.cifs separatly to fix pic issues
106 mmake bin/mount.cifs || die
107 mmake bin/umount.cifs || die
108 }
109
110 src_install()
111 {
112 cd ${SRCDIR}/source3
113
114 # needed directories
115 minstalldir /etc/samba || die
116 minstalldir /sbin || die
117 minstalldir /usr/$(mlibdir)/cups/backend || die
118 minstalldir /usr/share/doc/${PNAME}-${PVER}/examples || die
119
120 # needed directories by samba at runtime
121 mkeepdir /var/log/samba || die
122 mkeepdir /var/run/samba || die
123 mkeepdir /var/cache/samba || die
124 mkeepdir /var/lib/samba/netlogon || die
125 mkeepdir /var/lib/samba/profiles || die
126 mkeepdir /var/lib/samba/printers/W32X86 || die
127 mkeepdir /var/lib/samba/printers/WIN40 || die
128 mkeepdir /var/lib/samba/printers/W32ALPHA || die
129 mkeepdir /var/lib/samba/printers/W32MIPS || die
130 mkeepdir /var/lib/samba/printers/W32PPC || die
131 mkeepdir /var/lib/samba/private || die
132 mkeepdir /var/spool/samba || die
133
134 # fix permissions
135 mchmod 0700 /var/lib/samba/private || die
136 mchmod 1777 /var/spool/samba || die
137
138 make DESTDIR=${BINDIR} install-everything || die
139
140 # if exist remove *.old binaries
141 if [[ -n $(find ${BINDIR}/usr/bin -type f -name '*.old') ]]
142 then
143 for i in ${BINDIR}/usr/bin/*.old
144 do
145 [[ -e ${i} ]] && rm -f ${i} || die
146 done
147 fi
148
149 # install wins nsswitch extensions
150 minstalldir /usr/$(mlibdir) || die
151 minstallfile ${SRCDIR}/nsswitch/libnss_wins.so /usr/$(mlibdir) || die
152 mlink libnss_wins.so /usr/$(mlibdir)/libnss_wins.so.2 || die
153 minstallfile ${SRCDIR}/nsswitch/libnss_winbind.so /usr/$(mlibdir) || die
154 mlink libnss_winbind.so /usr/$(mlibdir)/libnss_winbind.so.2 || die
155
156 # install cifs tools
157 minstallexec bin/mount.cifs || die
158 minstallexec bin/umount.cifs || die
159 mchmod 4755 /usr/bin/mount.cifs || die
160 mchmod 4755 /usr/bin/umount.cifs || die
161
162 # add support for mount
163 mlink ../usr/bin/mount.cifs /sbin/mount.cifs || die
164
165 # samba doesn't create these symlinks anymore
166 mlink samba/libsmbclient.so /usr/$(mlibdir)/libsmbclient.so.0 || die
167 mlink samba/libsmbclient.so /usr/$(mlibdir)/libsmbclient.so || die
168 mlink samba/libtalloc.so /usr/$(mlibdir)/libtalloc.so.1 || die
169 mlink samba/libtalloc.so /usr/$(mlibdir)/libtalloc.so || die
170 mlink samba/libtdb.so /usr/$(mlibdir)/libtdb.so.1 || die
171 mlink samba/libtdb.so /usr/$(mlibdir)/libtdb.so || die
172 mlink samba/libwbclient.so /usr/$(mlibdir)/libwbclient.so.0 || die
173 mlink samba/libwbclient.so /usr/$(mlibdir)/libwbclient.so || die
174
175 # add cups printing support
176 mlink ../../../bin/smbspool /usr/$(mlibdir)/cups/backend/smb || die
177
178 # install our config files
179 # fake smb.conf to get smbmount work
180 memptyfile /etc/samba/smb.conf || die
181
182 # our smb example config
183 minstalletc smb.conf-3.0.14a smb.conf.example /etc/samba || die
184
185 # our lmhosts and smbusers config
186 minstalletc lmhosts lmhosts /etc/samba || die
187 minstalletc smbusers smbusers /etc/samba || die
188
189 # our initscript
190 minstallrc samba.rc samba || die
191
192 # # install example docs - not wanted anymore to save some space
193 # cp -a ${SRCDIR}/examples/* ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/examples || die
194 #
195 # # fix all permissions
196 # chmod -R 755 $(find ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/examples -type d) || die
197 # chmod -R 644 $(find ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/examples ! -type d) || die
198
199 # # remove unneeded docs, this saves some space ;)
200 # rm -rf ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/swat/help/{guide,howto,devel} || die
201 # rm -rf ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/swat/using_samba || die
202
203 # using a patch now
204 # # remove swat completely now; since we have no httpd server yet
205 # # if really needed we make an extra package to save diskspace
206 # rm -f ${BINDIR}/usr/sbin/swat || die
207 # rm -f ${BINDIR}/usr/share/man/man8/swat.8 || die
208 # rm -rf ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/swat || die
209
210 # other docs
211 cd ${SRCDIR}
212 minstalldocs COPYING Manifest README REVISION Read-Manifest-Now Roadmap WHATSNEW.txt || die
213 }
214
215 postinstall()
216 {
217 echo
218 echo "To initialize samba's password database, please run:"
219 echo " pdbedit --force-initialized-passwords"
220 echo
221 echo "If you experience client locks in file transfers _only_, try the parameter"
222 echo " use sendfile = no (man smb.conf(5), man sendfile(2))"
223 echo
224 echo "There also seem some problems with the smbfs implementation of the recent 2.6 kernels."
225 echo "If you experience problems (lockups) with smbfs, try cifs as an alternative."
226 echo
227 }