install_binary = install -m 755 -s
DISTRIBUTION := $(shell lsb_release -is)
+dtmp := debian/tmp
# At the current time (20080827) tinyos-tools will not build from a separate
configure-stamp: patch-stamp
$(checkdir)
- rm -rf configure-stamp builddir $(tempdir)
+ rm -rf configure-stamp $(dtmp)/builddir $(tempdir)
+ $(install_dir) $(dtmp)
cp -a . $(tempdir)
- rm -rf $(tempdir)/debian
- mv -f $(tempdir) builddir
- cd builddir/tools && ./Bootstrap && ./configure --prefix=/usr
+ mv $(tempdir) $(dtmp)/builddir
+ rm -rf $(dtmp)/builddir/debian
+ cd $(dtmp)/builddir/tools && ./Bootstrap && ./configure --prefix=/usr
touch $@
build: build-stamp
build-stamp: configure-stamp
$(checkdir)
- $(MAKE) -C builddir/tools
+ $(MAKE) -C $(dtmp)/builddir/tools
touch $@
install: install-stamp
install-stamp: checkroot build-stamp
$(checkdir)
- rm -rf debian/$(toolspkg)
- $(install_dir) debian/$(toolspkg)
- $(MAKE) -C builddir/tools prefix=$$(pwd)/debian/$(toolspkg)/usr \
- mandir=$$(pwd)/debian/$(toolspkg)/usr/share/man install
+ rm -rf $(dtmp)/$(toolspkg)
+ $(install_dir) $(dtmp)/$(toolspkg)
+ $(MAKE) -C $(dtmp)/builddir/tools \
+ prefix=$$(pwd)/$(dtmp)/$(toolspkg)/usr \
+ mandir=$$(pwd)/$(dtmp)/$(toolspkg)/usr/share/man install
touch $@
binary-arch: checkroot build install
$(checkdir)
: # install maintainer scripts
- $(install_dir) debian/$(toolspkg)/DEBIAN
+ $(install_dir) $(dtmp)/$(toolspkg)/DEBIAN
: # install docs
- $(install_dir) debian/$(toolspkg)/usr/share/doc/$(toolspkg)/
+ $(install_dir) $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
$(install_file) debian/changelog \
- debian/$(toolspkg)/usr/share/doc/$(toolspkg)/changelog.Debian
+ $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/changelog.Debian
$(install_file) debian/copyright \
- debian/$(toolspkg)/usr/share/doc/$(toolspkg)/
+ $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
$(install_file) tools/README debian/README.Debian \
- debian/$(toolspkg)/usr/share/doc/$(toolspkg)/
+ $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
: # Remove unnecessary files installed
: # Create links
: # Compress stuff that needs it
- gzip -9 debian/$(toolspkg)/usr/share/man/man1/*
- find debian/$(toolspkg)/usr/share/doc/$(toolspkg) -type f \
+ gzip -9 $(dtmp)/$(toolspkg)/usr/share/man/man1/*
+ find $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg) -type f \
! -name copyright | xargs gzip -9
+ : # Set overrides
+ $(install_dir) $(dtmp)/$(toolspkg)/usr/share/lintian/overrides
+ $(install_file) debian/$(toolspkg).lintian-overrides \
+ $(dtmp)/$(toolspkg)/usr/share/lintian/overrides/$(toolspkg)
: # Finish it all up
- find debian/$(toolspkg) -type f | xargs file | grep ELF | \
+ find $(dtmp)/$(toolspkg) -type f | xargs file | grep ELF | \
cut -d: -f 1 | xargs dpkg-shlibdeps
- dpkg-gencontrol -isp -Pdebian/$(toolspkg) -p$(toolspkg)
- chown -R root:root debian/$(toolspkg)
- chmod -R go=rX debian/$(toolspkg)
- dpkg --build debian/$(toolspkg) ..
+ dpkg-gencontrol -isp -P$(dtmp)/$(toolspkg) -p$(toolspkg)
+ chown -R root:root $(dtmp)/$(toolspkg)
+ chmod -R go=rX $(dtmp)/$(toolspkg)
+ dpkg --build $(dtmp)/$(toolspkg) ..
: # Build the tinyos-source package
- rm -rf debian/$(srcpkg)
- $(install_dir) debian/$(srcpkg)/DEBIAN
- $(install_dir) debian/$(srcpkg)/opt/tinyos
+ rm -rf $(dtmp)/$(srcpkg)
+ $(install_dir) $(dtmp)/$(srcpkg)/DEBIAN
+ $(install_dir) $(dtmp)/$(srcpkg)/opt/tinyos
chmod u+x tools/release/extractor
- tools/release/extractor debian/$(srcpkg)/opt/tinyos/$(version) < \
+ tools/release/extractor $(dtmp)/$(srcpkg)/opt/tinyos/$(version) < \
tools/release/tinyos.files >/dev/null
- dpkg-gencontrol -isp -Pdebian/$(srcpkg) -p$(srcpkg)
- chown -R root:root debian/$(srcpkg)
- chmod -R go=rX debian/$(srcpkg)
- dpkg --build debian/$(srcpkg) ..
+ $(install_dir) $(dtmp)/$(srcpkg)/usr/share/lintian/overrides
+ $(install_file) debian/$(srcpkg).lintian-overrides \
+ $(dtmp)/$(srcpkg)/usr/share/lintian/overrides/$(srcpkg)
+ $(install_dir) $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/
+ $(install_file) debian/copyright \
+ $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/
+ $(install_file) tools/README debian/README.Debian \
+ $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/
+ dpkg-gencontrol -isp -P$(dtmp)/$(srcpkg) -p$(srcpkg)
+ chown -R root:root $(dtmp)/$(srcpkg)
+ chmod -R go=rX $(dtmp)/$(srcpkg)
+ dpkg --build $(dtmp)/$(srcpkg) ..
: # Build the tinyos package too
- rm -rf debian/$(package)
- $(install_dir) debian/$(package)/DEBIAN
- $(install_dir) debian/$(package)/opt/tinyos
- $(install_file) tinyos.sh debian/$(package)/opt/tinyos
- dpkg-gencontrol -isp -Pdebian/$(package) -p$(package)
- chown -R root:root debian/$(package)
- chmod -R go=rX debian/$(package)
- dpkg --build debian/$(package) ..
+ rm -rf $(dtmp)/$(package)
+ $(install_dir) $(dtmp)/$(package)/DEBIAN
+ $(install_dir) $(dtmp)/$(package)/opt/tinyos
+ $(install_file) tinyos.sh $(dtmp)/$(package)/opt/tinyos
+ $(install_dir) $(dtmp)/$(package)/usr/share/lintian/overrides
+ $(install_file) debian/$(package).lintian-overrides \
+ $(dtmp)/$(package)/usr/share/lintian/overrides/$(package)
+ $(install_dir) $(dtmp)/$(package)/usr/share/doc/$(package)/
+ $(install_file) debian/copyright \
+ $(dtmp)/$(package)/usr/share/doc/$(package)/
+ $(install_file) tools/README debian/README.Debian \
+ $(dtmp)/$(package)/usr/share/doc/$(package)/
+ dpkg-gencontrol -isp -P$(dtmp)/$(package) -p$(package)
+ chown -R root:root $(dtmp)/$(package)
+ chmod -R go=rX $(dtmp)/$(package)
+ dpkg --build $(dtmp)/$(package) ..
: # Build tinyos-msp430 dummy package
- rm -rf debian/tmp
- $(install_dir) debian/tmp/DEBIAN
- dpkg-gencontrol -isp -Pdebian/tmp -p$(msppkg)
- chown -R root:root debian/tmp
- chmod -R go=rX debian/tmp
- dpkg --build debian/tmp ..
+ rm -rf $(dtmp)/$(msppkg)
+ $(install_dir) $(dtmp)/$(msppkg)/DEBIAN
+ $(install_dir) $(dtmp)/$(msppkg)/usr/share/doc/$(msppkg)/
+ $(install_file) debian/copyright \
+ $(dtmp)/$(msppkg)/usr/share/doc/$(msppkg)/
+ $(install_file) tools/README debian/README.Debian \
+ $(dtmp)/$(msppkg)/usr/share/doc/$(msppkg)/
+ dpkg-gencontrol -isp -P$(dtmp)/$(msppkg) -p$(msppkg)
+ chown -R root:root $(dtmp)/$(msppkg)
+ chmod -R go=rX $(dtmp)/$(msppkg)
+ dpkg --build $(dtmp)/$(msppkg) ..
: # Build tinyos-avr dummy package
- rm -rf debian/tmp
- $(install_dir) debian/tmp/DEBIAN
- dpkg-gencontrol -isp -Pdebian/tmp -p$(avrpkg)
- chown -R root:root debian/tmp
- chmod -R go=rX debian/tmp
- dpkg --build debian/tmp ..
+ rm -rf $(dtmp)/$(avrpkg)
+ $(install_dir) $(dtmp)/$(avrpkg)/DEBIAN
+ $(install_dir) $(dtmp)/$(avrpkg)/usr/share/doc/$(avrpkg)/
+ $(install_file) debian/copyright \
+ $(dtmp)/$(avrpkg)/usr/share/doc/$(avrpkg)/
+ $(install_file) tools/README debian/README.Debian \
+ $(dtmp)/$(avrpkg)/usr/share/doc/$(avrpkg)/
+ dpkg-gencontrol -isp -P$(dtmp)/$(avrpkg) -p$(avrpkg)
+ chown -R root:root $(dtmp)/$(avrpkg)
+ chmod -R go=rX $(dtmp)/$(avrpkg)
+ dpkg --build $(dtmp)/$(avrpkg) ..
binary: binary-indep binary-arch
clean: unpatch
$(checkdir)
- -rm -rf debian/tmp debian/$(package) debian/$(toolspkg) debian/$(srcpkg) builddir
+ -rm -rf $(dtmp)
-rm -fr debian/patched debian/files* debian/substvars
-rm -f *-stamp