diff options
-rwxr-xr-x | debian/rules | 238 |
1 files changed, 59 insertions, 179 deletions
diff --git a/debian/rules b/debian/rules index a841536..b812bc2 100755 --- a/debian/rules +++ b/debian/rules @@ -1,193 +1,73 @@ #!/usr/bin/make -f -# This is a bit unusual, in that I have to completely recompile everything -# for each package I build (obviously static and dynamic builds require -# things to be recompiled...) +export DH_VERBOSE=1 +export DH_COMPAT=3 -# This is the debhelper compatability version to use. -#export DH_COMPAT=1 +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CFLAGS += -g +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif -bbbd=debian/busybox_builddir -bb=debian/tmp -bbsbd=debian/busybox_static_builddir -bbs=debian/busybox-static -bbubd=debian/busybox_udeb_builddir -bbu=debian/busybox-udeb - -clean: - dh_testdir - dh_testroot - rm -f debian/build-stamp-busybox debian/build-stamp-busybox-static debian/build-stamp-busybox-udeb - -$(MAKE) clean - -rm -rf $(bb) $(bbbd) $(bbs) $(bbsbd) $(bbubd) $(bbu) - dh_clean - -build: debian/build-stamp-busybox -debian/build-stamp-busybox: - dh_testdir - mkdir -p $(bbbd) - cp Makefile $(bbbd) - cp debian/Config.h-deb $(bbbd)/Config.h - -(cd $(bbbd); $(MAKE) "CONFIG_SRC_DIR=../../" applet_source_list) - (cd $(bbbd); $(MAKE) USE_SYSTEM_PWD_GRP=false "CONFIG_SRC_DIR=../../") - touch debian/build-stamp-busybox - -install: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - # Do not run 'make install', since we do not want all the symlinks. - # This just installes the busybox binary... - #(cd $(bbbd); $(MAKE) "CONFIG_SRC_DIR=../../" "PREFIX=../../$(bb)" install) - mkdir -p $(bb)/bin/ - cp $(bbbd)/busybox $(bb)/bin/busybox - mkdir -p $(bb)/usr/share/doc/busybox/busybox.net - cp $(bbbd)/docs/busybox.net/BusyBox.html $(bb)/usr/share/doc/busybox/busybox.net/ - mkdir -p $(bb)/usr/share/man/man1 - cp $(bbbd)/docs/BusyBox.1 $(bb)/usr/share/man/man1/busybox.1 - -# Now for the statically linked stuff -build-static: debian/build-stamp-busybox-static -debian/build-stamp-busybox-static: - dh_testdir - mkdir -p $(bbsbd) - cp Makefile $(bbsbd) - cp debian/Config.h-static $(bbsbd)/Config.h - (cd $(bbsbd); $(MAKE) DOSTATIC=true USE_SYSTEM_PWD_GRP=false "CONFIG_SRC_DIR=../../") - touch debian/build-stamp-busybox-static - -install-static: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - # Do not run 'make install', since we do not want all the symlinks. - # This just installes the busybox binary... - #(cd $(bbsbd); $(MAKE) "CONFIG_SRC_DIR=../../" "PREFIX=../../$(bbs)" install) - mkdir -p $(bbs)/bin/ - cp $(bbsbd)/busybox $(bbs)/bin/busybox - mkdir -p $(bbs)/usr/share/doc/busybox-static/busybox.net - cp $(bbsbd)/docs/busybox.net/BusyBox.html $(bbs)/usr/share/doc/busybox-static/busybox.net/ - mkdir -p $(bbs)/usr/share/man/man1/ - cp $(bbsbd)/docs/BusyBox.1 $(bbs)/usr/share/man/man1/busybox.1 - -half_clean: - dh_testdir - dh_testroot - rm -rf $(bbs) debian/build-stamp-busybox-static - -$(MAKE) clean - -do_static: half_clean build-static install-static - - - -# Now for the .udeb stuff -PACKAGE=busybox-udeb -VERSION=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2 | sed -e s/[0-9]://g) -ARCH=$(shell dpkg --print-architecture) -FILENAME=$(PACKAGE)_$(VERSION)_$(ARCH).udeb - -build-udeb: debian/build-stamp-busybox-udeb -debian/build-stamp-busybox-udeb: - dh_testdir - mkdir -p $(bbubd) - cp Makefile $(bbubd) - cp debian/Config.h-udeb $(bbubd)/Config.h - (cd $(bbubd); $(MAKE) USE_SYSTEM_PWD_GRP=false "CONFIG_SRC_DIR=../../") - touch debian/build-stamp-busybox-udeb - -install-udeb: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - (cd $(bbubd); $(MAKE) "CONFIG_SRC_DIR=../../" "PREFIX=../../$(bbu)" install) - mkdir -p $(bbu)/usr/share/man/man1/ - cp $(bbubd)/docs/BusyBox.1 $(bbu)/usr/share/man/man1/busybox.1 - -three_quarter_clean: - dh_testdir - dh_testroot - rm -rf $(bbu) debian/build-stamp-busybox-udeb - -$(MAKE) clean - -do_udeb: three_quarter_clean build-udeb install-udeb - - - -# Build architecture-independent files here. binary-indep: -# We have nothing to do by default. - -# Build architecture-dependent files here. -binary-arch: busybox busybox-static busybox-udeb -busybox: install - @echo "--- Building: $@" +busybox-deb: dh_testdir dh_testroot - dh_installdirs - dh_installdocs -p$@ $(bbbd)/docs/BusyBox.txt \ - $(bbbd)/docs/BusyBox.html docs/style-guide.txt \ - docs/busybox.net AUTHORS README TODO - rm -rf `find $(bb) -name CVS` - rm -f `find $(bb) -name .cvsignore` - dh_installchangelogs -p$@ Changelog - dh_undocumented -p$@ - dh_strip -p$@ - dh_compress -p$@ - dh_fixperms -p$@ - dh_installdeb -p$@ - dh_shlibdeps -p$@ - dh_gencontrol -p$@ - dh_md5sums -p$@ - dh_builddeb -p$@ - - -busybox-static: do_static - @echo "--- Building: $@" + $(MAKE) clean + cp ./debian/config-deb .config + $(MAKE) dep + $(MAKE) + install -D busybox ./debian/busybox/bin/busybox + dh_installchangelogs Changelog -pbusybox + dh_strip -pbusybox + dh_compress -pbusybox + dh_fixperms -pbusybox + dh_installdeb -pbusybox + dh_shlibdeps -pbusybox + dh_gencontrol -pbusybox + dh_md5sums -pbusybox + dh_builddeb -pbusybox + +busybox-udeb: dh_testdir dh_testroot - dh_installdirs - dh_installdocs -p$@ $(bbsbd)/docs/BusyBox.txt \ - $(bbsbd)/docs/BusyBox.html docs/style-guide.txt \ - docs/busybox.net AUTHORS README TODO - rm -rf `find $(bbs) -name CVS` - rm -f `find $(bbs) -name .cvsignore` - dh_installchangelogs -p$@ Changelog - dh_undocumented -p$@ - dh_strip -p$@ - dh_compress -p$@ - dh_fixperms -p$@ - dh_installdeb -p$@ - dh_shlibdeps -p$@ - dh_gencontrol -p$@ - dh_md5sums -p$@ - dh_builddeb -p$@ - - -# Note that this builds a .udeb, which is not policy compliant or anything. -# -busybox-udeb: do_udeb - @echo "--- Building: $@" + $(MAKE) clean + cp ./debian/config-udeb .config + $(MAKE) dep + $(MAKE) + install -D busybox ./debian/busybox-udeb/bin/busybox + dh_installchangelogs Changelog -pbusybox-udeb + dh_strip -pbusybox-udeb + dh_compress -pbusybox-udeb + dh_fixperms -pbusybox-udeb + dh_installdeb -pbusybox-udeb + dh_shlibdeps -pbusybox-udeb + dh_gencontrol -pbusybox-udeb + dh_md5sums -pbusybox-udeb + dh_builddeb -pbusybox-udeb + + +busybox-static: dh_testdir dh_testroot - dh_installdirs - dh_strip -p$@ - dh_compress -p$@ - dh_fixperms -p$@ - dh_installdeb -p$@ - dh_shlibdeps -p$@ - #Make _very_ sure there are no docs lurking about. - rm -rf $(bbu)/usr/share/man - #dh_gencontrol -p$@ - # Don't write your stupid guesses to debian/files. - dh_gencontrol -p$@ -- -fdebian/files~ - # Register file manually. - dpkg-distaddfile $(FILENAME) debian-installer standard - dh_md5sums -p$@ - dh_builddeb -p$@ --filename=$(FILENAME) + $(MAKE) clean + cp ./debian/config-static .config + $(MAKE) dep + $(MAKE) + install -D busybox ./debian/busybox-static/bin/busybox + dh_installchangelogs Changelog -pbusybox-static + dh_strip -pbusybox-static + dh_compress -pbusybox-static + dh_fixperms -pbusybox-static + dh_installdeb -pbusybox-static + dh_shlibdeps -pbusybox-static + dh_gencontrol -pbusybox-static + dh_md5sums -pbusybox-static + dh_builddeb -pbusybox-static + +binary-arch: busybox-deb busybox-udeb busybox-static binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install +.PHONY: build clean binary-indep binary-arch binary install configure |