Bug#848045: proftpd-dfsg: Improvements for debian/rules file
    Mattia Rizzolo 
    mattia at debian.org
       
    Tue Dec 13 14:52:10 UTC 2016
    
    
  
Source: proftpd-dfsg
Version: 1.3.5b-1
Severity: normal
during work for #836759 Mattia Rizzolo requested some useful changes for
debian/rules. Some were implemented in 1.3.5b-1 a few not.
1) both Vcs-Git and Vcs-Browser canonicalized to (it works for both)
        https://anonscm.debian.org/git/pkg-proftpd/proftpd-dfsg.git
-> in 1.3.5b-1
2) build done by dh_auto_build, instead of manual `make all`
-> in 1.3.5b-1
3) configure done by dh_auto_configure
-> open
4) compat level bumped to at least 9, so that buildflags from
   dpkg-buidflags are exported by dh_* tools (read debhelper(7))
-> in 1.3.5b-1
5) config.{sub,guess} updated by dh_update_autotools_config (just call
   it instead of that `test -r / mv / cp` + cleanup; the cleanup is done
   by dh_clean)
-> 1.3.5b-1
6) run dh_autoreconf
-> non-trivial, separate bug: #842293
7) there are so many trailing whitespaces in that d/rules...
-> 1.3.5b-1
8) install done with dh_auto_install.  That nostrip facility is not
   needed, the strip is done by dh_strip anyway, also stripping the
   binaries at install time like that makes the -dbgsym binaries
   produced by dh_strip useless
-> 1.3.5b-1
9) now that you're like this you can reinstate hardening, that you
   removed but not replaced, so just put
       export DEB_BUILD_MAINT_OPTIONS = hardening=+all
   on top, it should just work after the changs above
-> open
10) moving to dh_* tools makes you posible to drop:
  + thing for supporting cross build (the
     `ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))`
    )
  + that `CC := gcc`, that it's also breaking cross compiling, I think
    (haven't tried)
-> open
11) the rules' clean target doesn't call dh_auto_clean.  I think that
    with it you can save a lot of manual `rm -rf` and also revert
    adf6a7e88b051ed2fa7e7638d41d9105aa3c603c
-> 1.3.5b-1 to large extend
12) I wouldn't mind seeing those `install ...` moved to the already
    existing d/*.install files
-> 1.3.5b-1
13) the -l option of dh_shlibdeps is really unneeded nowadays
-> 1.3.5b-1
14) you have a `CFLAGS := ..` on the top, but it's not exported, hence
    it's just about useless
-> open
15) after all of this you will see how most of d/rules turned into "just
    call calling dh_*", and eventually rewriting the whole thing to use
    the dh(1) sequencer with just a couple of overrides will be very
    easy....
-> won't be that easy. I'd ignore this for now.
Hilmar
-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 4.8.0-2-686-pae (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_GB.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
    
    
More information about the Pkg-proftpd-maintainers
mailing list