Initial import
This commit is contained in:
parent
8fb97a847f
commit
aa4be47c15
1
.gitignore
vendored
1
.gitignore
vendored
@ -0,0 +1 @@
|
||||
/xmlm-1.2.0.tbz
|
109
ocaml-xmlm.spec
Normal file
109
ocaml-xmlm.spec
Normal file
@ -0,0 +1,109 @@
|
||||
%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
|
||||
%if !%{opt}
|
||||
%global debug_package %{nil}
|
||||
%endif
|
||||
|
||||
Name: ocaml-xmlm
|
||||
Version: 1.2.0
|
||||
Release: 2%{?dist}
|
||||
Summary: A streaming XML codec
|
||||
|
||||
License: BSD
|
||||
URL: http://erratique.ch/software/xmlm
|
||||
Source0: http://erratique.ch/software/xmlm/releases/xmlm-%{version}.tbz
|
||||
# Example XML files for testing
|
||||
Source1: test-valid.xml
|
||||
Source2: test-invalid.xml
|
||||
|
||||
ExclusiveArch: %{ocaml_arches}
|
||||
|
||||
BuildRequires: ocaml >= 3.10.0
|
||||
BuildRequires: ocaml-findlib
|
||||
|
||||
%global libname %(sed -e 's/^ocaml-//' <<< %{name})
|
||||
|
||||
%description
|
||||
Xmlm is an OCaml streaming codec to decode and encode the XML data
|
||||
format. It can process XML documents without a complete in-memory
|
||||
representation of the data.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The %{name}-devel package contains libraries and signature files for
|
||||
developing applications that use %{name}.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n %{libname}-%{version}
|
||||
|
||||
|
||||
%build
|
||||
%if %{opt}
|
||||
./pkg/build true
|
||||
%else
|
||||
./pkg/build false
|
||||
%endif
|
||||
|
||||
|
||||
%install
|
||||
# These rules work if the library uses 'ocamlfind install' to install itself.
|
||||
export DESTDIR=$RPM_BUILD_ROOT
|
||||
export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml
|
||||
mkdir -p $RPM_BUILD_ROOT%{_bindir}
|
||||
mkdir -p $OCAMLFIND_DESTDIR/%{libname}
|
||||
|
||||
%if %{opt}
|
||||
install -m 755 -p _build/test/xmltrip.native $RPM_BUILD_ROOT%{_bindir}/xmltrip
|
||||
install -m 644 -p _build/src/xmlm.{a,cmxa} $OCAMLFIND_DESTDIR/%{libname}/
|
||||
install -m 755 -p _build/src/xmlm.cmxs $OCAMLFIND_DESTDIR/%{libname}/
|
||||
%else
|
||||
install -m 755 -p _build/test/xmltrip.byte $RPM_BUILD_ROOT%{_bindir}/xmltrip
|
||||
%endif
|
||||
install -m 644 -p _build/pkg/META _build/src/xmlm.{cm?,mli} $OCAMLFIND_DESTDIR/%{libname}/
|
||||
|
||||
|
||||
%check
|
||||
# Against valid XML
|
||||
$RPM_BUILD_ROOT%{_bindir}/xmltrip -p %{SOURCE1} 2>valid-err.log
|
||||
[ -z "$(cat valid-err.log)" ]
|
||||
|
||||
# Against invalid XML - stderr should contain the word expected
|
||||
$RPM_BUILD_ROOT%{_bindir}/xmltrip -p %{SOURCE2} 2>invalid-err.log
|
||||
grep expected invalid-err.log >/dev/null
|
||||
|
||||
%files
|
||||
# LICENSE not bundled
|
||||
%doc README.md
|
||||
%{_bindir}/xmltrip
|
||||
%{_libdir}/ocaml/xmlm/
|
||||
%if %opt
|
||||
%exclude %{_libdir}/ocaml/*/*.a
|
||||
%exclude %{_libdir}/ocaml/*/*.cmxa
|
||||
%exclude %{_libdir}/ocaml/*/*.cmxs
|
||||
%exclude %{_libdir}/ocaml/*/*.cmx
|
||||
%endif
|
||||
%exclude %{_libdir}/ocaml/*/*.mli
|
||||
|
||||
|
||||
%files devel
|
||||
# LICENSE not bundled
|
||||
%doc CHANGES.md _build/test/examples.ml _build/test/xhtml.ml doc
|
||||
%if %opt
|
||||
%{_libdir}/ocaml/*/*.a
|
||||
%{_libdir}/ocaml/*/*.cmxa
|
||||
%{_libdir}/ocaml/*/*.cmxs
|
||||
%{_libdir}/ocaml/*/*.cmx
|
||||
%endif
|
||||
%{_libdir}/ocaml/*/*.mli
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Feb 8 2014 Michel Salim <salimma@fedoraproject.org> - 1.2.0-2
|
||||
- Incorporate review feedback
|
||||
|
||||
* Mon Jan 20 2014 Michel Salim <salimma@fedoraproject.org> - 1.2.0-1
|
||||
- Initial package
|
4
test-invalid.xml
Normal file
4
test-invalid.xml
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<a>
|
||||
<b>
|
||||
</a>
|
4
test-valid.xml
Normal file
4
test-valid.xml
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<a>
|
||||
<b />
|
||||
</a>
|
Loading…
Reference in New Issue
Block a user