git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			136 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| # ---------------------------------------------------------------------------
 | |
| # Build wxWidgets and wxPython on a Windows box.  This is normally called 
 | |
| # from build-all but it should be able to be used standalone too...
 | |
| # 
 | |
| # The command line must have the following parameters:
 | |
| #
 | |
| #    1. the path to the base of the wx source tree
 | |
| #    2. the path of where to put the resulting installers
 | |
| #    3. skipclean flag (yes|no)
 | |
| #    4. the VERSION
 | |
| #    5. the remaining args are the versions of Python to build for
 | |
| #
 | |
| # ---------------------------------------------------------------------------
 | |
| 
 | |
| set -o errexit
 | |
| #set -o xtrace
 | |
| 
 | |
| echo "-=-=-=-  Hello from $HOSTNAME  -=-=-=-"
 | |
| 
 | |
| if [ $# -lt 5 ]; then
 | |
|     echo "Usage: $0 WXDIR DESTDIR SKIPCLEAN VERSION PYVER..."
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| WXDIR=$1
 | |
| DESTDIR=$2
 | |
| SKIPCLEAN=$3
 | |
| VERSION=$4
 | |
| PYVER=$5
 | |
| 
 | |
| 
 | |
| # WXDIR is the cygwin path, WXWIN is the DOS path
 | |
| WXWIN_OLD=$WXWIN
 | |
| WXWIN=`cygpath -w $WXDIR`
 | |
| export WXWIN
 | |
| 
 | |
| 
 | |
| 
 | |
| # setup the compiler
 | |
| if [ $PYVER = 2.3 ]; then
 | |
|     echo "Using MSVC ver 6"
 | |
|     . msvcset local 6
 | |
|     echo `which cl.exe`
 | |
| else
 | |
|     echo "Using MSVC ver 7"
 | |
|     . msvcset local 7
 | |
|     echo `which cl.exe`
 | |
| fi
 | |
| 
 | |
| 
 | |
| # untar the source 
 | |
| echo "Unarchiving wxPython-src-$VERSION.tar.gz"
 | |
| cd $DESTDIR
 | |
| 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 "*.xml" `
 | |
| unix2dos -D $names
 | |
| 
 | |
| 
 | |
| # change to the right spot in the source tree and copy our build scripts
 | |
| echo "Setting up for the build..."
 | |
| cd $WXDIR/build/msw
 | |
| cp $WXDIR/wxPython/distrib/msw/.m* .
 | |
| chmod +x .m*
 | |
| 
 | |
| 
 | |
| # replace some settings in setup0.h and write to setup.h
 | |
| cat > .my.sedexpr  <<EOF
 | |
| s/wxDIALOG_UNIT_COMPATIBILITY *1/wxDIALOG_UNIT_COMPATIBILITY 0/g
 | |
| s/wxUSE_EXCEPTIONS *1/wxUSE_EXCEPTIONS 0/g
 | |
| s/wxUSE_DEBUG_CONTEXT *0/wxUSE_DEBUG_CONTEXT 1/g
 | |
| s/wxUSE_MEMORY_TRACING *0/wxUSE_MEMORY_TRACING 1/g
 | |
| s/wxUSE_DIALUP_MANAGER *1/wxUSE_DIALUP_MANAGER 0/g
 | |
| s/wxUSE_GLCANVAS *0/wxUSE_GLCANVAS 1/g
 | |
| s/wxUSE_POSTSCRIPT *0/wxUSE_POSTSCRIPT 1/g
 | |
| s/wxUSE_AFM_FOR_POSTSCRIPT *1/wxUSE_AFM_FOR_POSTSCRIPT 0/g
 | |
| s/wxUSE_DISPLAY *0/wxUSE_DISPLAY 1/g
 | |
| s/wxUSE_DIB_FOR_BITMAP *0/wxUSE_DIB_FOR_BITMAP 1/g
 | |
| s/wxUSE_DEBUGREPORT *1/wxUSE_DEBUGREPORT 0/g
 | |
| EOF
 | |
| cat $WXDIR/include/wx/msw/setup0.h | sed -f .my.sedexpr > $WXDIR/include/wx/msw/setup.h
 | |
| rm .my.sedexpr
 | |
| 
 | |
| 
 | |
| echo "Building the wx DLLs..."
 | |
| .make hybrid
 | |
| .make hybrid-uni
 | |
| 
 | |
| 
 | |
| #echo "Building the wx tools..."
 | |
| #.make_tools
 | |
| 
 | |
| # cheat and just copy the .CHM files from the regular project dir
 | |
| # 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
 | |
| 
 | |
| 
 | |
| echo "Building wxPython and installers..."
 | |
| cd $WXDIR/wxPython
 | |
| mkdir -p dist
 | |
| 
 | |
| for ver in $PYVER; do
 | |
|     echo $ver
 | |
|     b $ver d UNICODE=0 USE_SWIG=0
 | |
|     b $ver h UNICODE=0 USE_SWIG=0 EP_ADD_OPTS=1
 | |
|     b $ver r UNICODE=0 USE_SWIG=0
 | |
|     b $ver d 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
 | |
| 
 | |
| echo "Building the developer package..."
 | |
| WXWIN=`cygpath -w $WXDIR`
 | |
| export WXWIN
 | |
| 4nt /c distrib/makedev.bat $VERSION
 | |
| 
 | |
| 
 | |
| echo "Copying installers to $DESTDIR..."
 | |
| mv dist/wxPython* $DESTDIR
 | |
| cd $DESTDIR
 | |
| 
 | |
| 
 | |
| if [ $SKIPCLEAN != yes ]; then 
 | |
|     echo "Cleaning up..."
 | |
|     rm -r $WXDIR || true
 | |
| fi
 | |
| 
 | |
| echo "-=-=-=-  Goodbye!  -=-=-=-"
 |