]> git.saurik.com Git - wxWidgets.git/commitdiff
Starting to update the tarball and rpm spec files for 2.5. Mostly
authorRobin Dunn <robin@alldunn.com>
Tue, 13 Jan 2004 03:42:43 +0000 (03:42 +0000)
committerRobin Dunn <robin@alldunn.com>
Tue, 13 Jan 2004 03:42:43 +0000 (03:42 +0000)
done but some fine tuning still needs done.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/distrib/makerpm
wxPython/distrib/wxPythonFull.spec.in

index 6d6088d5150d5384ce6523f76c905d2a9fa9b5c2..667c79fc2921a87a020bc0101ac5b5ed488bca90 100755 (executable)
@@ -2,6 +2,8 @@
 #----------------------------------------------------------------------
 # Build an RPM containing both wxGTK and wxPython
 
+##set -o xtrace
+
 spectemplate=distrib/wxPythonFull.spec.in
 
 if [ ! -d wxPython -o ! -e ${spectemplate} ]; then
@@ -13,6 +15,7 @@ fi
 #----------------------------------------------------------------------
 # Initialization
 
+version=`python -c "import setup;print setup.VERSION"`
 wxpdir=`pwd`
 wxdir=${wxpdir}/..
 distdir=${wxpdir}/dist
@@ -29,9 +32,8 @@ rpmflag=-ba
 #----------------------------------------------------------------------
 # Check parameters
 
-function useage {
-    echo "Usage: $0 wx_version py_version [command flags...]"
-    echo "   wx_version     String to use for version in filenames, etc."
+function usage {
+    echo "Usage: $0 py_version [command flags...]"
     echo "   py_version     String to append to $pythonbin (which python"
     echo "                  version to use.)"
     echo ""
@@ -48,13 +50,12 @@ function useage {
 }
 
 if [ $# -lt 2 ]; then
-    useage
+    usage
     exit 1
 fi
 
-version=$1
-pyver=$2
-shift;shift
+pyver=$1
+shift
 
 ver2=`echo ${version} | cut -c 1,2,3`
 tarver=${tarname}-${version}
@@ -95,7 +96,7 @@ for flag in $*; do
        srpm)      rpmflag=-bs;                        ;;
 
        *)  echo "Unknown flag \"${flag}\""
-           useage
+           usage
            exit 1
     esac
 done
@@ -124,6 +125,14 @@ done
 #----------------------------------------------------------------------
 # Copy the sources from my CVS workspace
 
+function cleanup {
+    RMFILES=`find . -name "$1"`
+    if [ "$RMFILES" != "" ]; then
+       rm -rf $RMFILES
+    fi
+}
+
+
 if [ -z "${skipcopy}" ]; then
     echo "*** Copying CVS tree"
     pushd ${builddir} > /dev/null
@@ -136,7 +145,7 @@ if [ -z "${skipcopy}" ]; then
     cp -pf --link ${wxdir}/* ${tarver} > /dev/null 2>&1
 
     # copy all top dirs except CVS, build, demos, utils, samples, and wxPython
-    for d in art contrib debian distrib docs include lib locale misc patches src; do
+    for d in art build contrib debian distrib docs include lib locale misc patches src; do
        if [ -e ${wxdir}/$d ]; then
            cp -Rpf --link ${wxdir}/$d ${tarver} #> /dev/null 2>&1
        fi
@@ -145,36 +154,36 @@ if [ -z "${skipcopy}" ]; then
     # now do the same thing for wxPython, skipping it's build dirs and such
     mkdir ${tarver}/wxPython
     cp -pf --link ${wxdir}/wxPython/* ${tarver}/wxPython > /dev/null 2>&1
-    for d in contrib demo distrib distutils docs licence samples scripts src wx wxPython; do
+    for d in contrib demo distrib distutils docs include licence samples scripts src SWIG wx wxPython; do
        cp -Rpf --link ${wxdir}/wxPython/$d ${tarver}/wxPython #> /dev/null 2>&1
     done
 
+#     cp -Rpf --link ${wxdir}/* ${tarver} > /dev/null 2>&1
+#     rm -r ${tarver}/bld*
+#     rm -r ${tarver}/wxPython/build*
+#     rm -r ${tarver}/wxPython/_build_rpm
 
     echo "*** Removing uneeded stuff from copy of CVS tree"
     pushd ${tarver} > /dev/null
-    rm `find . -name .cvsignore`
-    rm -rf `find . -name CVS`
+    cleanup .cvsignore
+    cleanup CVS
+    cleanup CVSROOT
+    rm BuildCVS.txt
     rm *.spec
     rm -rf docs/html
     rm -rf docs/latex
     rm -rf contrib/docs
     rm -rf contrib/samples
     rm locale/*.mo
-    rm `find . -name ".#*"`
-    rm `find . -name "*~"`
-    rm `find . -name "*.pyc"`
-    rm `find . -name "core"`
-    rm `find . -name "core.[0-9]*"`
+    cleanup ".#*"
+    cleanup "*~"
+    cleanup "*.pyc"
+    cleanup core
+    cleanup "core.[0-9]*"
 
-    rm -f wxPython/wxPython/*  > /dev/null 2>&1
+    rm -f wxPython/wx/*  > /dev/null 2>&1
     rm wxPython/demo/.setup.sh
-    rm -rf wxPython/contrib/art2d
-    rm -rf wxPython/contrib/canvas
-    rm -rf wxPython/contrib/canvas2
-    rm -rf wxPython/contrib/gizmos/contrib
-    rm -rf wxPython/contrib/ogl/contrib
-    rm -rf wxPython/contrib/stc/contrib
-    rm -rf wxPython/contrib/xrc/contrib
+    rm -r wxPython/docs/xml-raw
 
     popd > /dev/null
     popd > /dev/null
index 9cbb0f7adea4a4d041430de286f319b27621acf8..32ab340a9e7d22abc4600eb3d4f6f991876f7d45 100644 (file)
@@ -52,10 +52,10 @@ Prefix:    %{pref}
 Provides: wxPython  = %{version}
 Provides: wxPython%{port}  = %{version}
 
-Provides: libwx_%{lcport}%{uniflg}%{dbgflg}-%{ver2}.so
-Provides: libwx_%{lcport}%{uniflg}%{dbgflg}-%{ver2}.so(WX%{port}%{UNIFLG}%{DBGFLG}_%{ver2})
-Provides: libwx_%{lcport}%{uniflg}%{dbgflg}_gl-%{ver2}.so
-Provides: libwx_%{lcport}%{uniflg}%{dbgflg}_gl-%{ver2}.so(WX%{port}%{UNIFLG}%{DBGFLG}_%{ver2})
+Provides: libwx_%{lcport}%{uniflg}%{dbgflg}-%{ver2}.so
+Provides: libwx_%{lcport}%{uniflg}%{dbgflg}-%{ver2}.so(WX%{port}%{UNIFLG}%{DBGFLG}_%{ver2})
+Provides: libwx_%{lcport}%{uniflg}%{dbgflg}_gl-%{ver2}.so
+Provides: libwx_%{lcport}%{uniflg}%{dbgflg}_gl-%{ver2}.so(WX%{port}%{UNIFLG}%{DBGFLG}_%{ver2})
 
 
 # old wxPython packages
@@ -90,20 +90,16 @@ that wxPython uses.
 
 #----------------------------------------------------------------
 %build
-if [ "$SMP" != "" ]; then
-    MAKE="make -j$SMP"
-else
-    MAKE="make"
-fi
 
 WXDIR=`pwd`
-mkdir build
-cd build
+mkdir bld
+cd bld
 
 # Configure, trying to reduce external dependencies
-$WXDIR/configure --with-%{lcport} \
+../configure --with-%{lcport} \
        --prefix=%{wxpref} \
        --disable-soname \
+       --disable-monolithic \
        --enable-rpath=%{wxpref}/lib \
        --with-opengl \
 %if %{unicode}
@@ -123,55 +119,43 @@ $WXDIR/configure --with-%{lcport} \
 %endif
 
 
-# Build wxWindows
-$MAKE
+# Build wxWindows and some contrib libs
+make 
+make -C contrib/src/gizmos 
+make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0"
+make -C contrib/src/stc
+make -C contrib/src/xrc
+
+
+# Install wxWindows and the contribs so the wxPython build can find
+# all the headers it needs
+make prefix=$RPM_BUILD_ROOT%{wxpref} install
+make -C contrib/src/gizmos prefix=$RPM_BUILD_ROOT%{wxpref} install
+make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" prefix=$RPM_BUILD_ROOT%{wxpref} install
+make -C contrib/src/stc prefix=$RPM_BUILD_ROOT%{wxpref} install
+make -C contrib/src/xrc prefix=$RPM_BUILD_ROOT%{wxpref} install
 
 
 # Now build wxPython
 cd $WXDIR/wxPython
 %{python} setup.py \
-       IN_CVS_TREE=1 \
        NO_SCRIPTS=1 \
        WXPORT=%{lcport} \
        UNICODE=%{unicode} \
-       WX_CONFIG="$WXDIR/build/wx-config --prefix=$WXDIR --exec-prefix=$WXDIR/build" \
+       WX_CONFIG="$RPM_BUILD_ROOT%{wxpref}/bin/wx-config --prefix=$RPM_BUILD_ROOT%{wxpref}" \
        build
 
+## $WXDIR/bld/wx-config --prefix=$WXDIR --exec-prefix=$WXDIR/bld" 
 
-
-# Build wxrc (XRC resource tool) but don't use the makefiles since they expect
-# a shared version of the xrc lib to have been built...
-cd $WXDIR/contrib/utils/wxrc
-WX_CONFIG="$WXDIR/build/wx-config --prefix=$WXDIR --exec-prefix=$WXDIR/build"
-wCC=`$WX_CONFIG --cc`
-wCXX=`$WX_CONFIG --cxx`
-
-for f in wxrc.cpp ../../src/xrc/xml.cpp ../../src/xrc/xmlres.cpp; do
-    echo $f
-    $wCXX `$WX_CONFIG --cxxflags` -I ../../include -I ../../src/xrc/expat/xmlparse -I ../../src/xrc/expat/xmltok -c $f
-done
-for f in ../../src/xrc/expat/xmlparse/xmlparse.c ../../src/xrc/expat/xmltok/xmlrole.c ../../src/xrc/expat/xmltok/xmltok.c; do
-    echo $f
-    $wCC `$WX_CONFIG --cxxflags` -I ../../include -I ../../src/xrc/expat/xmlparse -I ../../src/xrc/expat/xmltok -c $f
-done
-
-$wCXX `$WX_CONFIG --libs` *.o -o wxrc
+# Build wxrc (XRC resource tool)
+cd $WXDIR/bld/contrib/utils/wxrc
+make
 strip wxrc
 
 
-#----------------------------------------------------------------
-%install
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
-
-# install wxWindows
-WXDIR=`pwd`
-cd build
-make prefix=$RPM_BUILD_ROOT%{wxpref} install
-
 # install wxPython
 cd $WXDIR/wxPython
 %{python} setup.py \
-       IN_CVS_TREE=1 \
        NO_SCRIPTS=1 \
        WXPORT=%{lcport} \
        UNICODE=%{unicode} \
@@ -179,14 +163,52 @@ cd $WXDIR/wxPython
        install \
        --root=$RPM_BUILD_ROOT
 
+
+#----------------------------------------------------------------
+%install
+##[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+
+WXDIR=`pwd`
+
+# # install wxWindows
+# cd bld
+# make prefix=$RPM_BUILD_ROOT%{wxpref} install
+# make -C contrib/src/gizmos prefix=$RPM_BUILD_ROOT%{wxpref} install
+# make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" prefix=$RPM_BUILD_ROOT%{wxpref} install
+# make -C contrib/src/stc prefix=$RPM_BUILD_ROOT%{wxpref} install
+# make -C contrib/src/xrc prefix=$RPM_BUILD_ROOT%{wxpref} install
+
+# # install wxPython
+# cd $WXDIR/wxPython
+# %{python} setup.py \
+#      NO_SCRIPTS=1 \
+#      WXPORT=%{lcport} \
+#      UNICODE=%{unicode} \
+#      WX_CONFIG="$RPM_BUILD_ROOT%{wxpref}/bin/wx-config --prefix=$RPM_BUILD_ROOT%{wxpref}" \
+#      install \
+#      --root=$RPM_BUILD_ROOT
+
+
+
+
+
+# Other "install" tasks...
+cd $WXDIR/wxPython
+
+# install the wxPython headers
+cp -R include $RPM_BUILD_ROOT%{wxpref}
+mkdir -p $RPM_BUILD_ROOT%{wxpref}/include/wx/wxPython/i_files
+cp src/*.i $RPM_BUILD_ROOT%{wxpref}/include/wx/wxPython/i_files
+
+
 # Since I want this RPM to be as generic as possible I won't let
-# distutils copy the scripts since it will mangle the #! line to use
-# the real python pathname.  Since some distros install python 2.2 as
-# python2 and others as python, then I can't let distutils do that
-# otherwise the dependencies will be fouled up.  Copy them manually
-# instead, leaving the #!/bin/env line intact.
-#
-# TODO:  Should this be dependent on %{builtin_libs} or something like it?
+# distutils copy the scripts (NO_SCRIPTS=1 above) since it will mangle
+# the #! line to use the real python pathname.  Since some distros
+# install python 2.2 as python2 and others as python I can't let
+# distutils do that otherwise the dependencies will be fouled up.
+# Copy them manually instead, leaving the #!/bin/env line intact. 
+# TODO: Should this be dependent on %{builtin_libs} or something like
+# it?
 
 mkdir -p $RPM_BUILD_ROOT%{pref}/bin
 for s in \
@@ -205,7 +227,7 @@ done
 
 
 # Install wxrc
-cp $WXDIR/contrib/utils/wxrc/wxrc $RPM_BUILD_ROOT%{pref}/bin
+cp $WXDIR/bld/contrib/utils/wxrc/wxrc $RPM_BUILD_ROOT%{pref}/bin
 
 
 # link specific name to generic name
@@ -213,6 +235,7 @@ ln -s wxPython-%{version} $RPM_BUILD_ROOT%{wxprefbase}
 
 
 
+
 # Copy icons and make menu entries
 #-- This only works for Mandrake.  Is there a cross-distro way to do it?
 ##mkdir -p $RPM_BUILD_ROOT%{_iconsdir}
@@ -250,26 +273,26 @@ ln -s wxPython-%{version} $RPM_BUILD_ROOT%{wxprefbase}
 # So instead we'll build some explicit filelists here and use %attr on
 # each entry.
 cd $WXDIR
-mkdir -p $RPM_BUILD_ROOT%{pref}/share/doc
-GFL="%{python} wxPython/distrib/genfilelist.py"
-$GFL    $RPM_BUILD_ROOT %{pref}                     > FILELIST
-$GFL -r $RPM_BUILD_ROOT %{pref}/bin                >> FILELIST
-$GFL    $RPM_BUILD_ROOT %{pref}/lib                >> FILELIST
-$GFL -r $RPM_BUILD_ROOT %{pref}/lib/python%{pyver} >> FILELIST
-$GFL -r $RPM_BUILD_ROOT %{pref}/share              >> FILELIST
-$GFL    $RPM_BUILD_ROOT %{wxpref}                  >> FILELIST
-$GFL    $RPM_BUILD_ROOT %{wxprefbase}              >> FILELIST
-$GFL    $RPM_BUILD_ROOT %{wxpref}/lib              >> FILELIST
-$GFL    $RPM_BUILD_ROOT "%{wxpref}/lib/libwx*"     >> FILELIST
-$GFL -r $RPM_BUILD_ROOT %{wxpref}/share            >> FILELIST
-###GFL -r $RPM_BUILD_ROOT %{_iconsdir}               >> FILELIST
-##$GFL -r $RPM_BUILD_ROOT %{_menudir}                >> FILELIST
-
-$GFL    $RPM_BUILD_ROOT %{wxpref}/include           > DEVELLIST
-$GFL -r $RPM_BUILD_ROOT %{wxpref}/include/wx       >> DEVELLIST
-$GFL -r $RPM_BUILD_ROOT %{wxpref}/lib/wx           >> DEVELLIST
-$GFL    $RPM_BUILD_ROOT %{wxconfigname}            >> DEVELLIST
-$GFL    $RPM_BUILD_ROOT %{wxpref}/bin/wx-config    >> DEVELLIST
+mkdir -p $RPM_BUILD_ROOT%{pref}/share/doc
+GFL="%{python} wxPython/distrib/genfilelist.py"
+$GFL    $RPM_BUILD_ROOT %{pref}                     > FILELIST
+$GFL -r $RPM_BUILD_ROOT %{pref}/bin                >> FILELIST
+$GFL    $RPM_BUILD_ROOT %{pref}/lib                >> FILELIST
+$GFL -r $RPM_BUILD_ROOT %{pref}/lib/python%{pyver} >> FILELIST
+$GFL -r $RPM_BUILD_ROOT %{pref}/share              >> FILELIST
+$GFL    $RPM_BUILD_ROOT %{wxpref}                  >> FILELIST
+$GFL    $RPM_BUILD_ROOT %{wxprefbase}              >> FILELIST
+$GFL    $RPM_BUILD_ROOT %{wxpref}/lib              >> FILELIST
+$GFL    $RPM_BUILD_ROOT "%{wxpref}/lib/libwx*"     >> FILELIST
+$GFL -r $RPM_BUILD_ROOT %{wxpref}/share            >> FILELIST
+# ###GFL -r $RPM_BUILD_ROOT %{_iconsdir}               >> FILELIST
+# ##$GFL -r $RPM_BUILD_ROOT %{_menudir}                >> FILELIST
+
+$GFL    $RPM_BUILD_ROOT %{wxpref}/include           > DEVELLIST
+$GFL -r $RPM_BUILD_ROOT %{wxpref}/include/wx       >> DEVELLIST
+$GFL -r $RPM_BUILD_ROOT %{wxpref}/lib/wx           >> DEVELLIST
+$GFL    $RPM_BUILD_ROOT %{wxconfigname}            >> DEVELLIST
+$GFL    $RPM_BUILD_ROOT %{wxpref}/bin/wx-config    >> DEVELLIST
 
 
 #----------------------------------------------------------------
@@ -291,21 +314,29 @@ if [ -e %{wxprefbase} ]; then
 fi
 
 #----------------------------------------------------------------
-%clean
-[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+#%clean
+#[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
 
 
 #----------------------------------------------------------------
 
-%files -f FILELIST
+%files
 %defattr(-,root,root)
-%doc docs/preamble.txt docs/licence.txt docs/readme.txt docs/changes.txt
-%doc wxPython/README.txt wxPython/CHANGES.txt
+%doc docs/preamble.txt docs/licence.txt docs/lgpl.txt docs/readme.txt docs/changes.txt
 %doc wxPython/docs/*
+%{_bindir}/*
+%{_libdir}/python%{pyver}/site-packages/*
+%{wxpref}/lib/libwx*
+%{wxpref}/share
+%{wxprefbase}
 
-%files -n wxPython%{port}-devel -f DEVELLIST
-%defattr(-,root,root)
 
+%files -n wxPython%{port}-devel
+%defattr(-,root,root)
+%{wxpref}/include
+%{wxpref}/lib/wx
+%{wxconfigname}
+%{wxpref}/bin/wx-config
 
 #----------------------------------------------------------------
 # end of file