From ab840e15d016a3b05f226f58235d1040ce54b881 Mon Sep 17 00:00:00 2001 From: Matt Birkholz Date: Sun, 12 Jun 2016 16:52:04 -0700 Subject: [PATCH] glib/debian/: Support dpkg-buildpackage. --- src/glib/Makefile.am | 65 ++++++++++--------- src/glib/check-doc.sh | 2 +- src/glib/debian/changelog | 5 ++ src/glib/debian/compat | 1 + src/glib/debian/control | 21 ++++++ src/glib/debian/copyright | 29 +++++++++ src/glib/debian/doc-base | 16 +++++ src/glib/debian/docs | 2 + src/glib/debian/postinst.in | 10 +++ src/glib/debian/postrm.in | 10 +++ src/glib/debian/rules | 12 ++++ src/glib/debian/source/format | 1 + src/glib/debian/watch | 2 + src/glib/glib-check-copy.sh | 2 +- ...-glib.texi => mit-scheme-pucked-glib.texi} | 14 ++-- 15 files changed, 151 insertions(+), 41 deletions(-) create mode 100644 src/glib/debian/changelog create mode 100644 src/glib/debian/compat create mode 100644 src/glib/debian/control create mode 100644 src/glib/debian/copyright create mode 100644 src/glib/debian/doc-base create mode 100644 src/glib/debian/docs create mode 100755 src/glib/debian/postinst.in create mode 100755 src/glib/debian/postrm.in create mode 100755 src/glib/debian/rules create mode 100644 src/glib/debian/source/format create mode 100644 src/glib/debian/watch rename src/glib/{mit-scheme-glib.texi => mit-scheme-pucked-glib.texi} (99%) diff --git a/src/glib/Makefile.am b/src/glib/Makefile.am index e85d334d1..2ae2016f5 100644 --- a/src/glib/Makefile.am +++ b/src/glib/Makefile.am @@ -25,7 +25,7 @@ EXTRA_DIST = autogen.sh MIT_SCHEME_EXE = @MIT_SCHEME_EXE@ scmlibdir = @MIT_SCHEME_LIBDIR@ -scmlib_glibdir = $(scmlibdir)glib +scmlib_subdir = $(scmlibdir)glib scmlib_LTLIBRARIES = glib-shim.la scmlib_DATA = glib-types.bin glib-const.bin @@ -33,22 +33,27 @@ scmlib_DATA = glib-types.bin glib-const.bin sources = glib.scm gobject.scm gio.scm glib-main.scm glib-thread.scm cdecls = glib.cdecl Includes/*.cdecl Includes/*/*.cdecl -scmlib_glib_DATA = $(sources) -scmlib_glib_DATA += glib.bin glib.bci glib.com -scmlib_glib_DATA += gobject.bin gobject.bci gobject.com -scmlib_glib_DATA += gio.bin gio.bci gio.com -scmlib_glib_DATA += glib-main.bin glib-main.bci glib-main.com -scmlib_glib_DATA += glib-thread.bin glib-thread.bci glib-thread.com -scmlib_glib_DATA += make.scm glib-@MIT_SCHEME_OS_SUFFIX@.pkd +binaries = glib.bci glib.com +binaries += gobject.bci gobject.com +binaries += gio.bci gio.com +binaries += glib-main.bci glib-main.com +binaries += glib-thread.bci glib-thread.com -info_TEXINFOS = mit-scheme-glib.texi +scmlib_sub_DATA = $(sources) +scmlib_sub_DATA += $(binaries) +scmlib_sub_DATA += make.scm glib-@MIT_SCHEME_OS_SUFFIX@.pkd + +info_TEXINFOS = mit-scheme-pucked-glib.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 gio-2.0` @@ -75,19 +80,14 @@ glib-const.bin: glib-const.scm glib-const.scm: glib-const ./glib-const -glib.bin: stamp-scheme glib.bci: stamp-scheme glib.com: stamp-scheme -gobject.bin: stamp-scheme gobject.bci: stamp-scheme gobject.com: stamp-scheme -gio.bin: stamp-scheme gio.bci: stamp-scheme gio.com: stamp-scheme -glib-main.bin: stamp-scheme glib-main.bci: stamp-scheme glib-main.com: stamp-scheme -glib-thread.bin: stamp-scheme glib-thread.bci: stamp-scheme glib-thread.com: stamp-scheme glib-@MIT_SCHEME_OS_SUFFIX@.pkd: stamp-scheme @@ -113,21 +113,24 @@ TAGS_DEPENDENCIES = $(all_sources) $(cdecls) EXTRA_DIST += $(all_sources) $(cdecls) compile.sh glib.pkg EXTRA_DIST += glib-tests.scm glib-check-copy.sh glib-check-list.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_glibdir)" ] \ - && rmdir "$(DESTDIR)$(scmlib_glibdir)" - [ -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/glib/check-doc.sh b/src/glib/check-doc.sh index c11de1976..a59a736e3 100755 --- a/src/glib/check-doc.sh +++ b/src/glib/check-doc.sh @@ -28,7 +28,7 @@ set -e ${MIT_SCHEME_EXE} --batch-mode <<\EOF (let ((pkgset "glib") - (texi "mit-scheme-glib.texi") + (texi "mit-scheme-pucked-glib.texi") (pkg '(glib))) ;; Check that every binding exported to () or PKG has a ;; corresponding @deffn in TEXI. diff --git a/src/glib/debian/changelog b/src/glib/debian/changelog new file mode 100644 index 000000000..7168e85c7 --- /dev/null +++ b/src/glib/debian/changelog @@ -0,0 +1,5 @@ +mit-scheme-pucked-glib (0.5-1) experimental; urgency=low + + * Initial Debianization. + + -- Friar Puck Sun, 12 Jun 2016 00:00:00 -0700 diff --git a/src/glib/debian/compat b/src/glib/debian/compat new file mode 100644 index 000000000..ec635144f --- /dev/null +++ b/src/glib/debian/compat @@ -0,0 +1 @@ +9 diff --git a/src/glib/debian/control b/src/glib/debian/control new file mode 100644 index 000000000..573f65aaf --- /dev/null +++ b/src/glib/debian/control @@ -0,0 +1,21 @@ +Source: mit-scheme-pucked-glib +Section: lisp +Priority: optional +Maintainer: Friar Puck +Build-Depends: debhelper (>= 9), autotools-dev, libltdl-dev, + mit-scheme-pucked (>= 9.2.1.1), + texinfo, texlive, + libglib2.0-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-glib +Architecture: any +Depends: mit-scheme-pucked (>= 9.2.1.1), ${shlibs:Depends}, ${misc:Depends} +Description: Glib/GIO 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 glib and gio C APIs. The wrappings + are just sufficient to implement open-input-gfile, open-output-gfile, + and gdirectory-read. diff --git a/src/glib/debian/copyright b/src/glib/debian/copyright new file mode 100644 index 000000000..9b31b80f3 --- /dev/null +++ b/src/glib/debian/copyright @@ -0,0 +1,29 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: mit-scheme-pucked-glib +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 glib 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/glib/debian/doc-base b/src/glib/debian/doc-base new file mode 100644 index 000000000..1123d9e25 --- /dev/null +++ b/src/glib/debian/doc-base @@ -0,0 +1,16 @@ +Document: mit-scheme-pucked-glib +Title: GLib User's Manual +Author: Matt Birkholz +Abstract: The GLib plugin for Friar Puck's MIT/GNU Scheme runs Scheme + in a GSource of the GMainLoop. It implements asynchronous IO via the + GIO library and many SOS classes including , , and . This manual describes how to use the + plugin. +Section: Network/Communication + +Format: HTML +Index: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-glib.html +Files: /usr/share/doc/mit-scheme-pucked/html/mit-scheme-pucked-glib.html + +Format: PDF +Files: /usr/share/doc/mit-scheme-pucked/pdf/mit-scheme-pucked-glib.pdf.gz diff --git a/src/glib/debian/docs b/src/glib/debian/docs new file mode 100644 index 000000000..50bd824bb --- /dev/null +++ b/src/glib/debian/docs @@ -0,0 +1,2 @@ +NEWS +README diff --git a/src/glib/debian/postinst.in b/src/glib/debian/postinst.in new file mode 100755 index 000000000..332b30f47 --- /dev/null +++ b/src/glib/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/glib/debian/postrm.in b/src/glib/debian/postrm.in new file mode 100755 index 000000000..332b30f47 --- /dev/null +++ b/src/glib/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/glib/debian/rules b/src/glib/debian/rules new file mode 100755 index 000000000..3c78a5268 --- /dev/null +++ b/src/glib/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/glib/debian/source/format b/src/glib/debian/source/format new file mode 100644 index 000000000..163aaf8d8 --- /dev/null +++ b/src/glib/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/src/glib/debian/watch b/src/glib/debian/watch new file mode 100644 index 000000000..103a3065b --- /dev/null +++ b/src/glib/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/glib/glib-check-copy.sh b/src/glib/glib-check-copy.sh index 4f1637d37..d51d32bf2 100755 --- a/src/glib/glib-check-copy.sh +++ b/src/glib/glib-check-copy.sh @@ -31,7 +31,7 @@ ${MIT_SCHEME_EXE} --prepend-library . <<\EOF (begin (load-option 'GLIB) (load "glib-tests") - (let ((file1 "mit-scheme-glib.texi") + (let ((file1 "mit-scheme-pucked-glib.texi") (file2 "test-copy-1.txt")) (gcp file1 file2) (load-option 'MD5) diff --git a/src/glib/mit-scheme-glib.texi b/src/glib/mit-scheme-pucked-glib.texi similarity index 99% rename from src/glib/mit-scheme-glib.texi rename to src/glib/mit-scheme-pucked-glib.texi index 7ba909a14..f8b12558a 100644 --- a/src/glib/mit-scheme-glib.texi +++ b/src/glib/mit-scheme-pucked-glib.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-Texinfo-*- @comment %**start of header -@setfilename mit-scheme-glib.info -@set VERSION 0.5 +@setfilename mit-scheme-pucked-glib.info +@include version.texi @settitle GLib Plugin @value{VERSION} @comment %**end of header @@ -42,15 +42,13 @@ Documentation License.'' @dircategory Programming Languages @direntry -* MIT/GNU Scheme GLib: (mit-scheme-glib). +* MIT/GNU Scheme Pucked GLib: (mit-scheme-pucked-glib). GLib, GObject and GIO libraries plugin. @end direntry @titlepage -@title The MIT/GNU Scheme GLib 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 GLib User's Manual +@author by Matt Birkholz @page @vskip 0pt plus 1filll @insertcopying @@ -75,7 +73,7 @@ Documentation License.'' The GLib system is a collection of Scheme data types and procedures providing a Schemely interface to the GLib, GObject and GIO libraries. -It is used by the GStreamer and Gtk wrappers. Very little of the +It is used by the GStreamer and Gtk plugins. Very little of the libraries' APIs 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 collector. When -- 2.25.1