2015-11-08 10:04:44 +01:00
|
|
|
#
|
|
|
|
# spec file for package ocaml-cppo
|
|
|
|
#
|
2019-02-05 23:36:56 +01:00
|
|
|
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
2018-02-01 06:53:44 +01:00
|
|
|
# Copyright (c) 2018 The openSUSE Project.
|
2015-11-08 10:04:44 +01:00
|
|
|
# Copyright (c) 2015 LISA GmbH, Bingen, Germany.
|
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
|
|
#
|
|
|
|
|
2017-05-17 16:41:38 +02:00
|
|
|
|
2018-02-01 06:53:44 +01:00
|
|
|
# cppo may use opam-installer but opam requires cppo for its build.
|
|
|
|
# So here we don't use opam-installer by default.
|
|
|
|
# Build with "--with-opam" to use opam despite the circular dependency.
|
|
|
|
%bcond_with opam
|
2015-11-08 10:04:44 +01:00
|
|
|
Name: ocaml-cppo
|
2019-02-05 23:36:56 +01:00
|
|
|
Version: 1.6.5
|
2017-05-17 16:41:38 +02:00
|
|
|
Release: 0
|
2017-07-25 10:40:17 +02:00
|
|
|
%{?ocaml_preserve_bytecode}
|
2017-05-17 16:41:38 +02:00
|
|
|
Summary: The C preprocessor written in OCaml
|
|
|
|
License: BSD-3-Clause
|
2017-07-25 15:21:39 +02:00
|
|
|
Group: Development/Languages/OCaml
|
2019-02-05 23:36:56 +01:00
|
|
|
Url: https://github.com/ocaml-community/cppo
|
2017-05-17 16:41:38 +02:00
|
|
|
Source: %{name}-%{version}.tar.xz
|
2018-02-01 06:53:44 +01:00
|
|
|
# PATCH-FIX-UPSTEAM ocaml-cppo-1.6.1-install-args.patch -- Allows to pass buildroot to opam-installer
|
|
|
|
Patch: ocaml-cppo-1.6.1-install-args.patch
|
2016-06-13 23:08:38 +02:00
|
|
|
BuildRequires: ocaml
|
2018-02-01 06:53:44 +01:00
|
|
|
BuildRequires: ocaml-dune
|
2016-06-13 23:08:38 +02:00
|
|
|
BuildRequires: ocaml-ocamldoc
|
|
|
|
BuildRequires: ocaml-rpm-macros >= 4.03
|
|
|
|
BuildRequires: ocamlfind(easy-format)
|
2016-05-25 19:29:36 +02:00
|
|
|
BuildRequires: ocamlfind(ocamlbuild)
|
2016-06-20 22:11:09 +02:00
|
|
|
BuildRequires: ocamlfind(str)
|
2016-06-13 23:08:38 +02:00
|
|
|
BuildRequires: ocamlfind(unix)
|
2018-02-01 06:53:44 +01:00
|
|
|
%if %{with opam}
|
|
|
|
BuildRequires: opam
|
|
|
|
%endif
|
2015-11-08 10:04:44 +01:00
|
|
|
|
|
|
|
%description
|
|
|
|
Cppo is an equivalent of the C preprocessor targeted at the OCaml language and
|
|
|
|
its variants.
|
|
|
|
|
|
|
|
The main purpose of cppo is to provide a lightweight tool for simple macro
|
|
|
|
substitution (#define) and file inclusion (#include) for the occasional case
|
|
|
|
when this is useful in OCaml. Processing specific sections of files by calling
|
|
|
|
external programs is also possible via #ext directives.
|
|
|
|
|
|
|
|
The implementation of cppo relies on the standard library of OCaml and on the
|
|
|
|
standard parsing tools Ocamllex and Ocamlyacc, which contribute to the
|
|
|
|
robustness of cppo across OCaml versions.
|
|
|
|
|
2016-05-25 11:32:10 +02:00
|
|
|
%package devel
|
|
|
|
Summary: Development files for %{name}
|
2017-07-25 15:21:39 +02:00
|
|
|
Group: Development/Languages/OCaml
|
2016-06-16 12:30:17 +02:00
|
|
|
Requires: %{name} = %{version}
|
2016-05-25 11:32:10 +02:00
|
|
|
|
|
|
|
%description devel
|
|
|
|
The %{name}-devel package contains libraries and signature files for
|
|
|
|
developing applications that use %{name}.
|
2016-06-20 22:01:49 +02:00
|
|
|
|
2015-11-08 10:04:44 +01:00
|
|
|
%prep
|
2016-06-20 22:01:49 +02:00
|
|
|
%setup -q
|
2018-02-01 06:53:44 +01:00
|
|
|
%patch -p1
|
2015-11-08 10:04:44 +01:00
|
|
|
|
|
|
|
%build
|
2019-02-05 23:36:56 +01:00
|
|
|
dune build @install --profile release
|
2015-11-08 10:04:44 +01:00
|
|
|
|
|
|
|
%install
|
2018-02-01 06:53:44 +01:00
|
|
|
%if %{with opam}
|
|
|
|
install -d %{buildroot}%{_libdir}/ocaml
|
|
|
|
%make_install INSTALL_ARGS="--prefix=%{buildroot}%{_prefix} --libdir=%{buildroot}%{_libdir}/ocaml"
|
|
|
|
rm -r %{buildroot}%{_prefix}/doc
|
|
|
|
%else
|
|
|
|
# By hand, not funny
|
|
|
|
cd _build/install/default
|
|
|
|
install -d %{buildroot}%{_libdir}/ocaml/cppo{,_ocamlbuild}
|
|
|
|
install -m0644 lib/cppo/* %{buildroot}%{_libdir}/ocaml/cppo/
|
|
|
|
install -m0644 lib/cppo_ocamlbuild/* %{buildroot}%{_libdir}/ocaml/cppo_ocamlbuild/
|
|
|
|
install -d %{buildroot}%{_bindir}
|
|
|
|
install -m0755 bin/cppo %{buildroot}%{_bindir}
|
|
|
|
%endif
|
2016-06-13 23:19:22 +02:00
|
|
|
|
2015-11-08 10:04:44 +01:00
|
|
|
%files
|
|
|
|
%defattr(-,root,root)
|
2018-02-01 06:53:44 +01:00
|
|
|
%{_bindir}/cppo
|
|
|
|
%doc LICENSE.md README.md
|
2016-05-25 11:32:10 +02:00
|
|
|
%dir %{_libdir}/ocaml
|
|
|
|
%dir %{_libdir}/ocaml/*
|
2017-07-17 16:56:55 +02:00
|
|
|
%if 0%{?ocaml_native_compiler}
|
2016-05-25 11:32:10 +02:00
|
|
|
%{_libdir}/ocaml/*/*.cmxs
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_libdir}/ocaml
|
|
|
|
%dir %{_libdir}/ocaml/*
|
2017-07-17 16:56:55 +02:00
|
|
|
%if 0%{?ocaml_native_compiler}
|
2016-05-25 13:57:36 +02:00
|
|
|
%{_libdir}/ocaml/*/*.a
|
2016-06-13 23:08:38 +02:00
|
|
|
%{_libdir}/ocaml/*/*.cmx
|
2016-05-25 11:32:10 +02:00
|
|
|
%{_libdir}/ocaml/*/*.cmxa
|
|
|
|
%endif
|
|
|
|
%{_libdir}/ocaml/*/*.cma
|
|
|
|
%{_libdir}/ocaml/*/*.cmi
|
2016-06-13 23:08:38 +02:00
|
|
|
%{_libdir}/ocaml/*/*.cmt
|
|
|
|
%{_libdir}/ocaml/*/*.cmti
|
2018-06-11 23:48:10 +02:00
|
|
|
%{_libdir}/ocaml/*/*.ml
|
2016-06-13 23:08:38 +02:00
|
|
|
%{_libdir}/ocaml/*/*.mli
|
2018-06-11 23:48:10 +02:00
|
|
|
%{_libdir}/ocaml/*/*.dune
|
2016-05-25 11:32:10 +02:00
|
|
|
%{_libdir}/ocaml/*/META
|
2018-02-01 06:53:44 +01:00
|
|
|
%{_libdir}/ocaml/*/opam
|
2015-11-08 10:04:44 +01:00
|
|
|
|
2017-05-17 16:41:38 +02:00
|
|
|
%changelog
|