wxWidgets/debian/rules
Ron Lee 6181913e8e Ported forward improvements from the 2.4.2.6 release.
This still won't build new 2.5 packages yet, but it is changes
that will happen anyway so I'm checkpointing the diff here.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-06 04:51:11 +00:00

793 lines
26 KiB
Makefile
Executable File

#!/usr/bin/make -f
# debian/rules file to build packages from wx CVS source
#
# Sculpted 13/2/2000 by Ron Lee <ron@debian.org> from new and
# variously stolen code :-)
# It makes copious use of the debhelper utilities written by
# Joey Hess and others.
#export DH_VERBOSE=1
export DH_OPTIONS
ifdef DISTCC_HOSTS
#JOB_COUNT := $(shell set $${DISTCC_HOSTS} > /dev/null 2>&1 ; echo $$(($$\# + $$\#)))
# Nearly as fast, but doesn't raise the room temperature
# or saturate the build machines quite so much.
JOB_COUNT := $(shell set $${DISTCC_HOSTS} > /dev/null 2>&1 ; echo $$\#)
FAST_MAKE = $(MAKE) -j $(JOB_COUNT)
else
FAST_MAKE = $(MAKE)
endif
-include debian/python-version
release := $(shell dpkg-parsechangelog | sed -n 's/^Source: wxwidgets//p')
cross_host = i586-mingw32msvc
cross_build = $(shell ./config.guess)
config_cache = ../config_deb.cache
config_cache_cross = ../config_deb_cross.cache
# Packages to build:
package_gtk_lib = libwxgtk$(release)
package_gtk_dev = libwxgtk$(release)-dev
package_gtk_dbg = libwxgtk$(release)-dbg
package_gtk_py = libwxgtk$(release)-python
package_gtk_contrib = libwxgtk$(release)-contrib
package_gtk_contrib_dev = libwxgtk$(release)-contrib-dev
package_headers = wx$(release)-headers
package_i18n = wx$(release)-i18n
package_doc = wx$(release)-doc
package_examples = wx$(release)-examples
package_gtk_dbg_py = libwxgtk$(release)-dbg-python
package_msw_dev = libwxmsw$(release)-dev
package_msw_dbg = libwxmsw$(release)-dbg
package_headers_msw = wx$(release)-headers-msw
# Build directories:
objdir_gtk_shared = objs_gtk_sh
objdir_gtk_static = objs_gtk_st
objdir_gtk_debug = objs_gtk_d
objdir_gtk_install = objs_gtk_install
objdir_gtk_contrib_install = objs_gtk_contrib_install
objdir_doc_cruft = objs_doc_con
objdir_doc = docs/wx-manual.html
objdir_examples = docs/examples
objdir_i18n = locale
objdir_msw_shared = objs_msw_sh
objdir_msw_static = objs_msw_st
objdir_msw_dbg = objs_msw_d
objdirs = $(objdir_gtk_shared) $(objdir_gtk_static) $(objdir_gtk_debug) \
$(objdir_gtk_install) $(objdir_gtk_contrib_install) \
$(objdir_doc_cruft) $(objdir_doc) $(objdir_examples) \
$(objdir_msw_shared) $(objdir_msw_static) $(objdir_msw_dbg)
# note that the i18n package is actually arch indep (once built)
# but must be built (and installed) during the arch any phase as
# it's pulled out of the wxGTK shared lib package.
# Build stamps:
build_arch_stamps = build-gtk-shared-stamp build-gtk-static-stamp \
build-gtk-debug-stamp \
build-contrib-shared-stamp build-contrib-static-stamp \
build-i18n-stamp build-gtk-py-stamp
build_indep_stamps = build-examples-stamp build-doc-stamp
build_cross_stamps = build-msw-shared-stamp build-msw-static-stamp build-msw-dbg-stamp
build_stamps_native = $(build_arch_stamps) $(build_indep_stamps)
build_stamps = $(build_stamps_native) $(build_cross_stamps)
# Install targets:
install_all_arch = install-gtk-lib install-gtk-dev install-gtk-dbg \
install-gtk-contrib install-gtk-contrib-dev \
install-headers install-i18n install-gtk-py
install_all_indep = install-examples install-doc
install_all_cross = install-msw-dev install-msw-dbg install-headers-msw
install_all_native = $(install_all_arch) $(install_all_indep)
install_all = $(install_all_native) $(install_all_cross)
wxconfig := $(shell pwd)/$(objdir_gtk_shared)/wx-config \
--prefix=$(shell pwd) \
--exec-prefix=$(shell pwd)/$(objdir_gtk_shared)
wxconfig-dbg := $(shell pwd)/$(objdir_gtk_debug)/wx-config \
--prefix=$(shell pwd) \
--exec-prefix=$(shell pwd)/$(objdir_gtk_debug)
contrib_libs := $(subst CVS,,$(notdir $(wildcard contrib/include/wx/*)))
# The Rules:
debian/python-version:
echo python_ver := python$(shell python -c "import sys;print sys.version[:3]") > $@
debian/control: $(addprefix debian/,control.in python-version)
sed -e 's/=V/$(release)/g;s/=PY/$(python_ver)/g' < debian/control.in > debian/control
control-files-stamp: debian/control
dh_testdir
@for f in links postinst prerm; do \
echo "generating control file $(package_gtk_dev).$$f"; \
sed -e 's/=V/$(release)/g' < debian/libwxgtk-dev.$$f \
> debian/$(package_gtk_dev).$$f; \
done;
@for f in links postinst prerm; do \
echo "generating control file $(package_gtk_dbg).$$f"; \
sed -e 's/=V/$(release)/g' < debian/libwxgtk-dbg.$$f \
> debian/$(package_gtk_dbg).$$f; \
done;
@for f in menu; do \
echo "generating control file $(package_gtk_contrib_dev).$$f"; \
sed -e 's/=V/$(release)/g' < debian/libwxgtk-contrib-dev.$$f \
> debian/$(package_gtk_contrib_dev).$$f; \
done;
@for f in dirs docs menu postinst prerm; do \
echo "generating control file $(package_gtk_py).$$f"; \
sed -e 's/=PY/$(python_ver)/g;s/=V/$(release)/g' \
< debian/libwxgtk-python.$$f \
> debian/$(package_gtk_py).$$f; \
done;
@for f in docs doc-base; do \
echo "generating control file $(package_doc).$$f"; \
sed -e 's/=V/$(release)/g' < debian/wx-doc.$$f \
> debian/$(package_doc).$$f; \
done;
@for f in examples; do \
echo "generating control file $(package_examples).$$f"; \
cp debian/wx-examples.$$f debian/$(package_examples).$$f; \
done;
@for f in dirs docs postinst; do \
echo "generating control file $(package_gtk_dbg_py).$$f"; \
sed -e 's/=PY/$(python_ver)/g;s/=V/$(release)/g' \
< debian/libwxgtk-python.$$f \
> debian/$(package_gtk_dbg_py).$$f; \
done;
@for f in menu prerm; do \
echo "generating control file $(package_gtk_dbg_py).$$f"; \
sed -e 's/=PY/$(python_ver)/g;s/=V/$(release)/g' \
< debian/libwxgtk-dbg-python.$$f \
> debian/$(package_gtk_dbg_py).$$f; \
done;
@for f in dirs links postinst prerm; do \
echo "generating control file $(package_msw_dev).$$f"; \
sed -e 's/=V/$(release)/g;s/=H/$(cross_host)/g' < debian/libwxmsw-dev.$$f \
> debian/$(package_msw_dev).$$f; \
done;
@for f in dirs links postinst prerm; do \
echo "generating control file $(package_msw_dbg).$$f"; \
sed -e 's/=V/$(release)/g;s/=H/$(cross_host)/g' < debian/libwxmsw-dbg.$$f \
> debian/$(package_msw_dbg).$$f; \
done;
@for f in dirs; do \
echo "generating control file $(package_headers_msw).$$f"; \
sed -e 's/=H/$(cross_host)/g' < debian/wx-headers-msw.$$f \
> debian/$(package_headers_msw).$$f; \
done;
touch $@
build_arch: control-files-stamp $(build_arch_stamps)
build_all: control-files-stamp $(build_stamps_native)
# Really we should probably do nothing here until we know which
# binary target is being called, but alpha builds were exploding
# (compiler segfaults) in random places when building under fakeroot
# from the binary-arch target. Build all -arch files here then, and
# let the -indep stuff fend for itself later.
build: build_arch
configure-gtk-shared-stamp:
dh_testdir
mkdir -p $(objdir_gtk_shared)
cd $(objdir_gtk_shared) \
&& ../configure --prefix=/usr \
--cache-file=$(config_cache) \
--with-gtk \
--enable-gtk2 \
--enable-unicode \
--with-opengl \
--with-zlib=sys \
--with-libjpeg=sys \
--with-libpng=sys \
--with-libtiff=sys \
--enable-dynamic-loader \
--enable-std_iostreams
touch $@
build-gtk-shared-stamp: configure-gtk-shared-stamp
dh_testdir
cd $(objdir_gtk_shared) && $(FAST_MAKE)
touch $@
configure-gtk-static-stamp:
dh_testdir
mkdir -p $(objdir_gtk_static)
cd $(objdir_gtk_static) \
&& ../configure --prefix=/usr \
--cache-file=$(config_cache) \
--with-gtk \
--enable-gtk2 \
--enable-unicode \
--with-opengl \
--disable-shared \
--with-zlib=sys \
--with-libjpeg=sys \
--with-libpng=sys \
--with-libtiff=sys \
--enable-dynamic-loader \
--enable-std_iostreams
touch $@
build-gtk-static-stamp: configure-gtk-static-stamp
dh_testdir
cd $(objdir_gtk_static) && $(FAST_MAKE)
touch $@
configure-gtk-debug-stamp:
dh_testdir
mkdir -p $(objdir_gtk_debug)
cd $(objdir_gtk_debug) \
&& ../configure --prefix=/usr \
--cache-file=$(config_cache) \
--with-gtk \
--enable-gtk2 \
--enable-unicode \
--with-opengl \
--enable-debug \
--with-zlib=sys \
--with-libjpeg=sys \
--with-libpng=sys \
--with-libtiff=sys \
--enable-dynamic-loader \
--enable-std_iostreams
touch $@
build-gtk-debug-stamp: configure-gtk-debug-stamp
dh_testdir
cd $(objdir_gtk_debug) && $(FAST_MAKE)
touch $@
build-contrib-shared-stamp: build-gtk-shared-stamp
dh_testdir
cd $(objdir_gtk_shared)/contrib/src && $(FAST_MAKE)
cd $(objdir_gtk_shared)/contrib/utils/wxrc && $(FAST_MAKE)
cd $(objdir_gtk_shared)/contrib/utils/wxrcedit && $(FAST_MAKE)
touch $@
build-contrib-static-stamp: build-gtk-static-stamp
dh_testdir
cd $(objdir_gtk_static)/contrib/src && $(FAST_MAKE)
touch $@
purge-dbg-py:
@if [ ! -e build-gtk-py-stamp ]; then \
$(MAKE) -f debian/rules clean-py; \
fi
$(RM) build-gtk-dbg-py-stamp
build-gtk-py-stamp: build-gtk-shared-stamp purge-dbg-py
dh_testdir
touch docs/lgpl.txt
cd wxPython/include/wx \
&& for f in $(contrib_libs); do \
$(RM) $$f; \
ln -s ../../../contrib/include/wx/$$f .; \
done
cd wxPython \
&& $(python_ver) ./setup.py build \
WX_CONFIG='$(wxconfig)' \
WXPORT=gtk2 \
UNICODE=1
cd wxPython/include/wx \
&& for f in $(contrib_libs); do $(RM) $$f; done
touch $@
build-doc-stamp: build-gtk-shared-stamp
dh_testdir
cd $(objdir_gtk_shared)/utils/tex2rtf/src \
&& $(FAST_MAKE)
rm -rf $(objdir_doc)
rm -rf $(objdir_doc_cruft)
mkdir $(objdir_doc)
mkdir $(objdir_doc_cruft)
cd $(objdir_doc_cruft) \
&& LD_LIBRARY_PATH=../$(objdir_gtk_shared)/lib:$(LD_LIBRARY_PATH) \
../$(objdir_gtk_shared)/utils/tex2rtf/src/tex2rtf \
../docs/latex/wx/manual.tex ../$(objdir_doc)/wxwin.htm -twice -html
cp docs/latex/wx/*.gif $(objdir_doc)
rm -rf $(objdir_doc_cruft)
rm -f $(objdir_doc)/wxwin.con $(objdir_doc)/wxwin.hh* \
$(objdir_doc)/wxwin.htx $(objdir_doc)/wxwin.ref
touch $@
build-examples-stamp: build-gtk-shared-stamp
dh_testdir
mkdir -p $(objdir_examples)
# copy all samples and the Makefile generated for libwxgtk.
cp -a samples $(objdir_examples)
rm -f $(objdir_examples)/samples/Makefile
cp -a $(objdir_gtk_shared)/samples/Makefile $(objdir_examples)/samples
cd $(objdir_examples)/samples \
&& find -name 'Makefile.in' -exec rm -f '{}' ';' \
&& for d in $$(find -type d); do \
if [ -f $$d/makefile.unx ]; then \
mv $$d/makefile.unx $$d/Makefile; \
fi; \
done \
cp -a wxPython/demo $(objdir_examples)/wxPython
touch $@
build-i18n-stamp: build-gtk-shared-stamp
dh_testdir
# touch .po files first, since if they are not already up
# to date then _now_ is not the time to fix it.
# That should have been been done before cvs was tagged.
cd $(objdir_i18n) \
&& touch *.po \
&& $(MAKE) allmo
touch $@
purge-release-py:
@if [ ! -e build-gtk-dbg-py-stamp ]; then \
$(MAKE) -f debian/rules clean-py; \
fi
$(RM) build-gtk-py-stamp
build-gtk-dbg-py-stamp: build-gtk-debug-stamp purge-release-py
dh_testdir
touch docs/lgpl.txt
cd wxPython/include/wx \
&& for f in $(contrib_libs); do \
$(RM) $$f; \
ln -s ../../../contrib/include/wx/$$f .; \
done
cd wxPython \
&& $(python_ver) ./setup.py build \
WX_CONFIG='$(wxconfig-dbg)' \
WXPORT=gtk2 \
UNICODE=1
cd wxPython/include/wx \
&& for f in $(contrib_libs); do $(RM) $$f; done
touch $@
configure-msw-shared-stamp:
dh_testdir
mkdir -p $(objdir_msw_shared)
cd $(objdir_msw_shared) \
&& ../configure --prefix=/usr/$(cross_host) \
--cache-file=$(config_cache_cross) \
--host=$(cross_host) \
--build=$(cross_build)
touch $@
build-msw-shared-stamp: configure-msw-shared-stamp
dh_testdir
cd $(objdir_msw_shared) && $(FAST_MAKE)
touch $@
configure-msw-static-stamp:
dh_testdir
mkdir -p $(objdir_msw_static)
cd $(objdir_msw_static) \
&& ../configure --prefix=/usr/$(cross_host) \
--cache-file=$(config_cache_cross) \
--host=$(cross_host) \
--build=$(cross_build) \
--disable-shared
touch $@
build-msw-static-stamp: configure-msw-static-stamp
dh_testdir
cd $(objdir_msw_static) && $(FAST_MAKE)
touch $@
configure-msw-dbg-stamp:
dh_testdir
mkdir -p $(objdir_msw_dbg)
cd $(objdir_msw_dbg) \
&& ../configure --prefix=/usr/$(cross_host) \
--cache-file=$(config_cache_cross) \
--host=$(cross_host) \
--build=$(cross_build) \
--enable-debug
touch $@
build-msw-dbg-stamp: configure-msw-dbg-stamp
dh_testdir
cd $(objdir_msw_dbg) && $(FAST_MAKE)
touch $@
clean-py:
cd wxPython \
&& rm -rf licence \
&& rm -rf build* \
&& rm -rf docs/xml-raw \
&& rm -rf wx/*.py
# What to do about src/__version__.py ???
cd wxPython/include/wx \
&& for f in $(contrib_libs); do $(RM) $$f; done
# We do the equivalent of this above by removing build, unfortunately
# its not enough by itself to get the tree properly clean again.
# && ./setup.py clean
clean: debian/control clean-py
dh_testdir
dh_testroot
rm -rf config_deb.cache config_deb_cross.cache *-stamp $(objdirs)
rm -f docs/lgpl.txt
rm -f $(objdir_i18n)/*.mo
dh_clean
rm -f debian/$(package_gtk_lib).*
rm -f debian/$(package_gtk_dev).*
rm -f debian/$(package_gtk_dbg).*
rm -f debian/$(package_gtk_py).*
rm -f debian/$(package_gtk_contrib).*
rm -f debian/$(package_gtk_contrib_dev).*
rm -f debian/$(package_headers).*
rm -f debian/$(package_i18n).*
rm -f debian/$(package_doc).*
rm -f debian/$(package_examples).*
rm -f debian/$(package_gtk_dbg_py).*
rm -f debian/$(package_msw_dev).*
rm -f debian/$(package_msw_dbg).*
rm -f debian/$(package_headers_msw).*
install_arch: build_arch $(install_all_arch)
install: build_all $(install_all_native)
install-gtk-shared-stamp:
dh_testdir
mkdir -p $(objdir_gtk_install)
cd $(objdir_gtk_shared) \
&& $(MAKE) install prefix=`pwd`/../$(objdir_gtk_install)
touch $@
install-gtk-lib: DH_OPTIONS=-p$(package_gtk_lib)
install-gtk-lib: build-gtk-shared-stamp install-gtk-shared-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_install $(objdir_gtk_install)/share/wx usr/share
dh_install $(objdir_gtk_install)/lib/*.so.* usr/lib
install-gtk-dev: DH_OPTIONS=-p$(package_gtk_dev)
install-gtk-dev: build-gtk-static-stamp install-gtk-shared-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_install $(objdir_gtk_install)/bin/wxgtk2u-$(release)-config usr/bin
dh_install $(objdir_gtk_install)/lib/{wx,*.so} usr/lib
dh_install $(objdir_gtk_static)/lib/libwx_gtk2u{-,_gl}*.a usr/lib
install-gtk-dbg: DH_OPTIONS=-p$(package_gtk_dbg)
install-gtk-dbg: build-gtk-debug-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs usr/share/lintian/overrides
dh_install $(objdir_gtk_debug)/wxgtk2ud-$(release)-config usr/bin
dh_install $(objdir_gtk_debug)/lib usr
cp debian/lintian-override debian/$(package_gtk_dbg)/usr/share/lintian/overrides/$(package_gtk_dbg)
install-gtk-contrib-stamp:
dh_testdir
mkdir -p $(objdir_gtk_contrib_install)/lib
cd $(objdir_gtk_shared)/contrib/src \
&& $(MAKE) install prefix=`pwd`/../../../$(objdir_gtk_contrib_install)
touch $@
install-gtk-contrib: DH_OPTIONS=-p$(package_gtk_contrib)
install-gtk-contrib: build-contrib-shared-stamp install-gtk-contrib-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_install $(objdir_gtk_contrib_install)/lib/*.so.* usr/lib
install-gtk-contrib-dev: DH_OPTIONS=-p$(package_gtk_contrib_dev)
install-gtk-contrib-dev: build-contrib-static-stamp install-gtk-contrib-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_install $(objdir_gtk_contrib_install)/include usr
dh_install $(objdir_gtk_contrib_install)/lib/*.so usr/lib
dh_install -Xlibwx_gtk2u- -Xlibwx_gtk2u_gl- \
$(objdir_gtk_static)/lib/*.a usr/lib
dh_install $(objdir_gtk_shared)/contrib/utils/wxrc/wxrc usr/bin
dh_install $(objdir_gtk_shared)/contrib/utils/wxrcedit/wxrcedit usr/bin
dh_installman debian/wxrc-tools.1
dh_link usr/share/man/man1/wxrc-tools.1 usr/share/man/man1/wxrc.1 \
usr/share/man/man1/wxrc-tools.1 usr/share/man/man1/wxrcedit.1
install-gtk-py: DH_OPTIONS=-p$(package_gtk_py)
install-gtk-py: build-gtk-py-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
cd wxPython \
&& $(python_ver) ./setup.py install \
--prefix=`pwd`/../debian/$(package_gtk_py)/usr \
WX_CONFIG='$(wxconfig)' \
WXPORT=gtk2 \
UNICODE=1
find debian/$(package_gtk_py)/usr/lib/$(python_ver)/site-packages \
-name '*.py?' -exec rm '{}' ';'
dh_installman debian/wxPython-tools.1
dh_link usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2py.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2xpm.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2png.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pycrust.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyshell.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/xrced.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/helpviewer.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalacarte.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalamode.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pywrap.1
# This is rather bogus, its included in the main copyright file now though.
rm -f debian/$(package_gtk_py)/usr/lib/$(python_ver)/site-packages/wx/tools/XRCed/license.txt
install-headers: DH_OPTIONS=-p$(package_headers)
install-headers: install-gtk-shared-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# The only way to be really sure we get the univ headers correct is to install
# them. Do that in a scratch dirs, and move the gtk ones last, so at least
# they win in the result of any uncaught conflict.
# cd $(objdir_gtk_univ) \
# && $(MAKE) install prefix=`pwd`/../$(objdir_univ_install)/usr
# dh_movefiles --sourcedir=$(objdir_univ_install)
dh_install $(objdir_gtk_install)/include usr
dh_install $(objdir_gtk_install)/share/aclocal usr/share
dh_installman debian/wx-config.1
install-i18n: DH_OPTIONS=-p$(package_i18n)
install-i18n: build-i18n-stamp install-gtk-shared-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_install $(objdir_gtk_install)/share/locale usr/share
install-doc: DH_OPTIONS=-p$(package_doc)
install-doc: build-doc-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
install-examples: DH_OPTIONS=-p$(package_examples)
install-examples: build-examples-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
install-gtk-dbg-py: DH_OPTIONS=-p$(package_gtk_dbg_py)
install-gtk-dbg-py: build-gtk-dbg-py-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
cd wxPython \
&& $(python_ver) ./setup.py install \
--prefix=`pwd`/../debian/$(package_gtk_dbg_py)/usr \
WX_CONFIG='$(wxconfig-dbg)' \
WXPORT=gtk2 \
UNICODE=1
find debian/$(package_gtk_dbg_py)/usr/lib/$(python_ver)/site-packages \
-name '*.py?' -exec rm '{}' ';'
dh_installman debian/wxPython-tools.1
dh_link usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2py.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2xpm.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2png.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pycrust.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyshell.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/xrced.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/helpviewer.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalacarte.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalamode.1 \
usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pywrap.1
# This is rather bogus, its included in the main copyright file now though.
rm -f debian/$(package_gtk_dbg_py)/usr/lib/$(python_ver)/site-packages/wxPython/tools/XRCed/license.txt
install-msw-dev: DH_OPTIONS=-p$(package_msw_dev)
install-msw-dev: build-msw-shared-stamp build-msw-static-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
cp -a $(objdir_msw_shared)/lib/* debian/$(package_msw_dev)/usr/$(cross_host)/lib
cp -a $(objdir_msw_static)/lib/*.a debian/$(package_msw_dev)/usr/$(cross_host)/lib
cp $(objdir_msw_shared)/wxmsw-$(release)-$(cross_host)-config debian/$(package_msw_dev)/usr/bin/
$(cross_host)-strip --strip-debug debian/$(package_msw_dev)/usr/$(cross_host)/lib/*.a
install-msw-dbg: DH_OPTIONS=-p$(package_msw_dbg)
install-msw-dbg: build-msw-dbg-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
cp -a $(objdir_msw_dbg)/lib/* debian/$(package_msw_dbg)/usr/$(cross_host)/lib
cp $(objdir_msw_dbg)/wxmswd-$(release)-$(cross_host)-config debian/$(package_msw_dbg)/usr/bin/
# No static lib, they're freakin' huge!
#$(cross_host)-strip --strip-debug debian/$(package_msw_dbg)/usr/$(cross_host)/lib/*.a
install-headers-msw: DH_OPTIONS=-p$(package_headers_msw)
install-headers-msw:
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
@# Symlink all the headers that will be installed by the main -headers
@# package to where the cross compiler will expect them.
@for f in `ls -1 include/wx`; do \
ln -s /usr/include/wx/$$f debian/$(package_headers_msw)/usr/$(cross_host)/include/wx; \
echo "linking header /usr/include/wx/$$f"; \
done;
@# But install this lot for real.
rm -f debian/$(package_headers_msw)/usr/$(cross_host)/include/wx/msw
cp -a include/wx/msw debian/$(package_headers_msw)/usr/$(cross_host)/include/wx
@# and remove this cruft(?)
rm -f debian/$(package_headers_msw)/usr/$(cross_host)/include/wx/treelay.h
binary-common:
dh_testdir
dh_testroot
dh_installdocs
dh_installchangelogs
dh_installexamples
dh_installmenu
dh_link
@# Don't strip debug libs at all, and strip cross libs elsewhere
@# with the cross host tools until dh_strip gets smarter.
dh_strip -N$(package_gtk_dbg) -N$(package_msw_dev) -N$(package_msw_dbg)
dh_compress
dh_fixperms
@# Don't do this for the dbg-py special build because dh_makeshlibs
@# will crap out if it is called with no packages to act on.
@if [ "x$(DH_OPTIONS)" != "-p$(package_gtk_dbg_py)" ]; then \
echo "dh_makeshlibs -N$(package_gtk_py) -V"; \
dh_makeshlibs -N$(package_gtk_py) -V; \
fi
dh_installdeb
dh_shlibdeps -ldebian/$(package_gtk_lib)/usr/lib:debian/$(package_gtk_dbg)/usr/lib:debian/$(package_gtk_contrib)/usr/lib
dh_gencontrol
dh_md5sums
dh_builddeb
# Build architecture-independent files here.
# Note that you currently can't build the indep packages without first
# building the arch specific package files needed to create them.
binary-indep: build_all install
$(MAKE) -f debian/rules \
DH_OPTIONS="-i -N$(package_gtk_dbg_py) -N$(package_msw_dev) -N$(package_msw_dbg) -N$(package_headers_msw)" \
binary-common
# Build just the architecture-dependent files here.
binary-arch: build_arch install_arch
$(MAKE) -f debian/rules \
DH_OPTIONS="-a -N$(package_gtk_dbg_py) -N$(package_msw_dev) -N$(package_msw_dbg) -N$(package_headers_msw)" \
binary-common
# Build all packages target.
binary: binary-arch binary-indep
# This is a special target for building the wxMSW-cross packages.
# It's not currently called during the official package build run
# but may be run separately to build the extra packages.
# There is an implied build dep on the mingw32 cross compiler
# that is not in the control file.
binary-cross: control-files-stamp $(install_all_cross)
$(MAKE) -f debian/rules \
DH_OPTIONS="-p$(package_msw_dev) -p$(package_msw_dbg) -p$(package_headers_msw)" \
binary-common
# Build wxPython against libwxgtk-dbg. This package will conflict
# with the release build one, but may be useful to some people.
binary-dbg-py: control-files-stamp install-gtk-dbg-py
$(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_dbg_py)" binary-common
############################################################################
#
# Some rules to build a subset of the complete list of packages that can be
# built from CVS. Beware that packages produced with these rules may *NOT*
# be compatible with packages built using the 'binary' target or even with
# Debian policy. Do not distribute packages built with these rules, they
# are currently useful for rapid in-house testing by developers only.
# libwxgtk shared lib package
binary-gtk: control-files-stamp install-gtk-lib install-headers
$(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_lib) -p$(package_headers)" binary-common
binary-gtk-dev: control-files-stamp install-gtk-dev install-headers
$(MAKE) -f debian/rules \
DH_OPTIONS="-p$(package_gtk_lib) -p$(package_gtk_dev) -p$(package_headers)" \
binary-common
binary-gtk-dbg: control-files-stamp install-gtk-dbg install-headers
$(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_dbg) -p$(package_headers)" binary-common
# docs package
binary-doc: control-files-stamp install-doc
$(MAKE) -f debian/rules DH_OPTIONS=-p$(package_doc) binary-common
binary-fast:control-files-stamp install-gtk-dbg install-msw-dev install-headers install-headers-msw
$(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_dbg) -p$(package_msw_dev) -p$(package_headers) -p$(package_headers_msw)" binary-common
.PHONY: build build_all build_arch \
clean clean-py purge-release-py purge-dbg-py \
binary-indep binary-arch binary binary-common \
binary-gtk binary-gtk-dev binary-gtk-dbg binary-doc binary-cross \
install install_arch install-gtk-lib install-gtk-dev \
install-gtk-dbg install-gtk-contrib install-gtk-contrib-dev \
install-gtk-py install-gtk-dbg-py \
install-headers install-i18n install-doc install-examples \
install-msw-dev install-msw-dbg install-headers-msw