# paternity under the Copyright, Designs and Patents Act 1988.)
# This file may have to be extensively modified
-include /usr/share/dpatch/dpatch.make
+version := $(shell head -1 debian/changelog | sed -e s'|^.*(\(.*\)-.*).*$$|\1|')
+tosver := $(shell echo $(version) | sed -e s'|-.*||')
+tmiver := $(shell echo $(version) | sed -e s'|^.*-||')
package = tinyos
toolspkg = $(package)-tools
-srcpkg = $(package)-source
+srcmetapkg = $(package)-source
+srcpkg = $(srcmetapkg)-$(version)
msppkg = tinyos-msp430
avrpkg = tinyos-avr
# For now, the solution is quite hackish: copy the source directory to the
# build directory before running configure.
tempdir := $(shell tempfile $(PACKAGE))
-version := $(shell head -1 debian/changelog | sed -e s'|^.*(\(.*\)-.*).*$$|\1|')
-configure-stamp: patch-stamp
+debian/control: debian/control.in debian/changelog
+ sed -e 's/RELEASE-VERSION/$(version)/g' < $< | \
+ sed -e 's/TOS-VERSION/$(tosver)/g' | \
+ sed -e 's/TMI-VERSION/$(tmiver)/g' > debian/control
+
+configure-stamp:
$(checkdir)
rm -rf configure-stamp $(dtmp)/builddir $(tempdir)
$(install_dir) $(dtmp)
binary-arch: checkroot build install
$(checkdir)
- : # install maintainer scripts
+
+ : # Build the tinyos package too
+ 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 the tinyos-tools package
$(install_dir) $(dtmp)/$(toolspkg)/DEBIAN
- : # install docs
$(install_dir) $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
$(install_file) debian/changelog \
$(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/changelog.Debian
$(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
$(install_file) tools/README debian/README.Debian \
$(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/
- : # Remove unnecessary files installed
- : # Create links
- : # Compress stuff that needs it
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 $(dtmp)/$(toolspkg) -type f | xargs file | grep ELF | \
cut -d: -f 1 | xargs dpkg-shlibdeps
dpkg-gencontrol -isp -P$(dtmp)/$(toolspkg) -p$(toolspkg)
chmod -R go=rX $(dtmp)/$(toolspkg)
dpkg --build $(dtmp)/$(toolspkg) ..
- : # Build the tinyos-source package
+ : # Build the tinyos-source meta package
+ rm -rf $(dtmp)/$(srcmetapkg)
+ $(install_dir) $(dtmp)/$(srcmetapkg)/DEBIAN
+ $(install_dir) $(dtmp)/$(srcmetapkg)/usr/share/lintian/overrides
+ $(install_file) debian/$(srcmetapkg).lintian-overrides \
+ $(dtmp)/$(srcmetapkg)/usr/share/lintian/overrides/$(srcmetapkg)
+ $(install_dir) $(dtmp)/$(srcmetapkg)/usr/share/doc/$(srcmetapkg)/
+ $(install_file) debian/copyright \
+ $(dtmp)/$(srcmetapkg)/usr/share/doc/$(srcmetapkg)/
+ dpkg-gencontrol -isp -P$(dtmp)/$(srcmetapkg) -p$(srcmetapkg)
+ chown -R root:root $(dtmp)/$(srcmetapkg)
+ chmod -R go=rX $(dtmp)/$(srcmetapkg)
+ dpkg --build $(dtmp)/$(srcmetapkg) ..
+
+ : # Build the tinyos-source-VERSION package
rm -rf $(dtmp)/$(srcpkg)
$(install_dir) $(dtmp)/$(srcpkg)/DEBIAN
$(install_dir) $(dtmp)/$(srcpkg)/opt/tinyos
chmod u+x tools/release/extractor
tools/release/extractor $(dtmp)/$(srcpkg)/opt/tinyos/$(version) < \
- tools/release/tinyos.files >/dev/null
+ tools/release/tinyos.filter >/dev/null
$(install_dir) $(dtmp)/$(srcpkg)/usr/share/lintian/overrides
- $(install_file) debian/$(srcpkg).lintian-overrides \
+ $(install_file) debian/$(srcmetapkg).lintian-overrides \
$(dtmp)/$(srcpkg)/usr/share/lintian/overrides/$(srcpkg)
$(install_dir) $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/
$(install_file) debian/changelog \
chmod -R go=rX $(dtmp)/$(srcpkg)
dpkg --build $(dtmp)/$(srcpkg) ..
- : # Build the tinyos package too
- 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 $(dtmp)/$(msppkg)
$(install_dir) $(dtmp)/$(msppkg)/DEBIAN
binary: binary-indep binary-arch
-clean: unpatch
+clean: debian/control
$(checkdir)
-rm -rf $(dtmp)
- -rm -fr debian/patched debian/files* debian/substvars
+ -rm -fr debian/files* debian/substvars
-rm -f *-stamp