X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/54abcc91d080d15150a2dac45d85204d65090832..a0b037011960ad5b8885b2c4d9b04fb2a21ac0aa:/debian/rules diff --git a/debian/rules b/debian/rules index e7769cb7b5..b0ce268fde 100755 --- a/debian/rules +++ b/debian/rules @@ -16,6 +16,9 @@ python_dir:=python$(shell python -c "import sys;print sys.version[:3]") 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_wxbase_lib=libwxbase$(release) package_wxbase_dev=libwxbase$(release)-dev @@ -34,7 +37,9 @@ package_examples=wxwin$(release)-examples package_gtk_univ=libwxgtk$(release)-univ package_wxbase_msw_dev=libwxbase-msw$(release)-dev +package_wxbase_msw_dbg=libwxbase-msw$(release)-dbg package_msw_dev=libwxmsw$(release)-dev +package_msw_dbg=libwxmsw$(release)-dbg package_headers_msw=wxwin$(release)-headers-msw # Build directories: @@ -51,13 +56,15 @@ objdir_i18n=locale objdir_gtk_univ=objs_gtk_univ -objdir_wxbase_msw_static=objs_wxbase_msw_st -objdir_msw_static=objs_msw_st +objdir_wxbase_msw_dev=objs_wxbase_msw_dev +objdir_wxbase_msw_dbg=objs_wxbase_msw_dbg +objdir_msw_dev=objs_msw_dev +objdir_msw_dbg=objs_msw_dbg objdirs=$(objdir_wxbase_shared) $(objdir_wxbase_static) $(objdir_wxbase_debug) \ $(objdir_gtk_shared) $(objdir_gtk_static) $(objdir_gtk_debug) $(objdir_gtk_univ) \ $(objdir_doc_cruft) $(objdir_doc) $(objdir_examples) \ - $(objdir_wxbase_msw_static) $(objdir_msw_static) + $(objdir_wxbase_msw_dev) $(objdir_wxbase_msw_dbg) $(objdir_msw_dev) $(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 @@ -73,7 +80,7 @@ build_arch_stamps=build-wxbase-shared-stamp build-wxbase-static-stamp \ build_indep_stamps=build-examples-stamp build-doc-stamp -build_cross_stamps=build-wxbase-msw-dev-stamp build-msw-dev-stamp +build_cross_stamps=build-wxbase-msw-dev-stamp build-wxbase-msw-dbg-stamp build-msw-dev-stamp build-msw-dbg-stamp build_stamps_native=$(build_arch_stamps) $(build_indep_stamps) @@ -88,7 +95,7 @@ install_all_arch=install-wxbase-lib install-wxbase-dev install-wxbase-dbg \ install_all_indep=install-examples install-doc -install_all_cross=install-wxbase-msw-dev install-msw-dev install-headers-msw +install_all_cross=install-wxbase-msw-dev install-wxbase-msw-dbg install-msw-dev install-msw-dbg install-headers-msw install_all_native=$(install_all_arch) $(install_all_indep) @@ -175,11 +182,21 @@ control-files-stamp: debian/control sed -e 's/=V/$(release)/g;s/=H/$(cross_host)/g' < debian/libwxbase-msw-dev.$$f \ > debian/$(package_wxbase_msw_dev).$$f; \ done; + @for f in dirs links postinst prerm; do \ + echo "generating control file $(package_wxbase_msw_dbg).$$f"; \ + sed -e 's/=V/$(release)/g;s/=H/$(cross_host)/g' < debian/libwxbase-msw-dbg.$$f \ + > debian/$(package_wxbase_msw_dbg).$$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/wxwin-headers-msw.$$f \ @@ -204,7 +221,7 @@ build-wxbase-shared-stamp: mkdir -p $(objdir_wxbase_shared) cd $(objdir_wxbase_shared) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --disable-gui \ --enable-soname \ --with-zlib=sys \ @@ -216,7 +233,7 @@ build-wxbase-static-stamp: mkdir -p $(objdir_wxbase_static) cd $(objdir_wxbase_static) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --disable-gui \ --disable-shared \ --with-zlib=sys \ @@ -228,7 +245,7 @@ build-wxbase-debug-stamp: mkdir -p $(objdir_wxbase_debug) cd $(objdir_wxbase_debug) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --disable-gui \ --enable-debug \ --enable-soname \ @@ -241,7 +258,7 @@ build-gtk-shared-stamp: mkdir -p $(objdir_gtk_shared) cd $(objdir_gtk_shared) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --with-gtk \ --with-opengl \ --enable-soname \ @@ -257,7 +274,7 @@ build-gtk-static-stamp: mkdir -p $(objdir_gtk_static) cd $(objdir_gtk_static) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --with-gtk \ --with-opengl \ --disable-shared \ @@ -273,7 +290,7 @@ build-gtk-debug-stamp: mkdir -p $(objdir_gtk_debug) cd $(objdir_gtk_debug) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --with-gtk \ --with-opengl \ --enable-debug \ @@ -290,7 +307,7 @@ build-gtk-univ-stamp: mkdir -p $(objdir_gtk_univ) cd $(objdir_gtk_univ) \ && ../configure --prefix=/usr \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache) \ --with-gtk \ --with-opengl \ --enable-universal \ @@ -374,27 +391,49 @@ build-i18n-stamp: build-gtk-shared-stamp build-wxbase-msw-dev-stamp: dh_testdir - mkdir -p $(objdir_wxbase_msw_static) - cd $(objdir_wxbase_msw_static) \ + mkdir -p $(objdir_wxbase_msw_dev) + cd $(objdir_wxbase_msw_dev) \ && ../configure --prefix=/usr/$(cross_host) \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache_cross) \ --host=$(cross_host) \ --build=$(cross_build) \ --disable-gui \ - --disable-shared \ + && $(MAKE) + touch $@ + +build-wxbase-msw-dbg-stamp: + dh_testdir + mkdir -p $(objdir_wxbase_msw_dbg) + cd $(objdir_wxbase_msw_dbg) \ + && ../configure --prefix=/usr/$(cross_host) \ + --cache-file=$(config_cache_cross) \ + --host=$(cross_host) \ + --build=$(cross_build) \ + --disable-gui \ + --enable-debug \ && $(MAKE) touch $@ build-msw-dev-stamp: dh_testdir - mkdir -p $(objdir_msw_static) - cd $(objdir_msw_static) \ + mkdir -p $(objdir_msw_dev) + cd $(objdir_msw_dev) \ && ../configure --prefix=/usr/$(cross_host) \ - --cache-file=../config_deb.cache \ + --cache-file=$(config_cache_cross) \ --host=$(cross_host) \ --build=$(cross_build) \ - --with-mingw \ - --disable-shared \ + && $(MAKE) + touch $@ + +build-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 \ && $(MAKE) touch $@ @@ -433,7 +472,9 @@ clean: debian/control rm -f debian/$(package_doc).* rm -f debian/$(package_examples).* rm -f debian/$(package_wxbase_msw_dev).* + rm -f debian/$(package_wxbase_msw_dbg).* 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) @@ -579,20 +620,40 @@ install-wxbase-msw-dev: build-wxbase-msw-dev-stamp dh_testroot dh_clean -k dh_installdirs - cp -a $(objdir_wxbase_msw_static)/lib/* debian/$(package_wxbase_msw_dev)/usr/$(cross_host)/lib - cp $(objdir_wxbase_msw_static)/wxbase-$(release)-$(cross_host)-config debian/$(package_wxbase_msw_dev)/usr/bin/ + cp -a $(objdir_wxbase_msw_dev)/lib/* debian/$(package_wxbase_msw_dev)/usr/$(cross_host)/lib + cp $(objdir_wxbase_msw_dev)/wxbase-$(release)-$(cross_host)-config debian/$(package_wxbase_msw_dev)/usr/bin/ $(cross_host)-strip --strip-debug debian/$(package_wxbase_msw_dev)/usr/$(cross_host)/lib/*.a +install-wxbase-msw-dbg: DH_OPTIONS=-p$(package_wxbase_msw_dbg) +install-wxbase-msw-dbg: build-wxbase-msw-dbg-stamp + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + cp -a $(objdir_wxbase_msw_dbg)/lib/* debian/$(package_wxbase_msw_dbg)/usr/$(cross_host)/lib + cp $(objdir_wxbase_msw_dbg)/wxbased-$(release)-$(cross_host)-config debian/$(package_wxbase_msw_dbg)/usr/bin/ + $(cross_host)-strip --strip-debug debian/$(package_wxbase_msw_dbg)/usr/$(cross_host)/lib/*.a + install-msw-dev: DH_OPTIONS=-p$(package_msw_dev) install-msw-dev: build-msw-dev-stamp dh_testdir dh_testroot dh_clean -k dh_installdirs - cp -a $(objdir_msw_static)/lib/* debian/$(package_msw_dev)/usr/$(cross_host)/lib - cp $(objdir_msw_static)/wxmsw-$(release)-$(cross_host)-config debian/$(package_msw_dev)/usr/bin/ + cp -a $(objdir_msw_dev)/lib/* debian/$(package_msw_dev)/usr/$(cross_host)/lib + cp $(objdir_msw_dev)/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/ + $(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 @@ -622,7 +683,7 @@ binary-common: @# 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_wxbase_dbg) -N$(package_wxbase_msw_dev) -N$(package_msw_dev) + dh_strip -N$(package_gtk_dbg) -N$(package_wxbase_dbg) -N$(package_wxbase_msw_dbg) -N$(package_msw_dbg) dh_compress dh_fixperms @@ -638,14 +699,14 @@ binary-common: # building the arch specific package files needed to create them. binary-indep: build_all install $(MAKE) -f debian/rules \ - DH_OPTIONS="-i -N$(package_wxbase_msw_dev) -N$(package_msw_dev) -N$(package_headers_msw)" \ - binary-common + DH_OPTIONS="-i -N$(package_wxbase_msw_dev) -N$(package_wxbase_msw_dbg) -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_wxbase_msw_dev) -N$(package_msw_dev) -N$(package_headers_msw)" \ - binary-common + DH_OPTIONS="-a -N$(package_wxbase_msw_dev) -N$(package_wxbase_msw_dbg) -N$(package_msw_dev) -N$(package_msw_dbg) -N$(package_headers_msw)" \ + binary-common # Build all packages target. binary: binary-arch binary-indep @@ -657,8 +718,8 @@ binary: binary-arch binary-indep # that is not in the control file. binary-cross: control-files-stamp $(install_all_cross) $(MAKE) -f debian/rules \ - DH_OPTIONS="-p$(package_wxbase_msw_dev) -p$(package_msw_dev) -p$(package_headers_msw)" \ - binary-common + DH_OPTIONS="-p$(package_wxbase_msw_dev) -p$(package_wxbase_msw_dbg) -p$(package_msw_dev) -p$(package_msw_dbg) -p$(package_headers_msw)" \ + binary-common ############################################################################ @@ -708,5 +769,6 @@ binary-doc: control-files-stamp install-doc install-wxbase-dev install-wxbase-dbg install-gtk-lib install-gtk-dev \ install-gtk-dbg install-gtk-contrib install-gtk-contrib-dev \ install-gtk-py install-headers install-i18n install-doc install-examples \ - install-wxbase-msw-dev install-msw-dev install-headers-msw + install-wxbase-msw-dev install-msw-dev install-headers-msw \ + install-wxbase-msw-dbg install-msw-dbg