35db574
%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
Jerry James e01d55e
%if !%{opt}
Jerry James e01d55e
%global debug_package %{nil}
Jerry James e01d55e
%endif
1d50e0d
1d50e0d
Name:           ocaml-camlp5
8a37e57
Version:        7.10
54db625
Release:        6%{?dist}.1
1d50e0d
Summary:        Classical version of camlp4 OCaml preprocessor
1d50e0d
1d50e0d
License:        BSD
ea46ed0
URL:            https://camlp5.github.io/
c6e3b00
8a37e57
Source0:        https://github.com/camlp5/camlp5/archive/rel710.tar.gz
35db574
3a83cdb
# Kill -warn-error A
Jerry James e01d55e
Patch0:         camlp5-6.11-kill-warn-error.patch
3a83cdb
bffad43
# Fix for OCaml 4.10.  Not upstream yet, but see:
bffad43
# https://github.com/camlp5/camlp5/pull/52
bffad43
Patch1:         0001-Add-support-for-OCaml-4.10.patch
bffad43
dfccee1
BuildRequires:  ocaml
35db574
BuildRequires:  ocaml-ocamldoc
1d50e0d
5129046
%global __ocaml_requires_opts -i Asttypes -i Parsetree -i Pa_extend
dc581fe
%global __ocaml_provides_opts -i Dynlink -i Dynlinkaux -i Pa_extend
1d50e0d
1d50e0d
%description
1d50e0d
Camlp5 is a preprocessor-pretty-printer of OCaml.
1d50e0d
1d50e0d
It is the continuation of the classical camlp4 with new features.
1d50e0d
1d50e0d
OCaml 3.10 and above have an official camlp4 which is incompatible
1d50e0d
with classical (<= 3.09) versions.  You can find that in the
1d50e0d
ocaml-camlp4 package.
1d50e0d
1d50e0d
1d50e0d
%package        devel
1d50e0d
Summary:        Development files for %{name}
1d50e0d
Requires:       %{name} = %{version}-%{release}
1d50e0d
1d50e0d
1d50e0d
%description    devel
1d50e0d
The %{name}-devel package contains libraries and signature files for
1d50e0d
developing applications that use %{name}.
1d50e0d
1d50e0d
1d50e0d
%prep
8a37e57
%setup -q -n camlp5-rel710
Jerry James e01d55e
%patch0 -p1
bffad43
%patch1 -p1
7c782e2
find . -name .gitignore -delete
2fb75ff
2fb75ff
# Build with debug information
3a83cdb
sed -i 's,WARNERR="",WARNERR="-g",' configure
2fb75ff
sed -i 's,-linkall,& -g,g' top/Makefile
2fb75ff
for fil in compile/compile.sh $(find . -name Makefile); do
Jerry James e01d55e
  sed -i 's,\$[({]OCAMLN[})]c,& -g,;s,\$[({]OCAMLN[})]opt,& -g,;s,LINKFLAGS=,&-g ,' $fil
2fb75ff
done
2fb75ff
1d50e0d
1d50e0d
%build
35db574
./configure
1d50e0d
%if %opt
Michel Normand 257252e
# For ppc64 we need a larger stack than default to compile some files
Michel Normand 257252e
# because the stages in the OCaml compiler are not mutually tail
Michel Normand 257252e
# recursive.
Michel Normand 257252e
%ifarch ppc64 ppc64le
Michel Normand 257252e
ulimit -a
Michel Normand 257252e
ulimit -Hs 65536
Michel Normand 257252e
ulimit -Ss 65536
Michel Normand 257252e
%endif
7c782e2
make %{_smp_mflags} world.opt
2fb75ff
%else
7c782e2
make %{_smp_mflags} world
1d50e0d
%endif
7c782e2
make -C doc/htmlp -j1
1d50e0d
1d50e0d
%install
1d50e0d
mkdir -p $RPM_BUILD_ROOT%{_libdir}/ocaml
1d50e0d
mkdir -p $RPM_BUILD_ROOT%{_bindir}
1d50e0d
mkdir -p $RPM_BUILD_ROOT%{_mandir}
1d50e0d
make install \
1d50e0d
  LIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml \
1d50e0d
  OLIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml \
1d50e0d
  BINDIR=$RPM_BUILD_ROOT%{_bindir} \
1d50e0d
  MANDIR=$RPM_BUILD_ROOT%{_mandir}
2fb75ff
cp -p etc/META $RPM_BUILD_ROOT%{_libdir}/ocaml/camlp5
71ee068
rm -f doc/htmlp/{*.sh,Makefile,html2*}
1d50e0d
1d50e0d
1d50e0d
%files
71ee068
%license LICENSE
8a37e57
%doc README.md
1d50e0d
%{_libdir}/ocaml/camlp5
1d50e0d
%if %opt
1d50e0d
%exclude %{_libdir}/ocaml/camlp5/*.a
1d50e0d
%exclude %{_libdir}/ocaml/camlp5/*.cmxa
1d50e0d
%exclude %{_libdir}/ocaml/camlp5/*.cmx
1d50e0d
%endif
1d50e0d
%exclude %{_libdir}/ocaml/camlp5/*.mli
1d50e0d
1d50e0d
1d50e0d
%files devel
2fb75ff
%doc CHANGES ICHANGES DEVEL UPGRADING doc/html
1d50e0d
%if %opt
1d50e0d
%{_libdir}/ocaml/camlp5/*.a
1d50e0d
%{_libdir}/ocaml/camlp5/*.cmxa
1d50e0d
%{_libdir}/ocaml/camlp5/*.cmx
1d50e0d
%endif
1d50e0d
%{_libdir}/ocaml/camlp5/*.mli
1d50e0d
%{_bindir}/camlp5*
1d50e0d
%{_bindir}/mkcamlp5*
1d50e0d
%{_bindir}/ocpp5
1d50e0d
%{_mandir}/man1/*.1*
1d50e0d
1d50e0d
1d50e0d
%changelog
54db625
* Thu Feb 27 2020 Richard W.M. Jones <rjones@redhat.com> - 7.10-6.1
54db625
- OCaml 4.10.0 final (Fedora 32).
54db625
613f1f2
* Wed Feb 26 2020 Richard W.M. Jones <rjones@redhat.com> - 7.10-6
613f1f2
- OCaml 4.10.0 final.
613f1f2
ab14ef7
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7.10-5
ab14ef7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
ab14ef7
bffad43
* Sun Jan 19 2020 Richard W.M. Jones <rjones@redhat.com> - 7.10-4
bffad43
- Add patch for OCaml 4.10 support.
bffad43
3f8125c
* Sat Jan 18 2020 Richard W.M. Jones <rjones@redhat.com> - 7.10-3
3f8125c
- OCaml 4.10.0+beta1 rebuild.
3f8125c
2e57e11
* Thu Jan 09 2020 Richard W.M. Jones <rjones@redhat.com> - 7.10-2
2e57e11
- OCaml 4.09.0 for riscv64
2e57e11
8a37e57
* Thu Dec 05 2019 Richard W.M. Jones <rjones@redhat.com> - 7.10-1
8a37e57
- Update to release 7.10.
7abaa82
- OCaml 4.09.0 (final) rebuild.
7abaa82
1e023e8
* Fri Aug 16 2019 Richard W.M. Jones <rjones@redhat.com> - 7.08-0.5.git9b9eb124c
1e023e8
- OCaml 4.08.1 (final) rebuild.
1e023e8
2ba6cd3
* Wed Jul 31 2019 Richard W.M. Jones <rjones@redhat.com> - 7.08-0.4.git9b9eb124c
2ba6cd3
- OCaml 4.08.1 (rc2) rebuild.
2ba6cd3
ba2fd7e
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.08-0.3.git9b9eb124c
ba2fd7e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
ba2fd7e
beab619
* Thu Jun 27 2019 Richard W.M. Jones <rjones@redhat.com> - 7.08-0.2.git9b9eb124c
beab619
- OCaml 4.08.0 (final) rebuild.
beab619
7c782e2
* Thu Jun 27 2019 Richard W.M. Jones <rjones@redhat.com> - 7.08-0.1
7c782e2
- Update to prerelease of 7.08 which will support OCaml 4.08.
7c782e2
- Enable parallel builds.
7c782e2
02ee537
* Mon Apr 29 2019 Richard W.M. Jones <rjones@redhat.com> - 7.05-8
02ee537
- Bump release and rebuild.
02ee537
42759de
* Mon Apr 29 2019 Richard W.M. Jones <rjones@redhat.com> - 7.05-7
42759de
- Bump release and rebuild.
42759de
a6f461f
* Mon Apr 29 2019 Richard W.M. Jones <rjones@redhat.com> - 7.05-6
a6f461f
- OCaml 4.08.0 (beta 3) rebuild.
a6f461f
b89a13d
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.05-5
b89a13d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
b89a13d
f0a4cd3
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.05-4
f0a4cd3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
f0a4cd3
4910c21
* Wed Jul 11 2018 Richard W.M. Jones <rjones@redhat.com> - 7.05-3
4910c21
- OCaml 4.07.0 (final) rebuild.
4910c21
10354b3
* Tue Jun 19 2018 Richard W.M. Jones <rjones@redhat.com> - 7.05-2
ba00894
- New upstream version 7.05.
8ff16b8
- Bump and rebuild for OCaml 4.07.0-rc1.
8ff16b8
7b6eaf8
* Thu Apr 26 2018 Richard W.M. Jones <rjones@redhat.com> - 7.03-3
7b6eaf8
- OCaml 4.07.0-beta2 rebuild.
7b6eaf8
8dc74db
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.03-2
8dc74db
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
8dc74db
8e1b076
* Fri Nov 17 2017 Richard W.M. Jones <rjones@redhat.com> - 7.03-1
8e1b076
- New upstream version 7.03.
7de318e
- OCaml 4.06.0 rebuild.
7de318e
97f3d0f
* Tue Aug 08 2017 Richard W.M. Jones <rjones@redhat.com> - 7.00-4
97f3d0f
- OCaml 4.05.0 rebuild.
97f3d0f
66afc2f
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.00-3
66afc2f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
66afc2f
0b3fc44
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.00-2
0b3fc44
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
0b3fc44
25a8f09
* Tue Jun 27 2017 Richard W.M. Jones <rjones@redhat.com> - 7.00-1
25a8f09
- New upstream version 7.00, including support for
25a8f09
  OCaml 4.04.2 rebuild.
df699c7
2a44bfd
* Sat May 13 2017 Richard W.M. Jones <rjones@redhat.com> - 6.17-3
2a44bfd
- OCaml 4.04.1 rebuild.
2a44bfd
1afe5c3
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.17-2
1afe5c3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
1afe5c3
ea46ed0
* Sat Dec 03 2016 Richard W.M. Jones <rjones@redhat.com> - 6.17-1
ea46ed0
- New upstream version 6.17 with support for OCaml 4.04.
ea46ed0
a803c3e
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 6.14-2
a803c3e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
a803c3e
863742b
* Thu Jul 30 2015 Richard W.M. Jones <rjones@redhat.com> - 6.14-1
863742b
- New upstream version 6.14.
863742b
a440de2
* Tue Jul 28 2015 Richard W.M. Jones <rjones@redhat.com> - 6.13-3
a440de2
- OCaml 4.02.3 rebuild.
a440de2
210e09d
* Wed Jun 24 2015 Richard W.M. Jones <rjones@redhat.com> - 6.13-2
210e09d
- ocaml-4.02.2 final rebuild.
210e09d
35c6156
* Wed Jun 17 2015 Richard W.M. Jones <rjones@redhat.com> - 6.13-1
35c6156
- New upstream version 6.13.
9f780fd
- ocaml-4.02.2 rebuild.
9f780fd
71ee068
* Fri May 15 2015 Ville Skyttä <ville.skytta@iki.fi> - 6.12-3
71ee068
- Mark LICENSE as %%license, don't ship .gitignore
71ee068
c25ad8c
* Mon Feb 16 2015 Richard W.M. Jones <rjones@redhat.com> - 6.12-2
c25ad8c
- ocaml-4.02.1 rebuild.
c25ad8c
Jerry James e01d55e
* Thu Nov  6 2014 Jerry James <loganjerry@gmail.com> - 6.12-1
Jerry James e01d55e
- Update to 6.12 final
Jerry James e01d55e
- Drop upstreamed patches (all but -kill-warn-error)
Jerry James e01d55e
- Drop debuginfo workaround; fixed upstream
Jerry James e01d55e
be1f695
* Sat Aug 30 2014 Richard W.M. Jones <rjones@redhat.com> - 6.12-0.5.git63a8c30f
be1f695
- ocaml-4.02.0 final rebuild.
be1f695
3a83cdb
* Sun Aug 24 2014 Richard W.M. Jones <rjones@redhat.com> - 6.12-0.4.git63a8c30f
3a83cdb
- Fixes for 4.02.0+rc1.
3a83cdb
- Kill -warn-error everywhere hopefully.
3a83cdb
- Update parsing/location.mli from OCaml sources.
3a83cdb
- Fix release numbering.
3a83cdb
892df99
* Sat Aug 23 2014 Richard W.M. Jones <rjones@redhat.com> - 6.12-0.git63a8c30f.3
892df99
- ocaml-4.02.0+rc1 rebuild.
892df99
8eb89e8
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.12-0.git63a8c30f.2
8eb89e8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
8eb89e8
d5b9b70
* Fri Aug 01 2014 Richard W.M. Jones <rjones@redhat.com> - 6.12-0.git63a8c30f.1
d5b9b70
- ocaml-4.02.0-0.8.git10e45753.fc22 build.
d5b9b70
c6e3b00
* Fri Aug 01 2014 Richard W.M. Jones <rjones@redhat.com> - 6.12-0.git63a8c30f
c6e3b00
- Rebase to 6.12 prerelease which supports OCaml 4.02.
3bfde46
- OCaml 4.02.0 beta rebuild.
c6e3b00
- New source URL.
3bfde46
035eb4b
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.11-4
035eb4b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
035eb4b
1e66b3d
* Tue Apr 15 2014 Richard W.M. Jones <rjones@redhat.com> - 6.11-3
1e66b3d
- Remove ocaml_arches macro (RHBZ#1087794).
1e66b3d
Michel Normand 257252e
* Thu Apr 10 2014 Michel Normand <normand@linux.vnet.ibm.com> 6.11-2
Michel Normand 257252e
- increase stack size for ppc64/ppc64le (RHBZ#1085850)
Michel Normand 257252e
2fb75ff
* Sat Sep 14 2013 Jerry James <loganjerry@gmail.com> - 6.11-1
2fb75ff
- New upstream version 6.11 (provides OCaml 4.01.0 support)
2fb75ff
- Build with debug information
2fb75ff
- Drop upstreamed -typevar patch
2fb75ff
- Upstream now provides its own META file
2fb75ff
cc93a96
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.07-3
cc93a96
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
cc93a96
4f5c340
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.07-2
4f5c340
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
4f5c340
dfccee1
* Wed Oct 17 2012 Jerry James <loganjerry@gmail.com> - 6.07-1
dfccee1
- New upstream version 6.07 (provides OCaml 4.00.1 support)
77ebc57
- Add -typevar patch to fix the build
dfccee1
e0c0b7c
* Sat Jul 28 2012 Richard W.M. Jones <rjones@redhat.com> - 6.06-4
83658c4
- Rebuild for OCaml 4.00.0 official release.
83658c4
6362181
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.06-3
6362181
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
6362181
5b63fa8
* Sun Jun 10 2012 Richard W.M. Jones <rjones@redhat.com> - 6.06-2
5b63fa8
- Rebuild for OCaml 4.00.0.
5b63fa8
acfe8e9
* Fri Jun  8 2012 Jerry James <loganjerry@gmail.com> - 6.06-1
acfe8e9
- New upstream version 6.06 (provides OCaml 4.0 support)
acfe8e9
- Add HTML documentation to the -devel package
acfe8e9
0e6d1b4
* Fri Jan 06 2012 Richard W.M. Jones <rjones@redhat.com> - 6.02.3-2
0e6d1b4
- Rebuild for OCaml 3.12.1.
0e6d1b4
55d9cda
* Thu Oct 27 2011 Jerry James <loganjerry@gmail.com> - 6.02.3-1
55d9cda
- New upstream version 6.02.3 (bz 691913).
55d9cda
- Switch from ExcludeArch to ExclusiveArch %%{ocaml_arches}.
55d9cda
- Drop unnecessary spec file elements (BuildRoot, etc.).
55d9cda
- Preserve timestamp on META.
55d9cda
99a5833
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.02.1-2
99a5833
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
99a5833
40a889c
* Thu Jan  6 2011 Richard W.M. Jones <rjones@redhat.com> - 6.02.1-1
40a889c
- New upstream version 6.02.1.
40a889c
- Remove upstream patches (both upstream).
40a889c
- Rebuild for OCaml 3.12.0.
40a889c
dc581fe
* Wed Jan 13 2010 Richard W.M. Jones <rjones@redhat.com> - 5.12-6
dc581fe
- Ignore bogus provides Dynlink and Dynlinkaux.
dc581fe
5129046
* Wed Jan  6 2010 Richard W.M. Jones <rjones@redhat.com> - 5.12-5
5129046
- Ignore ocaml(Pa_extend) bogus generated requires and provides.
5129046
35db574
* Tue Jan  5 2010 Richard W.M. Jones <rjones@redhat.com> - 5.12-4
35db574
- Include Debian patch to fix support for OCaml 3.11.2.
35db574
- Include Debian patch to fix typos in man page.
35db574
- Replace %%define with %%global.
35db574
- Use upstream RPM 4.8 OCaml dependency generator.
35db574
- Put ./configure in %%build section.
35db574
8988429
* Wed Dec 30 2009 Richard W.M. Jones <rjones@redhat.com> - 5.12-3
8988429
- Rebuild for OCaml 3.11.2.
8988429
bce37dd
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.12-2
bce37dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
bce37dd
a75605f
* Sat May 23 2009 Richard W.M. Jones <rjones@redhat.com> - 5.12-1
a75605f
- New upstream version 5.12, excepted to fix 3.11.1 build problems.
a75605f
056ae72
* Sat May 23 2009 Richard W.M. Jones <rjones@redhat.com> - 5.11-1
056ae72
- Rebuild for OCaml 3.11.1
056ae72
- New upstream version 5.11.
056ae72
- Remove META file listed twice in %%files.
056ae72
5a5606e
* Thu Apr 16 2009 S390x secondary arch maintainer <fedora-s390x@lists.fedoraproject.org>
5a5606e
- ExcludeArch sparc64, s390, s390x as we don't have OCaml on those archs
5a5606e
  (added sparc64 per request from the sparc maintainer)
5a5606e
55eb143
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.10-3
55eb143
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
55eb143
963d059
* Wed Nov 26 2008 Richard W.M. Jones <rjones@redhat.com> - 5.10-2
963d059
- Rebuild for OCaml 3.11.0+rc1.
963d059
6a00d13
* Thu Nov 20 2008 Richard W.M. Jones <rjones@redhat.com> - 5.10-1
6a00d13
- New upstream version 5.10.
6a00d13
6a00d13
* Wed Nov 19 2008 Richard W.M. Jones <rjones@redhat.com> - 5.09-2
6a00d13
- Rebuild for OCaml 3.11.0
6a00d13
a0872c1
* Sun Aug 31 2008 Richard W.M. Jones <rjones@redhat.com> - 5.09-1
a0872c1
- New upstream version 5.09.
a0872c1
0234360
* Wed Apr 23 2008 Richard W.M. Jones <rjones@redhat.com> - 5.08-3
0234360
- Rebuild for OCaml 3.10.2.
0234360
c042227
* Sat Mar  1 2008 Richard W.M. Jones <rjones@redhat.com> - 5.08-2
c042227
- Build on ppc64.
c042227
1d50e0d
* Thu Feb 21 2008 Richard W.M. Jones <rjones@redhat.com> - 5.08-1
1d50e0d
- New upstream version 5.08.
1d50e0d
- BR ocaml >= 3.10.1.
1d50e0d
1d50e0d
* Tue Feb 12 2008 Richard W.M. Jones <rjones@redhat.com> - 5.04-2
1d50e0d
- Strip the *.opt binaries.
1d50e0d
1d50e0d
* Thu Dec 13 2007 Stijn Hoop <stijn@win.tue.nl> - 5.04-1
1d50e0d
- Update to 5.04
1d50e0d
1d50e0d
* Wed Aug  8 2007 Richard W.M. Jones <rjones@redhat.com> - 4.07-2
1d50e0d
- Add a META file.
1d50e0d
1d50e0d
* Wed Aug  8 2007 Richard W.M. Jones <rjones@redhat.com> - 4.07-1
1d50e0d
- Initial RPM release.