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.
This commit is contained in:
hallgren
2012-08-22 17:25:10 +00:00
parent 59c97c72b0
commit 098ddc129e
8 changed files with 47 additions and 120 deletions

View File

@@ -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

12
debian/changelog vendored
View File

@@ -1,3 +1,15 @@
gf (3.3.3-1) oneiric precise; urgency=low
* GF 3.3.3
-- Thomas Hallgren <hallgren@chalmers.se> Wed, 22 Aug 2012 16:50:00 +0200
gf (3.3-1) natty; urgency=low
* GF 3.3.
-- Thomas Hallgren <th0907@altocumulus.org> Wed, 26 Oct 2011 22:10:42 +0200
gf (2.5-1) unstable; urgency=low
* Initial packaging.

1
debian/compat vendored Normal file
View File

@@ -0,0 +1 @@
7

10
debian/control vendored
View File

@@ -1,9 +1,10 @@
Source: gf
Section: devel
Priority: optional
Section: science
Maintainer: Bjorn Bringert <bringert@cs.chalmers.se>
Build-Depends: debhelper, autoconf, ghc6 (>= 6.4.1-1)
Standards-Version: 3.6.2
Maintainer: Thomas Hallgren <hallgren@chalmers.se>
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/

19
debian/copyright vendored
View File

@@ -1,18 +1 @@
This package was Debianized by Bjorn Bringert <bringert@cs.chalmers.se>
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

114
debian/rules vendored
View File

@@ -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

1
debian/source/format vendored Normal file
View File

@@ -0,0 +1 @@
3.0 (native)

2
debian/watch vendored Normal file
View File

@@ -0,0 +1,2 @@
version=3
http://hackage.haskell.org/packages/archive/gf/([\d\.]+)/gf-([\d\.]+).tar.gz