This commit was manufactured by cvs2svn to create branch 'SAMBA_3_0'.(This used to...
[sfrench/samba-autobuild/.git] / packaging / Caldera / OpenLinux / samba3.spec.tmpl
1 %define Version         PVERSION
2 %define date            PRELEASE
3 %define Vendor          Caldera
4 %define Dist            OpenLinux
5 %define EtcSamba        /etc/samba.d
6
7 Name            : samba
8 Version         : %{Version}
9 Release         : %{date}
10 Group           : Server/Network
11
12 Summary      : Samba SMB client and server.
13
14 Copyright      : Andrew Tridgell, John H Terpstra; GPL Version 2
15 Packager      : Klaus Singvogel <klaus@caldera.de>
16 #Icon              : Caldera-daemon.gif
17 URL              : http://samba.org/samba
18
19 Requires        : libpam >= 0.66, SysVinit-scripts >= 1.04-6
20
21
22 BuildRoot       : /tmp/%{Name}-%{Version}
23
24 Source: ftp://ftp.samba.org/pub/samba/%{Name}-%{Version}.tar.gz
25 #Patch0: %{Name}-%{Version}-smbmount.patch
26 #Patch1: %{Name}-%{Version}-install.patch
27 #Patch2: %{Name}-%{Version}-smbconf.patch
28
29
30 %Package doc
31 Group           : Server/Network
32
33 Summary      : Documentation on SAMBA.
34
35
36 %Package -n smbfs
37 Group           : System/Network
38
39 Summary         : Mount and unmount commands for SMB filesystems (smbfs).
40
41
42 %Package -n swat
43 Group           : Administration/Network
44 Requires       : setup >= 2.0-2, tcp_wrappers
45
46 Summary         : Samba Web Adminsitration Tool.
47
48 %Package -n libsmbclient
49 Group           : System/Network
50
51 Summary         : Samba Client Library.
52
53 %Description
54 Samba provides an SMB server which can be used to provide network
55 services to SMB (sometimes called "Lan Manager") clients, including
56 various versions of MS Windows, OS/2, and other Linux machines.
57
58 %Description -l de
59 Samba stellt einen SMB Server zur Verfügung, mit dem Netzwerkdienste für SMB
60 (auch "Lan Manager" genannt) Clients bereitgestellt werden können. Dies
61 schließt verschiedene Versionen von MS Windows, OS/2 und andere Linux
62 Maschinen ein.
63
64 %Description -l es
65 Samba dispone de un servidor SMB que puede utilizarse para proporcionar
66 servicios de red a clientes SMB (a veces conocido como "Lan Manager"),
67 incluyendo varias versiones de MS Windows, OS/2 y otras máquinas Linux.
68
69 %Description -l fr
70 Samba fournit un serveur SMB qui peut être utilisé pour fournir des services
71 de réseau aux clients SMB (parfois appelés "Lan Manager"), comportant
72 diverses versions de MS Windows, OS/2 et d'autres machines Linux.
73
74 %Description -l it
75 Samba fornisce un server SMB che può essere usato per fornire servizi
76 di rete a client SMB (talvolta chiamato "Lan Manager"), comprese varie
77 versioni di MS Windows, OS/2 e altre macchine Linux.
78
79 %Description -l pt
80 O Samba fornece um servidor de SMB que pode ser usado para fornecer serviços de
81 rede aos clientes de SMB (denominado por vezes como "Lan Manager"), incluindo
82 várias versões do Windows, OS/2 e outras máquinas Linux.
83
84 %Description doc
85 This package contains extensive SAMBA documentation, including a FAQ,
86 comprehensive usage documentation, and a number of examples.
87
88 %Description -l de doc
89 Dieses Paket enthält eine ausführliche SAMBA Dokumentation, inklusive
90 einer FAQ, umfassender Gebrauchsdokumentation und einer Reihe von
91 Beispielen.
92
93 %Description -l es doc
94 Este paquete contiene una extensa documentación sobre SAMBA, incluyendo
95 FAQ (Preguntas de Uso Frecuente), documentación sobre el uso y algunos
96 ejemplos.
97
98 %Description -l fr doc
99 Ce paquetage contient une documentation complète sur Samba, y compris
100 une FAQ détaillée de son utilisation et un certain nombre d'exemples.
101
102 %Description -l it doc
103 Questo pacchetto contiene la documentazione su SAMBA tra cui una FAQ
104 una esaustiva documentazione d'uso e un certo numero di esempi.
105
106 %Description -l pt doc
107 Este pacote contém alguma documentação extensa sobre o SAMBA, incluindo a FAQ,
108 alguma documentação compreensiva sobre a utilização e alguns exemplos.
109
110 %Description -n smbfs
111 This package includes the tools necessary to mount filesystems from
112 SMB servers.
113
114 %Description -l de -n smbfs
115 Dieses Paket enthält die nötigen Tools, um Dateisysteme von SMB-Servern
116 zu mounten.
117
118 %Description -l es -n smbfs
119 este paqeute incluye las herramientas necesarias para montar sistemas de
120 ficheros de servidores SMB.
121
122 %Description -l fr -n smbfs
123 Ce paquetage contient les outils nécessaires pour monter des systèmes
124 de fichiers sur des serveurs SMB.
125
126 %Description -l it -n smbfs
127 Questo pacchetto contiene gli strumenti necessari per montare filesystem
128 da server SMB.
129
130 %Description -l pt -n smbfs
131 Este pacote contém as ferramentas necessárias para montar sistema de
132 ficheiros de servidores SMB.
133
134 %Description -n swat
135 SWAT allows a Samba administrator to configure the complex smb.conf
136 file via a Web browser.  It also provides links to all the configurable
137 options in the smb.conf file allowing an administrator to easily look
138 up the effects of any change.
139
140 %Description -l de -n swat
141 Mit SWAT kann ein Samba-Administrator die komplexe smb.conf
142 Datei mit Hilfe eines Web-Browsers konfigurieren.  Es stellt auch Links zu
143 allen konfigurierbaren Optionen in der smb.conf Datei bereit, wodurch ein
144 Administrator die Auswirkungen einer Änderung leicht nachvollziehen kann.
145
146 %Description -l es -n swat
147 SWAT permite a un administrador de Samba configurar el complejo fichero
148 smb.conf mediante una navegador web. También proporciona enlaces a todas las
149 opciones configurables en el fichero smb.conf, permitiendo al administrador
150 comprobar fácilmente los efectos de cualquier cambio.
151
152 %Description -l fr -n swat
153 SWAT permet à un administrateur Samba de configurer le fichier smb.conf
154 complexe via un navigateur Web. Il fournit également des liens d'aide pour
155 toutes les options configurables dans le fichier smb.conf permettant à un
156 administrateur de consulter aisément les effets d'une modification.
157
158 %Description -l it -n swat
159 SWAT permette ad un amministratore Samba di configurare il complesso file
160 smb.conf attraverso un browser Web. SWAT ha anche dei link di aiuto per
161 tutte le opzioni di configurazione del file smb.conf.
162
163 %Description -l pt -n swat
164 O SWAT permite a um administrador de Samba configurar o complexo ficheiro
165 smb.conf através de uma interface Web. Fornece também referências para
166 todas as opções configuraveis no smb.conf, permitindo a um admnistrador
167 verificar rapidamente o efeite de qualquer alteração.
168
169 %Description -n libsmbclient
170 SMB Client Library allows for POSIX like SMB client calls providing developers
171 a clean and stable API for SMB client application development.
172
173
174 %Prep
175 %setup
176 #%patch0 -p1
177 #%patch1 -p1
178 #%patch2 -p1
179
180 for i in {cvs.,change-}log; do [ ! -f ../$i ] || mv ../$i source; done
181
182 mv swat/help/welcome.html docs
183 %{fixUP} -vT docs -e '
184   s:/usr/local/samba/bin/(smb(client|run)):/usr/bin/$1:g +
185   s:/usr/local/samba/bin/((s|n)mbd|swat):/usr/sbin/$1:g +
186   s:/usr/local/samba/var/locks:/var/lock/samba.d: +
187   s:/usr/local/samba/(var|lib)/log:/var/log/samba.d/smb: +
188   s:/usr/local/samba/swat:/usr/share/samba/swat:g +
189   s:/usr/local/samba/lib:%{EtcSamba}:g;
190 '
191 mv docs/welcome.html swat/help
192 for i in docs/*/smb.conf.5*; do
193   %{fixUP} -vT $i -e '
194     s:users\.map:smbusers:g +
195     s:SAMBA_INSTALL_DIRECTORY/lib:%{EtcSamba}: +
196     s:None \(set in compile\)\.:(see above).: +
197     s:/usr/local/:/usr/:g;
198   '
199 done
200 # End of DirtyHack(TM)
201
202
203 %Build
204 cd source
205 rm configure
206 autoconf
207
208 CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s" ./configure \
209         --prefix=/usr \
210         --localstatedir=/var \
211         --libdir='%{EtcSamba}' \
212         --sbindir=/usr/sbin \
213         --with-privatedir='$(LIBDIR)' \
214         --with-lockdir=/var/lock/samba.d \
215         --with-swatdir=/usr/share/swat \
216         --with-smbmount \
217         --with-pam \
218         --with-tdbsam \
219         --with-ldapsam \
220         --with-krb5=/usr/athena \
221         --with-winbind \
222         --with-utmp \
223         --with-quotas \
224         --with-vfs \
225         --with-msdfs \
226         --with-profile \
227         --with-syslog \
228         --with-netatalk \
229         --with-smbwrapper \
230         --with-libsmbclient \
231         --with-acl-support \
232         --with-sambabook=/usr/share/swat/using_samba
233
234 # Temp disabled - add later - JHT
235 #       --with-pam_smbpass \
236 #       --with-nisplus-home \
237
238 make all nsswitch/libnss_wins.so nsswitch/libnss_winbind.so torture nsswitch/pam_winbind.so everything
239 (cd tdb; make tdbdump tdbtest tdbtorture tdbtool)
240
241 cd ../examples/VFS
242 make srcdir=../../source
243
244 %Install
245 %{mkDESTDIR}
246 VVS=packaging/%{Vendor}/%{Dist}
247
248 mkdir -p $DESTDIR/etc/{{rc.d/init,logrotate,pam}.d,sysconfig/daemons}
249 mkdir -p $DESTDIR%{EtcSamba}/codepages/src
250 mkdir -p $DESTDIR/etc/skel/Samba
251 mkdir -p $DESTDIR/home/samba
252 mkdir -p $DESTDIR/lib/security
253 mkdir -p $DESTDIR/lib/samba
254 mkdir -p $DESTDIR/%{LSBservedir}/{netlogon,profiles,Public}
255 mkdir -p $DESTDIR%{NKinetdir}
256 mkdir -p $DESTDIR/{sbin,bin,usr/{sbin,bin}}
257 mkdir -p $DESTDIR/%{SVIdir}
258 mkdir -p $DESTDIR/usr/{include,lib}
259 mkdir -p $DESTDIR/usr/share/samba/codepages/src
260 mkdir -p $DESTDIR/usr/share/swat/using_samba/{gifs,figs}
261 mkdir -p $DESTDIR/var/{lo{ck,g}/samba.d,spool/samba}
262
263 make -C source DESTDIR=$RPM_BUILD_ROOT install installclientlib 
264
265 strip $DESTDIR/usr/bin/smb{mount,mnt,umount}
266 # Add links for mount.smbfs
267 ( cd $DESTDIR/sbin; ln -s /usr/bin/smbmount mount.smbfs; \
268         ln -s /usr/bin/smbumount umount.smbfs )
269
270 # First install /usr/bin progs
271 for i in smbfilter debug2html
272 do
273         install -m 755 source/bin/$i $DESTDIR/usr/bin
274 done
275 # Next install /usr/sbin progs
276 for i in talloctort locktest locktest2 masktest msgtest smbtorture
277 do
278         install -m 755 source/bin/$i $DESTDIR/usr/sbin
279 done
280 for i in tdbdump tdbtest tdbtorture tdbtool
281 do
282         install -m 755 source/tdb/$i $DESTDIR/usr/sbin
283 done
284
285 # Add VFS Modules
286 for i in audit.so recycle.so netatalk.so skel.so
287 do
288         install -m755 examples/VFS/$i $DESTDIR/lib/samba
289 done
290
291 # Install the nsswitch library extension file
292 cp -p source/nsswitch/libnss_wins.so $DESTDIR/lib
293 cp -p source/nsswitch/libnss_winbind.so $DESTDIR/lib
294 cp -p source/nsswitch/pam_winbind.so $DESTDIR/lib/security
295 # Make link for wins resolver
296 ( cd $DESTDIR/lib; ln -s libnss_wins.so libnss_wins.so.2 )
297
298 # Add libsmbclient.a support stuff
299 install -m 755 source/bin/libsmbclient.a $DESTDIR/usr/lib
300
301 cp -p $VVS/samba.init $DESTDIR/etc/rc.d/init.d/samba
302 ln -s /etc/rc.d/init.d/samba $DESTDIR/usr/sbin
303
304 cp -p $VVS/smb.conf.sample $DESTDIR%{EtcSamba}/smb.conf.sample
305 cp -p $VVS/smbusers $DESTDIR%{EtcSamba}
306 cp -p $VVS/findsmb $DESTDIR/usr/bin
307 cp -p $VVS/samba.daemon $DESTDIR/etc/sysconfig/daemons/samba
308 cp -p $VVS/samba.pam $DESTDIR/etc/pam.d/samba
309 cp -p $VVS/samba.logrotate $DESTDIR/etc/logrotate.d/samba
310
311 cat <<-'EoH' > $DESTDIR%{EtcSamba}/lmhosts
312         127.0.0.1 localhost
313 EoH
314
315 # lsb has new way of inetd configuration
316 cat <<EoI >$DESTDIR%{NKinetdir}/swat
317 swat    stream  tcp     nowait.400 root /usr/sbin/tcpd  swat
318 EoI
319
320 pushd $DESTDIR/usr/sbin
321 rm -f *.so
322 popd
323
324
325 DOCD="$DESTDIR/%{_defaultdocdir}/samba-%{Version}"; mkdir -p $DOCD
326 ln -sf ../Copyrights/GPL-2.0  $DOCD/COPYING
327 cp -p README Manifest Read-Manifest-Now WHATSNEW.txt Roadmap $DOCD
328 cp -a docs examples $DOCD
329
330 mv $DOCD/docs/htmldocs/wfw_slip.htm $DOCD/docs/wfw_slip.html
331
332 rm -rf $DOCD/docs/{htmldocs,manpages,yodldocs}
333 rm -rf $DOCD/examples/{svr4-startup,printing}
334 rm -rf $DOCD/CVS $DOCD/*/CVS $DOCD/*/*/CVS $DOCD/*/*/*/CVS
335
336 cp -p swat/README $DOCD/README.swat
337
338 # This is the O'Reily Samba Book - on-line
339 for i in docs/htmldocs/using_samba/*.html
340 do
341 install -m644 $i $DESTDIR/usr/share/swat/using_samba
342 done
343 for i in docs/htmldocs/using_samba/figs/*.gif
344 do
345 install -m644 $i $DESTDIR/usr/share/swat/using_samba/figs
346 done
347 for i in docs/htmldocs/using_samba/gifs/*.gif
348 do
349 install -m644 $i $DESTDIR/usr/share/swat/using_samba/gifs
350 done
351
352 %{fixUP} -vT $DOCD/examples -e 's:/usr/local/bin/:/usr/bin/:g;'
353 %{fixUP} -T $DESTDIR/%{SVIdir} -e 's:\@SVIdir\@:%{SVIdir}:'
354 %{fixUP} -vT $DOCD/examples -e 's:/usr/local/bin/:/usr/bin/:g;'
355 %{fixUP} -vT $DESTDIR/%{EtcSamba} -e 's:\@samba_home\@:%{LSBservedir}:'
356
357 %{fixManPages}
358 ( cd $DESTDIR/usr/share/man/lang; \
359         cp -a . $DESTDIR/usr/share/man/en; \
360         cd ..; \
361         rm -rf lang )
362
363 %{mkLists} -c samba
364 cat << 'EOF' | %{mkLists} -d samba
365 Samba                                   base
366 /lib/$                                  base
367 %{LSBservedir}                          config-IGNORED
368 ^/(etc|var|home|tmp)                    config-IGNORED
369 swat                                    swat
370 %{_defaultdocdir}/samba-[^/]+/$         base
371 %{_defaultdocdir}/samba-                doc
372 tmp                                     IGNORED
373 man                                     IGNORED
374 /src/$                                  IGNORED
375 /usr/private/$                          IGNORED
376 @default@
377 EOF
378 cat << 'EOF' | %{mkLists} -f -a samba
379 \.old$                                  IGNORED
380 Samba/README.txt                        base
381 ^/etc                                   config-IGNORED
382 %{_defaultdocdir}/samba-[^/]+/(COPYING|README$) base
383 libnss_*                                base
384 pam_*                                   base
385 %{_defaultdocdir}/samba-[^/]+/(COPYING|README$) base
386 %{_defaultdocdir}/samba-                doc
387 smb(mount|mnt|umount)                   smbfs
388 mount.smbfs                             smbfs
389 swat                                    swat
390 libsmbclient                            libsmbclient
391 @default@
392 EOF
393
394
395 %Clean
396 %{rmDESTDIR}
397
398
399 %Post
400 /usr/lib/LSB/init-install %{Name}
401
402 %Post -n swat
403 %{NKinetdReload}
404 perl -pi -e '$s=1 if /^swat/;
405   print "swat:ALL EXCEPT 127.0.0.1\n" if eof && ! $s' /etc/hosts.deny
406
407
408 %PostUn
409 test "$1" = "0" || exit 0
410 /usr/lib/LSB/init-remove %{Name}
411 # We want to remove the browse.dat and wins.dat files so they can not
412 # interfer with a new version of samba!
413 rm -f /var/lock/samba/browse.dat
414 rm -f /var/lock/samba/{brlock,connections,locking,messages}.tdb
415 if [ -e /var/lock/samba.d/namelist.debug ]; then
416         rm -f /var/lock/samba.d/namelist.debug
417 fi
418 rm -f /var/lock/samba/unexpected.tdb
419 rm -f /var/lock/samba/{smbd,nmbd}.pid
420
421 # Note: We MUST keep:
422 #       winbindd_*, sshare_info*, printing*, ntdrivers*
423
424
425 %PostUn -n swat
426 #$no lsb: lisa --inetd disable swat $1
427 test "$1" = "0" || exit 0
428 %{SVIdir}/inet reload
429 [ -x /usr/sbin/swat ]||perl -ni -e '/^swat\s*\:/||print' /etc/hosts.deny
430
431
432 %Files -f files-samba-base
433 %defattr(-,root,root)
434 %config %attr(0755,root,root) %{SVIdir}/samba
435 %config %attr(644,root,root) /etc/sysconfig/daemons/samba
436 %config %attr(644,root,root) /etc/pam.d/samba
437 %config %attr(644,root,root) /etc/logrotate.d/samba
438 %config %attr(-,root,root) %{EtcSamba}
439 %dir %attr(755,root,root) /var/lock/samba.d
440 %dir %attr(755,root,root) /var/log/samba.d
441 %dir %attr(1777,root,root) /var/spool/samba
442 %dir %attr(755,root,root) %{LSBservedir}
443 %dir %attr(755,root,root) %{LSBservedir}/netlogon
444 %dir %attr(755,root,root) %{LSBservedir}/profiles
445 %dir %attr(755,root,root) %{LSBservedir}/Public
446
447 %Files doc -f files-samba-doc
448 %defattr(-,root,root)
449
450 %Files -n smbfs -f files-samba-smbfs
451 %defattr(-,root,root)
452
453
454 %Files -n swat  -f files-samba-swat
455 %defattr(-,root,root)
456 %config %attr(644,root,root) %{NKinetdir}/swat
457
458 %Files -n libsmbclient -f files-samba-libsmbclient
459 %defattr(-,root,root)
460
461 %ChangeLog
462 * Mon Mar 11 2002 John H Terpstra <jht@samba.org>
463 - Make this work
464