[SCM] SAMBA-CTDB repository - branch v3-2-ctdb updated - build_3.2.7_ctdb.54-37-ga9a506b

Michael Adam obnox at samba.org
Tue Feb 3 15:39:40 GMT 2009


The branch, v3-2-ctdb has been updated
       via  a9a506b6640986548e2ae8540b7ae93960d6ece5 (commit)
       via  f5cd88a25f360e6609dc5abe24247fab78af6854 (commit)
      from  fc122aa276bce379b492e5bdf52ab3e03bc3737f (commit)

http://gitweb.samba.org/?p=obnox/samba-ctdb.git;a=shortlog;h=v3-2-ctdb


- Log -----------------------------------------------------------------
commit a9a506b6640986548e2ae8540b7ae93960d6ece5
Author: Michael Adam <obnox at samba.org>
Date:   Wed Jan 21 09:49:12 2009 +0100

    packaging(RHEL-CTDB): makerpms.sh: build winbind-32bit libs in the 64bit build
    
    Michael

commit f5cd88a25f360e6609dc5abe24247fab78af6854
Author: Michael Adam <obnox at samba.org>
Date:   Tue Jan 20 19:47:28 2009 +0100

    packaging(RHEL-CTDB): Build winbind-32bit package in the 64bit build
    
    Michael

-----------------------------------------------------------------------

Summary of changes:
 packaging/RHEL-CTDB/makerpms.sh     |   17 +++---
 packaging/RHEL-CTDB/samba.spec.tmpl |  103 ++++++++++++++++++++++++++++++++---
 2 files changed, 105 insertions(+), 15 deletions(-)


Changeset truncated at 500 lines:

diff --git a/packaging/RHEL-CTDB/makerpms.sh b/packaging/RHEL-CTDB/makerpms.sh
index 50fa96c..8da9078 100755
--- a/packaging/RHEL-CTDB/makerpms.sh
+++ b/packaging/RHEL-CTDB/makerpms.sh
@@ -88,19 +88,20 @@ cp -p ${SPECFILE} ${RPMSPECDIR}
 popd
 
 ##
-## Build
+## some symlink fixes for building 32bit compat libs
 ##
-echo "$(basename $0): Getting Ready to build release package"
-pushd ${RPMSPECDIR}
-${RPM} -ba $EXTRA_OPTIONS $SPECFILE
-if [ "x$?" = "x0" ] && [ `arch` = "x86_64" ]; then
-    echo "Building 32 bit winbind libs"
-    # hi ho, a hacking we will go ...
+if [ `arch` = "x86_64" ]; then
     ln -sf /lib/libcom_err.so.2 /lib/libcom_err.so
     ln -sf /lib/libuuid.so.1 /lib/libuuid.so
-    ${RPM} -ba --rebuild --target=i386 $SPECFILE
 fi
 
+##
+## Build
+##
+echo "$(basename $0): Getting Ready to build release package"
+
+pushd ${RPMSPECDIR}
+${RPM} -ba $EXTRA_OPTIONS $SPECFILE
 popd
 
 echo "$(basename $0): Done."
diff --git a/packaging/RHEL-CTDB/samba.spec.tmpl b/packaging/RHEL-CTDB/samba.spec.tmpl
index 2c29110..6d053c6 100644
--- a/packaging/RHEL-CTDB/samba.spec.tmpl
+++ b/packaging/RHEL-CTDB/samba.spec.tmpl
@@ -93,7 +93,7 @@ The samba-swat package includes the new SWAT (Samba Web Administration
 Tool), for remotely managing Samba's smb.conf file using your favorite
 Web browser.
 
-%ifarch i386 i486 i586 i686 ppc s390
+%ifarch x86_64 ppc64
 %package winbind-32bit
 Summary:        Samba winbind compatibility package for 32bit apps on 64bit archs
 Group:          Applications/System
@@ -144,6 +144,80 @@ export CC
 ## always run autogen.sh
 ./autogen.sh
 
+
+##
+## build the files for the winbind-32bit compat package
+## and copy them to a safe location
+##
+%ifarch x86_64 ppc64
+
+# a directory to store the 32bit compatibility modules for later install
+%define _32bit_tmp_dir %{_tmppath}/%{name}-%{version}-32bit
+
+CC_SAVE="$CC"
+CC="$CC -m32"
+
+CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -m32" ./configure \
+	--prefix=%{_prefix} \
+	--localstatedir=/var \
+        --with-configdir=%{_sysconfdir}/samba \
+        --with-libdir=/usr/lib/samba \
+	--with-pammodulesdir=/lib/security \
+        --with-lockdir=/var/lib/samba \
+        --with-logfilebase=/var/log/samba \
+        --with-mandir=%{_mandir} \
+        --with-piddir=/var/run \
+	--with-privatedir=%{_sysconfdir}/samba \
+	--disable-cups \
+        --with-acl-support \
+	--with-ads \
+        --with-automount \
+        --with-fhs \
+	--with-pam_smbpass \
+	--with-libsmbclient \
+	--with-libsmbsharemodes \
+        --without-smbwrapper \
+	--with-pam \
+	--with-quotas \
+	--with-syslog \
+	--with-utmp \
+	--with-cluster-support \
+	--with-ctdb=/usr/include \
+	--without-ldb \
+	--without-dnsupdate \
+	--with-aio-support
+
+make showlayout
+
+make CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -m32"  proto
+
+## check for gcc 3.4 or later
+CC_VERSION=`${CC} --version | head -1 | awk '{print $3}'`
+CC_MAJOR=`echo ${CC_VERSION} | cut -d. -f 1`
+CC_MINOR=`echo ${CC_VERSION} | cut -d. -f 2`
+if [ ${CC_MAJOR} -ge 3 ]; then
+        if [ ${CC_MAJOR} -gt 3 -o ${CC_MINOR} -ge 4 ]; then
+                make pch
+        fi
+fi
+
+make CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -m32" %{?_smp_mflags} \
+	nss_modules pam_modules
+
+rm -rf %{_32bit_tmp_dir}
+mkdir %{_32bit_tmp_dir}
+
+mv nsswitch/libnss_winbind.so %{_32bit_tmp_dir}/
+mv bin/pam_winbind.so %{_32bit_tmp_dir}/
+mv bin/libtalloc.so* %{_32bit_tmp_dir}/
+mv bin/libtdb.so* %{_32bit_tmp_dir}/
+
+make clean
+
+CC="$CC_SAVE"
+
+%endif
+
 CFLAGS="$RPM_OPT_FLAGS $EXTRA -D_GNU_SOURCE" ./configure \
 	--prefix=%{_prefix} \
 	--localstatedir=/var \
@@ -210,6 +284,7 @@ mkdir -p $RPM_BUILD_ROOT%{_initrddir}
 mkdir -p $RPM_BUILD_ROOT{%{_libarchdir},%{_includedir}}
 mkdir -p $RPM_BUILD_ROOT%{_libarchdir}/samba/{auth,charset,idmap,vfs,pdb}
 mkdir -p $RPM_BUILD_ROOT/%{_libarch}/security
+mkdir -p $RPM_BUILD_ROOT/lib/security
 mkdir -p $RPM_BUILD_ROOT%{_mandir}
 mkdir -p $RPM_BUILD_ROOT%{_prefix}/{bin,sbin}
 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
@@ -248,6 +323,20 @@ do
 		${RPM_BUILD_ROOT}%{_libarchdir}/
 done
 
+# install files for winbind-32bit package
+%ifarch x86_64 ppc64
+
+install -m 755 %{_32bit_tmp_dir}/libnss_winbind.so ${RPM_BUILD_ROOT}/lib/libnss_winbind.so.2
+( cd ${RPM_BUILD_ROOT}/lib; ln -sf libnss_winbind.so.2  libnss_winbind.so )
+
+mv %{_32bit_tmp_dir}/libtalloc* ${RPM_BUILD_ROOT}/usr/lib
+mv %{_32bit_tmp_dir}/libtdb* ${RPM_BUILD_ROOT}/usr/lib
+mv %{_32bit_tmp_dir}/pam_winbind.so ${RPM_BUILD_ROOT}/lib/security
+
+rm -rf %{_32bit_tmp_dir}
+
+%endif
+
 ## cleanup
 /bin/rm -rf $RPM_BUILD_ROOT/usr/lib*/samba/security
 
@@ -519,13 +608,13 @@ exit 0
 %{_mandir}/man1/ldbmodify.1*
 %{_mandir}/man1/ldbsearch.1*
 
-%ifarch i386 i486 i586 i686 ppc s390
+%ifarch x86_64 ppc64
 %files winbind-32bit
-%attr(755,root,root) /%{_libarch}/libnss_winbind.so*
-#%attr(755,root,root) /%{_libarch}/libnss_wins.so*
-%attr(755,root,root) /%{_libarchdir}/libtalloc.so*
-%attr(755,root,root) /%{_libarchdir}/libtdb.so*
-%attr(755,root,root) /%{_libarch}/security/pam_winbind.so
+%attr(755,root,root) /lib/libnss_winbind.so*
+#%attr(755,root,root) /lib/libnss_wins.so*
+%attr(755,root,root) /usr/lib/libtalloc.so*
+%attr(755,root,root) /usr/lib/libtdb.so*
+%attr(755,root,root) /lib/security/pam_winbind.so
 %endif
 
 


-- 
SAMBA-CTDB repository


More information about the samba-cvs mailing list