Bug#744782: src:gcc-4.8: does not build gccbase when with_deps_on_target_arch_pkgs=yes
Package: src:gcc-4.8
Version: 4.8.2-19
Severity: normal
Tags: patch
User: helmutg@debian.org
Usertags: rebootstrap
Hi doko,
When cross building a gcc stage3 with_deps_on_target_arch_pkgs=yes, I
noticed that libgccX is uninstallable, because it's dependency on
gcc-4.8-base is not fulfilled (the native one rightfully isn't
M-A:foreign). I believe that gcc should be building that package and am
thus attaching a patch to fix that.
Helmut
diff -u gcc-4.8-4.8.2/debian/changelog gcc-4.8-4.8.2/debian/changelog
--- gcc-4.8-4.8.2/debian/changelog
+++ gcc-4.8-4.8.2/debian/changelog
@@ -1,3 +1,16 @@
+gcc-4.8 (4.8.2-19.1) UNRELEASED; urgency=low
+
+ * Non-maintainer upload.
+ * Build gcc-X.Y-base:$target when given with_deps_on_target_arch_pkgs=yes:
+ + Enable with_gccbase.
+ + Remove TARGET=="" check in control.m4 since the ifenabled gccbase
+ check covers everything else already.
+ + Set its architecture to CROSS_ARCH if necessary.
+ + Invoke dh_gencontrol with $(cross_gencontrol) if necessary.
+ (Closes: #-1)
+
+ -- Helmut Grohne <helmut@subdivi.de> Sun, 14 Apr 2014 18:35:08 +0200
+
gcc-4.8 (4.8.2-19) unstable; urgency=medium
* Update to SVN 20140404 (r209122) from the gcc-4_8-branch.
diff -u gcc-4.8-4.8.2/debian/control.m4 gcc-4.8-4.8.2/debian/control.m4
--- gcc-4.8-4.8.2/debian/control.m4
+++ gcc-4.8-4.8.2/debian/control.m4
@@ -125,11 +125,10 @@
define(`SOFTBASEDEP', `gnat`'PV-base (>= ${gnat:SoftVersion})')
')
-ifdef(`TARGET', `', `
ifenabled(`gccbase',`
Package: gcc`'PV-base
-Architecture: any
+Architecture: ifdef(`TARGET',`CROSS_ARCH',`any')
ifdef(`MULTIARCH', `Multi-Arch: same
')`'dnl
Section: libs
@@ -146,8 +145,7 @@
This version of GCC is not yet available for this architecture.
Please use the compilers from the gcc-snapshot package for testing.
')`'dnl
-')`'dnl
-')`'dnl native
+')`'dnl gccbase
ifenabled(`gccxbase',`
dnl override default base package dependencies to cross version
diff -u gcc-4.8-4.8.2/debian/rules.d/binary-base.mk gcc-4.8-4.8.2/debian/rules.d/binary-base.mk
--- gcc-4.8-4.8.2/debian/rules.d/binary-base.mk
+++ gcc-4.8-4.8.2/debian/rules.d/binary-base.mk
@@ -38,7 +38,11 @@
dh_installchangelogs -p$(p_base)
dh_compress -p$(p_base)
dh_fixperms -p$(p_base)
+ifeq ($(with_deps_on_target_arch_pkgs),yes)
+ $(cross_gencontrol) dh_gencontrol -p$(p_base) -- -v$(DEB_VERSION) $(common_substvars)
+else
dh_gencontrol -p$(p_base) -- -v$(DEB_VERSION) $(common_substvars)
+endif
dh_installdeb -p$(p_base)
dh_md5sums -p$(p_base)
dh_builddeb -p$(p_base)
diff -u gcc-4.8-4.8.2/debian/rules.defs gcc-4.8-4.8.2/debian/rules.defs
--- gcc-4.8-4.8.2/debian/rules.defs
+++ gcc-4.8-4.8.2/debian/rules.defs
@@ -427,6 +427,8 @@
else
ifneq ($(with_deps_on_target_arch_pkgs),yes)
with_gccxbase := yes
+ else
+ with_gccbase := yes
endif
endif
endif
Reply to: