From 098ddc129ea31f5708ffa5a333fea563e16336f2 Mon Sep 17 00:00:00 2001 From: hallgren Date: Wed, 22 Aug 2012 17:25:10 +0000 Subject: [PATCH] Add 'make deb' to Makefile, for creating Debian packages Also updated the debian/* files. It should now be easy to create Debian packages under Ubuntu 11.10 & 12.04. See also the notes in the Makefile. --- Makefile | 6 +++ debian/changelog | 14 +++++- debian/compat | 1 + debian/control | 10 ++-- debian/copyright | 19 +------- debian/rules | 114 +++++++------------------------------------ debian/source/format | 1 + debian/watch | 2 + 8 files changed, 47 insertions(+), 120 deletions(-) create mode 100644 debian/compat create mode 100644 debian/source/format create mode 100644 debian/watch diff --git a/Makefile b/Makefile index 61a59f036..bb11bb1ad 100644 --- a/Makefile +++ b/Makefile @@ -27,3 +27,9 @@ gf: html:: bash bin/update_html + +# Make a debian package. First add a suitable entry with the correct GF version +# number to the top of debian/changelog. +# (Tested on Ubuntu 11.10 & 12.04. You need to install dpkg-dev & debhelper.) +deb: + dpkg-buildpackage -us -uc diff --git a/debian/changelog b/debian/changelog index 8dde80fa5..a7e0b04e2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1,17 @@ +gf (3.3.3-1) oneiric precise; urgency=low + + * GF 3.3.3 + + -- Thomas Hallgren Wed, 22 Aug 2012 16:50:00 +0200 + +gf (3.3-1) natty; urgency=low + + * GF 3.3. + + -- Thomas Hallgren Wed, 26 Oct 2011 22:10:42 +0200 + gf (2.5-1) unstable; urgency=low * Initial packaging. - + -- Bjorn Bringert Tue, 21 Mar 2006 11:12:25 +0100 diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..7f8f011eb --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +7 diff --git a/debian/control b/debian/control index 109c379da..8a27f49fe 100644 --- a/debian/control +++ b/debian/control @@ -1,9 +1,10 @@ Source: gf +Section: devel Priority: optional -Section: science -Maintainer: Bjorn Bringert -Build-Depends: debhelper, autoconf, ghc6 (>= 6.4.1-1) -Standards-Version: 3.6.2 +Maintainer: Thomas Hallgren +Standards-Version: 3.9.2 +Build-Depends: debhelper (>= 5), haskell-platform (>= 2011.2.0.1), libghc-haskeline-dev, libghc-mtl-dev, libghc-json-dev +Homepage: http://www.grammaticalframework.org/ Package: gf Architecture: any @@ -13,4 +14,3 @@ Description: Tools for GF, a grammar formalism based on type theory It consists of a special-purpose programming language, a compiler of the language, and a generic grammar processor. . - Homepage: http://www.cs.chalmers.se/~aarne/GF/ diff --git a/debian/copyright b/debian/copyright index 9144ea1dd..de3272038 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,18 +1 @@ -This package was Debianized by Bjorn Bringert -on 2006-03-21. - -The upstream sources for this version come from the GF darcs repository -at http://www.cs.chalmers.se/Cs/Research/Language-technology/darcs/GF/ - -Authors and copyright licenses: - -Copyright (C): - Bjorn Bringert, Hakan Burden, Hans-Joachim Daniels, Markus Forsberg, - Thomas Hallgren, Harald Hammarstrom, Kristofer Johannisson, - Janna Khegai, Peter Ljunglof, Petri Maenpaa, and Aarne Ranta, - 1998-2006. - -You are free to distribute this software under the terms of -the GNU General Public License. -On Debian systems, the complete text of the GNU General Public -License can be found in the file /usr/share/common-licenses/GPL. +/usr/share/common-licenses/GPL-2 diff --git a/debian/rules b/debian/rules index ce569ab93..8158e3c1a 100644 --- a/debian/rules +++ b/debian/rules @@ -1,102 +1,24 @@ #!/usr/bin/make -f -# -*- makefile -*- -# Sample debian/rules that uses debhelper. -# 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. -#export DH_VERBOSE=1 +%: + +dh $@ +override_dh_auto_build: + cabal build -export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +override_dh_auto_clean: + rm -fr dist/build -# FOR AUTOCONF 2.52 AND NEWER ONLY -ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) - confflags += --build $(DEB_HOST_GNU_TYPE) -else - confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +override_dh_auto_configure: + cabal update + cabal install --only-dependencies + cabal configure --prefix=/usr -fserver + +override_dh_auto_install: + cabal copy --destdir=$(CURDIR)/debian/gf + +override_dh_auto_test: +ifneq (nocheck,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + true +# cabal test endif - - -configure: configure-stamp -configure-stamp: - dh_testdir - # Add here commands to configure the package. - cd src && autoconf - - touch configure-stamp - - -build: build-stamp - -build-stamp: configure-stamp - dh_testdir - - # Add here commands to compile the package. - cd src && ./configure $(confflags) - - $(MAKE) -C src unix gfdoc - #docbook-to-man debian/gf.sgml > gf.1 - - touch build-stamp - -clean: - dh_testdir - dh_testroot - rm -f build-stamp configure-stamp - - # Add here commands to clean up after the build process. - -$(MAKE) -C src clean - - dh_clean - -install: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - - # Add here commands to install the package into debian/gf. - $(MAKE) -C src install-gf install-gfdoc prefix=$(CURDIR)/debian/gf - - -# Build architecture-independent files here. -binary-indep: build install -# We have nothing to do by default. - -# Build architecture-dependent files here. -binary-arch: build install - dh_testdir - dh_testroot - dh_installchangelogs - dh_installdocs - dh_installexamples -# dh_install -# dh_installmenu -# dh_installdebconf -# dh_installlogrotate -# dh_installemacsen -# dh_installpam -# dh_installmime -# dh_installinit -# dh_installcron -# dh_installinfo - dh_installman - dh_link - dh_strip - dh_compress - dh_fixperms -# dh_perl -# dh_python -# dh_makeshlibs - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb - -binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 000000000..89ae9db8f --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) diff --git a/debian/watch b/debian/watch new file mode 100644 index 000000000..f85c0794b --- /dev/null +++ b/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://hackage.haskell.org/packages/archive/gf/([\d\.]+)/gf-([\d\.]+).tar.gz