1 #!/usr/bin/make -f
2 # debian/rules file to build packages from wx source
3 #
4 # Sculpted 13/2/2000 by Ron Lee <ron@debian.org> from new and
5 # variously stolen code :-)
6 # It makes copious use of the debhelper utilities written by
7 # Joey Hess and others.
9 SHELL = /bin/bash
11 #export DH_VERBOSE=1
13 include /usr/share/python/python.mk
14 export DH_OPTIONS
16 # WXPYTHON_VERSION = $(shell dpkg-parsechangelog | sed -ne '/^Version: /s@Version: \(.*\)@\1@p')
18 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
20 ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
22 # The standard way to specify the number of jobs.
23 JOB_COUNT := $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
25 else ifdef CONCURRENCY_LEVEL
27 # A user who knows what they want, that's like gold...
28 # respect their precious opinion of how much blue smoke to use.
29 JOB_COUNT := $(CONCURRENCY_LEVEL)
31 else ifdef DISTCC_HOSTS
33 # Otherwise, if they have a cluster, try to put it to good use.
34 JOB_COUNT := $(shell set $${DISTCC_HOSTS} > /dev/null 2>&1 ; echo $$\#)
36 # Not much faster, but it might keep you warm in winter...
37 #JOB_COUNT := $(shell set $${DISTCC_HOSTS} > /dev/null 2>&1 ; echo $$(($$\# + $$\#)))
39 endif
41 ifdef JOB_COUNT
42 FAST_MAKE = $(MAKE) -j $(JOB_COUNT)
43 else
44 FAST_MAKE = $(MAKE)
45 endif
47 PYVERS := $(shell pyversions -vr)
49 # If another source package is to supply the common binary packages
50 # for a particular Debian release, then define this variable to indicate
51 # the $(release) that is expected to provide it. Do not define it at
52 # all if this is to be the default (or only) wx source package for the
53 # target release.
55 # DEBIAN_WX_DEFAULT_VERSION = 2.6
58 # This will extract a flavour out of the changelog and flavour the
59 # packages and binaries with it. 'Official' builds should use a
60 # changelog entry with a source package of the form wxwidgets$RELEASE.
61 # Flavoured builds may use wxwidgets$RELEASE-$FLAVOUR, where any
62 # descriptive alphanumeric name will do for FLAVOUR. This will allow
63 # a custom build to be installed alongside the mainline ones without
64 # conflict.
65 DEBIAN_WXFLAVOUR := $(shell dpkg-parsechangelog | sed -ne '/^Source: /s@.*wxwidgets[0-9.]\+-\?\(.*\)@\1@p')
68 wx_major_version_number := $(shell sed -n 's/^wx_major_version_number=//p' configure.in)
69 wx_minor_version_number := $(shell sed -n 's/^wx_minor_version_number=//p' configure.in)
70 wx_release_number := $(shell sed -n 's/^wx_release_number=//p' configure.in)
71 wx_subrelease_number := $(shell sed -n 's/^wx_subrelease_number=//p' configure.in)
73 release := $(wx_major_version_number).$(wx_minor_version_number)
75 so_cur := $(shell sed 's,<set var="WX_CURRENT">\([0-9]\+\)</set>,\1,p;d' build/bakefiles/version.bkl)
76 so_age := $(shell sed 's,<set var="WX_AGE">\([0-9]\+\)</set>,\1,p;d' build/bakefiles/version.bkl)
77 soversion := $(shell expr $(so_cur) - $(so_age))
79 sorelease := $(release:%-$(DEBIAN_WXFLAVOUR)=%)-$(soversion)$(addprefix -,$(DEBIAN_WXFLAVOUR))
81 # In some places we use the full version number, including the micro version,
82 # for the development releases (which can be incompatible for the same major
83 # and minor version) but just the major.minor for the stable releases (which
84 # are supposed to be compatible), this variable contains the appropriate value
85 ifeq ($(shell expr '$(wx_minor_version_number)' : '.*[02468]$$'),0)
86 # Odd minor version, so development release.
87 compatible_release := $(release).$(wx_release_number)
88 else
89 compatible_release := $(release)
90 endif
92 # Base value for alternative priorities.
93 alt_prio := $(subst .,,$(release))
95 pytoolkit := gtk2
96 wxsubdir := wx-$(compatible_release)-$(pytoolkit)-unicode
98 cross_host := i586-mingw32msvc
99 cross_build := $(shell /usr/share/misc/config.guess)
101 config_cache = ../config_deb.cache
102 config_cache_cross = ../config_deb_cross.cache
105 # build options
106 COMMON_CONFIGURE_OPTIONS = \
107 --prefix=/usr \
108 --cache-file=$(config_cache) \
109 --with-flavour=$(DEBIAN_WXFLAVOUR) \
110 --with-zlib=sys \
111 --with-expat=sys
113 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
114 COMMON_CONFIGURE_OPTIONS += --disable-optimise
115 endif
117 BASE_CONFIGURE_OPTIONS = $(COMMON_CONFIGURE_OPTIONS) \
118 --disable-gui \
119 --libdir=\$${exec_prefix}/lib/$(DEB_HOST_MULTIARCH)
121 GTK_CONFIGURE_OPTIONS = $(COMMON_CONFIGURE_OPTIONS) \
122 --with-gtk \
123 --with-opengl \
124 --enable-sound \
125 --with-sdl \
126 --enable-display \
127 --enable-geometry \
128 --enable-graphics_ctx \
129 --with-libjpeg=sys \
130 --with-libpng=sys \
131 --with-libtiff=sys \
132 --libdir=\$${exec_prefix}/lib/$(DEB_HOST_MULTIARCH)
133 # --enable-mediactrl \
135 MSW_CONFIGURE_OPTIONS = \
136 --with-msw \
137 --with-opengl \
138 --enable-display
140 # For the MSW packages, enabling threads in wx means that your application will
141 # have a dependency on mingwm10.dll. If you don't use threads, this is just an
142 # annoyance, so default to disabling them. If you want a wx package to use in
143 # a threaded application then comment out the next line.
144 MSW_CONFIGURE_OPTIONS += --disable-threads
146 PY_WX_CONFIG_OPTIONS = --version=$(release) --toolkit=$(pytoolkit) --static=no
148 WX_UNICODE ?= 1
149 # Needed in binary-cross, and perhaps other sub-invocations of debian/rules.
150 export WX_UNICODE
152 ifeq ($(WX_UNICODE),1)
153 COMMON_CONFIGURE_OPTIONS += --enable-unicode
154 MSW_CONFIGURE_OPTIONS += --enable-unicode
155 PY_WX_CONFIG_OPTIONS += --unicode
156 PY_UNICODE="UNICODE=1"
158 # for compatibility with the existing 2.6 packages, we don't use "u" in
159 # the Unicode (default) package names
160 unicode_suffix :=
161 else
162 # but we do need to use something for non-Unicode packages to distinguish
163 # them
164 PY_UNICODE=
165 unicode_suffix := -ansi
166 endif
168 # Packages to build:
169 package_wxbase_lib := libwxbase$(sorelease)$(unicode_suffix)
170 package_wxbase_dev := libwxbase$(release)$(unicode_suffix)-dev
171 package_wxbase_dbg := libwxbase$(release)$(unicode_suffix)-dbg
173 package_gtk_lib := libwxgtk$(sorelease)$(unicode_suffix)
174 package_gtk_dev := libwxgtk$(release)$(unicode_suffix)-dev
175 package_gtk_dbg := libwxgtk$(release)$(unicode_suffix)-dbg
180 package_gtk_py_lib := python-wxgtk$(release)$(unicode_suffix)
181 package_gtk_py_ver = python-wxversion
182 package_gtk_py_tools = python-wxtools
184 package_headers := wx$(release)-headers
185 package_i18n := wx$(release)-i18n
186 package_doc := wx$(release)-doc
187 package_examples := wx$(release)-examples
188 package_common = wx-common
190 # The packages listed here are common to all wx versions, and may be provided
191 # by another source package if more than one is in the release simultaneously.
192 common_packages := $(package_common) $(package_gtk_py_ver) $(package_gtk_py_tools)
195 package_gtk_dbg_py := python-wxgtk$(release)$(unicode_suffix)-dbg
199 package_msw_dev := libwxmsw$(release)$(unicode_suffix)-dev
200 package_msw_dbg := libwxmsw$(release)$(unicode_suffix)-dbg
201 package_headers_msw := wx$(release)-headers-msw
203 # The packages listed here will not be built by default.
204 extra_packages := \
205 $(package_msw_dev) $(package_msw_dbg) $(package_headers_msw)
207 ifdef DEBIAN_WX_DEFAULT_VERSION
209 extra_packages += $(common_packages)
211 endif
214 # Build directories:
215 objdir_wxbase_shared = objs_wxbase_sh
216 objdir_wxbase_debug = objs_wxbase_d
217 objdir_gtk_shared = objs_gtk_sh
218 objdir_gtk_debug = objs_gtk_d
219 objdir_gtk_install = objs_gtk_install
220 objdir_doc_cruft = objs_doc_con
221 objdir_doc = docs/wx-manual.html
222 objdir_examples = docs/examples
223 objdir_i18n = locale
225 objdir_msw_shared = objs_msw_sh
226 objdir_msw_static = objs_msw_st
227 objdir_msw_dbg = objs_msw_d
228 objdir_msw_install = objs_msw_install
230 objdirs := $(objdir_wxbase_shared) $(objdir_wxbase_debug) \
231 $(objdir_gtk_shared) $(objdir_gtk_debug) $(objdir_gtk_install) \
232 $(objdir_doc_cruft) $(objdir_doc) $(objdir_examples) \
233 $(objdir_msw_shared) $(objdir_msw_static) $(objdir_msw_dbg) \
234 $(objdir_msw_install)
236 # note that the i18n package is actually arch indep (once built)
237 # but must be built (and installed) during the arch any phase as
238 # it's pulled out of the wxGTK shared lib package.
239 #
240 # similarly some of the wxpython packages are arch indep too, but
241 # all files for it are installed during the arch any phase.
244 # Build stamps:
245 build_arch_stamps = build-wxbase-shared-stamp build-wxbase-debug-stamp \
246 build-gtk-shared-stamp build-gtk-shared-contrib-stamp \
247 build-gtk-debug-stamp build-gtk-debug-contrib-stamp \
248 build-i18n-stamp build-gtk-py-stamp build-gtk-dbg-py-stamp
250 build_indep_stamps = build-examples-stamp build-doc-stamp
252 build_cross_stamps = build-msw-shared-stamp build-msw-static-stamp build-msw-dbg-stamp
254 build_stamps_native := $(build_arch_stamps) $(build_indep_stamps)
256 build_stamps := $(build_stamps_native) $(build_cross_stamps)
259 # Install targets:
260 install_all_arch = install-wxbase-lib install-wxbase-dev install-wxbase-dbg \
261 install-gtk-lib install-gtk-dev install-gtk-dbg \
262 install-headers install-i18n \
263 install-gtk-py install-gtk-dbg-py
265 ifndef DEBIAN_WX_DEFAULT_VERSION
267 install_all_arch += install-common
269 endif
271 install_all_indep = install-examples install-doc
273 install_all_cross = install-msw-dev install-msw-dbg install-headers-msw
275 install_all_native := $(install_all_arch) $(install_all_indep)
277 install_all := $(install_all_native) $(install_all_cross)
280 # wxPython uses this to build in-tree
281 wxconfig := $(shell pwd)/$(objdir_gtk_shared)/wx-config --no_rpath
282 wxconfig-dbg := $(shell pwd)/$(objdir_gtk_debug)/wx-config --no_rpath
284 # and this after it is installed.
285 py_wxconfig := wx-config $(PY_WX_CONFIG_OPTIONS) --debug=no
286 pyd_wxconfig := wx-config $(PY_WX_CONFIG_OPTIONS) --debug
289 #contrib_libs := $(subst CVS,,$(notdir $(wildcard contrib/include/wx/*)))
292 # The Rules:
294 config.guess config.sub:
295 ln -sf /usr/share/misc/config.guess /usr/share/misc/config.sub .
297 debian/control: debian/control.in
298 sed -e 's/=V/$(release)/g;s/=SOV/$(sorelease)/g;s/=U/$(unicode_suffix)/g'\
299 < debian/control.in > debian/control
301 control-files-stamp: debian/control
302 dh_testdir
303 @for f in postinst prerm; do \
304 echo "generating control file $(package_wxbase_dev).$$f"; \
305 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g;s/=MA/$(DEB_HOST_MULTIARCH)/g' \
306 < debian/libwxbase-dev.$$f \
307 > debian/$(package_wxbase_dev).$$f; \
308 done
309 @for f in postinst prerm; do \
310 echo "generating control file $(package_wxbase_dbg).$$f"; \
311 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g;s/=MA/$(DEB_HOST_MULTIARCH)/g' \
312 < debian/libwxbase-dbg.$$f \
313 > debian/$(package_wxbase_dbg).$$f; \
314 done
315 @for f in postinst prerm; do \
316 echo "generating control file $(package_gtk_dev).$$f"; \
317 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g;s/=MA/$(DEB_HOST_MULTIARCH)/g' \
318 < debian/libwxgtk-dev.$$f \
319 > debian/$(package_gtk_dev).$$f; \
320 done
321 @for f in postinst prerm; do \
322 echo "generating control file $(package_gtk_dbg).$$f"; \
323 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g;s/=MA/$(DEB_HOST_MULTIARCH)/g' \
324 < debian/libwxgtk-dbg.$$f \
325 > debian/$(package_gtk_dbg).$$f; \
326 done
327 @for f in docs postinst prerm; do \
328 echo "generating control file $(package_gtk_py_lib).$$f"; \
329 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g' \
330 < debian/python-wxgtk.$$f \
331 > debian/$(package_gtk_py_lib).$$f; \
332 done
333 @echo "generating control file $(package_gtk_dbg_py).docs"
334 @cp debian/python-wxgtk.docs debian/$(package_gtk_dbg_py).docs
335 @for f in docs doc-base; do \
336 echo "generating control file $(package_doc).$$f"; \
337 sed -e 's/=V/$(release)/g' < debian/wx-doc.$$f \
338 > debian/$(package_doc).$$f; \
339 done
340 @for f in examples; do \
341 echo "generating control file $(package_examples).$$f"; \
342 cp debian/wx-examples.$$f debian/$(package_examples).$$f; \
343 done
344 @for f in postinst prerm; do \
345 echo "generating control file $(package_msw_dev).$$f"; \
346 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g' \
347 -e 's/=H/$(cross_host)/g;' \
348 < debian/libwxmsw-dev.$$f \
349 > debian/$(package_msw_dev).$$f; \
350 done
351 @for f in postinst prerm; do \
352 echo "generating control file $(package_msw_dbg).$$f"; \
353 sed -e 's/=V/$(release)/g;s/=PRIO/$(alt_prio)/g' \
354 -e 's/=H/$(cross_host)/g;' \
355 < debian/libwxmsw-dbg.$$f \
356 > debian/$(package_msw_dbg).$$f; \
357 done
358 # @echo "generating control file $(package_common).menu"; \
359 # sed -e 's/=V/$(release)/g' < debian/wx-common.menu \
360 # > debian/$(package_common).menu
361 @echo "generating control file lintian-override"; \
362 sed -e 's/=V/$(release)/g;s/=SOV/$(sorelease)/g' \
363 -e 's/=U/$(unicode_suffix)/' \
364 < debian/lintian-override.in \
365 > debian/lintian-override; \
366 touch $@
368 build-arch: control-files-stamp $(build_arch_stamps)
369 build-indep: control-files-stamp $(build_indep_stamps)
370 build_all: control-files-stamp $(build_stamps_native)
372 # Really we should probably do nothing here until we know which
373 # binary target is being called, but alpha builds were exploding
374 # (compiler segfaults) in random places when building under fakeroot
375 # from the binary-arch target. Build all -arch files here then, and
376 # let the -indep stuff fend for itself later.
378 build: build-stamp build-arch
379 build-stamp:
382 # The wx2.6 build system makes us run around in circles to get a separate
383 # libwxbase. We need to configure it here in order to get the correct
384 # config files to use it alone, but there is no point building it as the
385 # wxgtk build is going to do that again anyway. We'll move the relevant
386 # files out when that is done.
388 configure-wxbase-shared-stamp: config.guess
389 dh_testdir
390 mkdir -p $(objdir_wxbase_shared)
391 cd $(objdir_wxbase_shared) \
392 && ../configure $(BASE_CONFIGURE_OPTIONS)
393 touch $@
395 build-wxbase-shared-stamp: configure-wxbase-shared-stamp
396 dh_testdir
397 # Nothing to build here, move along...
398 #$(FAST_MAKE) -C $(objdir_wxbase_shared)
399 touch $@
401 configure-wxbase-debug-stamp: config.guess
402 dh_testdir
403 mkdir -p $(objdir_wxbase_debug)
404 cd $(objdir_wxbase_debug) \
405 && ../configure $(BASE_CONFIGURE_OPTIONS) --enable-debug
406 touch $@
408 build-wxbase-debug-stamp: configure-wxbase-debug-stamp
409 dh_testdir
410 # Nothing to build here, move along...
411 #$(FAST_MAKE) -C $(objdir_wxbase_debug)
412 touch $@
414 configure-gtk-shared-stamp: config.guess
415 dh_testdir
416 mkdir -p $(objdir_gtk_shared)
417 cd $(objdir_gtk_shared) \
418 && ../configure $(GTK_CONFIGURE_OPTIONS)
419 touch $@
421 build-gtk-shared-stamp: configure-gtk-shared-stamp
422 dh_testdir
423 $(FAST_MAKE) -C $(objdir_gtk_shared)
424 cd $(objdir_gtk_shared)/lib && ln -s . $(DEB_HOST_MULTIARCH)
425 touch $@
428 configure-gtk-debug-stamp: config.guess
429 dh_testdir
430 mkdir -p $(objdir_gtk_debug)
431 cd $(objdir_gtk_debug) \
432 && ../configure $(GTK_CONFIGURE_OPTIONS) --enable-debug
433 touch $@
435 build-gtk-debug-stamp: configure-gtk-debug-stamp
436 dh_testdir
437 $(FAST_MAKE) -C $(objdir_gtk_debug)
438 cd $(objdir_gtk_debug)/lib && ln -s . $(DEB_HOST_MULTIARCH)
439 touch $@
442 build-gtk-shared-contrib-stamp: build-gtk-shared-stamp
443 dh_testdir
444 $(FAST_MAKE) -C $(objdir_gtk_shared)/contrib/src
445 $(FAST_MAKE) -C $(objdir_gtk_shared)/utils/wxrc
446 touch $@
449 build-gtk-debug-contrib-stamp: build-gtk-debug-stamp
450 dh_testdir
451 $(FAST_MAKE) -C $(objdir_gtk_debug)/contrib/src
452 touch $@
455 purge-dbg-py:
456 @if [ ! -e build-gtk-py-stamp ]; then \
457 $(MAKE) -f debian/rules clean-py; \
458 fi
459 $(RM) build-gtk-dbg-py-stamp
461 build-gtk-py-stamp: $(PYVERS:%=build-gtk-py%-stamp) # purge-dbg-py
462 touch $@
464 build-gtk-py%-stamp: build-gtk-shared-stamp # purge-dbg-py
465 dh_testdir
466 touch docs/lgpl.txt
467 cd wxPython \
468 && python$* ./setup.py build \
469 WX_CONFIG='$(wxconfig)' \
470 WXPORT=$(pytoolkit) \
471 $(PY_UNICODE) \
472 FLAVOUR=$(DEBIAN_WXFLAVOUR)
473 touch $@
475 build-doc-stamp: build-gtk-shared-stamp
476 dh_testdir
477 # the tarball may already have the generated docs in it
478 if [ ! -e docs/html/wx/index.html ]; then \
479 $(FAST_MAKE) -C $(objdir_gtk_shared)/utils/tex2rtf/src; \
480 rm -rf $(objdir_doc); \
481 rm -rf $(objdir_doc_cruft); \
482 mkdir $(objdir_doc); \
483 mkdir $(objdir_doc_cruft); \
484 cd $(objdir_doc_cruft); \
485 LD_LIBRARY_PATH=../$(objdir_gtk_shared)/lib:$(LD_LIBRARY_PATH) \
486 ../$(objdir_gtk_shared)/utils/tex2rtf/src/tex2rtf \
487 ../docs/latex/wx/manual.tex \
488 ../$(objdir_doc)/wx$(release)-manual.html \
489 -twice -html; \
490 cd -; \
491 cp docs/latex/wx/*.gif $(objdir_doc); \
492 rm -rf $(objdir_doc_cruft); \
493 rm -f $(objdir_doc)/wx$(release)-manual.{con,hh*,htx,ref}; \
494 else \
495 mkdir $(objdir_doc); \
496 cp docs/html/wx/* $(objdir_doc); \
497 mv $(objdir_doc)/index.html $(objdir_doc)/wx-$(release)-manual_contents.html; \
498 fi
499 touch $@
501 build-examples-stamp: build-gtk-shared-stamp
502 dh_testdir
503 mkdir -p $(objdir_examples)
505 # copy all samples and the Makefile generated for libwxgtk.
506 # Some files in the sources are randomly executable, so don't
507 # just use cp -a here.
508 cp -dR --preserve=timestamps samples $(objdir_examples)
509 rm -f $(objdir_examples)/samples/Makefile
510 cp -a $(objdir_gtk_shared)/samples/Makefile $(objdir_examples)/samples
512 find $(objdir_examples)/samples -name 'Makefile.in' -delete
513 for f in `find $(objdir_examples)/samples -name makefile.unx` ; do \
514 mv $$f `dirname $$f`/Makefile ; \
515 done
517 cp -a wxPython/demo $(objdir_examples)/wxPython
518 # Remove useless file.
519 rm -f $(objdir_examples)/wxPython/b
520 # Stop files being randomly executable.
521 -chmod a-x \
522 $(objdir_examples)/samples/Info.plist \
523 $(objdir_examples)/samples/aui/descrip.mms \
524 $(objdir_examples)/samples/db/descrip.mms \
525 $(objdir_examples)/samples/docview/docview.r \
526 $(objdir_examples)/samples/internat/ar/internat.mo \
527 $(objdir_examples)/samples/internat/ar/internat.po \
528 $(objdir_examples)/samples/minimal/minimal.plc \
529 $(objdir_examples)/samples/xrc/descrip.mms \
530 $(objdir_examples)/wxPython/bmp_source/customcontrol.png
532 echo "generating unpack_examples.sh script"
533 sed -e 's/=V/$(release)/g' < debian/unpack_examples.sh.in \
534 > debian/unpack_examples.sh
535 chmod 755 debian/unpack_examples.sh
537 touch $@
539 build-i18n-stamp: build-gtk-shared-stamp
540 dh_testdir
542 # touch .po files first, since if they are not already up
543 # to date then _now_ is not the time to fix it.
544 # That should have been been done before the release was tagged.
545 cd $(objdir_i18n) \
546 && touch *.po \
547 && $(MAKE) allmo
548 touch $@
550 purge-release-py:
551 @if [ ! -e build-gtk-dbg-py-stamp ]; then \
552 $(MAKE) -f debian/rules clean-py; \
553 fi
554 $(RM) build-gtk-py-stamp
556 build-gtk-dbg-py-stamp: $(PYVERS:%=build-gtk-dbg-py%-stamp) # purge-release-py
557 touch $@
559 build-gtk-dbg-py%-stamp: build-gtk-debug-stamp # purge-release-py
560 dh_testdir
561 touch docs/lgpl.txt
562 cd wxPython \
563 && python$*-dbg ./setup.py build \
564 WX_CONFIG='$(wxconfig-dbg)' \
565 WXPORT=$(pytoolkit) \
566 $(PY_UNICODE) \
567 FLAVOUR=$(addsuffix -,$(DEBIAN_WXFLAVOUR))dbg
568 touch $@
571 configure-msw-shared-stamp: config.guess
572 dh_testdir
573 mkdir -p $(objdir_msw_shared)
574 cd $(objdir_msw_shared) \
575 && ../configure --prefix=/usr/$(cross_host) \
576 --cache-file=$(config_cache_cross) \
577 --host=$(cross_host) \
578 --build=$(cross_build) \
579 --with-flavour=$(DEBIAN_WXFLAVOUR) \
580 $(MSW_CONFIGURE_OPTIONS)
581 touch $@
583 build-msw-shared-stamp: configure-msw-shared-stamp
584 dh_testdir
585 $(FAST_MAKE) -C $(objdir_msw_shared)
586 touch $@
588 configure-msw-static-stamp: config.guess
589 dh_testdir
590 mkdir -p $(objdir_msw_static)
591 cd $(objdir_msw_static) \
592 && ../configure --prefix=/usr/$(cross_host) \
593 --cache-file=$(config_cache_cross) \
594 --host=$(cross_host) \
595 --build=$(cross_build) \
596 --with-flavour=$(DEBIAN_WXFLAVOUR) \
597 $(MSW_CONFIGURE_OPTIONS) \
598 --disable-shared
599 touch $@
601 build-msw-static-stamp: configure-msw-static-stamp
602 dh_testdir
603 $(FAST_MAKE) -C $(objdir_msw_static)
604 touch $@
606 configure-msw-dbg-stamp: config.guess
607 dh_testdir
608 mkdir -p $(objdir_msw_dbg)
609 cd $(objdir_msw_dbg) \
610 && ../configure --prefix=/usr/$(cross_host) \
611 --cache-file=$(config_cache_cross) \
612 --host=$(cross_host) \
613 --build=$(cross_build) \
614 --with-flavour=$(DEBIAN_WXFLAVOUR) \
615 --enable-debug
616 touch $@
618 build-msw-dbg-stamp: configure-msw-dbg-stamp
619 dh_testdir
620 $(FAST_MAKE) -C $(objdir_msw_dbg)
621 touch $@
624 clean-py:
625 cd wxPython && \
626 rm -rf build-options.cache build*/ wx/*.py build_options.py src/wx.pth wx/build/build_options.py
628 # What to do about src/__version__.py ???
631 # We do the equivalent of this above by removing build, unfortunately
632 # it's not enough by itself to get the tree properly clean again.
633 # && ./setup.py clean
635 clean: debian/control clean-py
636 dh_testdir
637 dh_testroot
639 rm -rf config_deb.cache config_deb_cross.cache *-stamp $(objdirs)
641 dh_clean
642 rm -f debian/$(package_wxbase_lib).* \
643 debian/$(package_wxbase_dev).* \
644 debian/$(package_wxbase_dbg).* \
645 debian/$(package_gtk_lib).* \
646 debian/$(package_gtk_dev).* \
647 debian/$(package_gtk_dbg).* \
648 debian/$(package_gtk_py_lib).* \
649 debian/$(package_headers).* \
650 debian/$(package_i18n).* \
651 debian/$(package_doc).* \
652 debian/$(package_examples).* \
653 debian/$(package_gtk_dbg_py).* \
654 debian/$(package_msw_dev).* \
655 debian/$(package_msw_dbg).* \
656 debian/lintian-override \
657 debian/unpack_examples.sh \
658 config.guess config.sub
659 rm -rf include/wx-$(release)
660 find -name '*.py[co]' -delete
662 install_arch: build-arch $(install_all_arch)
664 install: build_all $(install_all_native)
666 install-wxbase-lib: DH_OPTIONS=-p$(package_wxbase_lib)
667 install-wxbase-lib: build-wxbase-shared-stamp install-gtk-shared-stamp
668 dh_testdir
669 dh_testroot
670 dh_prep
671 @# No, this is not a typo, we steal these libs from the gtk build.
672 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/libwx_base*.so.* usr/lib/$(DEB_HOST_MULTIARCH)
673 dh_installdirs usr/share/lintian/overrides
674 grep ^$(package_wxbase_lib): debian/lintian-override > debian/$(package_wxbase_lib)/usr/share/lintian/overrides/$(package_wxbase_lib)
676 install-wxbase-dev: DH_OPTIONS=-p$(package_wxbase_dev)
677 install-wxbase-dev: build-wxbase-shared-stamp install-gtk-shared-stamp
678 dh_testdir
679 dh_testroot
680 dh_prep
681 @# No, this is not a typo, we steal these libs from the gtk build.
682 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/libwx_base*.so usr/lib/$(DEB_HOST_MULTIARCH)
683 dh_install $(objdir_wxbase_shared)/lib/wx/include usr/lib/$(DEB_HOST_MULTIARCH)/wx
684 dh_install $(objdir_wxbase_shared)/lib/wx/config/base* usr/lib/$(DEB_HOST_MULTIARCH)/wx/config
686 install-wxbase-dbg: DH_OPTIONS=-p$(package_wxbase_dbg)
687 install-wxbase-dbg: build-wxbase-debug-stamp
688 dh_testdir
689 dh_testroot
690 dh_prep
691 @# No, this is not a typo, we steal these libs from the gtk debug build.
692 dh_install $(objdir_gtk_debug)/lib/libwx_base* usr/lib/$(DEB_HOST_MULTIARCH)
693 dh_install $(objdir_wxbase_debug)/lib/wx/include usr/lib/$(DEB_HOST_MULTIARCH)/wx
694 dh_install $(objdir_wxbase_debug)/lib/wx/config/base* usr/lib/$(DEB_HOST_MULTIARCH)/wx/config
695 dh_installdirs usr/share/lintian/overrides
696 grep ^$(package_wxbase_dbg): debian/lintian-override > debian/$(package_wxbase_dbg)/usr/share/lintian/overrides/$(package_wxbase_dbg)
698 install-gtk-shared-stamp: build-gtk-shared-stamp build-gtk-shared-contrib-stamp
699 dh_testdir
700 mkdir -p $(objdir_gtk_install)
701 cd $(objdir_gtk_shared) \
702 && $(MAKE) install prefix=`pwd`/../$(objdir_gtk_install)
703 cd $(objdir_gtk_shared)/contrib/src \
704 && $(MAKE) install prefix=`pwd`/../../../$(objdir_gtk_install)
705 touch $@
707 install-gtk-lib: DH_OPTIONS=-p$(package_gtk_lib)
708 install-gtk-lib: install-gtk-shared-stamp
709 dh_testdir
710 dh_testroot
711 dh_prep
712 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/libwx_gtk*.so.* usr/lib/$(DEB_HOST_MULTIARCH)
713 dh_installdirs usr/share/lintian/overrides
714 grep ^$(package_gtk_lib): debian/lintian-override > debian/$(package_gtk_lib)/usr/share/lintian/overrides/$(package_gtk_lib)
716 install-gtk-dev: DH_OPTIONS=-p$(package_gtk_dev)
717 install-gtk-dev: install-gtk-shared-stamp
718 dh_testdir
719 dh_testroot
720 dh_prep
721 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/libwx_gtk*.so usr/lib/$(DEB_HOST_MULTIARCH)
722 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/wx/include usr/lib/$(DEB_HOST_MULTIARCH)/wx
723 dh_install $(objdir_gtk_install)/lib/$(DEB_HOST_MULTIARCH)/wx/config/gtk* usr/lib/$(DEB_HOST_MULTIARCH)/wx/config
725 install-gtk-dbg: DH_OPTIONS=-p$(package_gtk_dbg)
726 install-gtk-dbg: build-gtk-debug-stamp build-gtk-debug-contrib-stamp
727 dh_testdir
728 dh_testroot
729 dh_prep
730 dh_install $(objdir_gtk_debug)/lib/libwx_gtk* usr/lib/$(DEB_HOST_MULTIARCH)
731 dh_install $(objdir_gtk_debug)/lib/wx/include usr/lib/$(DEB_HOST_MULTIARCH)/wx
732 dh_install $(objdir_gtk_debug)/lib/wx/config/gtk* usr/lib/$(DEB_HOST_MULTIARCH)/wx/config
733 dh_installdirs usr/share/lintian/overrides
734 grep ^$(package_gtk_dbg): debian/lintian-override > debian/$(package_gtk_dbg)/usr/share/lintian/overrides/$(package_gtk_dbg)
737 install-gtk-py-lib: DH_OPTIONS=-p$(package_gtk_py_lib)
738 install-gtk-py-lib: install-gtk-py-lib-pre $(PYVERS:%=install-gtk-pylib%)
739 /bin/echo -n "$(wxsubdir)" > debian/$(package_gtk_py_lib)/usr/lib/wx/python/wx$(release).pth
740 install-gtk-py-lib-pre:
741 dh_testdir
742 dh_testroot
743 dh_prep
744 install-gtk-pylib%: install-gtk-py-lib-pre build-gtk-py%-stamp
745 dh_testdir
746 dh_testroot
747 dh_installdirs usr/lib/wx/python
748 cd wxPython \
749 && python$* ./setup.py install \
750 --install-layout=deb \
751 --prefix=`pwd`/../debian/$(package_gtk_py_lib)/usr \
752 WX_CONFIG='$(wxconfig)' \
753 SYS_WX_CONFIG='$(py_wxconfig)' \
754 WXPORT=$(pytoolkit) \
755 $(PY_UNICODE) \
756 FLAVOUR=$(DEBIAN_WXFLAVOUR)
758 cp -a include/wx-$(release) \
759 debian/$(package_headers)/usr/include
761 rm -f debian/$(package_gtk_py_lib)/usr/lib/python$*/$(call py_sitename,$*)/wx.pth
763 find debian/$(package_gtk_py_lib)/usr/lib/python$* -name '*.py?' -delete
765 # Fix image-file-in-usr-lib lintian warnings.
766 mkdir -p debian/$(package_gtk_py_lib)/usr/share/$(package_gtk_py_lib)/XRCed/plugins/
767 cp -rf debian/$(package_gtk_py_lib)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)/wx/tools/XRCed/plugins/bitmaps debian/$(package_gtk_py_lib)/usr/share/$(package_gtk_py_lib)/XRCed/plugins/
768 -rm -rf debian/$(package_gtk_py_lib)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)/wx/tools/XRCed/plugins/bitmaps
770 # This is rather bogus, it's included in the main copyright file now though.
771 rm -f debian/$(package_gtk_py_lib)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)/wx/tools/XRCed/license.txt
772 # has its own package, editra
773 rm -fr debian/$(package_gtk_py_lib)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)/wx/tools/Editra
775 install-gtk-py-ver: DH_OPTIONS=-p$(package_gtk_py_ver)
776 install-gtk-py-ver: install-gtk-py-lib
777 dh_testdir
778 dh_testroot
779 dh_prep
781 ifndef DEBIAN_WX_DEFAULT_VERSION
783 dh_movefiles --sourcedir=debian/$(package_gtk_py_lib) \
784 $(foreach pv,$(PYVERS),$(call py_libdir,$(pv))/wxversion.py)
785 for v in $(foreach pv,$(PYVERS),debian/$(package_gtk_py_ver)$(call py_libdir,$(pv))/wx.pth); do \
786 ln -sf ../../wx/python/wx.pth $$v; \
787 done
788 else
789 rm -f debian/$(package_gtk_py_lib)/usr/lib/python*/*/wxversion.py
790 endif
794 install-gtk-py-tools: DH_OPTIONS=-p$(package_gtk_py_tools)
795 install-gtk-py-tools: install-gtk-py-ver
796 dh_testdir
797 dh_testroot
798 dh_prep
800 install-gtk-py: DH_OPTIONS=-p$(package_gtk_py_tools)
801 install-gtk-py: install-gtk-py-tools
803 ifndef DEBIAN_WX_DEFAULT_VERSION
805 dh_movefiles --sourcedir=debian/$(package_gtk_py_lib) usr/bin
807 dh_installman debian/wxPython-tools.1
808 dh_link usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2py.1 \
809 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2xpm.1 \
810 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/img2png.1 \
811 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pycrust.1 \
812 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/xrced.1 \
813 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/helpviewer.1 \
814 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalacarte.1 \
815 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pyalamode.1 \
816 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pywrap.1 \
817 usr/share/man/man1/wxPython-tools.1 usr/share/man/man1/pywxrc.1
819 rm debian/$(package_gtk_py_tools)/usr/bin/editra
820 rm debian/$(package_gtk_py_tools)/usr/bin/pyshell
821 endif
822 mkdir -p debian/$(package_gtk_py_tools)/usr/share/pixmaps
823 mkdir -p debian/$(package_gtk_py_tools)/usr/share/applications
825 cp debian/pycrust.xpm debian/$(package_gtk_py_tools)/usr/share/pixmaps/pycrust.xpm
826 cp debian/xrced.xpm debian/$(package_gtk_py_tools)/usr/share/pixmaps/xrced.xpm
827 cp wxPython/wx/py/PyCrust_32.png debian/$(package_gtk_py_tools)/usr/share/pixmaps/pycrust.png
828 cp wxPython/wx/tools/XRCed/XRCed_32.png debian/$(package_gtk_py_tools)/usr/share/pixmaps/xrced.png
829 cp debian/pycrust.desktop debian/$(package_gtk_py_tools)/usr/share/applications
830 cp debian/xrced.desktop debian/$(package_gtk_py_tools)/usr/share/applications
832 rm -r debian/$(package_gtk_py_lib)/usr/bin
835 install-common: DH_OPTIONS=-p$(package_common)
836 install-common: install-gtk-shared-stamp
837 dh_testdir
838 dh_testroot
839 dh_prep
841 dh_install $(objdir_gtk_install)/share/bakefile/presets usr/share/bakefile
842 dh_install $(objdir_gtk_install)/share/bakefile/presets/wx*.bkl usr/share/bakefile/presets
844 dh_install $(objdir_gtk_install)/share/aclocal usr/share
845 dh_installman debian/wx-config.1
847 dh_install $(objdir_gtk_shared)/utils/wxrc/wxrc usr/bin
848 dh_installman debian/wxrc-tools.1
849 dh_link usr/share/man/man1/wxrc-tools.1 usr/share/man/man1/wxrc.1
852 install-headers: DH_OPTIONS=-p$(package_headers)
853 install-headers: install-gtk-shared-stamp
854 dh_testdir
855 dh_testroot
856 dh_prep
858 # The only way to be really sure we get the univ headers correct is to install
859 # them. Do that in a scratch dirs, and move the gtk ones last, so at least
860 # they win in the result of any uncaught conflict.
862 # cd $(objdir_gtk_univ) \
863 # && $(MAKE) install prefix=`pwd`/../$(objdir_univ_install)/usr
865 # dh_movefiles --sourcedir=$(objdir_univ_install)
866 dh_install $(objdir_gtk_install)/include usr
868 install-i18n: DH_OPTIONS=-p$(package_i18n)
869 install-i18n: build-i18n-stamp install-gtk-shared-stamp
870 dh_testdir
871 dh_testroot
872 dh_prep
873 # We end up with usr/share/locale/zh/LC_MESSAGES/ empty in 2.8.12.1.
874 find $(objdir_gtk_install)/share/locale -type d -empty -delete
875 dh_install $(objdir_gtk_install)/share/locale usr/share
877 install-doc: DH_OPTIONS=-p$(package_doc)
878 install-doc: build-doc-stamp
879 dh_testdir
880 dh_testroot
881 dh_prep
883 @# Link this monstrosity with an overly obfuscated name
884 @# to something that both people and browsers can expect to find.
885 dh_link usr/share/doc/$(package_doc)/wx-manual.html/wx-$(release)-manual_contents.html \
886 usr/share/doc/$(package_doc)/wx-manual.html/index.html
888 install-examples: DH_OPTIONS=-p$(package_examples)
889 install-examples: build-examples-stamp
890 dh_testdir
891 dh_testroot
892 dh_prep
894 install-gtk-dbg-py: DH_OPTIONS=-p$(package_gtk_dbg_py)
895 install-gtk-dbg-py: install-gtk-dbg-py-pre $(PYVERS:%=install-gtk-dbg-py%)
896 install-gtk-dbg-py-pre:
897 dh_testdir
898 dh_testroot
899 dh_prep
900 install-gtk-dbg-py%: install-gtk-dbg-py-pre build-gtk-dbg-py%-stamp
901 dh_testdir
902 dh_testroot
903 dh_installdirs usr/lib/wx/python
904 cd wxPython \
905 && python$*-dbg ./setup.py install \
906 --install-layout=deb \
907 --prefix=`pwd`/../debian/$(package_gtk_dbg_py)/usr \
908 WX_CONFIG='$(wxconfig-dbg)' \
909 SYS_WX_CONFIG='$(pyd_wxconfig)' \
910 WXPORT=$(pytoolkit) \
911 $(PY_UNICODE) \
912 FLAVOUR=$(addsuffix -,$(DEBIAN_WXFLAVOUR))dbg
914 mv debian/$(package_gtk_dbg_py)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)-dbg \
915 debian/$(package_gtk_dbg_py)/usr/lib/python$*/$(call py_sitename,$*)/$(wxsubdir)
917 -find debian/$(package_gtk_dbg_py) -name '*_d.so'
918 find debian/$(package_gtk_dbg_py) ! -type d ! -name '*.so' -delete
919 find debian/$(package_gtk_dbg_py) -depth -type d -empty -delete
922 install-msw-dev: DH_OPTIONS=-p$(package_msw_dev)
923 install-msw-dev: build-msw-shared-stamp build-msw-static-stamp
924 dh_testdir
925 dh_testroot
926 dh_prep
927 dh_install $(objdir_msw_shared)/lib/*.dll* usr/$(cross_host)/lib
928 dh_install $(objdir_msw_shared)/lib/wx/include usr/$(cross_host)/lib/wx
929 dh_install $(objdir_msw_shared)/lib/wx/config/$(cross_host)* usr/$(cross_host)/lib/wx/config
930 dh_install $(objdir_msw_static)/lib/*.a usr/$(cross_host)/lib
931 dh_install $(objdir_msw_static)/lib/wx/include usr/$(cross_host)/lib/wx
932 dh_install $(objdir_msw_static)/lib/wx/config/$(cross_host)* usr/$(cross_host)/lib/wx/config
933 $(cross_host)-strip --strip-debug debian/$(package_msw_dev)/usr/$(cross_host)/lib/*.a
935 @# As a special case for the cross packages, we link their config
936 @# under /usr as well as under the normal cross prefix. This way
937 @# --prefix=/usr/$(cross_host) and --prefix=/usr --host=$(cross_host)
938 @# will have a congruent effect on wx-config.
939 @( for f in `ls -1 debian/$(package_msw_dev)/usr/$(cross_host)/lib/wx/config`; do \
940 all_cfg="$${all_cfg} usr/$(cross_host)/lib/wx/config/$$f usr/lib/wx/config/$$f"; \
941 echo "linking cross config /usr/$(cross_host)/lib/wx/config/$$f"; \
942 done; \
943 dh_link $${all_cfg}; \
944 )
946 install-msw-dbg: DH_OPTIONS=-p$(package_msw_dbg)
947 install-msw-dbg: build-msw-dbg-stamp
948 dh_testdir
949 dh_testroot
950 dh_prep
951 dh_install $(objdir_msw_dbg)/lib/*.dll* usr/$(cross_host)/lib
952 dh_install $(objdir_msw_dbg)/lib/wx/include usr/$(cross_host)/lib/wx
953 dh_install $(objdir_msw_dbg)/lib/wx/config/$(cross_host)* usr/$(cross_host)/lib/wx/config
954 # No static lib, they're freakin' huge!
955 #$(cross_host)-strip --strip-debug debian/$(package_msw_dbg)/usr/$(cross_host)/lib/*.a
957 @( for f in `ls -1 debian/$(package_msw_dbg)/usr/$(cross_host)/lib/wx/config`; do \
958 all_cfg="$${all_cfg} usr/$(cross_host)/lib/wx/config/$$f usr/lib/wx/config/$$f"; \
959 echo "linking cross config /usr/$(cross_host)/lib/wx/config/$$f"; \
960 done; \
961 dh_link $${all_cfg}; \
962 )
964 install-headers-msw: DH_OPTIONS=-p$(package_headers_msw)
965 install-headers-msw:
966 dh_testdir
967 dh_testroot
968 dh_prep
970 cd $(objdir_msw_shared) \
971 && $(MAKE) install prefix=`pwd`/../$(objdir_msw_install)
973 # Symlink all the headers that will be installed by the main -headers
974 # package to where the cross compiler will expect them.
975 @( for f in `ls -1 $(objdir_msw_install)/include/wx-$(release)/wx`; do \
976 all_h="$${all_h} usr/include/wx-$(release)/wx/$$f usr/$(cross_host)/include/wx-$(release)/wx/$$f"; \
977 echo "linking header /usr/include/wx-$(release)/wx/$$f"; \
978 done; \
979 dh_link $${all_h}; \
980 )
982 # But install this lot for real.
983 rm -f debian/$(package_headers_msw)/usr/$(cross_host)/include/wx-$(release)/wx/msw
984 dh_install $(objdir_msw_install)/include/wx-$(release)/wx/msw usr/$(cross_host)/include/wx-$(release)/wx
986 binary-common:
987 dh_testdir
988 dh_testroot
989 dh_installchangelogs docs/changes.txt
990 dh_installdocs
991 dh_installexamples
992 dh_installmenu
993 dh_link
994 dh_python2
996 @# Don't strip debug libs at all, and strip cross libs elsewhere
997 @# with the cross host tools until dh_strip gets smarter.
998 ifneq (, $(filter -a, $(DH_OPTIONS)))
999 dh_strip -N$(package_gtk_dbg) -N$(package_wxbase_dbg) \
1000 -N$(package_msw_dev) -N$(package_msw_dbg) \
1001 -N$(package_gtk_py_lib) -N$(package_gtk_dbg_py)
1002 DH_OPTIONS= dh_strip -p$(package_gtk_py_lib) --dbg-package=$(package_gtk_dbg_py)
1003 endif
1004 dh_compress -X.py
1005 dh_fixperms
1007 @# Don't do this for the dbg-py special build because dh_makeshlibs
1008 @# will crap out if it is called with no packages to act on.
1009 ifneq ($(DH_OPTIONS),-p$(package_gtk_dbg_py))
1010 dh_makeshlibs -N$(package_gtk_py_lib) -V
1011 endif
1013 dh_installdeb
1014 dh_shlibdeps -ldebian/$(package_wxbase_lib)/usr/lib:debian/$(package_wxbase_dbg)/usr/lib:debian/$(package_gtk_lib)/usr/lib:debian/$(package_gtk_dbg)/usr/lib
1015 dh_gencontrol
1016 dh_md5sums
1017 dh_builddeb
1019 # Build architecture-independent files here.
1020 # Note that you currently can't build the indep packages without first
1021 # building the arch specific package files needed to create them.
1022 binary-indep: build_all install
1023 $(MAKE) -f debian/rules \
1024 DH_OPTIONS="-i $(addprefix -N,$(extra_packages))" \
1025 binary-common
1027 # Build just the architecture-dependent files here.
1028 binary-arch: build-arch install_arch
1029 $(MAKE) -f debian/rules \
1030 DH_OPTIONS="-a $(addprefix -N,$(extra_packages))" \
1031 binary-common
1032 rm -rf debian/$(package_gtk_dbg_py)/usr/share/doc/$(package_gtk_dbg_py)
1033 ln -s $(package_gtk_py_lib) debian/$(package_gtk_dbg_py)/usr/share/doc/$(package_gtk_dbg_py)
1035 # Build all packages target.
1036 binary: binary-arch binary-indep
1039 # This is a special target for building the wxMSW-cross packages.
1040 # It's not currently called during the official package build run
1041 # but may be run separately to build the extra packages.
1042 # There is an implied build dep on the mingw32 cross compiler
1043 # that is not in the control file.
1044 binary-cross: control-files-stamp $(install_all_cross)
1045 $(MAKE) -f debian/rules \
1046 DH_OPTIONS="-p$(package_msw_dev) -p$(package_msw_dbg) -p$(package_headers_msw)" \
1047 binary-common
1050 # Build wxPython against libwxgtk-dbg. This package will conflict
1051 # with the release build one, but may be useful to some people.
1052 binary-dbg-py: control-files-stamp install-gtk-dbg-py
1053 $(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_dbg_py)" binary-common
1056 ############################################################################
1057 #
1058 # Some rules to build a subset of the complete list of packages that can be
1059 # built. Beware that packages produced with these rules may *NOT*
1060 # be compatible with packages built using the 'binary' target or even with
1061 # Debian policy. Do not distribute packages built with these rules, they
1062 # are currently useful for rapid in-house testing by developers only.
1064 DH_OPTIONS_GTK := -p$(package_wxbase_lib) -p$(package_gtk_lib) -p$(package_headers)
1066 # libwxgtk shared lib package
1067 binary-gtk: control-files-stamp install-gtk-lib install-wxbase-lib install-headers
1068 $(MAKE) -f debian/rules DH_OPTIONS="$(DH_OPTIONS_GTK)" binary-common
1070 binary-gtk-dev: control-files-stamp install-gtk-dev install-wxbase-dev install-headers
1071 $(MAKE) -f debian/rules \
1072 DH_OPTIONS="-p$(package_wxbase_dev) -p$(package_gtk_dev) $(DH_OPTIONS_GTK)" \
1073 binary-common
1075 binary-gtk-dbg: control-files-stamp install-gtk-dbg install-wxbase-dbg install-headers
1076 $(MAKE) -f debian/rules \
1077 DH_OPTIONS="-p$(package_wxbase_dbg) -p$(package_gtk_dbg) -p$(package_headers)" \
1078 binary-common
1080 # docs package
1081 binary-doc: control-files-stamp install-doc
1082 $(MAKE) -f debian/rules DH_OPTIONS=-p$(package_doc) binary-common
1084 binary-fast:control-files-stamp install-gtk-dbg install-msw-dev install-headers install-headers-msw
1085 $(MAKE) -f debian/rules DH_OPTIONS="-p$(package_gtk_dbg) -p$(package_msw_dev) -p$(package_headers) -p$(package_headers_msw)" binary-common
1087 .PHONY: build build_all build-arch build-indep \
1088 clean clean-py purge-release-py purge-dbg-py \
1089 binary-indep binary-arch binary binary-common \
1090 binary-gtk binary-gtk-dev binary-gtk-dbg \
1091 binary-wxbase binary-wxbase-dev binary-wxbase-dbg \
1092 binary-doc binary-cross binary-dbg-py \
1093 install install_arch install-gtk-lib install-gtk-dev \
1094 install-gtk-dbg \
1095 install-gtk-py install-gtk-py-tools install-gtk-py-ver \
1096 install-gtk-py-lib install-gtk-dbg-py \
1097 install-common install-headers install-i18n install-doc \
1098 install-examples install-msw-dev install-msw-dbg install-headers-msw
