git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			171 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			171 lines
		
	
	
		
			4.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 6 ]; then
 | |
|     echo "Usage: $0 WXDIR DESTDIR SKIPCLEAN VERSION PYVER CHARTYPE"
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| WXDIR=$1
 | |
| DESTDIR=$2
 | |
| SKIPCLEAN=$3
 | |
| VERSION=$4
 | |
| PYVER=$5
 | |
| CHARTYPE=$6
 | |
| 
 | |
| # WXDIR is the cygwin path, WXWIN is the DOS path
 | |
| WXWIN=`cygpath -w $WXDIR`
 | |
| export WXWIN
 | |
| export WXDIR
 | |
| export TOOLS=/cygdrive/c/TOOLS
 | |
| 
 | |
| 
 | |
| # 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.bz2"
 | |
| cd $DESTDIR
 | |
| tar xjf wxPython-src-$VERSION.tar.bz2
 | |
| rm wxPython-src-$VERSION.tar.bz2
 | |
| 
 | |
| 
 | |
| # 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
 | |
| s/wxUSE_GRAPHICS_CONTEXT *0/wxUSE_GRAPHICS_CONTEXT 1/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..."
 | |
| if [ $CHARTYPE = both -o $CHARTYPE = ansi ]; then
 | |
|     .make hybrid USE_GDIPLUS=1
 | |
| fi
 | |
| if [ $CHARTYPE = both -o $CHARTYPE = unicode ]; then
 | |
|     .make hybrid-uni USE_GDIPLUS=1
 | |
| fi
 | |
| 
 | |
| 
 | |
| # echo "Building tex2rtf..."
 | |
| # cd $WXDIR/utils/tex2rtf/src
 | |
| # $WXDIR/build/msw/.mymake hybrid 
 | |
| # cp vc_mswhdll/tex2rtf.exe $WXDIR/lib/vc_dll/tex2rtf.exe
 | |
| 
 | |
| # echo "Translating docs to html..."
 | |
| # DOCDIR=$WXDIR/docs
 | |
| # cd $DOCDIR/latex/wx
 | |
| # mkdir -p $DOCDIR/html/wx
 | |
| # cp *.gif $DOCDIR/html/wx
 | |
| # cp *.css $DOCDIR/html/wx
 | |
| # DOCSRC=`cygpath -w $DOCDIR/latex/wx/manual.tex`
 | |
| # DOCDEST=`cygpath -w $DOCDIR/html/wx/wx.htm` 
 | |
| # DOCINI=`cygpath -w $DOCDIR/latex/wx/tex2rtf_css.ini`
 | |
| 
 | |
| # $WXDIR/lib/vc_dll/tex2rtf.exe $DOCSRC $DOCDEST -twice -html -macros $DOCINI
 | |
| 
 | |
| 
 | |
| # echo "Extracting html docs..."
 | |
| # mkdir -p $WXDIR/docs/html/wx
 | |
| # cd $WXDIR/docs/html/wx
 | |
| # rm -rf *
 | |
| # tar xjf $DESTDIR/wxPython-docs-$VERSION.tar.bz2
 | |
| # rm $DESTDIR/wxPython-docs-$VERSION.tar.bz2
 | |
| # unzip wxPython-$VERSION/docs/wx.zip
 | |
| 
 | |
| 
 | |
| echo "Building the HTMLHelp file..."
 | |
| cd $WXDIR/docs/html/wx
 | |
| ##cp $DOCDIR/latex/wx/wx.css .
 | |
| $TOOLS/HTMLHelpWorkshop/hhc.exe wx.hhp || true
 | |
| mkdir -p ../../htmlhelp
 | |
| mv wx.chm ../../htmlhelp
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| echo "Building wxPython and installers..."
 | |
| cd $WXDIR/wxPython
 | |
| mkdir -p dist
 | |
| if [ $CHARTYPE = both -o $CHARTYPE = ansi ]; then
 | |
|     b $PYVER d UNICODE=0 USE_SWIG=0
 | |
|     b $PYVER h UNICODE=0 USE_SWIG=0 EP_ADD_OPTS=1
 | |
|     b $PYVER r UNICODE=0 USE_SWIG=0
 | |
| fi
 | |
| if [ $CHARTYPE = both -o $CHARTYPE = unicode ]; then
 | |
|     b $PYVER d UNICODE=1 USE_SWIG=0
 | |
|     b $PYVER h UNICODE=1 USE_SWIG=0 EP_ADD_OPTS=1
 | |
|     b $PYVER r UNICODE=1 USE_SWIG=0
 | |
| fi
 | |
| 
 | |
| 
 | |
| echo "Building the developer package..."
 | |
| WXWIN=`cygpath -w $WXDIR`
 | |
| export WXWIN
 | |
| $TOOLS/4dos/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 -fr $WXDIR || true
 | |
| fi
 | |
| 
 | |
| echo "-=-=-=-  Goodbye!  -=-=-=-"
 |