[Python-modules-commits] r3222 - in /packages/sip4-qt3/trunk/debian: changelog control patches/01_configure.dpatch rules sipconfig.py

shlomme at users.alioth.debian.org shlomme at users.alioth.debian.org
Mon Sep 10 19:28:15 UTC 2007


Author: shlomme
Date: Mon Sep 10 19:28:14 2007
New Revision: 3222

URL: http://svn.debian.org/wsvn/python-modules/?sc=1&rev=3222
Log:
* merged back changes from Ubuntu
* some fixes to the rules

Added:
    packages/sip4-qt3/trunk/debian/sipconfig.py
Modified:
    packages/sip4-qt3/trunk/debian/changelog
    packages/sip4-qt3/trunk/debian/control
    packages/sip4-qt3/trunk/debian/patches/01_configure.dpatch
    packages/sip4-qt3/trunk/debian/rules

Modified: packages/sip4-qt3/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/python-modules/packages/sip4-qt3/trunk/debian/changelog?rev=3222&op=diff
==============================================================================
--- packages/sip4-qt3/trunk/debian/changelog (original)
+++ packages/sip4-qt3/trunk/debian/changelog Mon Sep 10 19:28:14 2007
@@ -1,3 +1,12 @@
+sip4-qt3 (4.7-4) experimental; urgency=low
+
+  * Added DPMT to Uploaders field.
+  * Merge back changes from Ubuntu, including:
+  * Better debian/rules file
+  * Support for debug packages
+
+ -- Torsten Marek <shlomme at debian.org>  Sat, 08 Sep 2007 22:25:09 +0200
+
 sip4-qt3 (4.7-3) unstable; urgency=low
 
   * Handle DEB_BUILD_OPTIONS settings correctly

Modified: packages/sip4-qt3/trunk/debian/control
URL: http://svn.debian.org/wsvn/python-modules/packages/sip4-qt3/trunk/debian/control?rev=3222&op=diff
==============================================================================
--- packages/sip4-qt3/trunk/debian/control (original)
+++ packages/sip4-qt3/trunk/debian/control Mon Sep 10 19:28:14 2007
@@ -2,8 +2,8 @@
 Section: devel
 Priority: optional
 Maintainer: Ricardo Javier Cardenes Medina <rcardenes at debian.org>
-Uploaders: Torsten Marek <shlomme at debian.org>
-Build-Depends: debhelper (>= 5.0.38), python-all-dev (>= 2.3.5-10), python-central (>= 0.5.8), dpatch
+Uploaders: Torsten Marek <shlomme at debian.org>, Debian Python Modules Team <python-modules-team at lists.alioth.debian.org>
+Build-Depends: debhelper (>= 5.0.38), python-all-dev (>= 2.3.5-10), python-all-dbg, python-central (>= 0.5.8), dpatch
 XS-Python-Version: all
 Standards-Version: 3.7.2
 
@@ -43,9 +43,24 @@
 XB-Python-Version: ${python:Versions}
 Description: Python/C++ bindings generator runtime library
  SIP is a tool for generating bindings for C++ classes with some ideas
- borrowed from SWIG, but capable of tighter bindings, because it's
- specific to C++ and Python.
+ borrowed from SWIG, but capable of tighter bindings because of its
+ specificity towards C++ and Python.
  .
+  Homepage: http://www.riverbankcomputing.co.uk/sip
+
+Package: python-sip4-dbg
+Priority: extra
+Architecture: any
+Section: python
+Provides: ${python:Provides}
+Depends: python-sip4 (= ${binary:Version}), python-dbg, ${shlibs:Depends}
+XB-Python-Version: ${python:Versions}
+Description: Python/C++ bindings generator runtime library (debug extension)
+ SIP is a tool for generating bindings for C++ classes with some ideas
+ borrowed from SWIG, but capable of tighter bindings because of its
+ specificity towards C++ and Python.
+ .
+ This package contains the extension built for the python debug interpreter.
   Homepage: http://www.riverbankcomputing.co.uk/sip
 
 Package: python-sip4-dev
@@ -57,7 +72,7 @@
 XB-Python-Version: ${python:Versions}
 Description: Python/C++ bindings generator development files
  SIP is a tool for generating bindings for C++ classes with some ideas
- borrowed from SWIG, but capable of tighter bindings, because it's
- specific to C++ and Python.
+ borrowed from SWIG, but capable of tighter bindings because of its
+ specificity towards C++ and Python.
  .
   Homepage: http://www.riverbankcomputing.co.uk/sip

Modified: packages/sip4-qt3/trunk/debian/patches/01_configure.dpatch
URL: http://svn.debian.org/wsvn/python-modules/packages/sip4-qt3/trunk/debian/patches/01_configure.dpatch?rev=3222&op=diff
==============================================================================
--- packages/sip4-qt3/trunk/debian/patches/01_configure.dpatch (original)
+++ packages/sip4-qt3/trunk/debian/patches/01_configure.dpatch Mon Sep 10 19:28:14 2007
@@ -5,10 +5,9 @@
 ## DP: for sip
 
 @DPATCH@
-
-diff -urNad sip4-qt3-4.6~/configure.py sip4-qt3-4.6/configure.py
---- sip4-qt3-4.6~/configure.py	2007-05-07 21:25:54.000000000 +0200
-+++ sip4-qt3-4.6/configure.py	2007-05-07 21:34:30.000000000 +0200
+diff -urNad sip4-qt3-4.7~/configure.py sip4-qt3-4.7/configure.py
+--- sip4-qt3-4.7~/configure.py	2007-09-08 22:45:38.000000000 +0200
++++ sip4-qt3-4.7/configure.py	2007-09-08 22:45:54.000000000 +0200
 @@ -20,6 +20,15 @@
  
  import siputils
@@ -24,8 +23,20 @@
 +    return filename
  
  # Initialise the globals.
- sip_version = 0x040600
-@@ -282,8 +291,11 @@
+ sip_version = 0x040700
+@@ -243,6 +252,11 @@
+         plat_bin_dir = sys.exec_prefix + "/bin"
+         plat_sip_dir = sys.prefix + "/share/sip"
+ 
++        if getattr(sys, "pydebug", False):
++            plat_py_inc_dir += "_d"
++            plat_py_conf_inc_dir += "_d"
++            plat_py_lib_dir += "_d"
++
+ 
+ def create_config(module, template, macros):
+     """Create the SIP configuration module so that it can be imported by build
+@@ -282,8 +296,11 @@
      macros is the dictionary of platform specific build macros.
      """
      # Bootstrap.
@@ -38,7 +49,7 @@
      cfg = sipconfig.Configuration()
  
      cfg.set_build_macros(macros)
-@@ -293,7 +305,8 @@
+@@ -293,7 +310,8 @@
      sipconfig.ParentMakefile(
          configuration=cfg,
          subdirs=["sipgen", "siplib"],
@@ -48,7 +59,7 @@
      ).generate()
  
      sipconfig.inform("Creating sip code generator Makefile...")
-@@ -305,6 +318,7 @@
+@@ -305,6 +323,7 @@
          install_dir=os.path.dirname(cfg.sip_bin),
          console=1,
          warnings=0,
@@ -56,7 +67,7 @@
          universal=opt_universal
      ).generate()
  
-@@ -320,6 +334,7 @@
+@@ -320,6 +339,7 @@
          warnings=0,
          static=opt_static,
          debug=opt_debug,
@@ -64,7 +75,7 @@
          universal=opt_universal
      )
  
-@@ -340,7 +355,7 @@
+@@ -340,7 +360,7 @@
      set_platform_directories()
  
      # Build up the list of valid specs.
@@ -73,7 +84,7 @@
          platform_specs.append(s)
  
      # Handle the command line.
-@@ -385,7 +400,7 @@
+@@ -385,7 +405,7 @@
          opt_platform = default_platform
  
      # Get the platform specific macros for building.
@@ -82,7 +93,7 @@
  
      if macros is None:
          usage()
-@@ -394,7 +409,7 @@
+@@ -394,7 +414,7 @@
      inform_user()
  
      # Install the configuration module.

Modified: packages/sip4-qt3/trunk/debian/rules
URL: http://svn.debian.org/wsvn/python-modules/packages/sip4-qt3/trunk/debian/rules?rev=3222&op=diff
==============================================================================
--- packages/sip4-qt3/trunk/debian/rules (original)
+++ packages/sip4-qt3/trunk/debian/rules Mon Sep 10 19:28:14 2007
@@ -11,54 +11,55 @@
 CFLAGS=
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-	CFLAGS += -O0
+	CFLAGS += -O0 -g
 else
-	CFLAGS += -O2
+	CFLAGS += -O2 -g
 endif
 
 PYTHONS	:= $(shell pyversions -vr debian/control)
 
-configure: configure-stamp
-configure-stamp: patch-stamp
-	echo ${CFLAGS}
+.PRECIOUS: build-%/configure-stamp dbg-build-%/configure-stamp
+
+configure: $(PYTHONS:%=build-%/configure-stamp) $(PYTHONS:%=dbg-build-%/configure-stamp)
+
+build-%/configure-stamp: patch-stamp
 	dh_testdir
-	rm -f failed-stamp
-	for version in ${PYTHONS};\
-	do\
-		mkdir -p build-$$version;\
-		cd build-$$version;\
-		python$$version ../configure.py -u STRIP="" CFLAGS_RELEASE="${CFLAGS}" || touch ../failed-stamp;\
-		cd ..;\
-	done
-	test ! -e failed-stamp && touch $@
-	rm -f failed-stamp
+	mkdir -p build-$*
+	cd build-$* \
+		&& python$* ../configure.py \
+			-u STRIP="" CFLAGS="${CFLAGS}" CFLAGS_RELEASE="" CXXFLAGS="${CFLAGS}" CXXFLAGS_RELEASE=""
+	touch $@
+
+dbg-build-%/configure-stamp: patch-stamp
+	dh_testdir
+	mkdir -p dbg-build-$*
+	cd dbg-build-$* \
+		&& python$*-dbg ../configure.py \
+			-e /usr/include/python$*_d \
+			-u CFLAGS="-O0 -g" CFLAGS_RELEASE="" CXXFLAGS="-O0 -g" CXXFLAGS_RELEASE="" STRIP=""
+	touch $@
 
 
-build: build-stamp
-build-stamp: configure-stamp
+build: $(PYTHONS:%=build-%/build-stamp) $(PYTHONS:%=dbg-build-%/build-stamp)
+
+build-%/build-stamp: build-%/configure-stamp
 	dh_testdir
-	rm -f failed-stamp
-	for version in ${PYTHONS};\
-	do\
-		cd build-$$version;\
-		$(MAKE) || touch ../failed-stamp;\
-		cd ..;\
-	done
-	test ! -e failed-stamp && touch $@
-	rm -f failed-stamp
+	$(MAKE) -C build-$*
+	touch $@
+
+dbg-build-%/build-stamp: dbg-build-%/configure-stamp
+	dh_testdir
+	$(MAKE) -C dbg-build-$*
+	touch $@
+
 
 clean: unpatch
 	dh_testdir
 	dh_testroot
-	rm -f *-stamp
-	for version in ${PYTHONS};\
-	do\
-		rm -fr build-$$version;\
-	done
-	rm -f siputils.pyc
+	rm -rf *-stamp siputils.pyc $(PYTHONS:%=build-%) $(PYTHONS:%=dbg-build-%)
 	dh_clean
 
-install-indep:
+install-indep: configure
 	dh_testdir
 	dh_testroot
 	dh_clean -k -i
@@ -66,9 +67,14 @@
 	for version in ${PYTHONS}; do \
 		mkdir -p debian/python-sip4-dev/usr/include/python$$version; \
 		install -m 644 -o root -g root siplib/sip.h debian/python-sip4-dev/usr/include/python$$version/; \
+		mkdir -p debian/python-sip4-dev/usr/include/python$${version}_d; \
+		ln -s ../python$$version/sip.h \
+		    debian/python-sip4-dev/usr/include/python$${version}_d/sip.h; \
 		mkdir -p debian/python-sip4-dev/usr/lib/python$$version/site-packages; \
+	  	install -m 644 -o root -g root debian/sipconfig.py debian/python-sip4-dev/usr/lib/python$$version/site-packages/; \
 		install -m 644 -o root -g root sipdistutils.py debian/python-sip4-dev/usr/lib/python$$version/site-packages;\
-		install -m 644 -o root -g root build-$$version/sipconfig.py debian/python-sip4-dev/usr/lib/python$$version/site-packages;\
+		install -m 644 -o root -g root build-$$version/sipconfig.py debian/python-sip4-dev/usr/lib/python$$version/site-packages/sipconfig_nd.py;\
+		install -m 644 -o root -g root dbg-build-$$version/sipconfig.py debian/python-sip4-dev/usr/lib/python$$version/site-packages/sipconfig_d.py;\
 	done
 	dh_install -i
 
@@ -79,8 +85,17 @@
 	dh_installdirs -a
 
 	for version in ${PYTHONS}; do\
-	  $(MAKE) -C build-$$version install DESTDIR=$(CURDIR)/debian/tmp;\
+		$(MAKE) -C build-$$version install DESTDIR=$(CURDIR)/debian/tmp;\
+		$(MAKE) -C dbg-build-$$version install DESTDIR=$(CURDIR)/debian/python-sip4-dbg;\
 	done
+
+	for i in $$(find debian/python-sip4-dbg -name '*.so'); do \
+		b=$$(basename $$i .so); \
+		mv $$i $$(dirname $$i)/$${b}_d.so; \
+	done
+	find debian/python-sip4-dbg ! -type d ! -name '*_d.so' | xargs rm -f
+	find debian/python-sip4-dbg -depth -empty -exec rmdir {} \;
+
 	install -d $(CURDIR)/debian/tmp/usr/share/doc/sip4/reference
 	for i in $(CURDIR)/doc/*; do \
 	  install -m 644 $$i $(CURDIR)/debian/tmp/usr/share/doc/sip4/reference; \
@@ -99,7 +114,14 @@
 	dh_installdocs -A
 	dh_installexamples
 	dh_link
-	dh_strip
+# don't call strip twice, it's in binary-common
+ifneq (,$(findstring -a, $(DH_OPTIONS)))
+	DH_OPTIONS= dh_strip -psip4
+	DH_OPTIONS= dh_strip -ppython-sip4 -Nsip4 --dbg-package=python-sip4-dbg
+	rm -rf debian/python-sip4-dbg/usr/share/doc/python-sip4-dbg
+	mkdir -p debian/python-sip4-dbg/usr/share/doc
+	ln -s python-sip4 debian/python-sip4-dbg/usr/share/doc/python-sip4-dbg
+endif
 	dh_compress 
 	dh_fixperms
 	DH_PYCENTRAL=nomove dh_pycentral

Added: packages/sip4-qt3/trunk/debian/sipconfig.py
URL: http://svn.debian.org/wsvn/python-modules/packages/sip4-qt3/trunk/debian/sipconfig.py?rev=3222&op=file
==============================================================================
--- packages/sip4-qt3/trunk/debian/sipconfig.py (added)
+++ packages/sip4-qt3/trunk/debian/sipconfig.py Mon Sep 10 19:28:14 2007
@@ -1,0 +1,11 @@
+# import the sipconfig.py for the normal or the debug build
+
+import sys
+
+if getattr(sys, "pydebug", False):
+    try:
+        from sipconfig_d import *
+    except ImportError, msg:
+        raise ImportError, 'No module named sipconfig; package python-sip4-dbg not installed'
+else:
+    from sipconfig_nd import *




More information about the Python-modules-commits mailing list