[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#577804: apt: debian/rules improvements -- EOL whitespace, long options, POSIX cmd substitution



Package: apt
Version: 0.7.25.3
Severity: wishlist


The following patch is against:

    r1687 nosmart+http://bzr.debian.org/apt/apt/debian-experimental/

Suggested changes:

    * Spell out the meanng of options by using --long option formats where
      possible. This will help reading the code without consulting the
      manual pages.
    * Remove subshell calls in on-line context like "(cd DIR; cmd)"
    * Utilize GNU tar --directory option in cases like "cd DIR; tar ..."
    * Use readable POSIX command substitution: $(<command sequence>)
      in place of traditional backticks
    * Remove EOL whitespace

-- Package-specific info:

-- (/etc/apt/preferences present, but not submitted) --


-- (/etc/apt/sources.list present, but not submitted) --


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_DK.UTF-8, LC_CTYPE=en_DK.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages apt depends on:
ii  debian-archive-keyring        2009.01.31 GnuPG archive keys of the Debian a
ii  libc6                         2.10.2-6   Embedded GNU C Library: Shared lib
ii  libgcc1                       1:4.4.3-7  GCC support library
ii  libstdc++6                    4.4.3-7    The GNU Standard C++ Library v3

apt recommends no packages.

Versions of packages apt suggests:
pn  apt-doc                       <none>     (no description available)
ii  aptitude                      0.6.1.5-3  terminal-based package manager (te
ii  bzip2                         1.0.5-4    high-quality block-sorting file co
ii  dpkg-dev                      1.15.5.6   Debian package development tools
ii  lzma                          4.43-14    Compression method of 7z format in
ii  python-apt                    0.7.94.2   Python interface to libapt-pkg

-- no debconf information
>From 740701c02c05db12813cdd412b24de1c2cac9c96 Mon Sep 17 00:00:00 2001
From: Jari Aalto <jari.aalto@cante.net>
Date: Wed, 14 Apr 2010 21:38:08 +0300
Subject: [PATCH] debian/rules: use readable --long options and POSIX command substitution.
Organization: Private
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

* Spell out the meanng of options by using --long option formats where
  possible. This will help reading the code without consulting the
  manual pages.
* Remove subshell calls in on-line context like "(cd DIR; cmd)"
* Utilize GNU tar --directory option in cases like "cd DIR; tar ..."
* Use readable POSIX command substitution: $(<command sequence>)
  in place of traditional backticks
* Remove EOL whitespace

Signed-off-by: Jari Aalto <jari.aalto@cante.net>
---
 rules |   66 +++++++++++++++++++++++++++++++++-------------------------------
 1 files changed, 34 insertions(+), 32 deletions(-)

diff --git a/rules b/rules
index 9d8497e..e843f68 100755
--- a/rules
+++ b/rules
@@ -32,7 +32,7 @@ BASE=.
 ifdef BUILD
 BUILD_POSSIBLE := $(BUILD) $(BASE)/$(BUILD)
 else
-BUILD_POSSIBLE := $(BASE) $(BASE)/build-$(shell uname -m) $(BASE)/build
+BUILD_POSSIBLE := $(BASE) $(BASE)/build-$(shell uname --machine) $(BASE)/build
 endif
 BUILDX:= $(foreach i,$(BUILD_POSSIBLE),$(wildcard $(i)/environment.mak*))
 BUILDX:= $(patsubst %/,%,$(firstword $(dir $(BUILDX))))
@@ -70,7 +70,7 @@ LIBAPTINST_PROVIDE=libapt-inst$(LIBSTDCPP_VER)-$(LIBAPTINST_MAJOR)
 debian/shlibs.local: apt-pkg/makefile
 	# We have 3 shlibs.local files.. One for 'apt', one for 'apt-utils' and
 	# one for the rest of the packages. This ensures that each package gets
-	# the right overrides.. 
+	# the right overrides..
 	rm -rf $@ $@.apt $@.apt-utils
 	echo "libapt-pkg$(LIBSTDCPP_VER) $(LIBAPTPKG_MAJOR)" > $@.apt
 
@@ -80,8 +80,8 @@ debian/shlibs.local: apt-pkg/makefile
 	echo "libapt-pkg$(LIBSTDCPP_VER) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@
 	echo "libapt-inst$(LIBSTDCPP_VER) $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@
 
-build: build/build-stamp	
-build-doc: build/build-doc-stamp	
+build: build/build-stamp
+build-doc: build/build-doc-stamp
 
 # Note that this is unconditionally done first as part of loading environment.mak
 # The true is needed to force make to reload environment.mak after running
@@ -92,7 +92,7 @@ build/environment.mak: build/configure-stamp
 configure: configure.in
 build/configure-stamp: configure
 	dh_testdir
-	-mkdir build
+	mkdir --parents build
 	cp COPYING debian/copyright
 	cd build && CXXFLAGS="$(confcxxflags)" ../configure $(confflags)
 	touch $@
@@ -109,7 +109,7 @@ build/build-doc-stamp: build/configure-stamp
 
 clean:
 	dh_testdir
-#	dh_testroot
+#       dh_testroot
 	[ -f Makefile ] && $(MAKE) clean
 	[ -f Makefile ] && $(MAKE) distclean
 
@@ -127,9 +127,9 @@ libapt-pkg-doc: build-doc debian/shlibs.local
 	dh_installdirs -p$@
 #
 # libapt-pkg-doc install
-#	
+#
 	dh_installdocs -p$@ $(BLD)/docs/cache* $(BLD)/docs/design* $(BLD)/docs/dpkg-tech* \
-                            $(BLD)/docs/files* $(BLD)/docs/method* \
+			    $(BLD)/docs/files* $(BLD)/docs/method* \
 			    doc/libapt-pkg2_to_3.txt doc/style.txt
 	dh_installexamples -p$@
 
@@ -151,7 +151,7 @@ apt-doc: build-doc
 #
 	# Copy the guides
 	dh_installdocs -p$@ $(BLD)/docs/guide*.text $(BLD)/docs/guide*.html \
-	               $(BLD)/docs/offline*.text $(BLD)/docs/offline*.html
+		       $(BLD)/docs/offline*.text $(BLD)/docs/offline*.html
 	dh_installchangelogs -p$@
 	dh_compress -p$@
 	dh_fixperms -p$@
@@ -196,7 +196,7 @@ apt: build build-doc debian/shlibs.local
 	cp share/debian-archive.gpg debian/$@/usr/share/$@
 	cp debian/apt.conf.autoremove debian/$@/etc/apt/apt.conf.d/01autoremove
 	cp debian/apt.conf.security debian/$@/etc/apt/apt.conf.d/05security
-#	head -n 500 ChangeLog > debian/ChangeLog
+#       head -n 500 ChangeLog > debian/ChangeLog
 
 	# copy lintian override
 	cp share/lintian-overrides debian/$@/usr/share/lintian/overrides/apt
@@ -207,7 +207,7 @@ apt: build build-doc debian/shlibs.local
 	rm -f po/*.pot
 
 	dh_installexamples -p$@ $(BLD)/docs/examples/*
-	dh_installman -p$@ 
+	dh_installman -p$@
 	dh_installcron -p$@
 	dh_installdocs -p$@
 	dh_installchangelogs -p$@
@@ -216,7 +216,7 @@ apt: build build-doc debian/shlibs.local
 	dh_fixperms -p$@
 	dh_makeshlibs -p$@ -m$(LIBAPTPKG_MAJOR) -V '$(LIBAPTPKG_PROVIDE)'
 	dh_installdeb -p$@
-	dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt
+	dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt
 	dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE)
 	dh_md5sums -p$@
 	dh_builddeb -p$@
@@ -231,22 +231,22 @@ libapt-pkg-dev: build debian/shlibs.local
 #
 	cp -a $(BLD)/bin/libapt-pkg*.so debian/libapt-pkg-dev/usr/lib/
 	cp -a $(BLD)/bin/libapt-inst*.so debian/libapt-pkg-dev/usr/lib/
-#	ln -s libapt-pkg.so.$(LIBAPTPKG_MAJOR) debian/libapt-pkg-dev/usr/lib/libapt-pkg.so
+#       ln -s libapt-pkg.so.$(LIBAPTPKG_MAJOR) debian/libapt-pkg-dev/usr/lib/libapt-pkg.so
 	find ./ -regextype awk -regex './(apt-pkg|apt-inst)/.*\.h' -print | while read FILE; do \
 		install -D $$FILE debian/libapt-pkg-dev/usr/include/$$FILE; \
 	done
 
 	dh_installdocs -p$@
-#	dh_installmenu -p$@
-#	dh_installinit -p$@
-#	dh_installcron -p$@
-#	dh_installman -p$@
+#       dh_installmenu -p$@
+#       dh_installinit -p$@
+#       dh_installcron -p$@
+#       dh_installman -p$@
 
 	dh_installchangelogs -p$@
 	dh_strip -p$@
 	dh_compress -p$@
 	dh_fixperms -p$@
-#	dh_suidregister -p$@
+#       dh_suidregister -p$@
 	dh_installdeb -p$@
 	dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE) -Vlibapt-inst:provides=$(LIBAPTINST_PROVIDE)
 	dh_md5sums -p$@
@@ -273,9 +273,9 @@ apt-utils: build debian/shlibs.local
 	dh_strip -p$@
 	dh_compress -p$@
 	dh_fixperms -p$@
-	dh_makeshlibs -m$(LIBAPTINST_MAJOR) -V '$(LIBAPTINST_PROVIDE)' -p$@
+	dh_makeshlibs --major=$(LIBAPTINST_MAJOR) --version-info='$(LIBAPTINST_PROVIDE)' -p$@
 	dh_installdeb -p$@
-	dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils
+	dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils
 	dh_gencontrol -p$@ -u -Vlibapt-inst:provides=$(LIBAPTINST_PROVIDE)
 	dh_md5sums -p$@
 	dh_builddeb -p$@
@@ -287,7 +287,7 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev
 	dh_installdirs -p$@
 
 	# install the method
-	mkdir -p debian/$@/usr/lib/apt/methods
+	mkdir --parents debian/$@/usr/lib/apt/methods
 	cp $(BLD)/bin/methods/https debian/$@/usr/lib/apt/methods
 
 	dh_installdocs -p$@ debian/apt-transport-https.README
@@ -301,7 +301,7 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev
 	dh_compress -p$@
 	dh_fixperms -p$@
 	dh_installdeb -p$@
-	dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib 
+	dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib
 	dh_gencontrol -p$@
 	dh_md5sums -p$@
 	dh_builddeb -p$@
@@ -310,7 +310,7 @@ apt-dbg: apt
 	dh_testdir -p$@
 	dh_testroot -p$@
 	dh_installdirs -p$@
-	
+
 	dh_installdocs -p$@
 	dh_installchangelogs -p$@
 	dh_compress -p$@
@@ -319,10 +319,11 @@ apt-dbg: apt
 	dh_gencontrol -p$@
 	dh_md5sums -p$@
 	dh_builddeb -p$@
-	
+
 
 source diff:
-	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+	@echo 'source and diff are obsolete - use dpkg-source -b' >&2
+	false
 
 # Update from CVS
 l33ch: really-clean
@@ -339,18 +340,19 @@ l33ch-stamp: super-l33ch
 	touch $@
 
 really-clean: clean
-	-find -name Makefile.in -print0 | xargs -0r rm -f
-	find -name ChangeLog | xargs rm -f
-	rm -f l33ch-stamp
+	find . -name Makefile.in -print0 | xargs --null --no-run-if-empty rm --force
+	find . -name ChangeLog | xargs --no-run-if-empty rm --force
+	rm --force l33ch-stamp
 
 binary: binary-indep binary-arch
 .PHONY: build clean binary-indep binary-arch binary debian/shlibs.local
 
 
 arch-prepare:
-	rm -rf debian/arch-build
-	mkdir -p debian/arch-build/apt-$(APT_DEBVER)
-	tar -c --exclude=arch-build --no-recursion -f - `bzr inventory` | (cd debian/arch-build/$(PKG)-$(APT_DEBVER);tar xf -)
+	rm --recursive --force debian/arch-build
+	mkdir --parents debian/arch-build/apt-$(APT_DEBVER)
+	tar --exclude=arch-build --no-recursion --create --file - $(bzr inventory) | \
+		tar --directory debian/arch-build/$(PKG)-$(APT_DEBVER) -x --file -
 
 arch-build: arch-prepare
-	(cd debian/arch-build/apt-$(APT_DEBVER) && debuild)
+	cd debian/arch-build/apt-$(APT_DEBVER) && debuild
-- 
1.7.0


Reply to: