Changeset f8d2cff for debian/rules


Ignore:
Timestamp:
2018-04-11T06:16:02Z (7 years ago)
Author:
dequis <dx@…>
Branches:
master
Children:
17cc2fe
Parents:
8d7b0a4
git-author:
dequis <dx@…> (11-04-18 05:58:33)
git-committer:
dequis <dx@…> (11-04-18 06:16:02)
Message:

debian: turn -common and -dev into arch:any to safely use --link-doc

This started with trying to remove something that says "remove the hack
below once Hardy and Lenny are deprecated". Hardy and Lenny have been
deprecated for years, this should be easy, right?

Turns out that the symlink stuff we were doing can result in broken
packages with binNMU, see debbug#767839. This is also documented in the
dh_installdocs man page:

CAVEAT 2: The use of --link-doc should only be done when the packages
have same "architecture" type. A link from a architecture independent
package to a architecture dependent package (or vice versa) will not
work. Since compat 10, debhelper will actively reject unsupported
combinations.

And we were doing essentially the same wrong thing but manually.

The easiest way to solve this is to stop mixing arch:any and arch:all,
and to make everything arch:any. Let's hope this is as easy as it looks.

Thanks to bunk, nthykier and olly from #debian-devel for help with this.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • debian/rules

    r8d7b0a4 rf8d2cff  
    3535HAS_DH_SYSTEMD:=$(shell dpkg-query -W -f='$${Status}' dh-systemd 2>/dev/null | grep -c "ok installed")
    3636
    37 # No difference at the build stage so just call main build target.
    38 # (Well indep could be docs-only but we prebuild them plus it's really
    39 # not that much work.)
    40 build-arch build-indep: build
     37build-arch: build
    4138
    4239build: build-stamp
     
    9895        dh_installchangelogs doc/CHANGES
    9996        dh_installexamples
    100         dh_installdocs #--link-doc=bitlbee-common
    101         # TODO: Restore --link-doc up here and remove the hack below once
    102         # Hardy and Lenny are deprecated.
    103         for p in bitlbee bitlbee-libpurple bitlbee-dev bitlbee-plugin-otr; do rm -r debian/$$p/usr/share/doc/$$p && ln -s bitlbee-common debian/$$p/usr/share/doc/$$p || true; done
     97        dh_installdocs --link-doc=bitlbee-common
    10498        dh_installdebconf
    10599ifeq ($(HAS_DH_SYSTEMD),1)
     
    123117        dh_builddeb
    124118
    125 binary-indep: build install
    126         DH_OPTIONS=-i $(MAKE) -f debian/rules binary-common
    127 
    128119binary-arch: build install
    129120        DH_OPTIONS=-a $(MAKE) -f debian/rules binary-common
     
    132123        DH_OPTIONS=-p$* $(MAKE) -f debian/rules binary-common
    133124
    134 binary: binary-indep binary-arch
    135 .PHONY: build clean binary-indep binary-arch binary-common binary install
     125binary: binary-arch
     126.PHONY: build clean binary-arch binary-common binary install
Note: See TracChangeset for help on using the changeset viewer.