Adapt to new file naming scheme, new Installer structures, and other

build tweaks.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2004-10-15 01:13:02 +00:00
parent 7093495299
commit 28d1454aff
5 changed files with 140 additions and 136 deletions

View File

@@ -24,7 +24,7 @@ WIN_BUILD=/c/BUILD
# Just like the above
OSX_HOST_panther=bigmac
OSX_HOST_jaguar=whopper
OSX_BUILD=/tmp/BUILD
OSX_BUILD=/BUILD
# Alsmost the same... See below for hosts and other info
@@ -58,6 +58,7 @@ function usage {
echo " skipsource Don't build the source archives, use the ones"
echo " already in the staging dir."
echo " onlysource Exit after building the source archives"
echo " skipdocs Don't rebuild the docs"
echo " skipwin Don't do the remote Windows build"
echo " skiposx Don't do the remote OSX build"
echo " skiplinux Don't do the remote Linux build"
@@ -84,6 +85,7 @@ KIND=dryrun
PYVER=2.3
skipsource=no
onlysource=no
skipdocs=no
skipwin=no
skiposx=no
skiplinux=no
@@ -101,6 +103,7 @@ for flag in $*; do
skipsource) skipsource=yes ;;
onlysource) onlysource=yes ;;
skipdocs) skipdocs=yes ;;
skipwin) skipwin=yes ;;
skiposx) skiposx=yes ;;
skiplinux) skiplinux=yes ;;
@@ -140,42 +143,39 @@ if [ $skipsource != yes -o $onlysource = yes ]; then
# clean out the local dist dir
rm -f dist/*
# Regenerate the reST docs
echo "Regenerating the reST docs..."
cd docs
for x in *.txt; do
docutils-html $x `basename $x .txt`.html
done
cd -
# build the doc and demo tarballs
distrib/makedemo
distrib/makedocs
if [ $skipdocs != yes ]; then
# Regenerate the reST docs
echo "Regenerating the reST docs..."
cd docs
for x in *.txt; do
docutils-html $x `basename $x .txt`.html
done
cd -
# build the doc and demo tarballs
distrib/makedemo
distrib/makedocs
# build the new docs too
docs/bin/everything
# build the new docs too
docs/bin/everything
fi
# make the source tarball
distrib/makerpm 2.3 skipclean skiprpm gtk2
# make the source RPMs
for ver in $PYVER; do
distrib/makerpm $ver skipclean skipcopy skiptar srpm
distrib/makerpm $ver skipclean skipcopy skiptar srpm gtk2
done
# make the source tarball and srpm
distrib/makerpm 2.3 srpm
# Copy everything to the staging dir
echo "Moving stuff to $STAGING_DIR..."
rm -f dist/*.spec
mv dist/* $STAGING_DIR
for doc in CHANGES BUILD INSTALL MigrationGuide default; do
cp docs/$doc.* $STAGING_DIR
done
if [ $skipdocs != yes ]; then
for doc in CHANGES BUILD INSTALL MigrationGuide default; do
cp docs/$doc.* $STAGING_DIR
done
fi
# cleanup
echo "Cleaning up..."
rm -f dist/*
rm -rf _build_rpm
fi
if [ $KIND = daily ]; then
@@ -193,18 +193,18 @@ if [ $skipwin != yes ]; then
echo "-=-=- Starting Windows build..."
echo "Copying source file and build script..."
scp $STAGING_DIR/wxPythonSrc-$VERSION.tar.gz \
scp $STAGING_DIR/wxPython-src-$VERSION.tar.gz \
distrib/all/build-windows \
$WIN_HOST:$WIN_BUILD
echo "Running build script on $WIN_HOST..."
wxdir=$WIN_BUILD/wxPythonSrc-$VERSION
wxdir=$WIN_BUILD/wxPython-src-$VERSION
cmd=./build-windows
ssh $WIN_HOST "cd $WIN_BUILD && $cmd $wxdir $WIN_BUILD $skipclean $VERSION $PYVER && rm $cmd"
echo "Fetching the results..."
scp $WIN_HOST:$WIN_BUILD/wxPythonWIN32* $STAGING_DIR
ssh $WIN_HOST "rm $WIN_BUILD/wxPythonWIN32*"
scp $WIN_HOST:$WIN_BUILD/wxPython*-win32* $STAGING_DIR
ssh $WIN_HOST "rm $WIN_BUILD/wxPython*-win32*"
fi
@@ -231,20 +231,21 @@ function DoOSXBuild {
echo "Copying source files and build script..."
ssh root@$host "mkdir -p $OSX_BUILD && rm -rf $OSX_BUILD/* || true"
scp $STAGING_DIR/wxPythonSrc-$VERSION.tar.gz \
$STAGING_DIR/wxPythonDocs-$VERSION.tar.gz \
$STAGING_DIR/wxPythonDemo-$VERSION.tar.gz \
#ssh root@$host "mkdir -p $OSX_BUILD || true"
scp $STAGING_DIR/wxPython-src-$VERSION.tar.gz \
$STAGING_DIR/wxPython-docs-$VERSION.tar.gz \
$STAGING_DIR/wxPython-demo-$VERSION.tar.gz \
distrib/all/build-osx \
root@$host:$OSX_BUILD
echo "Running build script on $host..."
wxdir=$OSX_BUILD/wxPythonSrc-$VERSION
wxdir=$OSX_BUILD/wxPython-src-$VERSION
cmd=./build-osx
ssh root@$host "cd $OSX_BUILD && $cmd $wxdir $OSX_BUILD $skipclean $VERSION $flavor $PYVER && rm $cmd"
echo "Fetching the results..."
scp "root@$host:$OSX_BUILD/wxPythonOSX*" $STAGING_DIR
ssh root@$host "rm $OSX_BUILD/wxPythonOSX*"
scp "root@$host:$OSX_BUILD/wxPython*-osx*" $STAGING_DIR
ssh root@$host "rm $OSX_BUILD/wxPython*-osx*"
}
@@ -285,7 +286,7 @@ function DoLinuxBuild {
echo "Copying source files and build script..."
ssh root@$host "mkdir -p $LINUX_BUILD && rm -rf $LINUX_BUILD/*"
scp $STAGING_DIR/wxPython*.src.rpm \
scp $STAGING_DIR/wxPython-src* $STAGING_DIR/wxPython.spec\
distrib/all/build-linux \
root@$host:$LINUX_BUILD
@@ -294,15 +295,15 @@ function DoLinuxBuild {
ssh root@$host "cd $LINUX_BUILD && ./build-linux $reltag $skipclean $VERSION $pyver"
echo "Fetching the results..."
scp "root@$host:$LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm" $STAGING_DIR
ssh root@$host "rm $LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm"
scp "root@$host:$LINUX_BUILD/wxPython*.i[0-9]86.rpm" $STAGING_DIR
ssh root@$host "rm $LINUX_BUILD/wxPython*.i[0-9]86.rpm"
}
if [ $skiplinux != yes ]; then
DoLinuxBuild co-rh9 RH9 $PYVER
DoLinuxBuild co-fc2 FC2 2.3
DoLinuxBuild co-rh9 rh9 $PYVER
DoLinuxBuild co-fc2 fc2 2.3
fi

View File

@@ -32,51 +32,53 @@ PYVER=$@
rpmtop=_rpm_top
function DoRPMBuild {
echo "*** Setting up RPM build dirs"
for dir in SPECS BUILD RPMS SRPMS tmp; do
if [ ! -d $rpmtop/$dir ]; then
mkdir -p $rpmtop/$dir
fi
done
if [ ! -e $rpmtop/SOURCES ]; then
ln -s $PWD $rpmtop/SOURCES
fi
# $1 : python version
# $2 : port
# $3 : unicode
rpmbuild --define "_topdir $PWD/$rpmtop" \
--define "_tmppath $PWD/$rpmtop/tmp" \
--define "release $RELEASE" \
$@
--define "release ${RELEASE}_py$1" \
--define "pyver $1" \
--define "port $2" \
--define "unicode $3" \
-bb wxPython.spec
if [ $? != 0 ]; then
return $?
fi
echo "*** Moving RPMs to ."
find $rpmtop -name "*.rpm"
mv -f `find $rpmtop -name "*.rpm"` .
echo "*** Cleaning up $rpmtop"
rm -rf $rpmtop
}
echo "*** Setting up RPM build dirs"
for dir in SPECS BUILD RPMS SOURCES SRPMS tmp; do
if [ ! -d $rpmtop/$dir ]; then
mkdir -p $rpmtop/$dir
fi
done
cp wxPython-src-$VERSION.tar.gz $rpmtop/SOURCES
echo "******************** PYVER = " $PYVER
for ver in $PYVER; do
echo "Building the RPMs for Python $ver..."
for port in GTK GTK2; do
rpm2cpio wxPython$port-py$ver-$VERSION-1.src.rpm | \
cpio --extract -R root.
DoRPMBuild -ba wxPython$port.spec
done
DoRPMBuild $ver gtk 0
DoRPMBuild $ver gtk2 1
DoRPMBuild $ver gtk2 0
done
echo "*** Moving RPMs to ."
find $rpmtop -name "*.rpm"
mv -f `find $rpmtop -name "*.rpm"` .
if [ $SKIPCLEAN != yes ]; then
echo "*** Cleaning up $rpmtop"
rm -rf $rpmtop
echo "Cleaning up..."
for ver in $PYVER; do
rm wxPythonGTK-py$ver-$VERSION-*.src.rpm
rm wxPythonGTK2-py$ver-$VERSION-*.src.rpm
done
rm *.spec *.tar.gz
fi

View File

@@ -9,7 +9,7 @@
# 2. the path of where to put the resulting installers
# 3. skipclean flag (yes|no)
# 4. the VERSION
# 5. the FLAVOR (panther or jaguar)
# 5. the KIND (panther or jaguar)
# *. the remaining args are the versions of Python to build for
#
# ---------------------------------------------------------------------------
@@ -20,7 +20,7 @@ set -o errexit
echo "-=-=-=- Hello from $HOSTNAME -=-=-=-"
if [ $# -lt 6 ]; then
echo "Usage: $0 WXDIR DESTDIR SKIPCLEAN VERSION FLAVOR PYVER..."
echo "Usage: $0 WXDIR DESTDIR SKIPCLEAN VERSION KIND PYVER..."
exit 1
fi
@@ -28,26 +28,29 @@ WXDIR=$1
DESTDIR=$2
SKIPCLEAN=$3
VERSION=$4
FLAVOR=$5
KIND=$5
shift;shift;shift;shift;shift
PYVER=$@
export PATH=/sw/bin:/usr/local/bin:$PATH
#export PATH=/sw/bin:/usr/local/bin:$PATH
export PATH=/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:.:/usr/local/bin:/usr/X11R6/bin
echo "PATH =" $PATH
echo "which gcc = " `which gcc`
#exit 0
# untar the source
echo "Unarchiving wxPythonSrc-$VERSION.tar.gz"
echo "Unarchiving wxPython-src-$VERSION.tar.gz"
cd $DESTDIR
tar xzf wxPythonSrc-$VERSION.tar.gz
rm wxPythonSrc-$VERSION.tar.gz
tar xzf wxPython-src-$VERSION.tar.gz
rm wxPython-src-$VERSION.tar.gz
echo "Invoking wxPythonOSX build script..."
cd $WXDIR/wxPython
export TARBALLDIR=$DESTDIR
mkdir -p dist
distrib/mac/wxPythonOSX/build $FLAVOR inplace skipclean
distrib/mac/wxPythonOSX/build $KIND inplace skipclean
echo "Copying installers to $DESTDIR..."
@@ -58,8 +61,8 @@ cd $DESTDIR
if [ $SKIPCLEAN != yes ]; then
echo "Cleaning up..."
rm -r $WXDIR || true
rm wxPythonDocs-$VERSION.tar.gz
rm wxPythonDemo-$VERSION.tar.gz
rm wxPython-docs-$VERSION.tar.gz
rm wxPython-demo-$VERSION.tar.gz
fi
echo "-=-=-=- Goodbye! -=-=-=-"

View File

@@ -33,7 +33,7 @@ PYVER=$@
# WXDIR is the cygwin path, WXWIN is the DOS path
WXWIN_OLD=$WXWIN
WXWIN=`cygpath -m $WXDIR`
WXWIN=`cygpath -w $WXDIR`
export WXWIN
@@ -47,16 +47,16 @@ export WXWIN
# untar the source
echo "Unarchiving wxPythonSrc-$VERSION.tar.gz"
echo "Unarchiving wxPython-src-$VERSION.tar.gz"
cd $DESTDIR
tar xzf wxPythonSrc-$VERSION.tar.gz
rm wxPythonSrc-$VERSION.tar.gz
tar xzf wxPython-src-$VERSION.tar.gz
rm wxPython-src-$VERSION.tar.gz
# Fix line endings
echo "Converting wxPython line endings to CRLF..."
cd $WXDIR
names=`find wxPython -name "*.py" -o -name "*.txt" -o -name "*.htm*" -o -name "*.css" -o -name "*.h" -o -name "*.cpp" -o -name "*.c" -o -name "*.xml" `
names=`find wxPython -name "*.py" -o -name "*.txt" -o -name "*.htm*" -o -name "*.css" -o -name "*.xml" `
unix2dos -D $names
@@ -86,11 +86,11 @@ echo "Building the wx DLLs..."
.make hybrid-uni
echo "Building the wx tools..."
.make_tools
#echo "Building the wx tools..."
#.make_tools
# cheat and just copy the .CHM files from the regular project dir
# TODO: Copy over the wxPythonDocs fle and run hhc on the contents of that.
# TODO: Copy over the wxPython-docs fle and run hhc on the contents of that.
mkdir -p $WXDIR/docs/htmlhelp
cp `cygpath $WXWIN_OLD/docs/htmlhelp`/*.chm $WXDIR/docs/htmlhelp
@@ -102,10 +102,10 @@ mkdir -p dist
for ver in $PYVER; do
echo $ver
b $ver d USE_SWIG=0
b $ver h USE_SWIG=0
b $ver h USE_SWIG=0 EP_ADD_OPTS=1
b $ver r USE_SWIG=0
b $ver d UNICODE=1 USE_SWIG=0
b $ver h UNICODE=1 USE_SWIG=0
b $ver h UNICODE=1 USE_SWIG=0 EP_ADD_OPTS=1
b $ver r UNICODE=1 USE_SWIG=0
done
@@ -116,7 +116,7 @@ export WXWIN
echo "Copying installers to $DESTDIR..."
mv dist/wxPythonWIN32* $DESTDIR
mv dist/wxPython* $DESTDIR
cd $DESTDIR