fix i586 build: use make world (bytecode only) and exclude native-only files from %files
ignore Dynlink_cmo_format and Dynlink_cmxs_format in __ocaml_requires_opts (internal dynlink modules, approach from CentOS Stream) [release 5.4.1-3mamba;Thu Apr 30 2026]
This commit is contained in:
Binary file not shown.
Binary file not shown.
+149
-95
@@ -1,14 +1,14 @@
|
||||
%define majorminor %(echo %version | cut -d. -f 1-2)
|
||||
|
||||
Name: ocaml
|
||||
Version: 4.14.1
|
||||
Release: 2mamba
|
||||
Version: 5.4.1
|
||||
Release: 3mamba
|
||||
Summary: The OCaml compiler and programming environment
|
||||
Group: Applications/Development
|
||||
Vendor: openmamba
|
||||
Distribution: openmamba
|
||||
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||
URL: https://www.ocaml.org/
|
||||
Packager: Silvan Calarco <silvan@openmamba.org>
|
||||
URL: https://ocaml.org/
|
||||
Source0: http://caml.inria.fr/pub/distrib/ocaml-%{majorminor}/ocaml-%{version}.tar.xz
|
||||
Source1: http://caml.inria.fr/pub/distrib/ocaml-%{majorminor}/ocaml-%{majorminor}-refman.pdf
|
||||
Source2: http://caml.inria.fr/pub/distrib/ocaml-%{majorminor}/ocaml-%{majorminor}-refman-html.tar.gz
|
||||
@@ -16,9 +16,10 @@ Source3: http://caml.inria.fr/pub/distrib/ocaml-%{majorminor}/ocaml-%{majo
|
||||
License: LGPL
|
||||
## AUTOBUILDREQ-BEGIN
|
||||
BuildRequires: glibc-devel
|
||||
BuildRequires: libgcc
|
||||
BuildRequires: libzstd-devel
|
||||
## AUTOBUILDREQ-END
|
||||
BuildRequires: emacs-nox
|
||||
#BuildRequires: ocaml-runtime >= %{?epoch:%epoch:}%{version}
|
||||
BuildRequires: libgdbm-devel
|
||||
Requires: %{name}-runtime = %{?epoch:%epoch:}%{version}-%{release}
|
||||
Requires: gcc
|
||||
@@ -27,8 +28,15 @@ Requires: gcc
|
||||
# dependencies) we also have to explicitly depend on the right version
|
||||
# of ocaml-runtime.
|
||||
Requires: ocaml-runtime = %{?epoch:%epoch:}%{version}-%{release}
|
||||
Provides: ocaml(compiler) = %{version}
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte'
|
||||
Provides: ocaml(compiler) = %{version}
|
||||
# OCaml 5 exposes Seq as a stdlib alias but does not install seq.cmi.
|
||||
# Provide the interface hash explicitly so dependent packages can resolve it.
|
||||
Provides: ocaml(Seq) = d501be6def44505b4b6cae26de0c9204
|
||||
%ifarch %{ix86}
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' -i Dynlink_cmo_format -i Dynlink_cmxs_format -i Backend_intf -i Inlining_decision_intf -i Simplify_boxed_integer_ops_intf
|
||||
%else
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' -i Dynlink_cmo_format -i Dynlink_cmxs_format
|
||||
%endif
|
||||
%global __ocaml_provides_opts -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte'
|
||||
|
||||
# FIXME:
|
||||
@@ -123,7 +131,6 @@ Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||
|
||||
%description labltk
|
||||
Labltk is a library for interfacing OCaml with the scripting language Tcl/Tk.
|
||||
|
||||
This package contains the runtime files.
|
||||
|
||||
%package labltk-devel
|
||||
@@ -163,41 +170,37 @@ Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||
Requires(post): %{__install_info}
|
||||
Requires(preun): %{__install_info}
|
||||
Provides: ocaml-manual
|
||||
Obsoletes: ocaml-manual < 4.14.1
|
||||
Obsoletes: ocaml-manual < 4.14.0
|
||||
|
||||
%description docs
|
||||
OCaml is a general-purpose programming language, designed with program safety and reliability in mind.
|
||||
This package contains documentation in PDF and HTML format as well as man pages and info files.
|
||||
|
||||
%debug_package
|
||||
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte'
|
||||
%ifarch %{ix86}
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' -i Dynlink_cmo_format -i Dynlink_cmxs_format -i Backend_intf -i Inlining_decision_intf -i Simplify_boxed_integer_ops_intf
|
||||
%else
|
||||
%global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' -i Dynlink_cmo_format -i Dynlink_cmxs_format
|
||||
%endif
|
||||
%global __ocaml_provides_opts -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte'
|
||||
|
||||
%prep
|
||||
%setup -q -a2 -a3
|
||||
#-D -T
|
||||
#% setup -q -D -T
|
||||
#:<< _EOF
|
||||
cp %{S:1} refman.pdf
|
||||
|
||||
%build
|
||||
#:<< _EOF
|
||||
:<< _EOF
|
||||
%configure \
|
||||
--libdir=%{_libdir}/ocaml \
|
||||
--with-pic
|
||||
|
||||
#./configure \
|
||||
# -host %{_host} \
|
||||
#%ifnarch arm
|
||||
# -cc "gcc ${RPM_OPT_FLAGS}" \
|
||||
#%endif
|
||||
# -bindir %{_bindir} \
|
||||
# -libdir %{_libdir}/ocaml \
|
||||
# -mandir %{_mandir}/man1
|
||||
|
||||
%ifarch %{ix86}
|
||||
%make -j1 world
|
||||
%else
|
||||
%make -j1 world.opt
|
||||
#% make -j1 -C emacs ocamltags
|
||||
%make -j1 -C ocamldoc all
|
||||
%endif
|
||||
|
||||
%install
|
||||
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||||
@@ -205,13 +208,6 @@ cp %{S:1} refman.pdf
|
||||
%makeinstall \
|
||||
LIBDIR=%{_libdir}/ocaml
|
||||
|
||||
#cd emacs
|
||||
#%makeinstall \
|
||||
# BINDIR=%{buildroot}%{_bindir} \
|
||||
# EMACSDIR=%{buildroot}%{_datadir}/emacs/site-lisp
|
||||
#make install-ocamltags BINDIR=%{buildroot}%{_bindir}
|
||||
#cd ..
|
||||
|
||||
mkdir -p %{buildroot}%{_infodir}
|
||||
cd infoman
|
||||
cp ocaml*.gz %{buildroot}%{_infodir}
|
||||
@@ -221,73 +217,97 @@ cp ocaml*.gz %{buildroot}%{_infodir}
|
||||
|
||||
%post docs
|
||||
%install_info %{name}.info
|
||||
:
|
||||
exit 0
|
||||
|
||||
%preun docs
|
||||
if [ $1 -eq 0 ]; then
|
||||
%uninstall_info %{name}.info
|
||||
fi
|
||||
:
|
||||
exit 0
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/ocaml
|
||||
%{_bindir}/ocamlc
|
||||
%{_bindir}/ocamlc.byte
|
||||
%{_bindir}/ocamlc.opt
|
||||
%{_bindir}/ocamlcmt
|
||||
%{_bindir}/ocamlcp.byte
|
||||
%{_bindir}/ocamlcp.opt
|
||||
%{_bindir}/ocamldep.byte
|
||||
%{_bindir}/ocamllex.byte
|
||||
%{_bindir}/ocamlmklib.byte
|
||||
%{_bindir}/ocamlmklib.opt
|
||||
%{_bindir}/ocamlmktop.byte
|
||||
%{_bindir}/ocamlmktop.opt
|
||||
%{_bindir}/ocamlobjinfo.byte
|
||||
%{_bindir}/ocamlobjinfo.opt
|
||||
%{_bindir}/ocamlopt.byte
|
||||
%{_bindir}/ocamlprof.byte
|
||||
%{_bindir}/ocamlprof.opt
|
||||
%{_bindir}/ocamlcp
|
||||
%{_bindir}/ocamldebug
|
||||
%{_bindir}/ocamldep
|
||||
%{_bindir}/ocamldep.opt
|
||||
%{_bindir}/ocamllex
|
||||
%{_bindir}/ocamllex.opt
|
||||
%{_bindir}/ocamlmklib
|
||||
%{_bindir}/ocamlmktop
|
||||
%{_bindir}/ocamlobjinfo
|
||||
%{_bindir}/ocamlprof
|
||||
%{_bindir}/ocamlyacc
|
||||
%{_libdir}/ocaml/expunge
|
||||
%{_libdir}/ocaml/ld.conf
|
||||
%{_libdir}/ocaml/Makefile.config
|
||||
%{_libdir}/ocaml/*.mli
|
||||
%{_libdir}/ocaml/libcamlrun_shared.so
|
||||
%ifarch %{ix86}
|
||||
%{_libdir}/ocaml/libcaml*.a
|
||||
%{_libdir}/ocaml/libthreads.a
|
||||
%{_libdir}/ocaml/libunixbyt.a
|
||||
%{_libdir}/ocaml/runtime-launch-info
|
||||
%{_libdir}/ocaml/runtime_events/runtime_events.mli
|
||||
%{_libdir}/ocaml/str/str.mli
|
||||
%{_libdir}/ocaml/threads/event.cmti
|
||||
%{_libdir}/ocaml/threads/event.mli
|
||||
%{_libdir}/ocaml/threads/thread.cmti
|
||||
%{_libdir}/ocaml/threads/thread.mli
|
||||
%{_libdir}/ocaml/unix/unix.mli
|
||||
%{_libdir}/ocaml/unix/unixLabels.mli
|
||||
%endif
|
||||
%{_libdir}/ocaml/sys.ml.in
|
||||
%{_libdir}/ocaml/caml
|
||||
%ifnarch %{ix86}
|
||||
%{_bindir}/ocamlc.opt
|
||||
%{_bindir}/ocamlobjinfo.opt
|
||||
%{_bindir}/ocamlopt.byte
|
||||
%{_bindir}/ocamldep.opt
|
||||
%{_bindir}/ocamllex.opt
|
||||
%{_bindir}/ocamlopt
|
||||
%{_bindir}/ocamlopt.opt
|
||||
%{_bindir}/ocamloptp
|
||||
%{_bindir}/ocamloptp.byte
|
||||
%{_bindir}/ocamloptp.opt
|
||||
%{_bindir}/ocamlprof
|
||||
%{_bindir}/ocamlyacc
|
||||
#%{_bindir}/ocaml-instr-graph
|
||||
#%{_bindir}/ocaml-instr-report
|
||||
#
|
||||
%{_libdir}/ocaml/camlheader
|
||||
%{_libdir}/ocaml/camlheader_ur
|
||||
%{_libdir}/ocaml/expunge
|
||||
#%{_libdir}/ocaml/extract_crc
|
||||
%{_libdir}/ocaml/eventlog_metadata
|
||||
%{_libdir}/ocaml/ld.conf
|
||||
%{_libdir}/ocaml/Makefile.config
|
||||
%{_libdir}/ocaml/*.a
|
||||
%{_libdir}/ocaml/*.cmxs
|
||||
%{_libdir}/ocaml/*.cmxa
|
||||
%{_libdir}/ocaml/*.cmx
|
||||
%{_libdir}/ocaml/*.o
|
||||
%{_libdir}/ocaml/*.mli
|
||||
%{_libdir}/ocaml/libcamlrun_shared.so
|
||||
%{_libdir}/ocaml/libasmrun_shared.so
|
||||
#%{_libdir}/ocaml/objinfo_helper
|
||||
%{_libdir}/ocaml/dynlink/*.a
|
||||
%{_libdir}/ocaml/dynlink/*.cmx
|
||||
%{_libdir}/ocaml/dynlink/*.cmxa
|
||||
%endif
|
||||
%{_libdir}/ocaml/dynlink/*.mli
|
||||
%ifnarch %{ix86}
|
||||
%{_libdir}/ocaml/profiling/*.cmx
|
||||
%{_libdir}/ocaml/profiling/*.o
|
||||
%{_libdir}/ocaml/runtime_events/*.a
|
||||
%{_libdir}/ocaml/runtime_events/*.cmx
|
||||
%{_libdir}/ocaml/runtime_events/*.cmxa
|
||||
%{_libdir}/ocaml/runtime_events/*.cmxs
|
||||
%{_libdir}/ocaml/runtime_events/*.mli
|
||||
%{_libdir}/ocaml/runtime-launch-info
|
||||
%{_libdir}/ocaml/str/*.a
|
||||
%{_libdir}/ocaml/str/*.cmx
|
||||
%{_libdir}/ocaml/str/*.cmxa
|
||||
%{_libdir}/ocaml/str/*.cmxs
|
||||
%{_libdir}/ocaml/str/*.mli
|
||||
%{_libdir}/ocaml/unix/*.a
|
||||
%{_libdir}/ocaml/unix/*.cmx
|
||||
%{_libdir}/ocaml/unix/*.cmxa
|
||||
%{_libdir}/ocaml/unix/*.cmxs
|
||||
%{_libdir}/ocaml/unix/*.mli
|
||||
%{_libdir}/ocaml/threads/*.a
|
||||
%{_libdir}/ocaml/threads/*.cmx
|
||||
%{_libdir}/ocaml/threads/*.cmxa
|
||||
%{_libdir}/ocaml/threads/*.cmti
|
||||
%{_libdir}/ocaml/threads/*.mli
|
||||
%{_libdir}/ocaml/caml
|
||||
%endif
|
||||
%{_mandir}/man1/ocaml.*
|
||||
%{_mandir}/man1/ocamlc.*
|
||||
%{_mandir}/man1/ocamlcp.*
|
||||
@@ -306,30 +326,47 @@ fi
|
||||
%{_bindir}/ocamlrund
|
||||
%{_bindir}/ocamlruni
|
||||
%dir %{_libdir}/ocaml
|
||||
#%{_libdir}/ocaml/VERSION
|
||||
%{_libdir}/ocaml/*.cmo
|
||||
%{_libdir}/ocaml/*.cmi
|
||||
%{_libdir}/ocaml/*.cma
|
||||
%{_libdir}/ocaml/*.cmx
|
||||
%{_libdir}/ocaml/camlheaderd
|
||||
%{_libdir}/ocaml/camlheaderi
|
||||
%dir %{_libdir}/ocaml/dynlink
|
||||
%{_libdir}/ocaml/dynlink/META
|
||||
%{_libdir}/ocaml/dynlink/*.cma
|
||||
%{_libdir}/ocaml/dynlink/*.cmi
|
||||
%{_libdir}/ocaml/dynlink/*.cmti
|
||||
%dir %{_libdir}/ocaml/profiling
|
||||
%{_libdir}/ocaml/profiling/*.cmi
|
||||
%{_libdir}/ocaml/profiling/*.cmo
|
||||
%{_libdir}/ocaml/profiling/*.cmt
|
||||
%{_libdir}/ocaml/profiling/*.cmti
|
||||
%dir %{_libdir}/ocaml/runtime_events
|
||||
%{_libdir}/ocaml/runtime_events/META
|
||||
%{_libdir}/ocaml/runtime_events/*.cma
|
||||
%{_libdir}/ocaml/runtime_events/*.cmi
|
||||
%{_libdir}/ocaml/runtime_events/*.cmti
|
||||
%dir %{_libdir}/ocaml/stdlib
|
||||
%{_libdir}/ocaml/stdlib/META
|
||||
%dir %{_libdir}/ocaml/str
|
||||
%{_libdir}/ocaml/str/META
|
||||
%{_libdir}/ocaml/str/*.cma
|
||||
%{_libdir}/ocaml/str/*.cmi
|
||||
%{_libdir}/ocaml/str/*.cmti
|
||||
%dir %{_libdir}/ocaml/stublibs
|
||||
%{_libdir}/ocaml/stublibs/dllcamlstr.so
|
||||
%{_libdir}/ocaml/stublibs/dllthreads.so
|
||||
%{_libdir}/ocaml/stublibs/dllunix.so
|
||||
#%ifarch x86_64 aarch64
|
||||
#%{_libdir}/ocaml/stublibs/dllraw_spacetime_lib.so
|
||||
#%endif
|
||||
%{_libdir}/ocaml/stublibs/dll*.so
|
||||
%dir %{_libdir}/ocaml/threads
|
||||
%{_libdir}/ocaml/threads/META
|
||||
%{_libdir}/ocaml/threads/*.cmi
|
||||
%{_libdir}/ocaml/threads/*.cma
|
||||
%{_libdir}/ocaml/threads/*.cmx
|
||||
%{_libdir}/ocaml/unix/META
|
||||
%{_libdir}/ocaml/unix/*.cma
|
||||
%{_libdir}/ocaml/unix/*.cmi
|
||||
%{_libdir}/ocaml/unix/*.cmti
|
||||
%dir %{_libdir}/ocaml/compiler-libs
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmi
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmo
|
||||
%{_libdir}/ocaml/compiler-libs/*.cma
|
||||
%{_mandir}/man1/ocamlrun.*
|
||||
#%doc LICENSE
|
||||
%doc LICENSE
|
||||
|
||||
%files source
|
||||
%defattr(-,root,root)
|
||||
@@ -339,24 +376,16 @@ fi
|
||||
|
||||
%files compiler-libs
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/ocaml/compiler-libs/META
|
||||
%{_libdir}/ocaml/compiler-libs/*.mli
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmt
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmti
|
||||
%ifnarch %{ix86}
|
||||
%{_libdir}/ocaml/compiler-libs/*.a
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmx
|
||||
%{_libdir}/ocaml/compiler-libs/*.cmxa
|
||||
%{_libdir}/ocaml/compiler-libs/*.o
|
||||
|
||||
#%files x11
|
||||
#%defattr(-,root,root)
|
||||
#%{_libdir}/ocaml/graphicsX11.cmi
|
||||
#%{_libdir}/ocaml/graphicsX11.mli
|
||||
|
||||
#%files emacs
|
||||
#%defattr(-,root,root)
|
||||
#%{_datadir}/emacs/site-lisp/*
|
||||
#%{_bindir}/ocamltags
|
||||
##%doc emacs/README
|
||||
%endif
|
||||
|
||||
%files ocamldoc
|
||||
%defattr(-,root,root)
|
||||
@@ -371,15 +400,40 @@ fi
|
||||
%dir %{_datadir}/doc/ocaml
|
||||
%{_datadir}/doc/ocaml/*
|
||||
|
||||
#%doc Changes
|
||||
#%doc refman.pdf htmlman
|
||||
|
||||
%changelog
|
||||
* Sun Jul 30 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 4.14.1-2mamba
|
||||
- move *.cmx from ocaml to runtime package
|
||||
* Thu Apr 30 2026 Claude <claude@openmamba.org> 5.4.1-3mamba
|
||||
- fix i586 build: use make world (bytecode only) and exclude native-only files from %files
|
||||
- ignore Dynlink_cmo_format and Dynlink_cmxs_format in __ocaml_requires_opts (internal dynlink modules, approach from CentOS Stream)
|
||||
|
||||
* Sat Jul 01 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 4.14.1-1mamba
|
||||
- update to 4.14.1
|
||||
* Wed Apr 29 2026 Claude <claude@openmamba.org> 5.4.1-2mamba
|
||||
- add Provides for ocaml(Seq) = d501be6def44505b4b6cae26de0c9204 (stdlib Seq alias not exposed as .cmi in OCaml 5)
|
||||
|
||||
* Tue Feb 17 2026 Automatic Build System <autodist@openmamba.org> 5.4.1-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Fri Oct 10 2025 Automatic Build System <autodist@openmamba.org> 5.4.0-2mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Fri Oct 10 2025 Automatic Build System <autodist@openmamba.org> 5.4.0-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Thu Jan 09 2025 Automatic Build System <autodist@openmamba.org> 5.3.0-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Sat Dec 07 2024 Automatic Build System <autodist@openmamba.org> 5.2.1-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Fri Dec 08 2023 Automatic Build System <autodist@mambasoft.it> 5.1.1-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Sat Sep 16 2023 Automatic Build System <autodist@mambasoft.it> 5.1.0-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
* Fri Jun 30 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 5.0.0-2mamba
|
||||
- bump release
|
||||
|
||||
* Fri Jun 30 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 5.0.0-1mamba
|
||||
- update to 5.0.0
|
||||
|
||||
* Mon Apr 26 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 4.11.1-5mamba
|
||||
- workaround ocaml-runtime requiring ocaml-compiler-libs by moving needed files into ocaml-runtime
|
||||
|
||||
Reference in New Issue
Block a user