packaging updates from Buchan
authorGerald Carter <jerry@samba.org>
Tue, 29 Apr 2003 04:59:35 +0000 (04:59 +0000)
committerGerald Carter <jerry@samba.org>
Tue, 29 Apr 2003 04:59:35 +0000 (04:59 +0000)
(This used to be commit e4754e0a2bd2ca7b2495a9d747fe08cdb45c8876)

packaging/Mandrake/makerpms-cvs.sh
packaging/Mandrake/makerpms.sh.tmpl
packaging/Mandrake/samba-print-pdf.sh
packaging/Mandrake/samba2.spec.tmpl

index 72c75b772b57120a0b484ee64e4eb4d422492bc9..08c4370b314219f69b8408ec230b27447796f216 100644 (file)
@@ -22,13 +22,16 @@ done
 #Change up three directories, rename directory to samba-$VERSION, change back
 #then run makerpms.sh
 
-(
+
 CURRENT=$(pwd)
-cd $(dirname $(dirname $(dirname $CURRENT)))
+pushd $(dirname $(dirname $(dirname $CURRENT)))
 SAMBA_DIR=$(basename $(dirname $(dirname $CURRENT)))
 mv $SAMBA_DIR samba-$VERSION
-cd samba-$VERSION/packaging/Mandrake
+pushd samba-$VERSION/source
+./autogen.sh
+popd
+pushd samba-$VERSION/packaging/Mandrake
 sh makerpms.sh $@
-cd $(dirname $(dirname $(dirname $CURRENT)))
+popd
 mv samba-$VERSION $SAMBA_DIR
-)
+popd
index ba4eff0e2b10cc21bdd830c4e6195694a176b1d8..5d06e2bbccaf33453cf1fb2acc225ac9feb565ec 100644 (file)
@@ -13,8 +13,8 @@
 #
 
 # rpm --eval should always give a correct answer for this
-SPECDIR=`rpm --eval "%{_specdir}"`
-SRCDIR=`rpm --eval "%{_sourcedir}"`
+SPECDIR=`rpm "$@" --eval "%{_specdir}"`
+SRCDIR=`rpm "$@" --eval "%{_sourcedir}"`
 
 # At this point the (SPECDIR and) SRCDIR vaiables must have a value!
 
index 07c92b484b8654dbadd72787c7517436dd685035..973bb4f90eeb10a5da05da78407d62aad11a410c 100644 (file)
@@ -5,7 +5,20 @@
 # and turn it into a PDF, informing the user of where it is when it
 # is done
 #
-# Buchan Milne <bgmilne@cae.co.za> 20020723
+# (c) Buchan Milne <bgmilne@cae.co.za> 2002 
+# License: GPLv2
+# Changelog
+# v0.0.6 20030428
+#  - Allow options passed as env. variables from print command
+#  - Inline and simplify sed (use tr) clean script
+#  - Ensure file arrives in PREFIX even if TEMP is used without provided name
+#  - Changes from Joshua M. Schmidlkofer <joshua@imr-net.com> 20030425
+#    - Debugging, adjustments, and corrections.
+#    - Stupid sed sanitizing script. [probably horribly inefficient also]. 
+#    - Temp file usage cleanup.
+# v0.0.5 20020723
+#  - Add support for preset settings
+#  - Allow passing of filename provided by client as final filename
 #
 # Arguments:
 # $1 = file (usually passed with %s from samba)
 #
 # If you want to customise any of the following configuration defaults, 
 # you can place them in the file /etc/samba/print-pdf.conf.
+# If you need to modify anything in this script, please provide me with your
+# changes, preferably in such a way that the changes are configurable.
 
 PS2PDF=ps2pdf13 
 OPTIONS="-dAutoFilterColorImages=false -sColorImageFilter=FlateEncode"
+#Values taken from arguments:
 INPUT=$1
-KEEP_PS=1
-PERMS=640
-INFILE=$(basename $INPUT)
-BASEFILE=pdf-service
 PREFIX="$2"
-NAME="$6"
 WINBASE=$(echo "$3"|sed -e 's,/,\\\\,g')
+#NAME=`echo "$6"|sed -e 's/[&/:{}\\\[<>$#@*^!?=|]/-/g;s/\]/-/g'`
+NAME=`echo "$6"|tr '[:punct:]' '[-*]'`
 
 # Source config file if it exists:
 CONFFILE=/etc/samba/print-pdf.conf
 [ -e $CONFFILE ] && . $CONFFILE
 
+#Values not taken as arguments, could be set via env. vars (?) or config file
+KEEP_PS=${KEEP_PS=0}
+PERMS=${PERMS=640}
+BASEFILE=${BASEFILE=pdf-service}
+TEMP="${TEMP=$2}"
+UMASK=${UMASK=006}
+
+#Make sure that destination directory exists
+mkdir -p "$PREFIX"
+
+INFILE=$(basename $INPUT)
+
+umask $UMASK
+
+[ -n "$NAME" ] && TEMP="$PREFIX"
+
 #make a temp file to use for the output of the PDF
-OUTPUT=`mktemp -q $2/$BASEFILE-XXXXXX`
+OUTPUT=`mktemp -q $TEMP/$BASEFILE-XXXXXX`
 if [ $? -ne 0 ]; then
-       echo "$0: Can't create temp file $2/$BASEFILE-XXXXXX, exiting..."
+       echo "$0: Can't create temp file $TEMP/$OUTPUT, exiting..."
        exit 1
 fi
-if [ "$NAME" != "" ]; then
+if [ -n "$NAME" ]; then
        FINALOUTPUT="$PREFIX/$NAME"
 else
        FINALOUTPUT="$OUTPUT"
 fi
-if [ "$7" != "" ]; then
+if [ -n "$7" ]; then
        OPTIONS="$OPTIONS -dPDFSETTINGS=/${7#pdf-}"
 else
        OPTIONS="$OPTIONS -dPDFSETTINGS=/default"
 fi
-                                                                       
+
 WIN_OUTPUT="$WINBASE\\"`basename "$FINALOUTPUT"`
+#mv "$INPUT" "$INPUT.ps";INPUT="$INPUT.ps"
 
-# create the PDF:
-$PS2PDF $OPTIONS $INPUT "$OUTPUT".pdf >/dev/null 2>&1
-mv -f "$OUTPUT".pdf "$FINALOUTPUT".pdf
+# create the pdf
+$PS2PDF $OPTIONS "$INPUT" "$OUTPUT.pdf" >/dev/null 2>&1
+mv -f "${OUTPUT}.pdf" "${FINALOUTPUT}".pdf
 
 # Generate a message to send to the user, and deal with the original file:
 MESSAGE=$(echo "Your PDF file has been created as $WIN_OUTPUT.pdf\n")
 
-if [ $KEEP_PS ];then
+
+# Cleanup
+if [ $KEEP_PS != 0 ];then
        mv -f $INPUT "${FINALOUTPUT}".ps
        MESSAGE=$(echo "$MESSAGE and your postscript file as $WIN_OUTPUT.ps")
        # Fix permissions on the generated files
-       chmod $PERMS "${FINALOUTPUT}".ps
+       chmod $PERMS "${FINALOUTPUT}".ps "${FINALOUTPUT}".pdf
 else
        rm -f $INPUT
-       chmod $PERMS "${FINALOUTPUT}".ps "${FINALOUTPUT}".pdf
        # Fix permissions on the generated files
+       chmod $PERMS "${FINALOUTPUT}".pdf
 fi
-                                                               
+                                            
 #Remove empty file from mktemp:
-[ "x$NAME" -eq "x" ] && rm -f  $OUTPUT
+rm -f  $OUTPUT
 
 # Send notification to user
 echo -e $MESSAGE|smbclient -M $4 -I $5 -U "PDF Generator" >/dev/null 2>&1
index 8723437d17180e18291613fdf2988b013e7d5405..eda072b419fbfd01c3a555ef07e3def81c0c60fd 100644 (file)
 # cvs should be submitted for inclusion in samba cvs.
 
 %define pkg_name       samba
-%define ver            3.0alpha22
-%define rel            2mdk
-%define vscanver       0.3.1
+%define ver            3.0alpha23
+%define rel            4mdk
+%define vscanver       0.3.2a
 %define libsmbmajor    0
 
-# Determine whether this is the system samba or not.
-%define build_system   0
-%if %build_system
-%define samba_major    %{null}
-%else
-%define samba_major    3
-%endif
-
 # Version and release replaced by samba-team at release from samba cvs
 %define pversion PVERSION
 %define prelease PRELEASE
@@ -59,6 +51,7 @@
 # We now do detection of the Mandrake release we are building on:
 #%define build_cooker %(if [ `awk '{print $3}' /etc/mandrake-release` = "Cooker" ];then echo 1; else echo 0; fi)
 #%define build_cooker %(if [[ `cat /etc/mandrake-release|grep Cooker` ]];then echo 1; else echo 0; fi)
+%define build_mdk92 %(if [ `awk '{print $4}' /etc/mandrake-release` = 9.2 ];then echo 1; else echo 0; fi)
 %define build_mdk91 %(if [ `awk '{print $4}' /etc/mandrake-release` = 9.1 ];then echo 1; else echo 0; fi)
 %define build_mdk90 %(if [ `awk '{print $4}' /etc/mandrake-release` = 9.0 ];then echo 1; else echo 0; fi)
 %define build_mdk82 %(if [ `awk '{print $4}' /etc/mandrake-release` = 8.2 ];then echo 1; else echo 0; fi)
@@ -68,6 +61,7 @@
 %define build_non_default 0
 
 # Default options
+%define build_system   0
 %define build_acl      1
 %define build_winbind  1
 %define build_wins     1
 %define build_cupspc   0
 
 # Set defaults for each version
+%if %build_mdk92
+%define build_cupspc   1
+%endif
+
 %if %build_mdk91
 %define build_cupspc   1
 %endif
 %define build_wins     0
 %endif
 
+
 # Allow commandline option overrides (borrowed from Vince's qmail srpm):
 # To use it, do rpm [-ba|--rebuild] --with 'xxx'
 # Check if the rpm was built with the defaults, otherwise we inform the user
 %define build_non_default 0
-%{?_with_acl: %{expand: %%define build_acl 1}}
+%{?_with_system: %{expand: %%define build_system 1}}
+%{?_without_system: %{expand: %%define build_system 0}}
+%{?_with_acl: %{expand: %%global build_acl 1}}
 %{?_with_acl: %{expand: %%define build_non_default 1}}
-%{?_without_acl: %{expand: %%define build_acl 0}}
+%{?_without_acl: %{expand: %%global build_acl 0}}
 %{?_without_acl: %{expand: %%define build_non_default 1}}
 %{?_with_winbind: %{expand: %%global build_winbind 1}}
 %{?_with_winbind: %{expand: %%define build_non_default 1}}
-%{?_without_winbind: %{expand: %%define build_winbind 0}}
+%{?_without_winbind: %{expand: %%global build_winbind 0}}
 %{?_without_winbind: %{expand: %%define build_non_default 1}}
 %{?_with_wins: %{expand: %%global build_wins 1}}
 %{?_with_wins: %{expand: %%define build_non_default 1}}
 %{?_with_ldap: %{expand: %%define build_non_default 1}}
 %{?_without_ldap: %{expand: %%global build_ldap 0}}
 %{?_without_ldap: %{expand: %%define build_non_default 1}}
-%{?_with_ads: %{expand: %%define build_ads 1}}
+%{?_with_ads: %{expand: %%global build_ads 1}}
 %{?_with_ads: %{expand: %%define build_non_default 1}}
-%{?_without_ads: %{expand: %%define build_ads 0}}
+%{?_without_ads: %{expand: %%global build_ads 0}}
 %{?_without_ads: %{expand: %%define build_non_default 1}}
-%{?_with_scanners: %{expand: %%define build_scanners 1}}
+%{?_with_scanners: %{expand: %%global build_scanners 1}}
 %{?_with_scanners: %{expand: %%define build_non_default 1}}
 
 # As if that weren't enough, we're going to try building with antivirus
 %endif
 %global vfsdir examples.bin/VFS
 
+#Standard texts for descriptions:
+%define message_bugzilla() %(echo -e -n "Please file bug reports for this package at Mandrake bugzilla \\n(http://qa.mandrakesoft.com) under the product name %{1}")
+%define message_system %(echo -e -n "NOTE: This is a prerelease of samba-%{samba_major}, not intended for production\\n use. Rather these packages are provided, parallel installable\\nwith samba-2.2.x, for testing purposes")
+
+
 #Workaround missing macros in 8.x:
 %{!?perl_vendorlib: %{expand: %%global perl_vendorlib %{perl_sitearch}/../}}
 
+# Determine whether this is the system samba or not.
+%if %build_system
+%define samba_major    %{nil}
+%else
+%define samba_major    3
+%endif
+
 Summary: Samba SMB server.
 Name: %{pkg_name}%{samba_major}
 
@@ -208,7 +221,7 @@ Patch4: samba-3.0-smbmount-sbin.patch.bz2
 %if !%have_pversion
 # Version specific patches: current version
 Patch101: samba-Makefile-3.0alpha21.patch.bz2
-Patch102: samba-3.0alpha22-mandrake-packaging.patch.bz2
+#Patch102: samba-3.0alpha22-mandrake-packaging.patch.bz2
 Patch110: samba-2.2.7a-fix-build.patch.bz2
 %else
 # Version specific patches: upcoming version
@@ -221,6 +234,7 @@ Requires: pam >= 0.64, samba-common = %{version}
 BuildRequires: pam-devel autoconf readline-devel
 BuildRequires: libxml2-devel
 BuildRequires: mysql-devel
+BuildRequires: autoconf2.5
 %if %build_acl
 BuildRequires: libacl-devel
 %endif
@@ -260,12 +274,12 @@ This binary release includes encrypted password support.
 
 Please read the smb.conf file and ENCRYPTION.txt in the
 docs directory for implementation details.
-
+%if %have_pversion
+%message_bugzilla samba3
+%endif 
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
-
 %if %build_non_default
 WARNING: This RPM was built with command-line options. Please
 see README.%{name}-mandrake-rpm in the documentation for
@@ -281,7 +295,9 @@ Group: Networking/Other
 %if %build_system
 Provides: samba
 Obsoletes: samba
+Provides:  samba-server-ldap
 Obsoletes: samba-server-ldap
+Provides:  samba3-server
 Obsoletes: samba3-server
 %else
 #Provides: samba-server
@@ -306,21 +322,11 @@ This binary release includes encrypted password support.
 
 Please read the smb.conf file and ENCRYPTION.txt in the
 docs directory for implementation details.
-
-%if %build_ldap
-This package was compiled with LDAP support, which means that 
-passwords can be stored in LDAP or in smbpasswd files.
-To migrate your passwords from smbpasswd into LDAP, try
-examples/LDAP/import_smbpasswd.pl using:
-%{_datadir}/%{name}/scripts/import_smbpasswd.pl </etc/%{name}/smbpasswd
-
-Scripts for managing users in LDAP have been added to 
-%{_datadir}/%{name}/scripts, configuration is in /etc/%{name}/smbldap_conf.pm
+%if %have_pversion
+%message_bugzilla samba3-server
 %endif
-
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %package client
@@ -329,6 +335,7 @@ Summary: Samba (SMB) client programs.
 Group: Networking/Other
 Requires: %{name}-common = %{version}
 %if %build_system
+Provides:  samba3-client
 Obsoletes: samba3-client
 Obsoletes: smbfs
 %else
@@ -339,10 +346,11 @@ Obsoletes: smbfs
 Samba-client provides some SMB clients, which complement the built-in
 SMB filesystem in Linux. These allow the accessing of SMB shares, and
 printing to SMB printers.
-
+%if %have_pversion
+%message_bugzilla samba3-client
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %package common
@@ -350,7 +358,9 @@ URL:        http://www.samba.org
 Summary: Files used by both Samba servers and clients.
 Group: System/Servers
 %if %build_system
+Provides:  samba-common-ldap
 Obsoletes: samba-common-ldap
+Provides:  samba3-common
 Obsoletes: samba3-common
 %else
 #Provides: samba-common
@@ -359,10 +369,11 @@ Obsoletes: samba3-common
 %description common
 Samba-common provides files necessary for both the server and client
 packages of Samba.
-
+%if %have_pversion
+%message_bugzilla samba3-common
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %package doc
@@ -372,6 +383,7 @@ Group: System/Servers
 Requires: %{name}-common = %{version}
 %if %build_system
 Obsoletes: samba3-doc
+Provides:  samba3-doc
 %else
 #Provides: samba-doc
 %endif
@@ -379,10 +391,11 @@ Obsoletes: samba3-doc
 %description doc
 Samba-doc provides documentation files for both the server and client
 packages of Samba.
-
+%if %have_pversion
+%message_bugzilla samba3-doc
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %package swat
@@ -392,7 +405,9 @@ Requires: %{name}-server = %{version}
 Requires: xinetd
 Group: System/Servers
 %if %build_system
+Provides:  samba-swat-ldap
 Obsoletes: samba-swat-ldap
+Provides:  samba3-swat
 Obsoletes: samba3-swat
 %else
 #Provides: samba-swat
@@ -407,10 +422,11 @@ your smb.conf file. Webmin uses SSL encryption by default, and
 preserves comments in configuration files, even if it does not display
 them, and is therefore the preferred method for remotely managing
 Samba.
-
+%if %have_pversion
+%message_bugzilla samba3-swat
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %if %build_winbind
@@ -423,10 +439,11 @@ Requires: %{name}-common = %{version}
 Provides the winbind daemon and testing tools to allow authentication 
 and group/user enumeration from a Windows or Samba domain controller.
 %endif
-
+%if %have_pversion
+%message_bugzilla samba3-winbind
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %if %build_wins
@@ -440,26 +457,32 @@ PreReq: glibc
 Provides the libnss_wins shared library which resolves NetBIOS names to 
 IP addresses.
 %endif
-
+%if %have_pversion
+%message_bugzilla nss_wins3
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
+%if %{?_without_debug:0}%{!?_without_debug:1}
 %package debug
 URL:   http://www.samba.org
 Summary: Debugging and benchmarking tools for samba
 Group: System/Servers
 Requires: %{name}-common = %{version}
-%if %build_system
+%endif
+%if %build_system && %{?_without_debug:0}%{!?_without_debug:1}
+Provides:  samba3-debug
 Obsoletes: samba3-debug
 %else
 Provides: samba-debug
 %endif
+%if %{?_without_debug:0}%{!?_without_debug:1}
 
 %description debug
 This package provides tools for benchmarking samba, and debugging
 the correct operation of tools against smb servers.
+%endif
 
 %if %build_system
 %package -n libsmbclient%{libsmbmajor}
@@ -472,11 +495,9 @@ Provides:  libsmbclient
 This package contains the SMB client library, part of the samba
 suite of networking software, allowing other software to access
 SMB shares.
-
 %endif
-%if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%if %have_pversion && %build_system
+%message_bugzilla libsmbclient%{libsmbmajor}
 %endif
 
 %if %build_system
@@ -487,14 +508,12 @@ Group:            System/Libraries
 Provides:      libsmbclient-devel
 
 %description -n libsmbclient%{libsmbmajor}-devel
-This package contains the development files for the SMB client 
-library, part of the samba suite of networking software, allowing 
+This package contains the development files for the SMB client
+library, part of the samba suite of networking software, allowing
 the development of other software to access SMB shares.
-
 %endif
-%if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%if %have_pversion && %build_system
+%message_bugzilla libsmbclient%{libsmbmajor}-devel
 %endif
 
 %package passdb-mysql
@@ -506,10 +525,11 @@ Group:            System/Libraries
 The passdb-mysql package for samba provides a password database
 backend allowing samba to store account details in a MySQL
 database
-
+%if %have_pversion
+%message_bugzilla samba3-passdb-mysql
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 %package passdb-xml
@@ -520,10 +540,11 @@ Group:            System/Libraries
 %description passdb-xml
 The passdb-xml package for samba provides a password database
 backend allowing samba to store account details in XML files.
-
+%if %have_pversion
+%message_bugzilla samba3-passdb-xml
+%endif
 %if !%build_system
-NOTE: This is a prerelease of samba-%{samba_major}, not intended
-for production use. If something breaks, file a bug report.
+%message_system
 %endif
 
 #Antivirus packages:
@@ -612,6 +633,43 @@ Trend antivirus software (which must be installed to use this).
 %endif
 
 %prep
+
+# Allow users to query build options with --with options:
+#%define opt_status(%1)        %(echo %{1})
+#%( [ -d %{1} ]||mkdir -p %{1}; [ -w %{1} ] && echo %{1})
+%if %{?_with_options:1}%{!?_with_options:0}
+%define opt_status(%{1})       %(if [ %{1} -eq 1 ];then echo enabled;else echo disabled;fi)
+#exit 1
+%{error: }
+%{error:Build options available are:}
+%{error:--with[out] system   Build as the system samba package [or as samba3]}
+%{error:--with[out] acl      Build with support for file ACLs          - %opt_status %build_acl}
+%{error:--with[out] winbind  Build with Winbind support                - %opt_status %build_winbind}
+%{error:--with[out] wins     Build with WINS name resolution support   - %opt_status %build_wins}
+%{error:--with[out] ldap     Build with legacy (samba2) LDAP support   - %opt_status %build_ldap}
+%{error:--with[out] ads      Build with Active Directory support       - %opt_status %build_ads}
+%{error:--with[out] scanners Enable on-access virus scanners           - %opt_status %build_scanners}
+%{error: }
+%else
+%{error: }
+%{error: This rpm has build options available, use --with options to see them}
+%{error: }
+%endif
+
+%if %{?_with_options:1}%{!?_with_options:0} && %build_scanners
+%{error:--with scanners enables fprot,mks,openav,sophos and trend by default}
+%{error: }
+%{error:To enable others (requires development libraries for the scanner):}
+%{error:--with kaspersky     Enable on-access scanning with Kaspersky  - %opt_status %build_kaspersky}
+%{error: }
+%endif
+
+%if %{?_with_options:1}%{!?_with_options:0}
+clear
+exit 1
+%endif
+
+
 # Build a summary of how this RPM was built:
 %if %build_acl
 RPM_EXTRA_OPTIONS="$RPM_EXTRA_OPTIONS --with acl"
@@ -632,7 +690,7 @@ RPM_EXTRA_OPTIONS="$RPM_EXTRA_OPTIONS --without wins"
 RPM_EXTRA_OPTIONS="$RPM_EXTRA_OPTIONS --with ldap"
 %else
 RPM_EXTRA_OPTIONS="$RPM_EXTRA_OPTIONS --without ldap"
-%endif 
+%endif
 %if %build_ads
 RPM_EXTRA_OPTIONS="$RPM_EXTRA_OPTIONS --with ads"
 %else
@@ -646,7 +704,7 @@ echo "This rpm was built with non-default options, thus, to build ">%{SOURCE7}
 echo "an identical rpm, you need to supply the following options">>%{SOURCE7}
 echo "at build time: $RPM_EXTRA_OPTIONS">>%{SOURCE7}
 echo -e "\n%{name}-%{version}-%{release}\n">>%{SOURCE7}
-%else 
+%else
 echo "This rpm was built with default options">%{SOURCE7}
 echo -e "\n%{name}-%{version}-%{release}\n">>%{SOURCE7}
 %endif
@@ -667,7 +725,7 @@ echo "Applying patches for current version: %{ver}"
 (cd source
 %patch101
 )
-%patch102 -p1 -b .mdk
+#%patch102 -p1 -b .mdk
 %patch110 -p1
 %else
 # Version specific patches: upcoming version
@@ -680,7 +738,7 @@ echo "Appling patches which should only be applied to prereleases"
 %endif
 
 # Fix quota compilation in glibc>2.3
-%if %build_mdk91
+%if %build_mdk91 || %build_mdk92
 #grep "<linux/quota.h>" source/smbd/quotas.c >/dev/null && \
 perl -pi -e 's@<linux/quota.h>@<sys/quota.h>@' source/smbd/quotas.c
 %endif
@@ -747,9 +805,7 @@ CFLAGS="$RPM_OPT_FLAGS"
 %endif
                --disable-mysqltest \
                --program-suffix=%{samba_major} 
-#                --with-pam_smbpass \
 #              --with-manpages-langs=en,ja,pl  \
-#              --with-ldap=no          \
 #%if !%build_system
 #                --with-smbwrapper \
 #%endif                
@@ -759,11 +815,12 @@ CFLAGS="$RPM_OPT_FLAGS"
 # For some reason passdb/pdb_xml.c doesn't like the flags below ...
 # and the samba team doesn't always make proto before release ...
 make proto_exists
-make passdb/pdb_xml.o torture
+#make passdb/pdb_xml.o torture
 # torture target broken in alpha22 (only on 9.0?)
-make CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" \
-       all libsmbclient debug2html smbfilter wins modules
-#      all libsmbclient debug2html smbfilter wins torture modules
+#make CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" \
+#      all libsmbclient smbfilter wins modules %{!?_without_debug: torture debug2html}
+%make  all libsmbclient smbfilter wins modules %{!?_without_debug: torture debug2html}
+#%make all libsmbclient debug2html smbfilter wins torture modules
 # Build VFS modules (experimental)
 #cd ../%vfsdir
 #_configure    --prefix=%{prefix} \
@@ -787,7 +844,10 @@ echo "Building fprot"
 %endif
 %if %build_kaspersky
 echo "Building Kaspersky"
-(cd %{vfsdir}/%{vscandir}/kaspersky;make)
+(cd %{vfsdir}/%{vscandir}/kavp
+    perl -p -i -e "s|/usr/local/|/usr/|g" Makefile.KAV4
+    make -f Makefile.KAV4
+)
 %endif
 %if %build_mks
 echo "Building mks"
@@ -882,7 +942,7 @@ done
 # Make link for wins and winbind resolvers
 ( cd $RPM_BUILD_ROOT/%{_lib}; ln -s libnss_wins%{samba_major}.so libnss_wins%{samba_major}.so.2; ln -s libnss_winbind%{samba_major}.so libnss_winbind%{samba_major}.so.2)
 
-%if 1
+%if %{?_without_debug:0}%{!?_without_debug:1}
 # Debugging stuff (broken in alpha22)
 for i in smbtorture msgtest masktest locktest locktest2 nsstest vfstest debug2html;do
   install -m755 source/bin/$i $RPM_BUILD_ROOT/%{_bindir}
@@ -1206,11 +1266,12 @@ fi
 %{_bindir}/pdbedit%{samba_major}
 %{_bindir}/tdbbackup%{samba_major}
 %{_bindir}/profiles%{samba_major}
+%{_bindir}/editreg%{samba_major}
 %attr(755,root,root) /%{_lib}/security/pam_smbpass*
-%{_libdir}/%{name}/vfs/vfs_audit.so
-%{_libdir}/%{name}/vfs/vfs_netatalk.so
-%{_libdir}/%{name}/vfs/vfs_recycle.so
-%{_libdir}/%{name}/vfs/vfs_extd_audit.so
+%dir %{_libdir}/%{name}/vfs
+%{_libdir}/%{name}/vfs/*.so
+%dir %{_libdir}/%{name}/pdb
+
 #/usr/share/swat
 %attr(-,root,root) %config(noreplace) /etc/%{name}/smbusers
 %attr(-,root,root) %config %{_initrddir}/smb%{samba_major}
@@ -1227,8 +1288,9 @@ fi
 %{_mandir}/man1/smbcontrol*.1*
 %attr(775,root,root) %dir %{_localstatedir}/%{name}/netlogon
 %attr(775,root,root) %dir %{_localstatedir}/%{name}/profiles
-%attr(775,root,root) %dir %{_localstatedir}/%{name}/printers/*
+%attr(775,root,root) %dir %{_localstatedir}/%{name}/printers
 %attr(1777,root,root) %dir /var/spool/%{name}
+%dir %{_datadir}/%{name}
 %dir %{_datadir}/%{name}/scripts
 %attr(0755,root,root) %{_datadir}/%{name}/scripts/print-pdf
 #%attr(0750,root,root) %{_datadir}/%{name}/scripts/smbldap*.pl
@@ -1304,16 +1366,20 @@ fi
 #%{_bindir}/smbsh%{samba_major}
 %{_bindir}/smbpasswd%{samba_major}
 %{_bindir}/smbcacls%{samba_major}
+%{_bindir}/smbcquotas%{samba_major}
 %{_bindir}/net%{samba_major}
 %{_bindir}/smbtree%{samba_major}
 %{_bindir}/ntlm_auth%{samba_major}
 #%{_libdir}/smbwrapper%{samba_major}.so
+%dir %{_libdir}/%{name}
 %{_libdir}/%{name}/*.dat
 #%{_libdir}/%{name}/lowcase.dat
 #%{_libdir}/%{name}/valid.dat
-%attr(-,root,root) %config(noreplace) /etc/%{name}/smb.conf
-%attr(-,root,root) %config(noreplace) /etc/%{name}/smb-winbind.conf
-%attr(-,root,root) %config(noreplace) /etc/%{name}/lmhosts
+%dir %{_sysconfdir}/%{name}
+%attr(-,root,root) %config(noreplace) %{_sysconfdir}/%{name}/smb.conf
+%attr(-,root,root) %config(noreplace) %{_sysconfdir}/%{name}/smb-winbind.conf
+%attr(-,root,root) %config(noreplace) %{_sysconfdir}/%{name}/lmhosts
+%dir %{_localstatedir}/%{name}
 %attr(-,root,root) %{_localstatedir}/%{name}/codepages
 #%{_mandir}/man1/make_smbcodepage*.1*
 #%{_mandir}/man1/make_unicodemap*.1*
@@ -1347,7 +1413,7 @@ fi
 %attr(755,root,root) /%{_lib}/libnss_wins%{samba_major}.so*
 %endif
 
-%if 1
+%if %{?_without_debug:0}%{!?_without_debug:1}
 %files debug
 %defattr(-,root,root)
 %{_bindir}/debug2html%{samba_major}
@@ -1381,11 +1447,11 @@ fi
 
 %files passdb-mysql
 %defattr(-,root,root)
-%{_libdir}/%{name}/*/pdb_mysql.so
+%{_libdir}/%{name}/pdb/*mysql.so
 
 %files passdb-xml
 %defattr(-,root,root)
-%{_libdir}/%{name}/*/pdb_xml.so
+%{_libdir}/%{name}/pdb/*xml.so
 
 #Files for antivirus support:
 %if %build_fprot
@@ -1445,6 +1511,29 @@ fi
 %endif
 
 %changelog
+* Mon Apr 28 2003 Buchan Milne <bgmilne@linux-mandrake.com> 3.0-0.alpha24.0mdk
+- Reenable debug package by (--without debug to not build it), fixed post-a23
+- Add bugzilla note for builds from source (also intended for packages made
+  available on samba FTP site) at samba team request
+- Fix build from CVS (run autogen.sh, pass options to all rpm commands)
+- Appease distriblint, but not much to be done about /usr/share/swat3/ since
+  samba-doc owns some subdirs, and samba-swat others, and they can be installed
+  independantly.
+- Apply kaspersky vscan build fix from samba2  
+- Final for alpha24
+
+* Wed Apr 23 2003 Buchan Milne <bgmilne@linux-mandrake.com> 3.0-0.alpha23.3mdk
+- Small fixes in preparation for testing as system samba
+- Make debug package optional (--with debug) since it's often broken
+- Add support for 9.2 (including in-line smbd quota patch for glibc2.3)
+- Add --with options option, which will just show you the available options and exit
+
+* Sun Apr 06 2003 Buchan Milne <bgmilne@linux-mandrake.com> 3.0-0.alpha23.2mdk
+- Alpha23
+- buildrequire autconf2.5
+- samba-vscan 0.3.2a
+- Remove patch 102 (upstreamed)
+
 * Thu Mar 06 2003 Buchan Milne <bgmilne@linux-mandrake.com> 3.0-0.alpha22.2mdk
 - Alpha22
 - Add profiles binary to server and ntlm_auth to common