1
0
mirror of git://projects.qi-hardware.com/fped.git synced 2024-09-30 15:09:47 +03:00

Switch debian/* from SVN to GIT, now build package base on git commit

This commit is contained in:
Xiangfu 2012-06-21 16:42:40 +08:00
parent 0562403f30
commit 45805bd7cd
8 changed files with 304 additions and 22 deletions

10
debian/autogen.sh vendored Executable file
View File

@ -0,0 +1,10 @@
#!/bin/sh
# Generate debian/changelog.upstream.
#
# Uses debian/changelog and the git revision log.
#
set -e
dpkg-parsechangelog --format rfc822 --all |
awk -f debian/changelog.upstream.awk

16
debian/changelog vendored
View File

@ -1,23 +1,38 @@
fped (0.0+201205-1) lucid; urgency=low
* New snapshot, taken from commit 59b90b3
* Switched to new project host: http://projects.qi-hardware.com/p/fped
* debian/rules:
- rewrite as a minimal rules file using dh
- add a get-orig-source target
* debian/autogen.sh: new script
-- Xiangfu Liu <xiangfu@sharism.cc> Thu, 21 Jun 2012 16:58:21 +0800
fped (0.0+r6006-1) lucid; urgency=low fped (0.0+r6006-1) lucid; urgency=low
* New snapshot, taken from commit 78e4ba0
* update to r6006 * update to r6006
-- Xiangfu Liu <xiangfu@sharism.cc> Fri, 25 Mar 2011 08:43:21 +0800 -- Xiangfu Liu <xiangfu@sharism.cc> Fri, 25 Mar 2011 08:43:21 +0800
fped (0.0+r6005-1) lucid; urgency=low fped (0.0+r6005-1) lucid; urgency=low
* New snapshot, taken from commit 335ddb6
* update to r6005 * update to r6005
-- Xiangfu Liu <xiangfu@sharism.cc> Wed, 23 Mar 2011 16:28:26 +0800 -- Xiangfu Liu <xiangfu@sharism.cc> Wed, 23 Mar 2011 16:28:26 +0800
fped (0.0+r5999-1) lucid; urgency=low fped (0.0+r5999-1) lucid; urgency=low
* New snapshot, taken from commit 1409cfa
* update to r5999 * update to r5999
-- Xiangfu Liu <xiangfu@sharism.cc> Tue, 22 Mar 2011 15:12:02 +0800 -- Xiangfu Liu <xiangfu@sharism.cc> Tue, 22 Mar 2011 15:12:02 +0800
fped (0.0+r5997-1) lucid; urgency=low fped (0.0+r5997-1) lucid; urgency=low
* New snapshot, taken from commit ceaa519
* Fix "FTBFS: tsort: cycle: ./Common: line 37: 2851 Aborted" * Fix "FTBFS: tsort: cycle: ./Common: line 37: 2851 Aborted"
This was a "false error" - the regression test is supposed to cause This was a "false error" - the regression test is supposed to cause
fped to abort, which it did, but the shell didn't print "Aborted" on fped to abort, which it did, but the shell didn't print "Aborted" on
@ -28,6 +43,7 @@ fped (0.0+r5997-1) lucid; urgency=low
fped (0.0+r5986-1) unstable; urgency=low fped (0.0+r5986-1) unstable; urgency=low
* New snapshot, taken from commit feae08f
* Initial release (Closes: #599090). * Initial release (Closes: #599090).
-- Xiangfu Liu <xiangfu@sharism.cc> Mon, 04 Oct 2010 23:27:52 +0800 -- Xiangfu Liu <xiangfu@sharism.cc> Mon, 04 Oct 2010 23:27:52 +0800

113
debian/changelog.upstream.awk vendored Normal file
View File

@ -0,0 +1,113 @@
#!/bin/awk -f
# Generate debian/changelog.upstream from debian/changelog and
# the git revision log. Inspired by Gerrit Papes
# debian/changelog.upstream.sh, from the git-core Debian package.
#
# Requires a working /dev/stderr.
#
# Usage:
# dpkg-parsechangelog --format rfc822 --all |
# awk -f debian/changelog.upstream.awk
# If argument matches /^Version: /, return remaining text.
# Result is nonempty if and only if argument matches.
function version_line(line) {
if (line ~ /^Version: /) {
sub(/^Version: /, "", line);
return line;
}
return "";
}
# If argument matches /^\*.* from commit /, return remaining text.
# Result is nonempty if and only if argument matches.
function commit_id_line(line) {
if (line ~ / from commit /) {
sub(/^.* from commit /, "", line);
sub(/[(][Cc]loses.*/, "", line);
sub(/[^0-9a-f]*$/, "", line);
return line;
}
return "";
}
# Read standard input, scanning for a changelog entry of the
# form “* New snapshot, taken from commit <blah>.”
# Result is <blah>.
# Result is empty and writes a message to standard error if no such entry is
# found before the next Version: line with a different upstream
# version (or EOF).
# Argument is the upstream version sought.
function read_commit_id(upstream, line,version,corresponding_upstream,commit) {
while (getline line) {
version = version_line(line);
corresponding_upstream = version;
sub(/-[^-]*$/, "", corresponding_upstream);
if (version != "" && corresponding_upstream != upstream)
break;
commit = commit_id_line(line);
if (commit != "")
return commit;
}
print "No commit id for " upstream >> "/dev/stderr";
return "";
}
BEGIN {
last = "none";
last_cid = "none";
cl = "debian/changelog.upstream";
}
# Add a list of all revisions up to last to debian/changelog.upstream
# and set last = new_cid.
# new is a user-readable name for the commit new_cide.
function add_version(new,new_cid, limiter,versionline,command,line) {
if (last == "none") {
printf "" > cl;
last = new;
last_cid = new_cid;
return 0;
}
if (new == "none") {
versionline = "Version " last;
limiter = "";
} else {
versionline = "Version " last "; changes since " new ":";
limiter = new_cid "..";
}
print versionline >> cl;
gsub(/./, "-", versionline);
print versionline >> cl;
print "" >> cl;
command = "git shortlog \"" limiter last_cid "\"";
while(command | getline line)
print line >> cl;
if (new != "none")
print "" >> cl;
last = new;
last_cid = new_cid;
}
{
version = version_line($0);
if (version != "") {
# strip Debian revision
upstream_version = version;
sub(/-[^-]*$/, "", upstream_version);
commit = read_commit_id(upstream_version);
if (commit == "")
exit 1;
add_version(upstream_version, commit);
}
}
END {
add_version("none", "none");
}

108
debian/clean.sh vendored Normal file
View File

@ -0,0 +1,108 @@
#!/bin/sh
# Clean up after a failed build.
#
# Requires access to .gitignore files excluding _all_ modified files.
#
# Requires a working /dev/fd (with more than just /dev/fd/0 and 1)
# or gawk.
set -e
splitgitignore='#!/usr/bin/awk
!/^#/ && !/^$/ {
glob = /[[*?]/;
directory = /\/$/;
sub(/\/$/, "");
anchored = /\//;
sub(/^\//, "");
output = "nonexistent/nonsense";
if (anchored) {
if (!directory && !glob)
output = "/dev/fd/1";
else if (directory && !glob)
output = "/dev/fd/3";
else if (!directory && glob)
output = "/dev/fd/4";
else if (directory && glob)
output = "/dev/fd/5";
} else {
if (!directory)
output = "/dev/fd/6";
else
output = "/dev/fd/7";
}
print >> output;
}
'
offlimits="-type d -name '.*' -prune -o -type d -name debian -prune"
remove_file_globs() {
while read glob
do
eval "rm -f $glob"
done
}
remove_directory_globs() {
while read glob
do
eval "rm -fr $glob"
done
}
remove_file_findpatterns() {
while read pat
do
find . $offlimits -o \
'(' -name "$pat" -execdir rm -f '{}' + ')'
done
}
remove_directory_findpatterns() {
while read pat
do
find . $offlimits -o \
'(' -type d -name "$pat" -execdir rm -fr '{}' + ')'
done
}
find . $offlimits -o '(' -name .gitignore -print ')' |
while read file
do
(
cd "$(dirname "$file")"
# Dispatch using pipes. Yuck.
{ { { { {
awk "$splitgitignore" |
{
# anchored files (globless)
xargs -d '\n' rm -f
}
} 3>&1 >&2 |
{
# anchored directories (globless)
xargs -d '\n' rm -fr
}
} 4>&1 >&2 |
{
# anchored files
remove_file_globs
}
} 5>&1 >&2 |
{
# anchored directories
remove_directory_globs
}
} 6>&1 >&2 |
{
# unanchored files
remove_file_findpatterns
}
} 7>&1 >&2 |
{
remove_directory_findpatterns
} >&2
) < "$file"
done

2
debian/control vendored
View File

@ -6,7 +6,7 @@ Build-Depends: debhelper (>= 7.4.10), pkg-config,
bash (>= 4), flex, bison, bash (>= 4), flex, bison,
imagemagick, transfig, netpbm, ghostscript, imagemagick, transfig, netpbm, ghostscript,
libgtk2.0-dev libgtk2.0-dev
Standards-Version: 3.9.1 Standards-Version: 3.9.3
Homepage: http://downloads.qi-hardware.com/people/werner/fped/gui.html Homepage: http://downloads.qi-hardware.com/people/werner/fped/gui.html
Package: fped Package: fped

View File

@ -1,19 +1,30 @@
#!/bin/sh #!/bin/sh
# Build a tarball from the latest upstream version, with a nice # Build a tarball from the latest upstream version, with a nice
# version number. # version number.
#
# Requires git 1.6.6 or later, GNU date, and gzip.
set -e set -e
: ${REPO=$(git rev-parse --git-dir)}
: ${BRANCH=remotes/origin/master}
mkdir debian-orig-source
trap 'rm -fr debian-orig-source || exit 1' EXIT
git init -q debian-orig-source
GIT_DIR=$(pwd)/debian-orig-source/.git
export GIT_DIR
# Fetch latest upstream version.
git fetch -q "$REPO" "$BRANCH"
# Determine version number. # Determine version number.
release=0.0 release=0.0
upstream_version="${release}+r${REV}" date=$(date --utc --date="$(git log -1 --pretty=format:%cD FETCH_HEAD)" "+%Y%m")
upstream_version="${release}+${date}"
TOPFOLDER=fped-$upstream_version.orig
trap 'rm -fr ${TOPFOLDER} || exit 1' EXIT INT TERM
svn export -r${REV} http://svn.openmoko.org/trunk/eda/fped ${TOPFOLDER}
# Generate tarball. # Generate tarball.
echo "packaging ..." echo "packaging $(git rev-parse --short FETCH_HEAD)"
tar -czf fped_$upstream_version.orig.tar.gz ${TOPFOLDER} git archive FETCH_HEAD |
gzip -n -9 >"fped_$upstream_version.orig.tar.gz"

46
debian/rules vendored
View File

@ -1,23 +1,47 @@
#!/usr/bin/make -f #!/usr/bin/make -f
# -*- makefile -*- # This file is in the public domain.
# Sample debian/rules that uses debhelper. # You may freely use, modify, distribute, and relicense it.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode. # Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1 #export DH_VERBOSE=1
export PREFIX=/usr export PREFIX=/usr
REV=6006 build clean install binary-arch binary-indep binary:
debiandir_SQ = $(subst ','\'',$(dir $(lastword $(MAKEFILE_LIST)))) +dh --parallel $(opt_no_act) $@
get-orig-source:
REV='$(REV)' sh '$(debiandir_SQ)'get-orig-source.sh
override_dh_auto_clean: override_dh_auto_clean:
make spotless $(MAKE) spotless
sh debian/clean.sh
override_dh_installchangelogs:
dpkg-parsechangelog --format rfc822 --all | \
awk -f debian/changelog.upstream.awk
dh_installchangelogs debian/changelog.upstream
opt_optimize = CFLAGS="-g -O2"
opt_no_act =
opt_quiet =
ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
opt_optimize = CFLAGS="-g -O0"
endif
ifneq (,$(findstring n,$(MAKEFLAGS)))
opt_no_act = --no-act
endif
ifneq (,$(filter quiet,$(DEB_BUILD_OPTIONS)))
opt_quiet = --quiet
MAKEFLAGS += --quiet
endif
REPO = git://projects.qi-hardware.com/fped.git
BRANCH = master
debiandir_SQ = $(subst ','\'',$(dir $(lastword $(MAKEFILE_LIST))))
get-orig-source:
REPO='$(REPO)' BRANCH='$(BRANCH)' \
sh '$(debiandir_SQ)'get-orig-source.sh
%: %:
dh $@ dh $@

View File

@ -1 +1 @@
3.0 (quilt) 3.0 (quilt)