Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 8a48badd9ca929b64f3a661d453594a3 > files > 2

cduce-0.5.3-8.fc15.src.rpm

%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
%global debug_package %{nil}

%global ocaml_major 3.12
%global ocaml_minor 0

# Disabled temporarily for 3.11.2+rc1, 3.12.0
%global with_ocamlduce 0

%if %{with_ocamlduce}
%global ocamlduce_version %{ocaml_major}.%{ocaml_minor}.0
%endif

Name:           cduce
Version:        0.5.3
Release:        8%{?dist}
Summary:        Modern XML-oriented functional language

Group:          Development/Libraries
License:        BSD
URL:            http://www.cduce.org/
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExcludeArch:    ppc64 s390 s390x sparc64

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
%if %{with_ocamlduce}
#Source2:        http://forge.ocamlcore.org/frs/download.php/225/ocamlduce-%{ocamlduce_version}.tar.gz
Source2:         http://debian.glondu.net/debian/ocaml-3.12.0/pool/ocamlduce/ocamlduce_3.12.0.0.orig.tar.gz
%endif

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

%global __ocaml_requires_opts -i Asttypes -i Outcometree -i Parsetree


%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.

For ocamlduce (the modified OCaml language which incorporates CDuce
extensions), please install the cduce-ocamlduce package.


%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}.


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


%description    ocamlduce
This package contains a modified version of the OCaml language which
incorporates CDuce extensions for working with XML documents.
%endif


%prep
%setup -q -n %{name}-%{version}
%if %{with_ocamlduce}
%setup -q -n %{name}-%{version} -T -D -a 2
%endif

# 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

%if %{with_ocamlduce}
# Building ocamlduce is a bit more involved ...
pushd ocamlduce-%{ocamlduce_version}
make prepare \
  OCAML_VERSION=%{ocaml_major}.%{ocaml_minor} \
  OCAML_SOURCE=%{SOURCE1} \
  OCAML_SRCDIR=ocaml-%{ocaml_major}.%{ocaml_minor}
cd ocaml-%{ocaml_major}.%{ocaml_minor}
  # Configure must match the one from base ocaml.spec
CFLAGS="$RPM_OPT_FLAGS" ./configure \
    -bindir %{_bindir} \
    -libdir %{_libdir}/ocaml \
    -x11lib %{_libdir} \
    -x11include %{_includedir} \
    -mandir %{_mandir}/man1
make -f Makefile.ocamlduce world world.opt
popd
%endif


%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}

%if %{with_ocamlduce}
# Install ocamlduce.
pushd ocamlduce-%{ocamlduce_version}
mkdir -p $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlduce
cd ocaml-%{ocaml_major}.%{ocaml_minor}
make -f Makefile.ocamlduce installbyte installopt \
  DUCE_LIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlduce \
  BINDIR=$RPM_BUILD_ROOT%{_bindir}
popd
%endif


%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}/


%if %{with_ocamlduce}
%files ocamlduce
%defattr(-,root,root,-)
%{_bindir}/ocamlduce*
%{_libdir}/ocaml/ocamlduce/
%endif


%changelog
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Fri Jan 21 2010 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-7
- Recompile for OCaml 3.12.0.
- Include ocamlduce from Stephane Glondu's version, but leave it
  disabled since I still cannot get it to compile.

* Thu Jan 14 2010 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-6
- Temporarily disable ocamlduce until we work out the build problem.
- Recheck package with rpmlint.

* Tue Jan  5 2010 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-5
- ocamlduce: Upstream fix for OCaml 3.11.2+rc1.
- Use upstream RPM 4.8 OCaml dependency generator.
- Replace %%define with %%global.

* Wed Dec 30 2009 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-4
- Rebuild for OCaml 3.11.2.

* Wed Sep 30 2009 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-3
- Rebuild for OCaml 3.11.1.
- Reenable ocamlduce 3.11.1.0.

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Tue May 26 2009 Richard W.M. Jones <rjones@redhat.com> - 0.5.3-1
- New upstream release 0.5.3.
- Patch for compatibility with OCaml 3.11 now upstream.
- Rebuild for OCaml 3.11.1+rc0.
- Disable ocamlduce - waiting for upstream to release a compatible version.

* Thu Apr 16 2009 S390x secondary arch maintainer <fedora-s390x@lists.fedoraproject.org>
- ExcludeArch sparc64, s390, s390x as we don't have OCaml on those archs
  (added sparc64 per request from the sparc maintainer)

* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.2.1-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Sat Jan 17 2009 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-13
- Add ocamlduce subpackage.
- Capitalize the summary line as per packaging guidelines.

* Wed Jan 14 2009 Richard W.M. Jones <rjones@redhat.com> - 0.5.2.1-12
- Improve the OCaml 3.11.0 patch (suggested by Kim Nguyen).

* 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.