Skip to content
Snippets Groups Projects
Commit 6739a910 authored by Matthias Klose's avatar Matthias Klose
Browse files

* Build dependency packages as architecture dependent packages.

  * Make python, python-{minimal,dev,dbg} Multi-Arch: allowed.
  * Build Multi-Arch: any packages libpython-{dev,dbg} packages providing
    $(DEB_HOST_GNU_TYPE/DEB_HOST_MULTIARCH)-python-config symlinks.
  * Provide python2 symlinks.
parent 9e365547
No related branches found
No related tags found
No related merge requests found
python-defaults (2.7.3-10) UNRELEASED; urgency=low
* Build dependency packages as architecture dependent packages.
* Make python, python-{minimal,dev,dbg} Multi-Arch: allowed.
* Build Multi-Arch: any packages libpython-{dev,dbg} packages providing
$(DEB_HOST_GNU_TYPE/DEB_HOST_MULTIARCH)-python-config symlinks.
* Provide python2 symlinks.
-- Matthias Klose <doko@debian.org> Tue, 04 Dec 2012 17:35:26 +0100
python-defaults (2.7.3-3) unstable; urgency=low
[ Piotr Ożarowski ]
......
......@@ -11,9 +11,10 @@ Vcs-Bzr: http://alioth.debian.org/anonscm/bzr/pkg-python/python-defaults-debian
Vcs-Browser: http://alioth.debian.org/scm/loggerhead/pkg-python/python-defaults-debian/files
Package: python
Architecture: all
Architecture: any
Multi-Arch: allowed
Priority: standard
Depends: ${misc:Depends}, python2.7 (>= 2.7.3-1~), python-minimal (= ${binary:Version})
Depends: ${misc:Depends}, python2.7 (>= 2.7.3-10~), python-minimal (= ${binary:Version})
Suggests: python-doc (= ${binary:Version}), python-tk (= ${binary:Version})
Conflicts: python-central (<< 0.5.5)
Breaks: python-csv (<< 1.0-4), python-bz2 (<< 1.1-8), python-email (<< 2.5.5-3), update-manager-core (<< 0.200.5-2)
......@@ -28,9 +29,10 @@ Description: interactive high-level object-oriented language (default version)
Python version (currently v2.7).
Package: python-minimal
Architecture: all
Architecture: any
Multi-Arch: allowed
Priority: standard
Depends: ${misc:Depends}, python2.7-minimal (>= 2.7.3-1~), dpkg (>= 1.13.20)
Depends: ${misc:Depends}, python2.7-minimal (>= 2.7.3-10~), dpkg (>= 1.13.20)
Recommends: python
Conflicts: python-central (<< 0.5.5)
Breaks: python (<= 2.7.3-1~), python-dev (<< 2.6), python-dbg (<< 2.6), python-all (<< 2.6), python-all-dev (<< 2.6), python-all-dbg (<< 2.6), python-examples (<< 2.6), idle (<< 2.6), python2.5-minimal (<< 2.5.5-7), python2.6-minimal (<< 2.6.5~rc2-2), python3.1-minimal (<< 3.1.2~rc1-2), python-support (<< 1.0.10ubuntu2)
......@@ -43,7 +45,7 @@ Description: minimal subset of the Python language (default version)
Package: python-examples
Architecture: all
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.7-examples (>= 2.7.3-1~)
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.7-examples (>= 2.7.3-10~)
Description: examples for the Python language (default version)
Examples, Demos and Tools for Python. These are files included in
the upstream Python distribution.
......@@ -52,8 +54,21 @@ Description: examples for the Python language (default version)
Python version (currently v2.7).
Package: python-dev
Architecture: all
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.7-dev (>= 2.7.3-1~)
Architecture: any
Multi-Arch: allowed
Depends: ${misc:Depends}, python (= ${binary:Version}), libpython-dev (= ${binary:Version}), python2.7-dev (>= 2.7.3-10~)
Description: header files and a static library for Python (default)
Header files, a static library and development tools for building
Python modules, extending the Python interpreter or embedding Python
in applications.
.
This package is a dependency package, which depends on Debian's default
Python version (currently v2.7).
Package: libpython-dev
Architecture: any
Multi-Arch: same
Depends: libpython2.7-dev (>= 2.7.3-10~), ${misc:Depends}
Description: header files and a static library for Python (default)
Header files, a static library and development tools for building
Python modules, extending the Python interpreter or embedding Python
......@@ -78,7 +93,7 @@ Description: IDE for Python using Tkinter (default version)
Package: python-doc
Section: doc
Architecture: all
Depends: ${misc:Depends}, python2.7-doc (>= 2.7.3-1~)
Depends: ${misc:Depends}, python2.7-doc (>= 2.7.3-10~)
Suggests: python-examples, python (= ${binary:Version})
Breaks: python (<< 2.3.5)
Replaces: python (<< 2.3.5)
......@@ -101,17 +116,28 @@ Description: documentation for the high-level object-oriented language Python
Python version (currently v2.7).
Package: python-dbg
Architecture: all
Architecture: any
Multi-Arch: allowed
Section: debug
Priority: extra
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.7-dbg (>= 2.7.3-1~)
Depends: ${misc:Depends}, python (= ${binary:Version}), libpython-dbg (= ${binary:Version}), python2.7-dbg (>= 2.7.3-10~)
Provides: python-gdbm-dbg, python-tk-dbg
Description: debug build of the Python Interpreter (version 2.7)
Python interpreter configured with --pydebug. Dynamically loaded modules are
searched in /usr/lib/python2.7/lib-dynload/debug first.
Package: libpython-dbg
Architecture: any
Multi-Arch: same
Section: debug
Priority: extra
Depends: libpython2.7-dbg (>= 2.7.3-10~), ${misc:Depends}
Description: debug build of the Python Interpreter (version 2.7)
Python interpreter configured with --pydebug. Dynamically loaded modules
are searched in /usr/lib/python2.7/lib-dynload/debug first.
Package: python-all
Architecture: all
Architecture: any
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.6 (>= 2.6.7-3), python2.7 (>= 2.7.2-3)
Description: package depending on all supported Python runtime versions
The package currently depends on python2.6 and python2.7, in the future,
......@@ -122,7 +148,7 @@ Description: package depending on all supported Python runtime versions
avoid hardcoded dependencies on specific Python runtimes.
Package: python-all-dev
Architecture: all
Architecture: any
Depends: ${misc:Depends}, python (= ${binary:Version}), python-all (= ${binary:Version}), python-dev (= ${binary:Version}), python2.6-dev (>= 2.6.5-2), python2.7-dev (>= 2.7-7)
Description: package depending on all supported Python development packages
The package currently depends on python2.6-dev and python2.7-dev, in the
......@@ -133,7 +159,7 @@ Description: package depending on all supported Python development packages
avoid hardcoded dependencies on specific Python development packages.
Package: python-all-dbg
Architecture: all
Architecture: any
Section: debug
Priority: extra
Depends: ${misc:Depends}, python (= ${binary:Version}), python-all (= ${binary:Version}), python-dbg (= ${binary:Version}), python2.6-dbg (>= 2.6.5-2), python2.7-dbg (>= 2.7-7)
......
......@@ -11,7 +11,8 @@ Vcs-Bzr: http://alioth.debian.org/anonscm/bzr/pkg-python/python-defaults-debian
Vcs-Browser: http://alioth.debian.org/scm/loggerhead/pkg-python/python-defaults-debian/files
Package: python
Architecture: all
Architecture: any
Multi-Arch: allowed
Priority: standard
Depends: ${misc:Depends}, @PVER@ (>= @PREVVER@), python-minimal (= ${binary:Version})
Suggests: python-doc (= ${binary:Version}), python-tk (= ${binary:Version})
......@@ -28,7 +29,8 @@ Description: interactive high-level object-oriented language (default version)
Python version (currently v@VER@).
Package: python-minimal
Architecture: all
Architecture: any
Multi-Arch: allowed
Priority: standard
Depends: ${misc:Depends}, @PVER@-minimal (>= @PREVVER@), dpkg (>= 1.13.20)
Recommends: python
......@@ -52,8 +54,21 @@ Description: examples for the Python language (default version)
Python version (currently v@VER@).
Package: python-dev
Architecture: all
Depends: ${misc:Depends}, python (= ${binary:Version}), @PVER@-dev (>= @PREVVER@)
Architecture: any
Multi-Arch: allowed
Depends: ${misc:Depends}, python (= ${binary:Version}), libpython-dev (= ${binary:Version}), @PVER@-dev (>= @PREVVER@)
Description: header files and a static library for Python (default)
Header files, a static library and development tools for building
Python modules, extending the Python interpreter or embedding Python
in applications.
.
This package is a dependency package, which depends on Debian's default
Python version (currently v@VER@).
Package: libpython-dev
Architecture: any
Multi-Arch: same
Depends: lib@PVER@-dev (>= @PREVVER@), ${misc:Depends}
Description: header files and a static library for Python (default)
Header files, a static library and development tools for building
Python modules, extending the Python interpreter or embedding Python
......@@ -101,17 +116,28 @@ Description: documentation for the high-level object-oriented language Python
Python version (currently v@VER@).
Package: python-dbg
Architecture: all
Architecture: any
Multi-Arch: allowed
Section: debug
Priority: extra
Depends: ${misc:Depends}, python (= ${binary:Version}), python@VER@-dbg (>= @PREVVER@)
Depends: ${misc:Depends}, python (= ${binary:Version}), libpython-dbg (= ${binary:Version}), python@VER@-dbg (>= @PREVVER@)
Provides: python-gdbm-dbg, python-tk-dbg
Description: debug build of the Python Interpreter (version @VER@)
Python interpreter configured with --pydebug. Dynamically loaded modules are
searched in /usr/lib/python@VER@/lib-dynload/debug first.
Package: libpython-dbg
Architecture: any
Multi-Arch: same
Section: debug
Priority: extra
Depends: lib@PVER@-dbg (>= @PREVVER@), ${misc:Depends}
Description: debug build of the Python Interpreter (version @VER@)
Python interpreter configured with --pydebug. Dynamically loaded modules
are searched in /usr/lib/python@VER@/lib-dynload/debug first.
Package: python-all
Architecture: all
Architecture: any
Depends: ${misc:Depends}, python (= ${binary:Version}), python2.6 (>= 2.6.7-3), python2.7 (>= 2.7.2-3)
Description: package depending on all supported Python runtime versions
The package currently depends on python2.6 and python2.7, in the future,
......@@ -122,7 +148,7 @@ Description: package depending on all supported Python runtime versions
avoid hardcoded dependencies on specific Python runtimes.
Package: python-all-dev
Architecture: all
Architecture: any
Depends: ${misc:Depends}, python (= ${binary:Version}), python-all (= ${binary:Version}), python-dev (= ${binary:Version}), python2.6-dev (>= 2.6.5-2), python2.7-dev (>= 2.7-7)
Description: package depending on all supported Python development packages
The package currently depends on python2.6-dev and python2.7-dev, in the
......@@ -133,7 +159,7 @@ Description: package depending on all supported Python development packages
avoid hardcoded dependencies on specific Python development packages.
Package: python-all-dbg
Architecture: all
Architecture: any
Section: debug
Priority: extra
Depends: ${misc:Depends}, python (= ${binary:Version}), python-all (= ${binary:Version}), python-dbg (= ${binary:Version}), python2.6-dbg (>= 2.6.5-2), python2.7-dbg (>= 2.7-7)
......
......@@ -7,6 +7,7 @@ export SHELL = /bin/bash
#export DH_VERBOSE=1
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
changelog_values := $(shell dpkg-parsechangelog \
| awk '/^(Version|Source):/ {print $$2}')
......@@ -20,7 +21,8 @@ export NVER=2.8
export PVER=python2.7
PREVVER := $(shell awk '/^python/ && NR > 1 {print substr($$2,2,length($$2)-2); exit}' debian/changelog)
PREVVER := 2.7.3-1~
# first version with Multi-Arch: allowed
PREVVER := 2.7.3-10~
PWD := $(shell pwd)
......@@ -163,12 +165,62 @@ binary-indep: build install stamp-doc
dh_testroot -i
dh_installman -i
ifeq ($(with_doc),yes)
mkdir -p debian/python-doc/usr/share/doc/python
ln -sf ../python$(VER)-doc/html \
debian/python-doc/usr/share/doc/python/html
mkdir -p debian/python-doc/usr/share/doc/python-doc
ln -sf ../python$(VER)-doc/html \
debian/python-doc/usr/share/doc/python-doc/html
endif
: # provide the idle and idle.1 defaults
mkdir -p debian/idle/usr/bin
install -m 755 debian/idle.py debian/idle/usr/bin/idle
mkdir -p debian/idle/usr/share/man/man1
install -m 644 debian/idle.1 debian/idle/usr/share/man/man1/idle.1
mkdir -p debian/idle/usr/share/pixmaps
ln -sf python.xpm debian/idle/usr/share/pixmaps/idle.xpm
mkdir -p debian/idle/usr/share/applications
cp -p debian/idle.desktop debian/idle/usr/share/applications/
# dh_installdebconf -i $(NOPKGS)
dh_lintian -i
dh_installdocs -i $(NOPKGS) --all debian/README.Debian
dh_installmenu -i $(NOPKGS)
dh_installchangelogs -i $(NOPKGS)
for p in examples idle; do \
[ $$p = idle ] || p=python-$$p; \
rm -rf debian/$$p/usr/share/doc/$$p; \
ln -sf python debian/$$p/usr/share/doc/$$p; \
done
dh_compress -i $(NOPKGS)
dh_fixperms -i $(NOPKGS)
dh_installdeb -i $(NOPKGS)
dh_gencontrol -i $(NOPKGS)
dh_md5sums -i $(NOPKGS)
dh_builddeb -i $(NOPKGS)
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
dh_installman -a
: # provide the python and python.1 defaults
mkdir -p debian/python-minimal/usr/bin
ln -sf python$(VER) debian/python-minimal/usr/bin/python
ln -sf python$(VER) debian/python-minimal/usr/bin/python2
mkdir -p debian/python-minimal/usr/share/man/man1
ln -sf python$(VER).1.gz \
debian/python-minimal/usr/share/man/man1/python.1.gz
ln -sf python$(VER).1.gz \
debian/python-minimal/usr/share/man/man1/python2.1.gz
: #
mkdir -p debian/python-minimal/usr/share/python
......@@ -223,29 +275,42 @@ binary-indep: build install stamp-doc
debian/python/usr/share/doc/python$(VER)/python-policy.$$ext; \
done
ifeq ($(with_doc),yes)
mkdir -p debian/python-doc/usr/share/doc/python
ln -sf ../python$(VER)-doc/html \
debian/python-doc/usr/share/doc/python/html
mkdir -p debian/python-doc/usr/share/doc/python-doc
ln -sf ../python$(VER)-doc/html \
debian/python-doc/usr/share/doc/python-doc/html
endif
mkdir -p debian/python/usr/share/apps/konsole
cp -p debian/python.desktop debian/python/usr/share/apps/konsole/
: # provide the python-config default
mkdir -p debian/python-dev/usr/bin
ln -sf python$(VER)-config debian/python-dev/usr/bin/python-config
ln -sf python$(VER)-config debian/python-dev/usr/bin/python2-config
mkdir -p debian/python-dev/usr/share/man/man1
ln -sf python$(VER)-config.1.gz \
debian/python-dev/usr/share/man/man1/python-config.1.gz
ln -sf python$(VER)-config.1.gz \
debian/python-dev/usr/share/man/man1/python-config2.1.gz
: # provide pkgconfig defaults
mkdir -p debian/python-dev/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig
ln -sf python-$(VER).pc debian/python-dev/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/python.pc
ln -sf python.pc debian/python-dev/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/python2.pc
mkdir -p debian/python-dbg/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig
ln -sf python-$(VER)-dbg.pc debian/python-dbg/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/python-dbg.pc
ln -sf python-dbg.pc debian/python-dbg/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/python2-dbg.pc
: # provide the python-dbg and python-dbg.1 defaults
mkdir -p debian/python-dbg/usr/bin
ln -sf python$(VER)-dbg debian/python-dbg/usr/bin/python-dbg
ln -sf python$(VER)-dbg debian/python-dbg/usr/bin/python2-dbg
ln -sf python$(VER)-dbg-config debian/python-dbg/usr/bin/python-dbg-config
ln -sf python$(VER)-dbg-config debian/python-dbg/usr/bin/python2-dbg-config
mkdir -p debian/python-dbg/usr/share/man/man1
ln -sf python$(VER)-dbg.1.gz \
debian/python-dbg/usr/share/man/man1/python-dbg.1.gz
ln -sf python$(VER)-dbg.1.gz \
debian/python-dbg/usr/share/man/man1/python2-dbg.1.gz
ln -sf python$(VER)-dbg-config.1.gz \
debian/python-dbg/usr/share/man/man1/python-dbg-config.1.gz
ln -sf python$(VER)-dbg-config.1.gz \
debian/python-dbg/usr/share/man/man1/python2-dbg-config.1.gz
mkdir -p debian/python-dbg/usr/share/doc/python
ln -sf ../python$(VER)/SpecialBuilds.txt.gz \
debian/python-dbg/usr/share/doc/python/SpecialBuilds.txt.gz
......@@ -256,37 +321,50 @@ endif
cp -p debian/valgrind-python.supp \
debian/python/usr/lib/valgrind/python.supp
: # provide the idle and idle.1 defaults
mkdir -p debian/idle/usr/bin
install -m 755 debian/idle.py debian/idle/usr/bin/idle
mkdir -p debian/idle/usr/share/man/man1
install -m 644 debian/idle.1 debian/idle/usr/share/man/man1/idle.1
: # provide the DEB_HOST_GNU_TYPE/DEB_HOST_MULTIRACH python-config defaults
mkdir -p debian/libpython-dev/usr/bin
ln -sf $(DEB_HOST_MULTIARCH)-python$(VER)-config \
debian/libpython-dev/usr/bin/$(DEB_HOST_MULTIARCH)-python-config
mkdir -p debian/libpython-dev/usr/share/man/man1
ln -sf $(DEB_HOST_MULTIARCH)-python$(VER)-config.1.gz \
debian/libpython-dev/usr/share/man/man1/$(DEB_HOST_MULTIARCH)-python-config.1.gz
ifneq ($(DEB_HOST_MULTIARCH),$(DEB_HOST_GNU_TYPE))
ln -sf $(DEB_HOST_GNU_TYPE)-python$(VER)-config \
debian/libpython-dev/usr/bin/$(DEB_HOST_GNU_TYPE)-python-config
ln -sf $(DEB_HOST_GNU_TYPE)-python$(VER)-config.1.gz \
debian/libpython-dev/usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-python-config.1.gz
endif
mkdir -p debian/idle/usr/share/pixmaps
ln -sf python.xpm debian/idle/usr/share/pixmaps/idle.xpm
mkdir -p debian/libpython-dbg/usr/bin
ln -sf $(DEB_HOST_MULTIARCH)-python$(VER)-dbg-config \
debian/libpython-dbg/usr/bin/$(DEB_HOST_MULTIARCH)-python-dbg-config
mkdir -p debian/libpython-dbg/usr/share/man/man1
ln -sf $(DEB_HOST_MULTIARCH)-python$(VER)-dbg-config.1.gz \
debian/libpython-dbg/usr/share/man/man1/$(DEB_HOST_MULTIARCH)-python-dbg-config.1.gz
ifneq ($(DEB_HOST_MULTIARCH),$(DEB_HOST_GNU_TYPE))
ln -sf $(DEB_HOST_GNU_TYPE)-python$(VER)-dbg-config \
debian/libpython-dbg/usr/bin/$(DEB_HOST_GNU_TYPE)-python-dbg-config
ln -sf $(DEB_HOST_GNU_TYPE)-python$(VER)-dbg-config.1.gz \
debian/libpython-dbg/usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-python-dbg-config.1.gz
endif
mkdir -p debian/idle/usr/share/applications
cp -p debian/idle.desktop debian/idle/usr/share/applications/
dh_lintian -a
dh_installdocs -a $(NOPKGS) --all debian/README.Debian
dh_installmenu -a $(NOPKGS)
dh_installchangelogs -a $(NOPKGS)
# dh_installdebconf -i $(NOPKGS)
dh_lintian -i
dh_installdocs -i $(NOPKGS) --all debian/README.Debian
dh_installmenu -i $(NOPKGS)
dh_installchangelogs -i $(NOPKGS)
for p in all all-dev all-dbg dbg dev examples idle; do \
for p in all all-dev all-dbg dbg dev; do \
[ $$p = idle ] || p=python-$$p; \
rm -rf debian/$$p/usr/share/doc/$$p; \
ln -sf python debian/$$p/usr/share/doc/$$p; \
done
dh_compress -i $(NOPKGS)
dh_fixperms -i $(NOPKGS)
dh_installdeb -i $(NOPKGS)
dh_gencontrol -i $(NOPKGS)
dh_md5sums -i $(NOPKGS)
dh_builddeb -i $(NOPKGS)
dh_compress -a $(NOPKGS)
dh_fixperms -a $(NOPKGS)
dh_installdeb -a $(NOPKGS)
dh_gencontrol -a $(NOPKGS)
dh_md5sums -a $(NOPKGS)
dh_builddeb -a $(NOPKGS)
# Build architecture-dependent files here.
binary-arch: build install
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment