Blob Blame History Raw
%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
%define debug_package %{nil}
%define ocaml_major 3.11
%define ocaml_minor 0

Name:           cduce
Version:        0.5.2.1
Release:        11%{?dist}
Summary:        modern XML-oriented functional language

Group:          Development/Libraries
License:        BSD
URL:            http://www.cduce.org/
Source0:        http://www.cduce.org/download/%{name}-%{version}.tar.gz
Source1:        http://caml.inria.fr/distrib/ocaml-%{ocaml_major}/ocaml-%{ocaml_major}.%{ocaml_minor}.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExcludeArch:    ppc64

Patch0:         cduce-0.5.2.1-ocaml-3.11.0.patch

BuildRequires:  ocaml = %{ocaml_major}.%{ocaml_minor}
BuildRequires:  ocaml-ocamldoc
BuildRequires:  ocaml-camlp4-devel
BuildRequires:  ocaml-findlib-devel
BuildRequires:  ocaml-ocamlnet-devel
BuildRequires:  ocaml-pcre-devel
BuildRequires:  ocaml-pxp-devel
BuildRequires:  ocaml-expat-devel
BuildRequires:  ocaml-curl-devel
BuildRequires:  ocaml-ulex-devel
BuildRequires:  pcre-devel
BuildRequires:  bzip2
BuildRequires:  chrpath
BuildRequires:  rpm >= 4.4.2.3-2

%define _use_internal_dependency_generator 0
%define __find_requires /usr/lib/rpm/ocaml-find-requires.sh -i Asttypes -i Outcometree -i Parsetree
%define __find_provides /usr/lib/rpm/ocaml-find-provides.sh

%description
CDuce is a modern XML-oriented functional language with innovative
features. A compiler is available under the terms of an open-source
license. CDuce is type-safe, efficient, and offers powerful
constructions to work with XML documents.


%package        devel
Summary:        Development files for %{name}
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}


%description    devel
The %{name}-devel package contains libraries and signature files for
developing applications that use %{name}.


%prep
%setup -q -n cduce-0.5.2

%patch0 -p1

# Unpack the OCaml sources in the build directory.
bzcat %{SOURCE1} | tar xf -
./configure --prefix=%{_prefix} \
  --bindir=%{_bindir} \
  --mandir=%{_mandir} \
  --docdir=%{_docdir} \
  --mliface=ocaml-%{ocaml_major}.%{ocaml_minor}


%build
make all doc
strip cduce dtd2cduce
chrpath --delete cduce


%install
rm -rf $RPM_BUILD_ROOT
export DESTDIR=$RPM_BUILD_ROOT
export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml
mkdir -p $OCAMLFIND_DESTDIR
make install \
  BINDIR=$RPM_BUILD_ROOT%{_bindir} \
  MANDIR=$RPM_BUILD_ROOT%{_mandir} \
  DOCDIR=$RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version}


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%doc AUTHORS CHANGES README LICENSE VERSION
%{_libdir}/ocaml/cduce
%if %opt
%exclude %{_libdir}/ocaml/cduce/*.a
%exclude %{_libdir}/ocaml/cduce/*.cmxa
%endif
%{_bindir}/cduce
%{_bindir}/dtd2cduce
%{_bindir}/cduce_mktop


%files devel
%defattr(-,root,root,-)
%{_libdir}/ocaml/cduce/*.a
%{_libdir}/ocaml/cduce/*.cmxa
%{_mandir}/man1/*.1.gz
%{_docdir}/%{name}-devel-%{version}/


%changelog
* Fri Dec  5 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-11
- Attempt to rebuild against OCaml 3.11.0.

* Sat Nov 22 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-10
- Don't include the name in the summary line.

* Thu Apr 24 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-9
- Problem with the previous import to Koji - reimport.

* Wed Apr 23 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-8
- Forgot to change the OCaml version number in the header.

* Wed Apr 23 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-7
- Rebuild for OCaml 3.10.2

* Fri Apr 18 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-6
- Rebuild against updated RPM (see bug 443118).

* Fri Apr  4 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-5
- Upstream renamed the tarball from 0.5.2-1 to 0.5.2.1.

* Tue Mar 25 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-4
- ExcludeArch ppc64 again (see bug 438843).

* Tue Mar 25 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-3
- Added BR pcre-devel.
- Test build in Koji.

* Wed Mar  5 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-2
- Remove ExcludeArch ppc64.

* Tue Feb 26 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-1
- New upstream release 0.5.2-1.

* Tue Feb 26 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.2-1
- New upstream release 0.5.2.
- Removed netcgi patch.
- AUTHORS file is now UTF-8 so remove that change.

* Fri Feb 15 2008 Richard W.M. Jones <rjones@redhat.com> - 0.5.1-1
- New upstream release 0.5.1.
- New OCaml 3.10.1.

* Thu Sep 13 2007 Richard W.M. Jones <rjones@redhat.com> - 0.5.0-1
- Upstream version 0.5.0
- Remove RPATH in cduce binary.
- ExcludeArch ppc64.
- Build without ocamlopt.
- Convert AUTHORS file to UTF-8.
- Ignore Parsetree module.

* Sat May 26 2007 Richard W.M. Jones <rjones@redhat.com> - 0.4.2-1
- Initial RPM release.