svn commit: samba r22027 - in branches/SAMBA_4_0/source: .

jpeach at samba.org jpeach at samba.org
Mon Apr 2 17:02:52 GMT 2007


Author: jpeach
Date: 2007-04-02 17:02:52 +0000 (Mon, 02 Apr 2007)
New Revision: 22027

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22027

Log:
Allow separate build and source directories. Don't follow symlinks
when copying hemidal_build since this leads to traversal loops.

Modified:
   branches/SAMBA_4_0/source/configure.ac


Changeset:
Modified: branches/SAMBA_4_0/source/configure.ac
===================================================================
--- branches/SAMBA_4_0/source/configure.ac	2007-04-02 12:52:08 UTC (rev 22026)
+++ branches/SAMBA_4_0/source/configure.ac	2007-04-02 17:02:52 UTC (rev 22027)
@@ -78,6 +78,10 @@
 
 AC_SUBST(ac_default_prefix)
 
+for d in build/smb_build bin include ; do
+    test -d ${builddir}/$d || AS_MKDIR_P(${builddir}/$d)
+done
+
 echo "configure: creating build/smb_build/config.pm"
 cat >build/smb_build/config.pm<<CEOF
 # config.pm - Autogenerate by configure. DO NOT EDIT!
@@ -107,15 +111,30 @@
 CEOF
 
 AC_OUTPUT_COMMANDS(
-[test "x$ac_abs_srcdir" != "x$ac_abs_builddir" && 
- (cd $builddir; 
-	test -d heimdal || cp -r $srcdir/heimdal $builddir/
-	test -d heimdal_build || cp -r $srcdir/heimdal_build $builddir/
-	test -d build || samba_builddir="$builddir" samba_srcdir="$srcdir" $PERL $srcdir/script/buildtree.pl
-	test -f $builddir/include/smb.h || cp $srcdir/include/smb.h $builddir/include
+[
+test "x$ac_abs_srcdir" != "x$ac_abs_builddir" && (
+	cd $builddir;
+	# NOTE: We *must* use -R so we don't follow symlinks (at least on BSD
+	# systems).
+	test -d heimdal || cp -R $srcdir/heimdal $builddir/
+	test -d heimdal_build || cp -R $srcdir/heimdal_build $builddir/
+	test -d build || builddir="$builddir" \
+			srcdir="$srcdir" \
+			$PERL ${srcdir}/script/buildtree.pl
  )
-$PERL -I${builddir} -I${srcdir} -I${srcdir}/build ${srcdir}/build/smb_build/main.pl || exit $?],[
-PERL="$PERL";export PERL;export srcdir; export builddir;
+
+$PERL -I${builddir} -I${builddir}/build \
+    -I${srcdir} -I${srcdir}/build \
+    ${srcdir}/build/smb_build/main.pl || exit $?
+],
+[
+srcdir="$srcdir"
+builddir="$builddir"
+PERL="$PERL"
+
+export PERL
+export srcdir
+export builddir
 ])
 AC_OUTPUT
 



More information about the samba-cvs mailing list