Package: src:newt
Version: 0.52.17-1
Severity: wishlist
Tags: patch
User: helm...@debian.org
Usertags: rebootstrap

Dear newt maintainer,

newt is transitively essential (via base-passwd, cdebconf). It is
therefore necessary to cross-compile newt at an early stage when python
is not yet available. Thus newt needs to be buildable in two stages. A
first pass crosses newt without python for building base-passwd and at a
later time, after python is built, the rest of newt can be built
natively.

Please consider applying the attached patch.

If you have any questions, please refer to
https://wiki.debian.org/BuildProfileSpec, ask #debian-bootstrap or me.

Helmut
diff -Nru newt-0.52.17/debian/changelog newt-0.52.17/debian/changelog
--- newt-0.52.17/debian/changelog       2014-06-11 14:36:50.000000000 +0200
+++ newt-0.52.17/debian/changelog       2014-08-04 09:07:09.000000000 +0200
@@ -1,3 +1,10 @@
+newt (0.52.17-1.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * Add stage1 build profile disabling python packages. (Closes: #-1)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Mon, 04 Aug 2014 09:06:50 +0200
+
 newt (0.52.17-1) unstable; urgency=medium
 
   * Move to new release 0.5.17.
diff -Nru newt-0.52.17/debian/control newt-0.52.17/debian/control
--- newt-0.52.17/debian/control 2014-06-11 14:36:50.000000000 +0200
+++ newt-0.52.17/debian/control 2014-08-04 09:03:19.000000000 +0200
@@ -7,7 +7,7 @@
 Vcs-Git: git://git.fedorahosted.org/git/newt
 X-Python-Version: >= 2.7
 X-Python3-Version: >= 3.2
-Build-Depends: sgmltools-lite, libslang2-dev  (>=2.0.4-2), libpopt-dev, 
debhelper (>=9), gettext, libfribidi-dev, tcl8.6-dev, python-all-dev (>= 
2.6.6-3~), autoconf, python-all-dbg, dh-autoreconf, python3-all-dev, 
python3-all-dbg
+Build-Depends: sgmltools-lite, libslang2-dev  (>=2.0.4-2), libpopt-dev, 
debhelper (>=9), gettext, libfribidi-dev, tcl8.6-dev, python-all-dev (>= 
2.6.6-3~) <!profiles.stage1>, autoconf, python-all-dbg <!profiles.stage1>, 
dh-autoreconf, python3-all-dev <!profiles.stage1>, python3-all-dbg 
<!profiles.stage1>
 
 Package: libnewt-dev
 Architecture: any
@@ -45,6 +45,7 @@
 Section: python
 Provides: ${python:Provides}
 Depends: libnewt0.52 (=${binary:Version}) , ${python:Depends}, 
${misc:Depends}, ${shlibs:Depends}
+Build-Profiles: !stage1
 Description: NEWT module for Python
  This module allows you to built a text UI for your Python scripts
  using newt.
@@ -54,6 +55,7 @@
 Section: python
 Provides: ${python3:Provides}
 Depends: libnewt0.52 (=${binary:Version}) , ${python3:Depends}, 
${misc:Depends}, ${shlibs:Depends}
+Build-Profiles: !stage1
 Description: NEWT module for Python3
  This module allows you to built a text UI for your Python3 scripts
  using newt.
@@ -63,6 +65,7 @@
 Section: debug
 Priority: extra
 Depends: libnewt0.52 (=${binary:Version}), python-newt (=${binary:Version}), 
python-dbg, ${misc:Depends}, ${shlibs:Depends}
+Build-Profiles: !stage1
 Description: NEWT module for Python (debug extension)
  This module allows you to built a text UI for your Python scripts
  using newt.
@@ -74,6 +77,7 @@
 Section: debug
 Priority: extra
 Depends: libnewt0.52 (=${binary:Version}), python3-newt (=${binary:Version}), 
python3-dbg, ${misc:Depends}, ${shlibs:Depends}
+Build-Profiles: !stage1
 Description: NEWT module for Python3 (debug extension)
  This module allows you to built a text UI for your Python3 scripts
  using newt.
diff -Nru newt-0.52.17/debian/rules newt-0.52.17/debian/rules
--- newt-0.52.17/debian/rules   2014-06-11 14:36:50.000000000 +0200
+++ newt-0.52.17/debian/rules   2014-08-04 09:06:32.000000000 +0200
@@ -11,7 +11,11 @@
 
 # Magic debhelper rule.
 %:
+ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
        dh $@ --with python2,python3,autoreconf
+else
+       dh $@ --with autoreconf
+endif
 
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)
@@ -54,6 +58,7 @@
        
 override_dh_auto_install:
        dh_auto_install 
+ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
        for v in $(PYVERS); do \
                pylib=usr/lib/$$v/dist-packages ; \
                mkdir -p debian/python-newt/$$pylib ; \
@@ -72,6 +77,7 @@
                cp snack.py $$v/* debian/python3-newt/$$pylib; \
         done
        -find debian/python-* debian/python3-* -name '*.o' | xargs rm -f
+endif
        dh_install -p libnewt-dev libnewt.a $(LIBDIR)
        mkdir -p debian/libnewt-pic/$(LIBDIR)
        cp newt*.ver debian/libnewt-pic/$(LIBDIR)/libnewt_pic.map
@@ -79,5 +85,7 @@
 
 override_dh_strip:
        dh_strip -Npython-newt -Npython-newt-dbg -Npython3-newt 
-Npython3-newt-dbg
+ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
        dh_strip -ppython-newt --dbg-package=python-newt-dbg
        dh_strip -ppython3-newt --dbg-package=python3-newt-dbg
+endif

Reply via email to