This commit was manufactured by cvs2svn to create tag 'wxPy_2_4_0_7'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/wxPy_2_4_0_7@19683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1,33 +1,34 @@
|
||||
%define pref %{_prefix}
|
||||
%define python @PYTHON@
|
||||
%define pyver @PYVER@
|
||||
%define debug @DEBUG@
|
||||
%define port @PORT@
|
||||
%define lcport @LCPORT@
|
||||
%define unicode @UNICODE@
|
||||
%define tarname @TARNAME@
|
||||
%define version @VERSION@
|
||||
%define ver2 @VER2@
|
||||
%define release 1
|
||||
%define wxpref %{pref}/lib/wxPython
|
||||
%define name wxPython%{port}-py%{pyver}
|
||||
|
||||
# Should --enable-debug_flag be used in release builds?
|
||||
|
||||
# Should the builtin image and etc. libs be used, or system libs?
|
||||
# Distro specific RPMs should probably set this to 0, generic ones
|
||||
# should use 1
|
||||
%define builtin_libs 1
|
||||
|
||||
|
||||
# Should --enable-debug_flag be used in release builds? Using it
|
||||
# defines __WXDEBUG__ and gives us runtime diagnostics that are turned
|
||||
# into Python exceptions starting with 2.3.4. (So turning it on is a
|
||||
# very helpful thing IMO and is recommended.)
|
||||
%define debug_flag 1
|
||||
|
||||
|
||||
%if %{debug}
|
||||
%define name wxPython%{port}-py%{pyver}-dbg
|
||||
%define othername wxPython%{port}-py%{pyver}
|
||||
%else
|
||||
%define name wxPython%{port}-py%{pyver}
|
||||
%define othername wxPython%{port}-py%{pyver}-dbg
|
||||
%endif
|
||||
|
||||
|
||||
%if %{debug} || %{debug_flag}
|
||||
%define wxconfigname %{wxpref}/bin/wx%{lcport}d-%{ver2}-config
|
||||
%else
|
||||
%define wxconfigname %{wxpref}/bin/wx%{lcport}-%{ver2}-config
|
||||
%endif
|
||||
# build the name of the real wx-config from the port, flags, etc.
|
||||
%define dbgflg %(if [ "%{debug_flag}" = "1" ]; then echo d; fi)
|
||||
%define uniflg %(if [ "%{unicode}" = "1" ]; then echo u; fi)
|
||||
%define wxconfigname %{wxpref}/bin/wx%{lcport}%{uniflg}%{dbgflg}-%{ver2}-config
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
@@ -44,13 +45,9 @@ BuildRoot: %{_tmppath}/%{name}-buildroot
|
||||
Prefix: %{pref}
|
||||
#BuildRequires: %{python}
|
||||
|
||||
Provides: wxwin
|
||||
Provides: wx%{port} = %{version}
|
||||
Provides: wxPython = %{version}
|
||||
Provides: wxPython%{port} = %{version}
|
||||
|
||||
|
||||
# They conflict with each other, so let them replace each other
|
||||
Obsoletes: %{othername}
|
||||
# old wxPython packages
|
||||
Obsoletes: wxPython
|
||||
|
||||
@@ -65,13 +62,13 @@ This package is implemented using the %{port} port of wxWindows, and
|
||||
includes the wx%{port} shared libs and etc.
|
||||
|
||||
|
||||
%package devel
|
||||
%package -n wxPython%{port}-devel
|
||||
Summary: wxPython%{port} development files
|
||||
Group: Development/Libraries
|
||||
Requires: wxPython%{port} = %{version}
|
||||
|
||||
|
||||
%description devel
|
||||
%description -n wxPython%{port}-devel
|
||||
This packages contains the headers and etc. for building apps or
|
||||
Python extension modules that use the same wx%{port} shared libraries
|
||||
that wxPython uses.
|
||||
@@ -89,87 +86,144 @@ else
|
||||
MAKE="make"
|
||||
fi
|
||||
|
||||
WXDIR=`pwd`
|
||||
mkdir build
|
||||
cd build
|
||||
|
||||
# Configure, trying to reduce dependencies
|
||||
../configure --with-%{lcport} \
|
||||
# Configure, trying to reduce external dependencies
|
||||
$WXDIR/configure --with-%{lcport} \
|
||||
--prefix=%{wxpref} \
|
||||
--disable-soname \
|
||||
--enable-rpath=%{wxpref}/lib \
|
||||
--with-opengl \
|
||||
%if %{debug}
|
||||
--enable-debug \
|
||||
%else
|
||||
%if %{unicode}
|
||||
--enable-gtk2 \
|
||||
--enable-unicode \
|
||||
%endif
|
||||
--enable-geometry \
|
||||
--enable-optimise \
|
||||
%if %{debug_flag}
|
||||
--enable-debug_flag \
|
||||
%endif
|
||||
%endif
|
||||
%if %{builtin_libs}
|
||||
--with-libjpeg=builtin \
|
||||
--with-libpng=builtin \
|
||||
--with-libtiff=builtin \
|
||||
--with-zlib=builtin \
|
||||
|
||||
## --enable-debug_flag \
|
||||
## --with-odbc \
|
||||
%endif
|
||||
|
||||
|
||||
# Build wxWindows
|
||||
$MAKE
|
||||
|
||||
cd ../locale
|
||||
make allmo
|
||||
|
||||
|
||||
# ** Unfortunately we have to do a bit of installation here so wxPython
|
||||
# can be built. Perhaps wx-config should be changed to be able to be
|
||||
# used from the build dir, maybe with an --inplace flag... Move these
|
||||
# three lines to %install if/when that happens.
|
||||
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
|
||||
cd ../build
|
||||
make prefix=$RPM_BUILD_ROOT%{wxpref} install
|
||||
|
||||
|
||||
# Now build wxPython
|
||||
cd ../wxPython
|
||||
cd $WXDIR/wxPython
|
||||
%{python} setup.py \
|
||||
IN_CVS_TREE=1 \
|
||||
NO_SCRIPTS=1 \
|
||||
WX_CONFIG="$RPM_BUILD_ROOT%{wxpref}/bin/wx-config --prefix=$RPM_BUILD_ROOT%{wxpref}" \
|
||||
WXPORT=%{lcport} \
|
||||
UNICODE=%{unicode} \
|
||||
WX_CONFIG="$WXDIR/build/wx-config --prefix=$WXDIR --exec-prefix=$WXDIR/build" \
|
||||
build
|
||||
|
||||
## WX_CONFIG="$WXDIR/build/wx-config --inplace --prefix=$RPM_BUILD_ROOT%{wxpref}" \
|
||||
|
||||
|
||||
|
||||
# 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/*.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
|
||||
|
||||
# the handlers are not needed
|
||||
rm xh_*.o xmlrsall.o
|
||||
|
||||
$wCXX `$WX_CONFIG --libs` *.o -o wxrc
|
||||
strip wxrc
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
%install
|
||||
%find_lang wxstd
|
||||
cd wxPython
|
||||
[ "$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} \
|
||||
WX_CONFIG="$RPM_BUILD_ROOT%{wxpref}/bin/wx-config --prefix=$RPM_BUILD_ROOT%{wxpref}" \
|
||||
install \
|
||||
--root=$RPM_BUILD_ROOT
|
||||
|
||||
# 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
|
||||
# it do that otherwise the dependencies will be fouled up. Copy
|
||||
# them manually instead:
|
||||
# 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?
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/bin
|
||||
for s in \
|
||||
helpviewer \
|
||||
img2png \
|
||||
img2py \
|
||||
img2xpm \
|
||||
pycrust \
|
||||
pycwrap \
|
||||
pyshell \
|
||||
xrced; do
|
||||
cp scripts/$s $RPM_BUILD_ROOT/usr/bin
|
||||
cp scripts/$s $RPM_BUILD_ROOT/%{pref}/bin
|
||||
done
|
||||
|
||||
|
||||
# Install wxrc
|
||||
cp $WXDIR/contrib/utils/wxrc/wxrc $RPM_BUILD_ROOT/%{pref}/bin
|
||||
|
||||
|
||||
# Generate the filelists. For some reason the %defattr below is still
|
||||
# resulting in many (but not all) files not owned by root when just
|
||||
# specifying directories and wildcards to be included in each package.
|
||||
# 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 %{wxpref}/lib >> FILELIST
|
||||
$GFL $RPM_BUILD_ROOT "%{wxpref}/lib/libwx*" >> FILELIST
|
||||
$GFL -r $RPM_BUILD_ROOT %{wxpref}/share >> 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
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
@@ -178,40 +232,16 @@ done
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
%files
|
||||
%doc docs/preamble.txt
|
||||
%doc docs/licence.txt
|
||||
%doc docs/readme.txt
|
||||
%doc docs/changes.txt
|
||||
%doc wxPython/README.txt
|
||||
%doc wxPython/CHANGES.txt
|
||||
%files -f FILELIST
|
||||
%defattr(-,root,root)
|
||||
%{wxpref}/lib/libwx*
|
||||
%{pref}/lib/python*
|
||||
%{wxpref}/share/
|
||||
%{pref}/bin/*
|
||||
%doc docs/preamble.txt docs/licence.txt docs/readme.txt docs/changes.txt
|
||||
%doc wxPython/README.txt wxPython/CHANGES.txt
|
||||
|
||||
|
||||
%files devel
|
||||
%files -n wxPython%{port}-devel -f DEVELLIST
|
||||
%defattr(-,root,root)
|
||||
%{wxpref}/include/wx
|
||||
%{wxpref}/lib/wx
|
||||
%{wxconfigname}
|
||||
%{wxpref}/bin/wx-config
|
||||
|
||||
|
||||
#----------------------------------------------------------------
|
||||
%changelog
|
||||
|
||||
# end of file
|
||||
|
Reference in New Issue
Block a user