[Pkg-ocaml-maint-commits] [SCM] ocaml-atd packaging branch, master, updated. debian/1.0.1-1-5-g0d6c95f

Hendrik Tews hendrik at askra.de
Thu Jun 6 08:50:54 UTC 2013


The following commit has been merged in the master branch:
commit 0d6c95fbbf17a0a7074f556fc3b7706f058b1a5b
Author: Hendrik Tews <hendrik at askra.de>
Date:   Thu Jun 6 10:32:54 2013 +0200

    improve and update packaging

diff --git a/debian/atdcat.1 b/debian/atdcat.1
index 998bcd4..578ac09 100644
--- a/debian/atdcat.1
+++ b/debian/atdcat.1
@@ -1,63 +1,108 @@
-.TH ATDCAT 1 "December 3, 2010" "ATDCat User Manual"
+.\" groff -man -Tascii atdcat.1
+.\" ==========================================================================
+.\" ============= Synopsis ===================================================
+.\" ==========================================================================
+.TH ATDCAT 1 "May 2013" ATDCAT "User Manuals"
 .SH NAME
-.PP
-atdcat - check syntax of an ATD file.
+atdcat \- syntax check and transformations of ATD files
 .SH SYNOPSIS
-.PP
-atdcat [options] file
+.B atdcat \fR[\fIoptions...\fR] \fIfile
+.\" ==========================================================================
+.\" ============= Description ================================================
+.\" ==========================================================================
 .SH DESCRIPTION
-.PP
-The syntax of an ATD file can be checked with the program atdcat
-provided with the OCaml library atd.
-atdcat pretty-prints its input data, optionally after some
-transformations such as monomorphization or inheritance.
+.B atdcat
+performs syntax checking and pretty printing on ATD files. It can
+also perform transformations, such as monomorphization or
+flattening of inheritance hierarchies.
+.\"
+.\" ==========================================================================
+.\" ================ Options =================================================
+.\" ==========================================================================
+.\"
 .SH OPTIONS
+.\" ===================== -x =================================================
 .TP
-.B -x e
+.B "-x"
 make type expressions monomorphic
-.RS
-.RE
+.\" ===================== -xk  ===============================================
 .TP
-.B -xk
-keep parametrized type definitions and imply -x.
+.B "-xk"
+keep parametrized type definitions and imply 
+.I -x\fR.
 Default is to return only monomorphic type definitions
-.RS
-.RE
+.\" ===================== -xd  ===============================================
 .TP
-.B -xd
-debug mode implying -x
-.RS
-.RE
+.B "-xd"
+debug mode implying 
+.I -x
+.\" ===================== -i  ================================================
 .TP
-.B -i
+.B "-i"
 expand all `inherit' statements
-.RS
-.RE
+.\" ===================== -if  ===============================================
 .TP
-.B -if
+.B "-if"
 expand `inherit' statements in records
-.RS
-.RE
+.\" ===================== -iv  ===============================================
 .TP
-.B -iv
+.B "-iv"
 expand `inherit' statements in sum types
-.RS
-.RE
+.\" ===================== -ml ================================================
 .TP
-.B -ml 
+.B "-ml <name>"
 output the ocaml code of the ATD abstract syntax tree
-.RS
-.RE
-.TP
-.B -version
-print the version of atd and exit
-.RS
-.RE
-.TP
-.B -help|--help
-Display list of options
-.RS
-.RE
-.SH AUTHORS
-Sylvain Le Gall.
-
+.\" ===================== -html-doc  =========================================
+.TP
+.B "-html-doc"
+replace directly 
+.I <doc html="...">
+by
+.I (*html ... *)
+or replace
+.I <doc text="...">
+by
+.I (*html ... *)
+where the contents are formatted as HTML using
+.I <p>\fR, \fI<code>
+and
+.I <pre>\fR.
+This is suitable input for 
+.I caml2html -ext html:cat\fR,
+which converts ATD files into HTML.
+.\" ===================== -strip =============================================
+.TP
+.B "-strip NAME1[,NAME2,...]"
+remove all annotations of the form
+.I <NAME1 ...>\fR, \fI<NAME2 ...>\fR, etc.
+.\" ===================== -strip-all  ========================================
+.TP
+.B "-strip-all "
+remove all annotations
+.\" ===================== -version  ==========================================
+.TP
+.B "-version"
+print the version and exit
+.\" ===================== -help ==============================================
+.TP
+.B "-help | --help"
+print options and exit
+.\"
+.\" ==========================================================================
+.\" ================ SEE ALSO ================================================
+.\" ==========================================================================
+.\"
+.SH SEE ALSO
+.TP
+The ATD manual, \fI/usr/share/doc/libatd-ocaml-dev/atd-manual.{html,pdf}\fR
+.TP
+The ATD referande, \fIhttp://mjambon.com/atdgen/atdgen-manual.html\fR
+.\"
+.\" ==========================================================================
+.\" ================ Author ==================================================
+.\" ==========================================================================
+.\"
+.SH AUTHOR
+This manual page was written by Sylvain Le Gall
+<gildor at debian.org> and Hendrik Tews <hendrik at askra.de>,
+specifically for the Debian project (and may be used by others).
diff --git a/debian/atdcat.mkd b/debian/atdcat.mkd
index 3937fd8..e0ce6dc 100644
--- a/debian/atdcat.mkd
+++ b/debian/atdcat.mkd
@@ -1,3 +1,5 @@
+% this is the old source of the manual page
+% convert with pandoc -s -w man $^ -o $@
 % ATDCAT(1) ATDCat User Manual
 % Sylvain Le Gall 
 % December 3, 2010
diff --git a/debian/changelog b/debian/changelog
index bed5756..69bd399 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,12 +1,28 @@
-ocaml-atd (1.0.1-2) UNRELEASED; urgency=low
+ocaml-atd (1.0.3-1) unstable; urgency=low
 
   [ Sylvain Le Gall ]
   * Remove Sylvain Le Gall from uploaders
 
   [ Hendrik Tews ]
   * fix watch file and hompage
-
- -- Hendrik Tews <hendrik at askra.de>  Mon, 27 May 2013 00:01:49 +0200
+  * new upstream version
+  * add myself as uploader
+  * bump debhelper compat level and standards version
+  * update package description
+  * update copyright
+  * fix patches
+    - delete old patch
+    - add makefile.patch for byte compilation and installation of some ml files
+    - add lintian-allows-to.patch to fix lintian allows warning
+    - add build-manual-without-install.patch to build manual/atd-manual.html
+      without prior installation of the atd library
+  * update rules and other debhelper files
+  * fix build dependencies
+  * install pdf version of manual
+  * enable tests
+  * rewrite/improve man page
+
+ -- Hendrik Tews <hendrik at askra.de>  Thu, 06 Jun 2013 10:21:07 +0200
 
 ocaml-atd (1.0.1-1) unstable; urgency=low
 
diff --git a/debian/compat b/debian/compat
index 7f8f011..ec63514 100644
--- a/debian/compat
+++ b/debian/compat
@@ -1 +1 @@
-7
+9
diff --git a/debian/control b/debian/control
index d30ac4c..d8b56f4 100644
--- a/debian/control
+++ b/debian/control
@@ -2,39 +2,50 @@ Source: ocaml-atd
 Section: ocaml
 Priority: optional
 Maintainer: Debian OCaml Maintainers <debian-ocaml-maint at lists.debian.org>
+Uploaders: Hendrik Tews <hendrik at askra.de>
 Build-Depends:
   ocaml-nox (>= 3.11.1-3~),
+  ocaml-best-compilers,
   ocaml-findlib,
   dh-ocaml (>= 0.9~),
-  debhelper (>= 7.0.50~),
-  menhir, libeasy-format-ocaml-dev
-Standards-Version: 3.9.2
+  debhelper (>= 9),
+  menhir, 
+  libeasy-format-ocaml-dev,
+  hevea,
+  camlmix,
+  libfindlib-ocaml-dev,
+  libcaml2html-ocaml-dev,
+  texlive-latex-extra
+Standards-Version: 3.9.4
 Homepage: http://mjambon.com/atdgen
-Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/ocaml-atd.git
-Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/ocaml-atd.git
+Vcs-Git: git://anonscm.debian.org/pkg-ocaml-maint/packages/ocaml-atd.git
+Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ocaml-maint/packages/ocaml-atd.git
 
 Package: libatd-ocaml-dev
 Architecture: any
 Depends: ${ocaml:Depends}, ${misc:Depends}, ${shlibs:Depends}
 Provides: ${ocaml:Provides}
 Recommends: ocaml-findlib
-Description: syntax for cross-language data types in OCaml
+Description: syntax for cross-language data types in OCaml - development files
  ATD stands for Adjustable Type Definitions. It is a type definition
  language designed to accommodate a variety of programming languages and
  data formats by the means of target-specific annotations. It supports
  sum types, parametrized types and inheritance. The library provides a
  parser and other tools useful for manipulating ATD type definitions.
+ .
+ This package contains the development files needed for programming
+ with the library.
 
 Package: libatd-ocaml
 Architecture: any
-Depends: ${ocaml:Depends}, ${misc:Depends}
+Depends: ${ocaml:Depends}, ${misc:Depends}, ${shlibs:Depends}
 Provides: ${ocaml:Provides}
 Recommends: ocaml-findlib
-Description: syntax for cross-language data types in OCaml
+Description: syntax for cross-language data types in OCaml - plugins
  ATD stands for Adjustable Type Definitions. It is a type definition
  language designed to accommodate a variety of programming languages and
  data formats by the means of target-specific annotations. It supports
  sum types, parametrized types and inheritance. The library provides a
  parser and other tools useful for manipulating ATD type definitions.
  .
- This package contains the shared runtime libraries.
+ This package contains the shared runtime libraries and plugins.
diff --git a/debian/copyright b/debian/copyright
index 975ffa5..7f13d95 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,11 +1,11 @@
-Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=135
-Name: ocaml-atd
-Maintainer: Sylvain Le Gall <gildor at debian.org>
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Atd
+Upstream-Contact: Martin Jambon <martin at mjambon.com>
+Source: http://mjambon.com/atdgen
 
 Files: *
-Copyright: Copyright (c) 2010 MyLife
-License: BSD3
-
+Copyright: 2010 MyLife
+License: BSD-3-clause
  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions
  are met:
@@ -16,7 +16,7 @@ License: BSD3
     documentation and/or other materials provided with the distribution.
  3. The name of the author may not be used to endorse or promote products
     derived from this software without specific prior written permission.
- 
+ . 
  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -29,7 +29,22 @@ License: BSD3
  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 Files: debian/*
-Copyright: (C) 2010 Sylvain Le Gall <gildor at debian.org>
+Copyright: 2010 Sylvain Le Gall <gildor at debian.org>
+	   2013 Hendrik Tews <hendrik at askra.de>
 License: GPL-3+
-
- See '/usr/share/common-licenses/GPL-3' for the full text.
+ This program 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 3 of the License, or (at
+ your option) any later version.
+ .
+ This program 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 program. If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 3 can be found in the file
+ `/usr/share/common-licenses/GPL-3'.
diff --git a/debian/libatd-ocaml-dev.doc-base.manual b/debian/libatd-ocaml-dev.doc-base.manual
index 160e441..02a1b79 100644
--- a/debian/libatd-ocaml-dev.doc-base.manual
+++ b/debian/libatd-ocaml-dev.doc-base.manual
@@ -6,3 +6,6 @@ Section: Programming/OCaml
 Format: HTML
 Index: /usr/share/doc/libatd-ocaml-dev/atd-manual.html
 Files: /usr/share/doc/libatd-ocaml-dev/atd-manual.html
+
+Format: PDF
+Files: /usr/share/doc/libatd-ocaml-dev/atd-manual.pdf.gz
diff --git a/debian/libatd-ocaml-dev.docs b/debian/libatd-ocaml-dev.docs
index f4a72aa..fa31441 100644
--- a/debian/libatd-ocaml-dev.docs
+++ b/debian/libatd-ocaml-dev.docs
@@ -1,3 +1,4 @@
 odoc
 manual/atd-manual.html
-README
+manual/atd-manual.pdf
+README.md
diff --git a/debian/libatd-ocaml-dev.install.in b/debian/libatd-ocaml-dev.install.in
index a5b4a17..48c234d 100644
--- a/debian/libatd-ocaml-dev.install.in
+++ b/debian/libatd-ocaml-dev.install.in
@@ -1,6 +1,6 @@
 @OCamlStdlibDir@/atd/*.cmo
 @OCamlStdlibDir@/atd/*.cmi
- at OCamlStdlibDir@/atd/*.mli
+ at OCamlStdlibDir@/atd/*.ml*
 OPT: @OCamlStdlibDir@/atd/*.o
 OPT: @OCamlStdlibDir@/atd/*.cmxa
 OPT: @OCamlStdlibDir@/atd/*.a
diff --git a/debian/libatd-ocaml-dev.ocamldoc b/debian/libatd-ocaml-dev.ocamldoc
index 783bd53..2da0de8 100644
--- a/debian/libatd-ocaml-dev.ocamldoc
+++ b/debian/libatd-ocaml-dev.ocamldoc
@@ -1,2 +1 @@
--d odoc
---doc-base-generate
+-d odoc --doc-base-generate
diff --git a/debian/patches/build-manual-without-install.patch b/debian/patches/build-manual-without-install.patch
new file mode 100644
index 0000000..7e87c60
--- /dev/null
+++ b/debian/patches/build-manual-without-install.patch
@@ -0,0 +1,15 @@
+Description: build manual without installing atd.cma beforehand
+Author: Hendrik Tews <hendrik at askra.de>
+--- a/manual/atd-body.mlx
++++ b/manual/atd-body.mlx
+@@ -3,7 +3,9 @@
+ ##
+ #use "topfind";;
+ #require "caml2html";;
+-#require "atd";;
++#require "easy-format";;
++#directory "..";;
++#load "atd.cma";;
+ #require "unix";;
+ #use "../atd_version.ml";;
+ #use "macros.ml";;
diff --git a/debian/patches/debian-changes-0.9.2-1 b/debian/patches/debian-changes-0.9.2-1
deleted file mode 100644
index dae963f..0000000
--- a/debian/patches/debian-changes-0.9.2-1
+++ /dev/null
@@ -1,63 +0,0 @@
-Description: Upstream changes introduced in version 0.9.2-1
- This patch has been created by dpkg-source during the package build.
- Here's the last changelog entry, hopefully it gives details on why
- those changes were made:
- .
- ocaml-atd (0.9.2-1) unstable; urgency=low
- .
-   * Initial release. (Closes: #605670)
- .
- The person named in the Author field signed this changelog entry.
-Author: Sylvain Le Gall <gildor at debian.org>
-Bug-Debian: http://bugs.debian.org/605670
-
----
-The information above should follow the Patch Tagging Guidelines, please
-checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
-are templates for supplementary fields that you might want to add:
-
-Origin: <vendor|upstream|other>, <url of original patch>
-Bug: <url in upstream bugtracker>
-Bug-Debian: http://bugs.debian.org/<bugnumber>
-Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
-Forwarded: <no|not-needed|url proving that it has been forwarded>
-Reviewed-By: <name and email of someone who approved the patch>
-Last-Update: <YYYY-MM-DD>
-
---- ocaml-atd-0.9.2.orig/Makefile
-+++ ocaml-atd-0.9.2/Makefile
-@@ -58,7 +58,7 @@ endif
- 
- default: all opt
- 
--all: VERSION META atd.cma
-+all: VERSION META atd.cma atdcat.byte
- 
- opt: VERSION META atd.cmxa atdcat
- 
-@@ -119,6 +119,11 @@ atdcat: dep $(CMI) $(CMX) atdcat.ml
- 		-package "$(OCAMLPACKS)" -linkpkg \
- 		$(CMX) atdcat.ml
- 
-+atdcat.byte: dep $(CMI) $(CMO) atdcat.ml
-+	ocamlfind ocamlc $(OCAMLFLAGS) -o atdcat \
-+		-package "$(OCAMLPACKS)" -linkpkg \
-+		$(CMO) atdcat.ml
-+
- .PHONY: doc
- doc: odoc/index.html atdcat
- 	cd manual; $(MAKE)
-@@ -144,6 +149,13 @@ clean:
- 	rm -f $(patsubst %.mly,%.ml, $(MLY))
- 	rm -f $(patsubst %.mll,%.ml, $(MLL))
- 	rm -f atdcat.cm[ioxa] atdcat.o atdcat.cma atdcat.cmxa
-+	-$(RM) META
-+	-$(RM) atd.a atd.cma atd.cmxa atd_version.ml atdcat 
-+	-$(RM) test.out test.out.out test2.out
-+	-$(RM) *.annot
-+
-+.PHONY: distclean
-+distclean: clean
- 	rm -rf odoc
- 	cd manual; $(MAKE) clean
- 
diff --git a/debian/patches/lintian-allows-to.patch b/debian/patches/lintian-allows-to.patch
new file mode 100644
index 0000000..7edfffc
--- /dev/null
+++ b/debian/patches/lintian-allows-to.patch
@@ -0,0 +1,15 @@
+Description: fix allows to
+Author: Hendrik Tews <hendrik at askra.de>
+--- a/atdcat.ml
++++ b/atdcat.ml
+@@ -131,8 +131,8 @@
+           or replace <doc text=\"...\"> by (*html ... *)
+           where the contents are formatted as HTML
+           using <p>, <code> and <pre>.
+-          This is suitable input for \"caml2html -ext html:cat\"
+-          which allows to convert ATD files into HTML.";
++          This is suitable input for \"caml2html -ext html:cat\",
++          which converts ATD files into HTML.";
+ 
+     "-strip",
+     Arg.String (fun s -> strip_sections := split_on_comma s @ !strip_sections),
diff --git a/debian/patches/makefile.patch b/debian/patches/makefile.patch
new file mode 100644
index 0000000..7101d38
--- /dev/null
+++ b/debian/patches/makefile.patch
@@ -0,0 +1,38 @@
+Description: several makefile fixes
+ tweak makefile for byte-code only architectures and
+ install some ml and mll where lintian complain about dangling cmi's
+Author: Hendrik Tews <hendrik at askra.de>
+--- a/Makefile
++++ b/Makefile
+@@ -66,7 +66,9 @@
+ 	test ! -f atdcat || cp atdcat $(BINDIR)/
+ 	test ! -f atdcat.exe || cp atdcat.exe $(BINDIR)/
+ 	ocamlfind install atd META \
+-		`find $(MLI) $(CMI) $(CMO) $(CMX) $(O) atd.cma atd.a atd.cmxa`
++		`find $(MLI) $(CMI) $(CMO) $(CMX) $(O) atd.cma atd.a atd.cmxa` \
++		atd_check.ml atd_doc_lexer.mll atd_doc_lexer.ml \
++		atd_lexer.mll atd_lexer.ml atd_predef.ml atd_version.ml
+ 
+ uninstall:
+ 	test ! -f $(BINDIR)/atdcat || rm $(BINDIR)/atdcat
+@@ -129,6 +131,11 @@
+ 		-package "$(OCAMLPACKS)" -linkpkg \
+ 		$(CMX) atdcat.ml
+ 
++atdcat.byte: dep $(CMI) $(CMO) atdcat.ml
++	ocamlfind ocamlc $(OCAMLFLAGS) -o atdcat \
++		-package "$(OCAMLPACKS)" -linkpkg \
++		$(CMO) atdcat.ml
++
+ .PHONY: doc
+ doc: odoc/index.html atdcat
+ 	cd manual; $(MAKE)
+@@ -140,7 +147,7 @@
+ 		-package "$(OCAMLPACKS)" $(DOCSOURCES)
+ 
+ .PHONY: test
+-test: atdcat test.atd test2.atd
++test: test.atd test2.atd
+ 	./atdcat test.atd > test.out
+ 	./atdcat test.out > test.out.out
+ 	cmp test.out test.out.out
diff --git a/debian/patches/series b/debian/patches/series
index fef5874..52aa1ff 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,3 @@
-debian-changes-0.9.2-1
+makefile.patch
+lintian-allows-to.patch
+build-manual-without-install.patch
diff --git a/debian/rules b/debian/rules
index 6a9e54a..bb1700d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,6 +3,7 @@
 
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
+#export DH_OPTIONS=-v
 
 DESTDIR=$(CURDIR)/debian/tmp
 
@@ -14,33 +15,31 @@ OCAMLFIND_LDCONF=ignore
 export OCAMLFIND_LDCONF
 
 %:
-	dh --with ocaml $@
+	dh $@ --with ocaml
 
 .PHONY: override_dh_auto_build
 override_dh_auto_build:
+	$(MAKE) all
 ifeq ($(OCAML_HAVE_OCAMLOPT),yes)
-	$(MAKE)
+	$(MAKE) opt
 else
-	$(MAKE) all
-endif 
+	$(MAKE) atdcat.byte
+endif
+	$(MAKE) odoc/index.html
+	$(MAKE) -C manual html pdf
 
 .PHONY: override_dh_auto_install
 override_dh_auto_install:
 	mkdir -p '$(DESTDIR)/usr/bin'
 	mkdir -p '$(OCAMLFIND_DESTDIR)'
-	make install 'BINDIR=$(DESTDIR)/usr/bin' 
+	make install 'BINDIR=$(DESTDIR)/usr/bin'
 
 .PHONY: override_dh_install
 override_dh_install:
 	dh_install --fail-missing
 
-.PHONY: override_dh_auto_test
-override_dh_auto_clean:
-	true
-
+# override this to prevent dh_auto_clean to try make distclean, 
+# which creates atd_version.ml
 .PHONY: override_dh_auto_clean
 override_dh_auto_clean:
 	$(MAKE) clean
-
-debian/atdcat.1: debian/atdcat.mkd
-	pandoc -s -w man $^ -o $@

-- 
ocaml-atd packaging



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