* Update section on camlp4 in the policy
authorSylvain Le Gall <gildor@debian.org>
Tue, 13 May 2008 18:46:29 +0000 (18:46 +0000)
committerSylvain Le Gall <gildor@debian.org>
Tue, 13 May 2008 18:46:29 +0000 (18:46 +0000)
debian/policy/chapter-generalities.xml
debian/policy/chapter-libpack.xml
debian/policy/ocaml_packaging_policy.xml

index d4a0bd3b40d60bab0bb48b8ee8f9fd6b7c71e557..969585dbf668eedd4fd669b5b70139f237d7c2d6 100644 (file)
             <listitem><para>bytecode object files (<filename>*.cmo</filename>)</para></listitem>
             <listitem><para>native object files (<filename>*.cmx</filename>)</para></listitem>
             <listitem><para>configuration files for handling libraries with <filename>ocamlfind</filename> (<filename>META</filename>)</para></listitem>
-           <!-- ZACK: do we really need to differentiate them? They are plain
-           objects or library after all ... -->
-           <!--<listitem><para>&camlp4; related files (<filename>*.cm[ao]</filename>)</para></listitem>-->
         </itemizedlist>
     </para>
 </section>
index 9d38b0d5f22ee31cc84ea670eab5d88636383649..4b5d39540cbaab853fb98e41c880e0cae9456cbe 100644 (file)
 -->
 
 <section id="camlp4-path">
-    <title>&camlp4;</title>
-    <para>
-        Actually, &camlp4; extensions are stored in
-        <filename>&ocaml-sys-dir;/camlp4/</filename>. In order to do something
-        cleaner, &ocaml-force; proposes to put this files in their own directory, even in their
-        own package. It is not mandatory, but it could ease a lot by avoiding
-        name clashes.
+  <title>&camlp4;/&camlp5;</title>
+
+    <para> Actually, &camlp4; extensions should be processed just as standard
+      OCaml library. The META file distributed with this syntax extension
+      should follow the 
+      <ulink url="http://cocan.org/osr/meta_files_for_packages_containing_syntax_extensions">
+        OSR: META files for packages containing syntax extensions</ulink>. In
+      particular, the syntax extension should be contained in a <varname>syntax</varname> sub
+      packages.
     </para>
 
     <para>
-        You just have to consider a &camlp4; file just as a standard library, except that you
-        prefix them with <varname>-syntax</varname>. For example: the syntax
-        extension coming with <application>libokey-ocaml-dev</application> should be stored
-        in <filename>&ocaml-sys-dir;/okey-syntax/</filename>, the package
-        containing it should be called <application>libokey-syntax-ocaml-dev</application>.
+      The naming convention of the package is to use the same naming as with
+      standard package, replacing <varname>-ocaml-</varname> by the syntax
+      extension name, <varname>-camlp4-</varname>. 
     </para>
 
     <para>
-        It is recommended to use <filename>META</filename> to specify how to handle this
-        extension.
+      If a package contains at the same time syntax extension and library, it
+      is up to the maintainer to choose the most relevant name for the package.
+      Whatever the name chosen for the package, the other name should be a
+      <varname>Provide</varname> of the package.
     </para>
 
     <para>
-        All definition is taken from previous text considering syntax extension as a standalone
-        library.
+      For example, consider the package <application>sexplib310</application>.
+      It provides a syntax extension and a library, which is the runtime support  
+      of the additional function generated by the syntax extension. Since the most
+      common use of <application>sexplib310</application> is through its syntax 
+      extension, the package is name
+      <application>libsexplib-camlp4-dev</application> and it also provide
+      <application>libsexplib-ocaml-dev</application>.  
     </para>
 
+    <para>
+      &camlp5; is an alternate pretty-printer and preprocessor for OCaml
+      (which is compatible with pre-3.10.0 version). Syntax extension are
+      handled through exactly the same scheme as for &camlp4; except that
+      package name use <varname>-camlp5-</varname> rather than
+      <varname>-camlp4-</varname>.
+  </para>
 </section>
 
 <section id="documentation">
index c2ea848ad14011cbcb1ca55c9cfe8cffa885406b..ccd42f1efb8f51d84c7f841b15d8809ca2bdb290 100644 (file)
@@ -18,7 +18,8 @@
 <!ENTITY ocamlopt        "<application>ocamlopt</application>">
 <!ENTITY ocamldoc        "<application>ocamldoc</application>">
 <!ENTITY ocamlfind       "<application>ocamlfind</application>">
-<!ENTITY camlp4          "<application>CamlP4</application>">
+<!ENTITY camlp4          "<application>Camlp4</application>">
+<!ENTITY camlp5          "<application>Camlp5</application>">
 <!ENTITY debian-name     "Debian">
 <!ENTITY authors             SYSTEM "authors.xml">
 <!ENTITY legal               SYSTEM "legal.xml">