Source: gcc-7 Tags: patch User: helm...@debian.org Usertags: rebootstrap Building gcc libraries with DEB_STAGE=rtlibs is now successful. Yet the resulting packages are not currently installable. See e.g.:
> Setting up gcc-7-base:tilegx (7-20170316-1) ... > dpkg: dependency problems prevent configuration of libgcc1-dbg:tilegx: > libgcc1-dbg:tilegx depends on gcc-7-cross-base (= 7-20170316-1). > > dpkg: error processing package libgcc1-dbg:tilegx (--install): > dependency problems - leaving unconfigured > dpkg: dependency problems prevent configuration of libgcc1:tilegx: > libgcc1:tilegx depends on gcc-7-cross-base (= 7-20170316-1). > > dpkg: error processing package libgcc1:tilegx (--install): > dependency problems - leaving unconfigured While my previous patch #857074 fixed the inconsistency between debian/control and p_base during package build, the emitted dependencies still reference the -cross-base. Those are generated in debian/control.m4 (BASELDEP and SOFTBASELDEP). Since we are in the case where TARGET is defined, we end up injecting the "-cross" that is necessary for cross compiler builds. I propose suppressing it when CROSS_ARCH isn't all, because all cross compiler builds set CROSS_ARCH to all. The attached patch does just that. What do you think? Helmut
--- a/debian/control.m4 +++ b/debian/control.m4 @@ -123,8 +123,8 @@ define(`SOFTBASEDEP', `gcc`'PV`'TS-base (>= ${gcc:SoftVersion})') ifdef(`TARGET',` -define(`BASELDEP', `gcc`'PV-cross-base`'GCC_PORTS_BUILD (= ${gcc:Version})') -define(`SOFTBASELDEP', `gcc`'PV-cross-base`'GCC_PORTS_BUILD (>= ${gcc:SoftVersion})') +define(`BASELDEP', `gcc`'PV`'ifelse(CROSS_ARCH,`all',`-cross')-base`'GCC_PORTS_BUILD (= ${gcc:Version})') +define(`SOFTBASELDEP', `gcc`'PV`'ifelse(CROSS_ARCH, `all',`-cross')-base`'GCC_PORTS_BUILD (>= ${gcc:SoftVersion})') ',`dnl define(`BASELDEP', `BASEDEP') define(`SOFTBASELDEP', `SOFTBASEDEP')