[Pkg-ocaml-maint-commits] [SCM] ocaml-batteries packaging branch, master, updated. upstream/0.20081011-5-g2f5a17f

Stefano Zacchiroli zack at upsilon.cc
Sun Oct 12 15:06:19 UTC 2008


The following commit has been merged in the master branch:
commit dc0faab0cc9a4374c2318324c26177cfe429071c
Author: Stefano Zacchiroli <zack at upsilon.cc>
Date:   Sun Oct 12 16:36:26 2008 +0200

    topgit support

diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..c52bdb1
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,56 @@
+Building ocaml-batteries Debian package
+=======================================
+
+The nurpawiki source package uses quilt to apply and remove its
+patches.  Please refer to /usr/share/doc/quilt/README.source for
+information about how to use quilt for source packages.
+
+The quilt series is, however, generated from the Git repository, using
+TopGit. Please refer to /usr/share/doc/topgit/README.source for more
+information.
+
+Branch layout
+-------------
+
+The following branches are in use in the package:
+
+- debian/*    	       Debian-specific patches
+- features/*  	       patches providing new features, targeted upstream
+- fixes/*     	       patches fixing problems with upstream
+- master      	       the main Debianisation branch
+- pristine-tar	       binary deltas for pristine-tar
+- upstream    	       tracks the upstream Git repository
+
+Cloning the repository
+----------------------
+
+Cloning a TopGit repository requires an additional step to normal Git
+cloning:
+
+ 1. debcheckout ocaml-batteries
+ 2. cd ocalm-batteries
+ 3. tg remote --populate origin
+
+Building from the Git repository
+--------------------------------
+
+ 1. Checkout the master branch
+ 2. Update (and commit) TG_BRANCHES in debian/rules (if needed)
+ 3. Checkout the build branch, and merge master into it
+ 4. Generate debian/patches:
+      debian/rules tg-export
+ 5. Update the branch (if needed):
+      git add -f -u
+      git add -f debian/patches
+      git commit "Releasing ${VERSION}"
+ 6. Build the package (and tag):
+      git-buildpackage \
+        --git-pristine-tar \
+	--git-tag \
+        --git-debian-branch=build \
+	[options]
+
+During development/tests, steps 3 and 5 (together with --git-tag and
+--git-debian-branch=build) are not needed, and you may use
+git-buildpackage with the master branch instead of build, provided you
+git-ignore debian/patches.
diff --git a/debian/rules b/debian/rules
index 681c040..8ba6038 100755
--- a/debian/rules
+++ b/debian/rules
@@ -16,3 +16,17 @@ endif
 DEB_MAKE_BUILD_TARGET += OBFLAGS=-classic-display
 
 DEB_MAKE_INSTALL_TARGET = install DESTDIR=$(CURDIR)/debian/
+
+TG_BRANCHES = features/flexi-build
+tg-export:
+        tg create stage-debian $(TG_BRANCHES)
+        git commit -m "staging"
+        rm -Rf debian/patches.new
+        tg export --quilt debian/patches.new
+        git rm -f .top*
+        git checkout master
+        tg delete stage-debian
+        rm debian/patches.new/stage-*
+        sed -i '/^stage-/d' debian/patches.new/series
+        rm -Rf debian/patches
+        mv debian/patches.new debian/patches

-- 
ocaml-batteries packaging



More information about the Pkg-ocaml-maint-commits mailing list