PKG=apt
DEB_BUILD_PROG:=debuild --preserve-envvar PATH --preserve-envvar CCACHE_DIR -us -uc $(DEB_BUILD_PROG_OPTS)
-APT_DEBVER=$(shell dpkg-parsechangelog |sed -n -e '/^Version:/s/^Version: //p' -e 's/\+.*$$//')
+APT_DEBVER=$(shell dpkg-parsechangelog |sed -n -e '/^Version:/s/^Version: //p' | sed -e 's/\+.*$$//')
APT_CONFVER=$(shell sed -n -e 's/^AC_DEFINE_UNQUOTED(VERSION,"\(.*\)")/\1/p' configure.in)
APT_CVSTAG=$(shell echo "$(APT_DEBVER)" | sed -e 's/^/v/' -e 's/\./_/g')
#export DH_VERBOSE=1
# Find the libapt-pkg major version for use in other control files
-export LIBAPTPKG_MAJOR:=$(shell egrep '^MAJOR=' apt-pkg/makefile |cut -d '=' -f 2)
-export LIBAPTINST_MAJOR:=$(shell egrep '^MAJOR=' apt-inst/makefile |cut -d '=' -f 2)
+include buildlib/libversion.mak
# Determine which package we should provide in the control files
-LIBAPTPKG_PROVIDE=libapt-pkg$(GLIBC_VER)$(LIBSTDCPP_VER)-$(LIBAPTPKG_MAJOR)
-LIBAPTINST_PROVIDE=libapt-inst$(GLIBC_VER)$(LIBSTDCPP_VER)-$(LIBAPTINST_MAJOR)
+LIBAPTPKG_PROVIDE=libapt-pkg$(LIBEXT)-$(LIBAPTPKG_MAJOR)
+LIBAPTINST_PROVIDE=libapt-inst$(LIBEXT)-$(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..
rm -rf $@ $@.apt $@.apt-utils
- echo "libapt-pkg$(GLIBC_VER)$(LIBSTDCPP_VER) $(LIBAPTPKG_MAJOR)" > $@.apt
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR)" > $@.apt
- echo "libapt-pkg$(GLIBC_VER)$(LIBSTDCPP_VER) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@.apt-utils
- echo "libapt-inst$(GLIBC_VER)$(LIBSTDCPP_VER) $(LIBAPTINST_MAJOR)" >> $@.apt-utils
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@.apt-utils
+ echo "libapt-inst$(LIBEXT) $(LIBAPTINST_MAJOR)" >> $@.apt-utils
- echo "libapt-pkg$(GLIBC_VER)$(LIBSTDCPP_VER) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@
- echo "libapt-inst$(GLIBC_VER)$(LIBSTDCPP_VER) $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@
+ echo "libapt-inst$(LIBEXT) $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@
build: build/build-stamp
build-doc: build/build-doc-stamp
clean:
dh_testdir
# dh_testroot
- -$(MAKE) clean
- -$(MAKE) distclean
+ [ -f Makefile ] && $(MAKE) clean
+ [ -f Makefile ] && $(MAKE) distclean
rm -rf build
# Build architecture-dependent files here.
-binary-arch: apt-transport-https apt libapt-pkg-dev apt-utils
-apt: build debian/shlibs.local
+binary-arch: apt libapt-pkg-dev apt-utils apt-transport-https
+apt_MANPAGES = apt-cache apt-cdrom apt-config apt-get apt-key apt-mark apt-secure apt apt.conf apt_preferences sources.list
+apt: build build-doc debian/shlibs.local
dh_testdir -p$@
dh_testroot -p$@
dh_clean -p$@ -k
find $(BLD)/bin/ -type l -name "libapt-pkg*.so.*" -exec cp -a "{}" debian/$@/usr/lib/ \;
cp $(BLD)/bin/methods/* debian/$@/usr/lib/apt/methods/
+ # https has its own package
+ rm debian/$@/usr/lib/apt/methods/https
cp $(BLD)/scripts/dselect/* debian/$@/usr/lib/dpkg/methods/apt/
cp -r $(BLD)/locale debian/$@/usr/share/
cp debian/apt.conf.autoremove debian/$@/etc/apt/apt.conf.d/01autoremove
# head -n 500 ChangeLog > debian/ChangeLog
+ # copy lintian override
+ cp share/lintian-overrides debian/$@/usr/share/lintian/overrides/apt
+
# make rosetta happy and remove pot files in po/ (but leave stuff
# in po/domains/* untouched) and cp *.po into each domain dir
rm -f build/po/*.pot
rm -f po/*.pot
dh_installexamples -p$@ $(BLD)/docs/examples/*
- dh_installman -p$@
+ dh_installman -p$@ $(wildcard $(patsubst %,doc/%.[158],$(apt_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt_MANPAGES)))
dh_installcron -p$@
dh_installdocs -p$@
dh_installchangelogs -p$@
dh_md5sums -p$@
dh_builddeb -p$@
+apt-utils_MANPAGES = apt-sortpkgs apt-ftparchive apt-extracttemplates
apt-utils: build debian/shlibs.local
dh_testdir -p$@
dh_testroot -p$@
dh_installexamples -p$@
# Install the man pages..
- dh_installman -p$@
+ dh_installman -p$@ $(wildcard $(patsubst %,doc/%.[158],$(apt-utils_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt-utils_MANPAGES)))
dh_installchangelogs -p$@
dh_strip -p$@
dh_md5sums -p$@
dh_builddeb -p$@
-apt-transport-https: build debian/shlibs.local
+apt-transport-https: build debian/shlibs.local libapt-pkg-dev
dh_testdir -p$@
dh_testroot -p$@
dh_clean -p$@ -k
# install the method
mkdir -p debian/$@/usr/lib/apt/methods
- mv $(BLD)/bin/methods/https debian/$@/usr/lib/apt/methods
+ cp $(BLD)/bin/methods/https debian/$@/usr/lib/apt/methods
- dh_installdocs -p$@
+ dh_installdocs -p$@ debian/apt-transport-https.README
dh_installexamples -p$@
# Install the man pages..