From: Matt Birkholz <puck@birchwood-abbey.net>
Date: Mon, 13 Jun 2016 00:59:39 +0000 (-0700)
Subject: cairo/debian/: Support dpkg-buildpackage.
X-Git-Tag: mit-scheme-pucked-9.2.12~286
X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=1edab1172f28bdb3b6c20ec0aeff443bf6cd9342;p=mit-scheme.git

cairo/debian/: Support dpkg-buildpackage.
---

diff --git a/src/cairo/Makefile.am b/src/cairo/Makefile.am
index f78a29202..355798078 100644
--- a/src/cairo/Makefile.am
+++ b/src/cairo/Makefile.am
@@ -25,7 +25,7 @@ EXTRA_DIST = autogen.sh
 
 MIT_SCHEME_EXE = @MIT_SCHEME_EXE@
 scmlibdir = @MIT_SCHEME_LIBDIR@
-scmlib_cairodir = $(scmlibdir)cairo
+scmlib_subdir = $(scmlibdir)cairo
 
 scmlib_LTLIBRARIES = cairo-shim.la
 scmlib_DATA = cairo-types.bin cairo-const.bin
@@ -33,19 +33,24 @@ scmlib_DATA = cairo-types.bin cairo-const.bin
 sources = cairo.scm cairo-graphics.scm
 cdecls = cairo.cdecl
 
-scmlib_cairo_DATA = $(sources)
-scmlib_cairo_DATA += cairo.bin cairo.bci cairo.com
-scmlib_cairo_DATA += cairo-graphics.bin cairo-graphics.bci cairo-graphics.com
-scmlib_cairo_DATA += make.scm cairo-@MIT_SCHEME_OS_SUFFIX@.pkd
+binaries = cairo.bci cairo.com
+binaries += cairo-graphics.bci cairo-graphics.com
 
-info_TEXINFOS = mit-scheme-cairo.texi
+scmlib_sub_DATA = $(sources)
+scmlib_sub_DATA += $(binaries)
+scmlib_sub_DATA += make.scm cairo-@MIT_SCHEME_OS_SUFFIX@.pkd
+
+info_TEXINFOS = mit-scheme-pucked-cairo.texi
 AM_MAKEINFOHTMLFLAGS = --no-split
 
-# Set these to the defaults used by Scheme.
-infodir = $(datarootdir)/info
-htmldir = $(libdir)/mit-scheme-pucked/doc
-dvidir = $(libdir)/mit-scheme-pucked/doc
-pdfdir = $(libdir)/mit-scheme-pucked/doc
+# The shared system documentation directory...
+docdir = $(datarootdir)/doc/mit-scheme-pucked
+# ...with separate html and pdf subdirectories.
+htmldir = $(datarootdir)/doc/mit-scheme-pucked/html
+pdfdir = $(datarootdir)/doc/mit-scheme-pucked/pdf
+# ...and dvi and ps subdirectories?
+dvidir = $(datarootdir)/doc/mit-scheme-pucked/dvi
+psdir = $(datarootdir)/doc/mit-scheme-pucked/ps
 
 AM_CPPFLAGS = -I@MIT_SCHEME_INCLUDEDIR@
 AM_CFLAGS = `pkg-config --cflags pangocairo`
@@ -71,10 +76,8 @@ cairo-const.bin: cairo-const.scm
 cairo-const.scm: cairo-const
 	./cairo-const
 
-cairo.bin: stamp-scheme
 cairo.bci: stamp-scheme
 cairo.com: stamp-scheme
-cairo-graphics.bin: stamp-scheme
 cairo-graphics.bci: stamp-scheme
 cairo-graphics.com: stamp-scheme
 cairo-@MIT_SCHEME_OS_SUFFIX@.pkd: stamp-scheme
@@ -98,21 +101,24 @@ TAGS_DEPENDENCIES = $(sources) $(cdecls)
 
 EXTRA_DIST += $(sources) $(cdecls) compile.sh cairo.pkg
 EXTRA_DIST += cairo-check.sh
-EXTRA_DIST += make.scm optiondb.scm check-doc.sh tags-fix.sh
+EXTRA_DIST += make.scm optiondb.scm check-doc.sh tags-fix.sh debian
 
 install-data-hook:
-	echo '(update-optiondb "$(DESTDIR)$(scmlibdir)")' \
-	| $(MIT_SCHEME_EXE) --batch-mode
+	if [ -f "$(DESTDIR)$(scmlibdir)optiondb.scm" ]; then \
+	    echo '(update-optiondb "$(DESTDIR)$(scmlibdir)")' \
+	    | $(MIT_SCHEME_EXE) --batch-mode; fi
 
 install-html: install-html-am
-	echo '(update-html-index "$(DESTDIR)$(htmldir)/")' \
-	| $(MIT_SCHEME_EXE) --batch-mode
+	if [ -f "$(DESTDIR)$(htmldir)/index.html" ]; then \
+	    echo '(update-html-index "$(DESTDIR)$(htmldir)/")' \
+	    | $(MIT_SCHEME_EXE) --batch-mode; fi
 
 uninstall-hook:
-	echo '(update-optiondb "$(DESTDIR)$(scmlibdir)")' \
-	| $(MIT_SCHEME_EXE) --batch-mode
-	[ -d "$(DESTDIR)$(scmlib_cairodir)" ] \
-	&& rmdir "$(DESTDIR)$(scmlib_cairodir)"
-	[ -d "$(DESTDIR)$(htmldir)" ]					\
-	&& ( echo  '(update-html-index "$(DESTDIR)$(htmldir)/")'	\
-	     | $(MIT_SCHEME_EXE) --batch-mode )
+	if [ -f "$(DESTDIR)$(scmlibdir)optiondb.scm" ]; then \
+	    echo '(update-optiondb "$(DESTDIR)$(scmlibdir)")' \
+	    | $(MIT_SCHEME_EXE) --batch-mode; fi
+	if [ -f "$(DESTDIR)$(htmldir)/index.html" ]; then \
+	    echo '(update-html-index "$(DESTDIR)$(htmldir)/")' \
+	    | $(MIT_SCHEME_EXE) --batch-mode; fi
+	if [ -d "$(DESTDIR)$(scmlib_subdir)" ]; then \
+	    rmdir "$(DESTDIR)$(scmlib_subdir)"; fi
diff --git a/src/cairo/check-doc.sh b/src/cairo/check-doc.sh
index 418d69ec3..cede795f2 100755
--- a/src/cairo/check-doc.sh
+++ b/src/cairo/check-doc.sh
@@ -28,7 +28,7 @@ set -e
 ${MIT_SCHEME_EXE} --batch-mode <<\EOF
 
 (let ((pkgset "cairo")
-      (texi "mit-scheme-cairo.texi")
+      (texi "mit-scheme-pucked-cairo.texi")
       (pkg '()))
   ;; Check that every binding exported to () or PKG has a
   ;; corresponding @deffn in TEXI.
diff --git a/src/cairo/debian/changelog b/src/cairo/debian/changelog
new file mode 100644
index 000000000..223a00925
--- /dev/null
+++ b/src/cairo/debian/changelog
@@ -0,0 +1,5 @@
+mit-scheme-pucked-cairo (0.5-1) experimental; urgency=low
+
+  * Initial Debianization.
+
+ -- Friar Puck <puck@birchwood-abbey.net>  Sun, 12 Jun 2016 00:00:00 -0700
diff --git a/src/cairo/debian/compat b/src/cairo/debian/compat
new file mode 100644
index 000000000..ec635144f
--- /dev/null
+++ b/src/cairo/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/src/cairo/debian/control b/src/cairo/debian/control
new file mode 100644
index 000000000..c5f9c004e
--- /dev/null
+++ b/src/cairo/debian/control
@@ -0,0 +1,19 @@
+Source: mit-scheme-pucked-cairo
+Section: lisp
+Priority: optional
+Maintainer: Friar Puck <puck@birchwood-abbey.net>
+Build-Depends: debhelper (>= 9), autotools-dev, libltdl-dev,
+		mit-scheme-pucked-pango (>= 0.1),
+		texinfo, texlive,
+		libcairo2-dev
+Standards-Version: 3.9.4
+Homepage: http://birchwood-abbey.net/~matt/Scheme/
+Vcs-Git: git://birchwood-abbey.net/~matt/mit-scheme.git
+Vcs-Browser: http://birchwood-abbey.net/gitweb/?p=mit-scheme.git;a=summary
+
+Package: mit-scheme-pucked-cairo
+Architecture: any
+Depends: mit-scheme-pucked-pango (>= 0.1), ${shlibs:Depends}, ${misc:Depends}
+Description: Cairo plugin for Friar Puck's MIT/GNU Scheme
+ This package provides mit-scheme-pucked with a dynamically loadable
+ wrapper of a small portion of the Cairo C API.
diff --git a/src/cairo/debian/copyright b/src/cairo/debian/copyright
new file mode 100644
index 000000000..4123128bf
--- /dev/null
+++ b/src/cairo/debian/copyright
@@ -0,0 +1,29 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: mit-scheme-pucked-cairo
+Source: http://birchwood-abbey.net/~matt/Scheme/
+
+Files: *
+Copyright: 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+    1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016
+    Massachusetts Institute of Technology
+License: GPL-2+
+ This package is a cairo plugin for Friar Puck's MIT/GNU Scheme.
+ .
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or (at
+ your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+ USA.
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
diff --git a/src/cairo/debian/doc-base b/src/cairo/debian/doc-base
new file mode 100644
index 000000000..e837716d7
--- /dev/null
+++ b/src/cairo/debian/doc-base
@@ -0,0 +1,14 @@
+Document: mit-scheme-pucked-cairo
+Title: Cairo User's Manual
+Author: Matt Birkholz
+Abstract: The Cairo plugin for Friar Puck's MIT/GNU Scheme wraps the
+ Cairo 2D graphics library library.  This manual describes how much of
+ the C API is available.
+Section: Programming
+
+Format: HTML
+Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-cairo.html
+Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-cairo.html
+
+Format: PDF
+Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-pucked-cairo.pdf.gz
diff --git a/src/cairo/debian/docs b/src/cairo/debian/docs
new file mode 100644
index 000000000..50bd824bb
--- /dev/null
+++ b/src/cairo/debian/docs
@@ -0,0 +1,2 @@
+NEWS
+README
diff --git a/src/cairo/debian/postinst.in b/src/cairo/debian/postinst.in
new file mode 100755
index 000000000..332b30f47
--- /dev/null
+++ b/src/cairo/debian/postinst.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+echo '(update-optiondb (system-library-directory-pathname))' \
+| mit-scheme-pucked --batch-mode
+echo '(update-html-index "@HTMLDIR@/")' \
+| mit-scheme-pucked --batch-mode
+
+exit 0
diff --git a/src/cairo/debian/postrm.in b/src/cairo/debian/postrm.in
new file mode 100755
index 000000000..332b30f47
--- /dev/null
+++ b/src/cairo/debian/postrm.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+echo '(update-optiondb (system-library-directory-pathname))' \
+| mit-scheme-pucked --batch-mode
+echo '(update-html-index "@HTMLDIR@/")' \
+| mit-scheme-pucked --batch-mode
+
+exit 0
diff --git a/src/cairo/debian/rules b/src/cairo/debian/rules
new file mode 100755
index 000000000..3c78a5268
--- /dev/null
+++ b/src/cairo/debian/rules
@@ -0,0 +1,12 @@
+#!/usr/bin/make -f
+
+export MIT_SCHEME_EXE=mit-scheme-pucked
+
+%:
+	dh $@
+
+override_dh_auto_install: debian/postinst debian/postrm
+	dh_auto_install -- install-html install-pdf
+
+debian/%: debian/%.in
+	sed 's|@HTMLDIR@|/usr/share/doc/mit-scheme-pucked/html|g' < $< > $@
diff --git a/src/cairo/debian/source/format b/src/cairo/debian/source/format
new file mode 100644
index 000000000..163aaf8d8
--- /dev/null
+++ b/src/cairo/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/src/cairo/debian/watch b/src/cairo/debian/watch
new file mode 100644
index 000000000..103a3065b
--- /dev/null
+++ b/src/cairo/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://birchwood-abbey.net/~matt/Scheme/mit-scheme-pucked-gdbm-(.*)\.tar\.gz debian uupdate
diff --git a/src/cairo/mit-scheme-cairo.texi b/src/cairo/mit-scheme-pucked-cairo.texi
similarity index 98%
rename from src/cairo/mit-scheme-cairo.texi
rename to src/cairo/mit-scheme-pucked-cairo.texi
index 454310b5b..b490a2e2e 100644
--- a/src/cairo/mit-scheme-cairo.texi
+++ b/src/cairo/mit-scheme-pucked-cairo.texi
@@ -1,7 +1,7 @@
 \input texinfo @c -*-Texinfo-*-
 @comment %**start of header
-@setfilename mit-scheme-cairo.info
-@set VERSION 0.5
+@setfilename mit-scheme-pucked-cairo.info
+@include version.texi
 @settitle Cairo Plugin @value{VERSION}
 @comment %**end of header
 
@@ -42,15 +42,13 @@ Documentation License.''
 
 @dircategory Programming Languages
 @direntry
-* MIT/GNU Scheme Cairo: (mit-scheme-cairo).
-                                Cairo vector graphics plugin.
+* MIT/GNU Scheme Pucked Cairo: (mit-scheme-pucked-cairo).
+                                Cairo 2D vector graphics plugin.
 @end direntry
 
 @titlepage
-@title The MIT/GNU Scheme Cairo Plugin Manual
-@subtitle Schemely access (@value{VERSION}) to the GNOME toolkits
-@subtitle for MIT/GNU Scheme version 9.3
-@author by Matt Birkholz (@email{birkholz@@alum.mit.edu})
+@title Cairo User's Manual
+@author by Matt Birkholz
 @page
 @vskip 0pt plus 1filll
 @insertcopying
@@ -73,7 +71,7 @@ Documentation License.''
 @chapter Introduction
 
 The Cairo system is a collection of Scheme data types and procedures
-providing a Schemely interface to the Cairo vector graphics library.
+providing a Schemely interface to the Cairo 2D vector graphics library.
 Very little of the library's API has been wrapped --- just what is
 listed herein.  As one might expect of a ``Schemely'' interface, all
 toolkit resources are protected from ``leaking'' by the garbage