From: R. Steve McKown Date: Wed, 26 May 2010 19:31:47 +0000 (-0600) Subject: Merge branch 'master' into debian/2.1.1 X-Git-Tag: debian/2.1.1-4.3-1tmi~1 X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=commitdiff_plain;h=c562460e49244c27e0821ff67935c8d032862c21;hp=43e3f894d0945fa3f3fc5bb4437723c6d773d58d;p=tinyos-2.x.git Merge branch 'master' into debian/2.1.1 --- diff --git a/.gbp.conf b/.gbp.conf new file mode 100644 index 00000000..1a572bfc --- /dev/null +++ b/.gbp.conf @@ -0,0 +1,41 @@ +# Configuration file for git-buildpackage and friends + +[DEFAULT] +#builder = debuild -d -us -uc -i\.git/ -I.git +builder = pdebuild --debbuildopts '-d -i\.git/ -I.git' + +cleaner = fakeroot debian/rules clean +upstream-branch = release/2.1.1-4.3rc +debian-branch = debian/2.1.1 + +# the default tag formats used: +#upstream-tag = upstream/%(version)s +#debian-tag = debian/%(version)s + +# Options only affecting git-buildpackage +[git-buildpackage] +#upstream-branch = dfsgclean +# uncomment this to automatically GPG sign tags +#sign-tags = True +# keyid to GPG sign tags with +#keyid = 0xdeadbeef +# push to a remote repository after a successful tag: +#posttag = git-push git.example.com +# use this for more svn-buildpackage like bahaviour: +#export-dir = ../build-area/ +#tarball-dir = ../tarballs/ + +# Options only affecting git-import-orig +[git-import-orig] +#upstream-branch = newupstream +#debian-branch = dfsgclean + +# Options only affecting git-import-dsc +[git-import-dsc] +#upstream-branch = svn-upstream + +# Options only affecting git-dch +[git-dch] +#git-log = --no-merges +#snapshot-number = snapshot + 1 + diff --git a/.gitignore b/.gitignore index 93b03677..3587edeb 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ support/sdk/java/net/tinyos/message/SerialPacket.java support/sdk/java/net/tinyos/packet/Serial.java support/sdk/java/net/tinyos/tools/PrintfMsg.java +/debian/control diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 00000000..a545745d --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,3 @@ +This package creates Ubuntu source and binary debian packages for the +tinyos, tinyos-tools and tinyos-source packages, which comprise the TinyOS +distribution. diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 00000000..4a0e19b5 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,39 @@ +tinyos (2.1.1-4.3-0tmi) hardy; urgency=low + + * Merge TinyOS 2.1.1. + * Fix telosa and telosb BSL options. + + -- TMI Packages Fri, 07 May 2010 15:17:54 -0600 + +tinyos (2.1.0-4.2-1tmi) hardy; urgency=low + + * Update tinyos.sh to fix improper recording of current TOSROOT. + + -- TMI Packages Thu, 06 May 2010 09:13:41 -0600 + +tinyos (2.1.0-4.1-1tmi) hardy; urgency=low + + * Update tinyos.sh, postinstall exec of tos-install-jni, ensure tinyos.jar + is up to date. + + -- TMI Packages Fri, 23 Apr 2010 14:03:28 -0600 + +tinyos (2.1.0-4-2tmi) hardy; urgency=low + + * Update 2.1.0-4 to include new copyright terms granted by Sporian + Microsystems, Inc. + + -- TMI Packages Thu, 22 Apr 2010 16:47:13 -0600 + +tinyos (2.1.0-4-1tmi) hardy; urgency=low + + * Package TMI release 2.1.0-4, based on official tinyOS release 2.1.0. + + -- TMI Packages Thu, 22 Apr 2010 15:52:49 -0600 + +tinyos (2.1.0-3-2tmi) hardy; urgency=low + + * Package TMI release 2.1.0-3, based on official tinyOS release 2.1.0. + * Package is now signed. + + -- TMI Packages Tue, 08 Dec 2009 14:57:46 -0700 diff --git a/debian/control.in b/debian/control.in new file mode 100644 index 00000000..caeb69db --- /dev/null +++ b/debian/control.in @@ -0,0 +1,71 @@ +Source: tinyos +Section: devel +Priority: optional +Maintainer: TMI Packages +Standards-Version: 3.7.2.0 +Build-Depends: dpkg-dev (>= 1.13.9), autoconf (>= 2.13), automake, bison, flex, + gettext, texinfo, binutils (>= 2.9.5.0.12), gcc (>= 4:4.2.2), + dejagnu (>= 1.4.2-1.1), dpatch, file, bzip2, lsb-release, nesc (>= 1.3.0), + libc6-dev-i386 [amd64], gcc-multilib [amd64], g++-multilib [amd64] + +Package: tinyos +Architecture: all +Depends: tinyos-tools (>= 1.3.0), deputy-tinyos (>= 1.1), tinyos-source, + tinyos-toolchain +Conflicts: +Priority: extra +Description: Main TinyOS package + To install TinyOS, install this package. To remove TinyOS, remove this + package. + +Package: tinyos-tools +Architecture: any +Depends: python, python-serial, nesc (>= 1.3.0), ${shlibs:Depends} +Conflicts: +Priority: extra +Description: Development support tools for TinyOS + Includes various support tools, including uisp, motelist, pybsl, mig, ncc and + nesdoc. The source for these tools is found in the TinyOS CVS repository + under tinyos-2.x/tools. + +Package: tinyos-source +Architecture: all +Depends: tinyos-source-RELEASE-VERSION +Conflicts: +Priority: extra +Description: TinyOS source meta package + This package installs the latest tinyos source tree package, + tinyos-source-RELEASE-VERSION, when you install or upgrade the tinyos package. + Command line users may need to issue 'apt-get dist-upgrade' if you see the + message that tinyos-source is being held back. + +Package: tinyos-source-RELEASE-VERSION +Architecture: all +Provides: tinyos-source +Depends: tinyos +Conflicts: +Priority: extra +Description: TinyOS source code tree + Provides the official TinyOS TOS-VERSION release source tree with TMI version + TMI-VERSION enhancements. + +Package: tinyos-avr +Architecture: all +Depends: avr-tinyos-base, avr-binutils-tinyos, avr-gcc-tinyos, avr-libc-tinyos, + avrdude-tinyos +Provides: tinyos-toolchain +Conflicts: +Priority: extra +Description: TinyOS avr toolchain + This dummy package allows for easy installation of the avr toolchain + for building TinyOS applications for avr microprocessor based systems. + +Package: tinyos-msp430 +Architecture: all +Depends: msp430-binutils, msp430-gcc, msp430-libc +Provides: tinyos-toolchain +Conflicts: +Priority: extra +Description: TinyOS msp430 toolchain + This dummy package allows for easy installation of the msp430 toolchain + for building TinyOS applications for msp430 microprocessor based systems. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000..b13e343f --- /dev/null +++ b/debian/copyright @@ -0,0 +1,31 @@ +TinyOS is copyright by various contributors over time. Please see the +copyright notices in each directory and/or file for more information. TinyOS +community software is usually released under the TinyOS license, which is +provided for convenience below. + +--- + +Copyright (c) . All rights reserved. + +Permission to use, copy, modify, and distribute this software and +its documentation for any purpose, without fee, and without written +agreement is hereby granted, provided that the above copyright +notice, the following two paragraphs and the author appear in all +copies of this software. + +IN NO EVENT SHALL STANFORD UNIVERSITY BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + + SPECIFICALLY DISCLAIMS ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE +PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND +HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, +ENHANCEMENTS, OR MODIFICATIONS." + +--- + +Portions Copyright (c) 2008-2010 Titanium Mirror, Inc. All rights reserved. diff --git a/debian/gbp.conf.template b/debian/gbp.conf.template new file mode 100644 index 00000000..b3fd1ddf --- /dev/null +++ b/debian/gbp.conf.template @@ -0,0 +1,44 @@ +# Configuration file for git-buildpackage and friends +# +# Copy this to .gbp.conf in the git repo top directory after merging and +# edit as needed. + +[DEFAULT] +#builder = debuild -d -us -uc -i\.git/ -I.git +builder = pdebuild --debbuildopts '-d -i\.git/ -I.git' + +cleaner = fakeroot debian/rules clean +upstream-branch = release/2.1.1-4.3rc +debian-branch = debian/2.1.1 + +# the default tag formats used: +#upstream-tag = upstream/%(version)s +#debian-tag = debian/%(version)s + +# Options only affecting git-buildpackage +[git-buildpackage] +#upstream-branch = dfsgclean +# uncomment this to automatically GPG sign tags +#sign-tags = True +# keyid to GPG sign tags with +#keyid = 0xdeadbeef +# push to a remote repository after a successful tag: +#posttag = git-push git.example.com +# use this for more svn-buildpackage like bahaviour: +#export-dir = ../build-area/ +#tarball-dir = ../tarballs/ + +# Options only affecting git-import-orig +[git-import-orig] +#upstream-branch = newupstream +#debian-branch = dfsgclean + +# Options only affecting git-import-dsc +[git-import-dsc] +#upstream-branch = svn-upstream + +# Options only affecting git-dch +[git-dch] +#git-log = --no-merges +#snapshot-number = snapshot + 1 + diff --git a/debian/rules b/debian/rules new file mode 100755 index 00000000..5be67415 --- /dev/null +++ b/debian/rules @@ -0,0 +1,228 @@ +#!/usr/bin/make -f +# debian/rules file - for tinyos-tools +# Based on sample debian/rules file - for GNU Hello (1.3). +# Copyright 1994,1995 by Ian Jackson. +# Copyright 1998-2007 James Troup +# I hereby give you perpetual unlimited permission to copy, +# modify and relicense this file, provided that you do not remove +# my name from the file itself. (I assert my moral right of +# paternity under the Copyright, Designs and Patents Act 1988.) +# This file may have to be extensively modified + +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 +srcmetapkg = $(package)-source +srcpkg = $(srcmetapkg)-$(version) +msppkg = tinyos-msp430 +avrpkg = tinyos-avr + +STRIP = strip --strip-unneeded --remove-section=.comment --remove-section=.note + +install_dir = install -d -m 755 +install_file = install -m 644 +install_script = install -m 755 +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 +# build directory. +# +# For now, the solution is quite hackish: copy the source directory to the +# build directory before running configure. +tempdir := $(shell tempfile $(PACKAGE)) + +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) + cp -a . $(tempdir) + 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 $(dtmp)/builddir/tools + touch $@ + + +install: install-stamp +install-stamp: checkroot build-stamp + $(checkdir) + 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 + : # Build tinyos.jar here; gain access to uninstalled tinyos tools. + PATH=$$(pwd)/$(dtmp)/$(toolspkg)/usr/bin:$$PATH \ + TOSROOT=$$(pwd)/$(dtmp)/builddir \ + TOSDIR=$$(pwd)/$(dtmp)/builddir/tos \ + CLASSPATH=$$(pwd)/$(dtmp)/builddir/support/sdk/java:. \ + $(MAKE) -C $(dtmp)/builddir/support/sdk/java tinyos.jar + $(MAKE) -C $(dtmp)/builddir/support/sdk/java clean + touch $@ + + +binary-indep: checkroot build install + : # Nothing to do + + +binary-arch: checkroot build install + $(checkdir) + + : # 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_script) debian/$(toolspkg).postinst \ + $(dtmp)/$(toolspkg)/DEBIAN/postinst + : # $(install_script) debian/$(toolspkg).postrm \ + : # $(dtmp)/$(toolspkg)/DEBIAN/postrm + $(install_dir) $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/ + $(install_file) debian/changelog \ + $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/changelog.Debian + $(install_file) debian/copyright \ + $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/ + $(install_file) tools/README debian/README.Debian \ + $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg)/ + gzip -9 $(dtmp)/$(toolspkg)/usr/share/man/man1/* + find $(dtmp)/$(toolspkg)/usr/share/doc/$(toolspkg) -type f \ + ! -name copyright | xargs gzip -9 + $(install_dir) $(dtmp)/$(toolspkg)/usr/share/lintian/overrides + $(install_file) debian/$(toolspkg).lintian-overrides \ + $(dtmp)/$(toolspkg)/usr/share/lintian/overrides/$(toolspkg) + find $(dtmp)/$(toolspkg) -type f | xargs file | grep ELF | \ + cut -d: -f 1 | xargs dpkg-shlibdeps + 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 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 + cd tools/release && bash tinyos.files tinyos $(version) \ + $(dtmp)/$(srcpkg)/opt/tinyos/tinyos-$(version).tar.gz + tar -C $(dtmp)/$(srcpkg)/opt/tinyos \ + -xzf $(dtmp)/$(srcpkg)/opt/tinyos/tinyos-$(version).tar.gz + rm -f $(dtmp)/$(srcpkg)/opt/tinyos/tinyos-$(version).tar.gz + mv $(dtmp)/$(srcpkg)/opt/tinyos/tinyos-$(version) \ + $(dtmp)/$(srcpkg)/opt/tinyos/$(version) + $(install_dir) $(dtmp)/$(srcpkg)/usr/share/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 \ + $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/changelog.Debian + $(install_file) debian/copyright \ + $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/ + $(install_file) tools/README debian/README.Debian \ + $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg)/ + find $(dtmp)/$(srcpkg)/usr/share/doc/$(srcpkg) -type f \ + ! -name copyright | xargs gzip -9 + 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 tinyos-msp430 dummy package + rm -rf $(dtmp)/$(msppkg) + $(install_dir) $(dtmp)/$(msppkg)/DEBIAN + $(install_dir) $(dtmp)/$(msppkg)/usr/share/lintian/overrides + $(install_file) debian/$(msppkg).lintian-overrides \ + $(dtmp)/$(msppkg)/usr/share/lintian/overrides/$(msppkg) + $(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 $(dtmp)/$(avrpkg) + $(install_dir) $(dtmp)/$(avrpkg)/DEBIAN + $(install_dir) $(dtmp)/$(avrpkg)/usr/share/lintian/overrides + $(install_file) debian/$(avrpkg).lintian-overrides \ + $(dtmp)/$(avrpkg)/usr/share/lintian/overrides/$(avrpkg) + $(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: debian/control + $(checkdir) + -rm -rf $(dtmp) + -rm -fr debian/files* debian/substvars + -rm -f *-stamp + + +define checkdir + test -d tos/chips -a -f debian/rules +endef + + +checkroot: + $(checkdir) + test root = "`whoami`" + + +.PHONY: binary clean checkroot diff --git a/debian/tinyos-avr.lintian-overrides b/debian/tinyos-avr.lintian-overrides new file mode 100644 index 00000000..3860db08 --- /dev/null +++ b/debian/tinyos-avr.lintian-overrides @@ -0,0 +1 @@ +debian-changelog-file-missing diff --git a/debian/tinyos-msp430.lintian-overrides b/debian/tinyos-msp430.lintian-overrides new file mode 100644 index 00000000..3860db08 --- /dev/null +++ b/debian/tinyos-msp430.lintian-overrides @@ -0,0 +1 @@ +debian-changelog-file-missing diff --git a/debian/tinyos-source.lintian-overrides b/debian/tinyos-source.lintian-overrides new file mode 100644 index 00000000..3f9e5a38 --- /dev/null +++ b/debian/tinyos-source.lintian-overrides @@ -0,0 +1,2 @@ +dir-or-file-in-opt +debian-changelog-file-missing diff --git a/debian/tinyos-tools.lintian-overrides b/debian/tinyos-tools.lintian-overrides new file mode 100644 index 00000000..a591cca4 --- /dev/null +++ b/debian/tinyos-tools.lintian-overrides @@ -0,0 +1,3 @@ +dir-or-file-in-opt +manpage-has-errors-from-man +unstripped-binary-or-object diff --git a/debian/tinyos-tools.postinst b/debian/tinyos-tools.postinst new file mode 100644 index 00000000..6c78b024 --- /dev/null +++ b/debian/tinyos-tools.postinst @@ -0,0 +1,7 @@ +#! /bin/sh + +set -e + +if [ "$1" = "configure" ]; then + sudo tos-install-jni +fi diff --git a/debian/tinyos.lintian-overrides b/debian/tinyos.lintian-overrides new file mode 100644 index 00000000..9cf7fdeb --- /dev/null +++ b/debian/tinyos.lintian-overrides @@ -0,0 +1,3 @@ +debian-changelog-file-missing +dir-or-file-in-opt +script-not-executable ./opt/tinyos/tinyos.sh