Hello community, here is the log from the commit of package ocaml-camlp4 for openSUSE:Factory checked in at 2019-11-07 23:14:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ocaml-camlp4 (Old) and /work/SRC/openSUSE:Factory/.ocaml-camlp4.new.2990 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ocaml-camlp4" Thu Nov 7 23:14:33 2019 rev:5 rq:745388 version:4.05 Changes: -------- --- /work/SRC/openSUSE:Factory/ocaml-camlp4/ocaml-camlp4.changes 2017-08-18 15:02:53.790889345 +0200 +++ /work/SRC/openSUSE:Factory/.ocaml-camlp4.new.2990/ocaml-camlp4.changes 2019-11-07 23:14:36.404408613 +0100 @@ -1,0 +2,8 @@ +Fri Nov 1 12:34:56 UTC 2019 - oher...@suse.de + +- Require current rpm macros +- Require exact ocaml(ocaml_base_version) +- Provide ocamlfind() via private META files, copied from findlib +- Use _service file + +------------------------------------------------------------------- Old: ---- camlp4-4.05-1.tar.xz New: ---- _service ocaml-camlp4-4.05.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ocaml-camlp4.spec ++++++ --- /var/tmp/diff_new_pack.Ddtt8K/_old 2019-11-07 23:14:36.832409082 +0100 +++ /var/tmp/diff_new_pack.Ddtt8K/_new 2019-11-07 23:14:36.840409090 +0100 @@ -24,13 +24,12 @@ License: SUSE-LGPL-2.0-with-linking-exception Group: Development/Languages/OCaml Url: https://github.com/ocaml/camlp4 -Source: camlp4-%{version}-1.tar.xz -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Source: %{name}-%{version}.tar.xz BuildRequires: ocaml-ocamlbuild -BuildRequires: ocaml-rpm-macros >= 4.05.0 +BuildRequires: ocaml-rpm-macros >= 20191101 BuildRequires: ocaml(ocaml_base_version) = 4.05 Conflicts: ocaml < 4.05.0 -Requires: ocaml-runtime >= 4.05.0 +Requires: ocaml-runtime = 4.05.0 %description Camlp4 is a Pre-Processor-Pretty-Printer for Objective Caml, parsing a @@ -38,7 +37,6 @@ This package contains the runtime files. - %package devel Summary: Pre-Processor-Pretty-Printer for Objective Caml Group: Development/Languages/OCaml @@ -54,7 +52,7 @@ This package contains the development files. %prep -%setup -q -n camlp4-%{version}-1 +%autosetup -p1 %build ./configure @@ -68,10 +66,156 @@ %endif %install -make install DESTDIR=%{buildroot} %{?_smp_mflags} +%make_install +d="%{buildroot}$(ocamlc -where)/camlp4" +tee "${d}/META" <<_META_ +# Specifications for the "camlp4" preprocessor: +requires = "" +version = "%{name} %{version}" +description = "Base for Camlp4 syntax extensions" +directory = "+camlp4" + +# For the toploop: +requires(byte,toploop) = "dynlink" +archive(byte,toploop,camlp4o) = "camlp4o.cma" +archive(byte,toploop,camlp4r) = "camlp4r.cma" + +# For the preprocessor itself: +archive(syntax,preprocessor,camlp4o) = "-parser o -parser op -printer p" +archive(syntax,preprocessor,camlp4r) = "-parser r -parser rp -printer p" +preprocessor = "camlp4" + +package "lib" ( + requires = "camlp4 dynlink" + version = "%{name} %{version}" + description = "Camlp4 library" + archive(byte) = "camlp4lib.cma" + archive(byte,toploop) = "" # already contained in camlp4*.cma + archive(native) = "camlp4lib.cmxa" +) + +package "gramlib" ( + requires = "camlp4.lib" + version = "%{name} %{version}" + description = "Compatibilty name for camlp4.lib" +) + +# dont use camlp4.lib and camlp4.fulllib together' +package "fulllib" ( + requires = "camlp4 dynlink" + version = "%{name} %{version}" + description = "Camlp4 library" + error(pkg_camlp4.lib) = "camlp4.lib and camlp4.fulllib are incompatible" + archive(byte) = "camlp4fulllib.cma" + archive(byte,toploop) = "" # already contained in camlp4*.cma + archive(native) = "camlp4fulllib.cmxa" +) + +package "quotations" ( + version = "%{name} %{version}" + description = "Syntax extension: Quotations to create AST nodes" + requires = "camlp4.quotations.r" # backward compat + archive(syntax,preprocessor) = "-ignore foo" + package "o" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax extension: Quotations to create AST nodes (original syntax)" + archive(syntax,preprocessor) = "-parser Camlp4QuotationCommon -parser Camlp4OCamlOriginalQuotationExpander" + archive(syntax,toploop) = "Camlp4Parsers/Camlp4QuotationCommon.cmo Camlp4Parsers/Camlp4OCamlOriginalQuotationExpander.cmo" + ) + package "r" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax extension: Quotations to create AST nodes (revised syntax)" + archive(syntax,preprocessor) = "-parser Camlp4QuotationCommon -parser Camlp4OCamlRevisedQuotationExpander" + archive(syntax,toploop) = "Camlp4Parsers/Camlp4QuotationCommon.cmo Camlp4Parsers/Camlp4OCamlRevisedQuotationExpander.cmo" + ) +) + +package "extend" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax extension: EXTEND the camlp4 grammar" + archive(syntax,preprocessor) = "-parser Camlp4GrammarParser" + archive(syntax,toploop) = "Camlp4Parsers/Camlp4GrammarParser.cmo" +) + +package "listcomprehension" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax extension for list comprehensions" + archive(syntax,preprocessor) = "-parser Camlp4ListComprehension" + archive(syntax,toploop) = "Camlp4Parsers/Camlp4ListComprehension.cmo" +) + +package "macro" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax extension: Conditional compilation" + archive(syntax,preprocessor) = "-parser Camlp4MacroParser" + archive(syntax,toploop) = "Camlp4Parsers/Camlp4MacroParser.cmo" +) + +package "mapgenerator" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Traverse data structure (map style)" + archive(syntax,preprocessor) = "-filter Camlp4MapGenerator" + archive(syntax,toploop) = "Camlp4Filters/Camlp4MapGenerator.cmo" +) + +package "foldgenerator" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Traverse data structure (fold style)" + archive(syntax,preprocessor) = "-filter Camlp4FoldGenerator" + archive(syntax,toploop) = "Camlp4Filters/Camlp4FoldGenerator.cmo" +) + +package "metagenerator" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Generate AST generator for data structure" + archive(syntax,preprocessor) = "-filter Camlp4MetaGenerator" + archive(syntax,toploop) = "Camlp4Filters/Camlp4MetaGenerator.cmo" +) + +package "locationstripper" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Remove location info from AST" + archive(syntax,preprocessor) = "-filter Camlp4LocationStripper" + archive(syntax,toploop) = "Camlp4Filters/Camlp4LocationStripper.cmo" +) + +package "tracer" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Trace execution" + archive(syntax,preprocessor) = "-filter Camlp4Tracer" + archive(syntax,toploop) = "Camlp4Filters/Camlp4Tracer.cmo" +) + +package "exceptiontracer" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Trace exception execution" + archive(syntax,preprocessor) = "-filter Camlp4ExceptionTracer" + archive(syntax,toploop) = "Camlp4Filters/Camlp4ExceptionTracer.cmo" +) + +package "profiler" ( + requires = "camlp4" + version = "%{name} %{version}" + description = "Syntax filter: Count events during execution" + archive(syntax,preprocessor) = "-filter Camlp4Profiler" + archive(syntax,toploop) = "Camlp4Filters/Camlp4Profiler.cmo" + archive(byte) = "camlp4prof.cmo" + archive(native) = "camlp4prof.cmx" +) +_META_ %files -%defattr(-,root,root) %doc LICENSE README.md %dir %{_libdir}/ocaml/camlp4 %dir %{_libdir}/ocaml/camlp4/Camlp4Filters @@ -91,11 +235,11 @@ %{_libdir}/ocaml/camlp4/Camlp4Top/*.cmo %files devel -%defattr(-,root,root) %{_bindir}/camlp4* %{_bindir}/mkcamlp4 -%if 0%{?ocaml_native_compiler} %dir %{_libdir}/ocaml/camlp4 +%{_libdir}/ocaml/camlp4/META +%if 0%{?ocaml_native_compiler} %{_libdir}/ocaml/camlp4/*.a %{_libdir}/ocaml/camlp4/*.cmx %{_libdir}/ocaml/camlp4/*.cmxa ++++++ _service ++++++ <services> <service name="tar_scm" mode="disabled"> <param name="url">git://github.com/ocaml/camlp4.git</param> <param name="scm">git</param> <param name="versionformat">4.05</param> <param name="revision">4.05</param> <param name="filename">ocaml-camlp4</param> </service> <service name="recompress" mode="disabled"> <param name="file">*.tar</param> <param name="compression">xz</param> </service> <service name="set_version" mode="disabled"/> </services>