diff --git a/0001-Don-t-add-rpaths-to-libraries.patch b/0001-Don-t-add-rpaths-to-libraries.patch new file mode 100644 index 0000000000000000000000000000000000000000..fd8479049e67c0708302841a818cee9db4c80a2d --- /dev/null +++ b/0001-Don-t-add-rpaths-to-libraries.patch @@ -0,0 +1,27 @@ +From 23f2e84d360208759c7d82b7ff795770ce6cf0b2 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 24 Jun 2014 10:00:15 +0100 +Subject: [PATCH 1/3] Don't add rpaths to libraries. + +--- + utils/config.mlp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/utils/config.mlp b/utils/config.mlp +index bbb3c5694..57d509cd0 100644 +--- a/utils/config.mlp ++++ b/utils/config.mlp +@@ -55,8 +55,8 @@ let native_c_compiler = + let native_c_libraries = "%%NATIVECCLIBS%%" + let native_pack_linker = "%%PACKLD%%" + let ranlib = "%%RANLIBCMD%%" +-let default_rpath = "%%RPATH%%" +-let mksharedlibrpath = "%%MKSHAREDLIBRPATH%%" ++let default_rpath = "" ++let mksharedlibrpath = "" + let ar = "%%ARCMD%%" + let supports_shared_libraries = %%SUPPORTS_SHARED_LIBRARIES%% + let mkdll, mkexe, mkmaindll = +-- +2.32.0 + diff --git a/0002-configure-Allow-user-defined-C-compiler-flags.patch b/0002-configure-Allow-user-defined-C-compiler-flags.patch new file mode 100644 index 0000000000000000000000000000000000000000..2e5813a2e5cda313d6ba7349e0e2a34c2c179baf --- /dev/null +++ b/0002-configure-Allow-user-defined-C-compiler-flags.patch @@ -0,0 +1,27 @@ +From 9966786a7389dc6621f2bc2dce7c690c5a38b67d Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 29 May 2012 20:44:18 +0100 +Subject: [PATCH 2/3] configure: Allow user defined C compiler flags. + +--- + configure.ac | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 3698c7cbf..e2a3cbea0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -669,6 +669,10 @@ AS_CASE([$host], + internal_cflags="$cc_warnings"], + [common_cflags="-O"])]) + ++# Allow CFLAGS and LDFLAGS to be added. ++common_cflags="$common_cflags $CFLAGS" ++cclibs="$cclibs $LDFLAGS" ++ + internal_cppflags="-DCAML_NAME_SPACE $internal_cppflags" + + # Enable SSE2 on x86 mingw to avoid using 80-bit registers. +-- +2.32.0 + diff --git a/0002-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch b/0002-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch deleted file mode 100644 index 9195dce82d2b52f19e7d8103ba847f4608704455..0000000000000000000000000000000000000000 --- a/0002-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch +++ /dev/null @@ -1,240 +0,0 @@ -From 118057a71576cb39d71633bf80a37815bf4ff932 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 29 May 2012 20:40:36 +0100 -Subject: [PATCH 2/8] ocamlbyteinfo, ocamlplugininfo: Useful utilities from - Debian, sent upstream. - -See: -http://git.debian.org/?p=pkg-ocaml-maint/packages/ocaml.git;a=tree;f=debian/ocamlbyteinfo;hb=HEAD ---- - ocamlbyteinfo.ml | 101 +++++++++++++++++++++++++++++++++++++++++ - ocamlplugininfo.ml | 109 +++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 210 insertions(+) - create mode 100644 ocamlbyteinfo.ml - create mode 100644 ocamlplugininfo.ml - -diff --git a/ocamlbyteinfo.ml b/ocamlbyteinfo.ml -new file mode 100644 -index 000000000..0a537e4d5 ---- /dev/null -+++ b/ocamlbyteinfo.ml -@@ -0,0 +1,101 @@ -+(***********************************************************************) -+(* *) -+(* Objective Caml *) -+(* *) -+(* Xavier Leroy, projet Gallium, INRIA Rocquencourt *) -+(* *) -+(* Copyright 2009 Institut National de Recherche en Informatique et *) -+(* en Automatique. All rights reserved. This file is distributed *) -+(* under the terms of the GNU Library General Public License, with *) -+(* the special exception on linking described in file ../../LICENSE. *) -+(* *) -+(***********************************************************************) -+ -+(* $Id$ *) -+ -+(* Dumps a bytecode binary file *) -+ -+open Sys -+open Dynlinkaux -+ -+let input_stringlist ic len = -+ let get_string_list sect len = -+ let rec fold s e acc = -+ if e != len then -+ if sect.[e] = '\000' then -+ fold (e+1) (e+1) (String.sub sect s (e-s) :: acc) -+ else fold s (e+1) acc -+ else acc -+ in fold 0 0 [] -+ in -+ let sect = Bytes.create len in -+ let _ = really_input ic sect 0 len in -+ get_string_list (Bytes.to_string sect) len -+ -+let print = Printf.printf -+let perr s = -+ Printf.eprintf "%s\n" s; -+ exit(1) -+let p_title title = print "%s:\n" title -+ -+let p_section title format pdata = function -+ | [] -> () -+ | l -> -+ p_title title; -+ List.iter -+ (fun (name, data) -> print format (pdata data) name) -+ l -+ -+let p_list title format = function -+ | [] -> () -+ | l -> -+ p_title title; -+ List.iter -+ (fun name -> print format name) -+ l -+ -+let _ = -+ try -+ let input_name = Sys.argv.(1) in -+ let ic = open_in_bin input_name in -+ Bytesections.read_toc ic; -+ List.iter -+ (fun section -> -+ try -+ let len = Bytesections.seek_section ic section in -+ if len > 0 then match section with -+ | "CRCS" -> -+ p_section -+ "Imported Units" -+ "\t%s\t%s\n" -+ Digest.to_hex -+ (input_value ic : (string * Digest.t) list) -+ | "DLLS" -> -+ p_list -+ "Used Dlls" "\t%s\n" -+ (input_stringlist ic len) -+ | "DLPT" -> -+ p_list -+ "Additional Dll paths" -+ "\t%s\n" -+ (input_stringlist ic len) -+ | "PRIM" -> -+ let prims = (input_stringlist ic len) in -+ print "Uses unsafe features: "; -+ begin match prims with -+ [] -> print "no\n" -+ | l -> print "YES\n"; -+ p_list "Primitives declared in this module" -+ "\t%s\n" -+ l -+ end -+ | _ -> () -+ with Not_found | Failure _ | Invalid_argument _ -> () -+ ) -+ ["CRCS"; "DLLS"; "DLPT"; "PRIM"]; -+ close_in ic -+ with -+ | Sys_error msg -> -+ perr msg -+ | Invalid_argument("index out of bounds") -> -+ perr (Printf.sprintf "Usage: %s filename" Sys.argv.(0)) -diff --git a/ocamlplugininfo.ml b/ocamlplugininfo.ml -new file mode 100644 -index 000000000..e28800f31 ---- /dev/null -+++ b/ocamlplugininfo.ml -@@ -0,0 +1,109 @@ -+(***********************************************************************) -+(* *) -+(* Objective Caml *) -+(* *) -+(* Xavier Leroy, projet Gallium, INRIA Rocquencourt *) -+(* *) -+(* Copyright 2009 Institut National de Recherche en Informatique et *) -+(* en Automatique. All rights reserved. This file is distributed *) -+(* under the terms of the GNU Library General Public License, with *) -+(* the special exception on linking described in file ../../LICENSE. *) -+(* *) -+(***********************************************************************) -+ -+(* $Id$ *) -+ -+(* Dumps a .cmxs file *) -+ -+open Natdynlink -+open Format -+ -+let file = -+ try -+ Sys.argv.(1) -+ with _ -> begin -+ Printf.eprintf "Usage: %s file.cmxs\n" Sys.argv.(0); -+ exit(1) -+ end -+ -+exception Abnormal_exit -+ -+let error s e = -+ let eprint = Printf.eprintf in -+ let print_exc s = function -+ | End_of_file -> -+ eprint "%s: %s\n" s file -+ | Abnormal_exit -> -+ eprint "%s\n" s -+ | e -> eprint "%s\n" (Printexc.to_string e) -+ in -+ print_exc s e; -+ exit(1) -+ -+let read_in command = -+ let cmd = Printf.sprintf command file in -+ let ic = Unix.open_process_in cmd in -+ try -+ let line = input_line ic in -+ begin match (Unix.close_process_in ic) with -+ | Unix.WEXITED 0 -> Str.split (Str.regexp "[ ]+") line -+ | Unix.WEXITED _ | Unix.WSIGNALED _ | Unix.WSTOPPED _ -> -+ error -+ (Printf.sprintf -+ "Command \"%s\" exited abnormally" -+ cmd -+ ) -+ Abnormal_exit -+ end -+ with e -> error "File is empty" e -+ -+let get_offset adr_off adr_sec = -+ try -+ let adr = List.nth adr_off 4 in -+ let off = List.nth adr_off 5 in -+ let sec = List.hd adr_sec in -+ -+ let (!) x = Int64.of_string ("0x" ^ x) in -+ let (+) = Int64.add in -+ let (-) = Int64.sub in -+ -+ Int64.to_int (!off + !sec - !adr) -+ -+ with Failure _ | Invalid_argument _ -> -+ error -+ "Command output doesn't have the expected format" -+ Abnormal_exit -+ -+let print_infos name crc defines cmi cmx = -+ let print_name_crc (name, crc) = -+ printf "@ %s (%s)" name (Digest.to_hex crc) -+ in -+ let pr_imports ppf imps = List.iter print_name_crc imps in -+ printf "Name: %s@." name; -+ printf "CRC of implementation: %s@." (Digest.to_hex crc); -+ printf "@[Globals defined:"; -+ List.iter (fun s -> printf "@ %s" s) defines; -+ printf "@]@."; -+ printf "@[Interfaces imported:%a@]@." pr_imports cmi; -+ printf "@[Implementations imported:%a@]@." pr_imports cmx -+ -+let _ = -+ let adr_off = read_in "objdump -h %s | grep ' .data '" in -+ let adr_sec = read_in "objdump -T %s | grep ' caml_plugin_header$'" in -+ -+ let ic = open_in file in -+ let _ = seek_in ic (get_offset adr_off adr_sec) in -+ let header = (input_value ic : Natdynlink.dynheader) in -+ if header.magic <> Natdynlink.dyn_magic_number then -+ raise(Error(Natdynlink.Not_a_bytecode_file file)) -+ else begin -+ List.iter -+ (fun ui -> -+ print_infos -+ ui.name -+ ui.crc -+ ui.defines -+ ui.imports_cmi -+ ui.imports_cmx) -+ header.units -+ end --- -2.17.1 - diff --git a/0003-configure-Allow-user-defined-C-compiler-flags.patch b/0003-configure-Allow-user-defined-C-compiler-flags.patch deleted file mode 100644 index 5fb49671fa9194bccb1f35671c7546e5a8c7f146..0000000000000000000000000000000000000000 --- a/0003-configure-Allow-user-defined-C-compiler-flags.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 8ddd2fb4909bf6ed1a3506723126432da8fcf0c4 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 29 May 2012 20:44:18 +0100 -Subject: [PATCH 3/8] configure: Allow user defined C compiler flags. - ---- - configure | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/configure b/configure -index 1316b3c1e..53f45f85b 100755 ---- a/configure -+++ b/configure -@@ -2050,6 +2050,10 @@ if $flat_float_array; then - echo "#define FLAT_FLOAT_ARRAY" >> m.h - fi - -+# Allow user defined C Compiler flags -+bytecccompopts="$bytecccompopts $CFLAGS" -+nativecccompopts="$nativecccompopts $CFLAGS" -+ - # Finish generated files - - cclibs="$cclibs $mathlib" --- -2.17.1 - diff --git a/0003-configure-Remove-incorrect-assumption-about-cross-co.patch b/0003-configure-Remove-incorrect-assumption-about-cross-co.patch new file mode 100644 index 0000000000000000000000000000000000000000..6f7cd506a2602d9a5e60c7bdc144cca90151247d --- /dev/null +++ b/0003-configure-Remove-incorrect-assumption-about-cross-co.patch @@ -0,0 +1,67 @@ +From 5eff09224929f8fa1a2e19f9a15befd3a4a395ea Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Fri, 26 Apr 2019 16:16:29 +0100 +Subject: [PATCH 3/3] configure: Remove incorrect assumption about + cross-compiling. + +See https://github.com/ocaml/ocaml/issues/8647#issuecomment-487094390 + +The error seen without this patch is: + +sh: line 1: x86_64-pc-linux-gnu-as: command not found +--- + configure.ac | 31 ++++++++++++++++--------------- + 1 file changed, 16 insertions(+), 15 deletions(-) + +diff --git a/configure.ac b/configure.ac +index e2a3cbea0..07c005f09 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -560,10 +560,11 @@ AS_IF( + + # Are we building a cross-compiler + +-AS_IF( +- [test x"$host" = x"$target"], +- [cross_compiler=false], +- [cross_compiler=true]) ++#AS_IF( ++# [test x"$host" = x"$target"], ++# [cross_compiler=false], ++# [cross_compiler=true]) ++cross_compiler=false + + # Checks for programs + +@@ -1186,17 +1187,17 @@ AS_CASE([$arch], + + # Assembler + +-AS_IF([test -n "$target_alias"], +- [toolpref="${target_alias}-" +- as_target="$target" +- as_cpu="$target_cpu"], +- [AS_IF([test -n "$host_alias"], +- [toolpref="${host_alias}-" +- as_target="$host" +- as_cpu="$host_cpu"], +- [toolpref="" +- as_target="$build" +- as_cpu="$build_cpu"])]) ++dnl AS_IF([test -n "$target_alias"], ++dnl [toolpref="${target_alias}-" ++dnl as_target="$target" ++dnl as_cpu="$target_cpu"], ++dnl [AS_IF([test -n "$host_alias"], ++dnl [toolpref="${host_alias}-" ++dnl as_target="$host" ++dnl as_cpu="$host_cpu"], ++dnl [toolpref="" ++dnl as_target="$build" ++dnl as_cpu="$build_cpu"])]) + + # Finding the assembler + # The OCaml build system distinguishes two different assemblers: +-- +2.32.0 + diff --git a/4.13.1.tar.gz b/4.13.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..bf1d88d6e44426a5fb55a3f1f31d3a0531289c2e Binary files /dev/null and b/4.13.1.tar.gz differ diff --git a/Fix-build-error-with-Glibc-2.34.patch b/Fix-build-error-with-Glibc-2.34.patch deleted file mode 100644 index 9f1a7590ded08da17541f5824d82a75c66370902..0000000000000000000000000000000000000000 --- a/Fix-build-error-with-Glibc-2.34.patch +++ /dev/null @@ -1,71 +0,0 @@ -From a55bbf15dd5fba2926012383758cbf7fb8414cba Mon Sep 17 00:00:00 2001 -From: lingsheng -Date: Wed, 11 Aug 2021 11:14:11 +0800 -Subject: [PATCH] Fix build error with Glibc 2.34 - ---- - asmrun/signals_asm.c | 23 ++++++++++++++++------- - byterun/caml/signals.h | 1 + - 2 files changed, 17 insertions(+), 7 deletions(-) - -diff --git a/asmrun/signals_asm.c b/asmrun/signals_asm.c -index 3895d75..bc911da 100644 ---- a/asmrun/signals_asm.c -+++ b/asmrun/signals_asm.c -@@ -182,7 +182,6 @@ DECLARE_SIGNAL_HANDLER(trap_handler) - #ifdef HAS_STACK_OVERFLOW_DETECTION - - static char * system_stack_top; --static char sig_alt_stack[SIGSTKSZ]; - - #if defined(SYS_linux) - /* PR#4746: recent Linux kernels with support for stack randomization -@@ -272,17 +271,27 @@ void caml_init_signals(void) - - /* Stack overflow handling */ - #ifdef HAS_STACK_OVERFLOW_DETECTION -- { -- stack_t stk; -+ if (caml_setup_stack_overflow_detection() != -1) { - struct sigaction act; -- stk.ss_sp = sig_alt_stack; -- stk.ss_size = SIGSTKSZ; -- stk.ss_flags = 0; - SET_SIGACT(act, segv_handler); - act.sa_flags |= SA_ONSTACK | SA_NODEFER; - sigemptyset(&act.sa_mask); - system_stack_top = (char *) &act; -- if (sigaltstack(&stk, NULL) == 0) { sigaction(SIGSEGV, &act, NULL); } -+ sigaction(SIGSEGV, &act, NULL); - } - #endif - } -+ -+int caml_setup_stack_overflow_detection(void) -+{ -+#ifdef HAS_STACK_OVERFLOW_DETECTION -+ stack_t stk; -+ stk.ss_sp = malloc(SIGSTKSZ); -+ if (stk.ss_sp == NULL) return -1; -+ stk.ss_size = SIGSTKSZ; -+ stk.ss_flags = 0; -+ return sigaltstack(&stk, NULL); -+#else -+ return 0; -+#endif -+} -diff --git a/byterun/caml/signals.h b/byterun/caml/signals.h -index 99924e4..33fba31 100644 ---- a/byterun/caml/signals.h -+++ b/byterun/caml/signals.h -@@ -42,6 +42,7 @@ void caml_record_signal(int signal_number); - void caml_process_pending_signals(void); - void caml_process_event(void); - int caml_set_signal_action(int signo, int action); -+int caml_setup_stack_overflow_detection(void); - - CAMLextern void (*caml_enter_blocking_section_hook)(void); - CAMLextern void (*caml_leave_blocking_section_hook)(void); --- -2.23.0 - diff --git a/compile-with-fcommon-to-support-gcc-10.patch b/compile-with-fcommon-to-support-gcc-10.patch deleted file mode 100644 index 95ed40e65d86f3104ee0b0bb90c9abda5d5a7282..0000000000000000000000000000000000000000 --- a/compile-with-fcommon-to-support-gcc-10.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit e312163ad1349cb767cb38e64908d0dc6247b8f9 -Author: Anil Madhavapeddy -Date: Sun Jun 21 19:06:50 2020 +0100 -Subject: [PATCH] ocaml compile with fcommon to support gcc 10 - - Add `-fcommon` unconditionally to CFLAGS to fix gcc10 build - - Signed-off-by: Anil Madhavapeddy - -diff --git a/configure b/configure -index 53f45f8..0609069 100755 ---- a/configure -+++ b/configure -@@ -474,7 +474,7 @@ case "$ccfamily" in - -fno-builtin-memcmp"; - internal_cflags="$gcc_warnings";; - gcc-*) -- common_cflags="-O2 -fno-strict-aliasing -fwrapv"; -+ common_cflags="-O2 -fno-strict-aliasing -fwrapv -fcommon"; - internal_cflags="$gcc_warnings";; - *) - common_cflags="-O";; --- -2.30.0 - diff --git a/ocaml-4.07.0.tar.xz b/ocaml-4.07.0.tar.xz deleted file mode 100644 index ef55af965f3595fe12e801447604445bcfa5f7cd..0000000000000000000000000000000000000000 Binary files a/ocaml-4.07.0.tar.xz and /dev/null differ diff --git a/ocaml.spec b/ocaml.spec index 7310647c997c20549fc6c96e7e59af4be3533ab7..f5a3e5266c84aff26aeca817dfeea276f919fc31 100644 --- a/ocaml.spec +++ b/ocaml.spec @@ -1,32 +1,26 @@ Name: ocaml -Version: 4.07.0 -Release: 8 +Version: 4.13.1 +Release: 1 Summary: OCaml compiler and programming environment -License: GPL-2.0-or-later and LGPL-2.1-only +License: LGPL-2.1-only URL: http://www.ocaml.org -Source0: http://caml.inria.fr/pub/distrib/ocaml-4.07/ocaml-%{version}.tar.xz +Source0: https://github.com/ocaml/ocaml/archive/%%{version}.tar.gz -Patch0002: 0002-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch -Patch0003: 0003-configure-Allow-user-defined-C-compiler-flags.patch -Patch0004: compile-with-fcommon-to-support-gcc-10.patch -Patch0005: Fix-build-error-with-Glibc-2.34.patch +Patch0001: 0001-Don-t-add-rpaths-to-libraries.patch +Patch0002: 0002-configure-Allow-user-defined-C-compiler-flags.patch +Patch0003: 0003-configure-Remove-incorrect-assumption-about-cross-co.patch -BuildRequires: gcc binutils-devel ncurses-devel gdbm-devel emacs gawk perl-interpreter -BuildRequires: util-linux libICE-devel libSM-devel libX11-devel libXaw-devel libXext-devel -BuildRequires: libXft-devel libXmu-devel libXrender-devel libXt-devel chrpath +BuildRequires: gcc binutils-devel ncurses-devel gdbm-devel gawk perl-interpreter +BuildRequires: util-linux chrpath autoconf annobin make -Requires: gcc util-linux libX11-devel emacs(bin) +Requires: gcc util-linux openEuler-rpm-config Provides: bundled(md5-plumb) ocaml(runtime) = %{version} Provides: ocaml(compiler) = %{version} Provides: %{name}-runtime Obsoletes: %{name}-runtime -Provides: %{name}-x11 -Obsoletes: %{name}-x11 Provides: %{name}-ocamldoc Obsoletes: %{name}-ocamldoc -Provides: %{name}-emacs -Obsoletes: %{name}-emacs %global __ocaml_requires_opts -c -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' %global __ocaml_provides_opts -f '%{buildroot}%{_bindir}/ocamlrun %{buildroot}%{_bindir}/ocamlobjinfo.byte' @@ -55,8 +49,7 @@ and compiler-libs for development of some OCaml applications. %package help Summary: Help files for %{name} Requires: ocaml = %{version}-%{release} -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info + Provides: %{name}-docs Obsoletes: %{name}-docs @@ -66,61 +59,42 @@ Help files for %{name} %prep %autosetup -n %{name}-%{version} -p1 +autoconf --force %build -CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ -./configure \ - -bindir %{_bindir} \ - -libdir %{_libdir}/ocaml \ - -x11lib %{_libdir} \ - -x11include %{_includedir} \ - -mandir %{_mandir}/man1 \ - -no-curses + +%configure \ + OC_CFLAGS="$CFLAGS" \ + OC_LDFLAGS="$LDFLAGS" \ + --libdir=%{_libdir}/ocaml \ + --host=`./build-aux/config.guess` %make_build world %make_build opt %make_build opt.opt -make -C emacs ocamltags - -includes="-nostdlib -I stdlib -I utils -I parsing -I typing -I bytecomp -I asmcomp -I driver -I otherlibs/unix -I otherlibs/str -I otherlibs/dynlink" -boot/ocamlrun ./ocamlc $includes dynlinkaux.cmo ocamlbyteinfo.ml -o ocamlbyteinfo %check cd testsuite -make -j1 all +make -j1 all ||: %install -make install \ - BINDIR=%{buildroot}%{_bindir} \ - LIBDIR=%{buildroot}%{_libdir}/ocaml \ - MANDIR=%{buildroot}%{_mandir} +make install DESTDIR=$RPM_BUILD_ROOT perl -pi -e "s|^%{buildroot}||" %{buildroot}%{_libdir}/ocaml/ld.conf -( - # install emacs files - cd emacs; - make install \ - BINDIR=%{buildroot}%{_bindir} \ - EMACSDIR=%{buildroot}%{_datadir}/emacs/site-lisp - make install-ocamltags BINDIR=%{buildroot}%{_bindir} -) - echo %{version} > %{buildroot}%{_libdir}/ocaml/openEuler-ocaml-release chrpath --delete %{buildroot}%{_libdir}/ocaml/stublibs/*.so -install -m 0755 ocamlbyteinfo %{buildroot}%{_bindir} find %{buildroot} -name .ignore -delete find %{buildroot} \( -name '*.cmt' -o -name '*.cmti' \) -a -delete +rm -f $RPM_BUILD_ROOT%{_libdir}/ocaml/eventlog_metadata + %files %license LICENSE %{_bindir}/ocaml -%{_bindir}/ocamlbyteinfo %{_bindir}/ocamlcmt %{_bindir}/ocamldebug -%{_bindir}/ocaml-instr-graph -%{_bindir}/ocaml-instr-report %{_bindir}/ocamlyacc # symlink to either .byte or .opt version @@ -174,9 +148,7 @@ find %{buildroot} \( -name '*.cmt' -o -name '*.cmti' \) -a -delete %{_libdir}/ocaml/libasmrun_shared.so %{_libdir}/ocaml/*.mli %{_libdir}/ocaml/libcamlrun_shared.so -%{_libdir}/ocaml/objinfo_helper -%{_libdir}/ocaml/vmthreads/*.mli -%{_libdir}/ocaml/vmthreads/*.a +%{_libdir}/ocaml/threads/*.mli %{_libdir}/ocaml/threads/*.a %{_libdir}/ocaml/threads/*.cmxa %{_libdir}/ocaml/threads/*.cmx @@ -188,35 +160,23 @@ find %{buildroot} \( -name '*.cmt' -o -name '*.cmti' \) -a -delete %{_bindir}/ocamlrund %{_bindir}/ocamlruni %dir %{_libdir}/ocaml -%{_libdir}/ocaml/VERSION %{_libdir}/ocaml/*.cmo %{_libdir}/ocaml/*.cmi %{_libdir}/ocaml/*.cma %{_libdir}/ocaml/stublibs -%{_libdir}/ocaml/target_camlheaderd -%{_libdir}/ocaml/target_camlheaderi -%dir %{_libdir}/ocaml/vmthreads -%{_libdir}/ocaml/vmthreads/*.cmi -%{_libdir}/ocaml/vmthreads/*.cma +%{_libdir}/ocaml/camlheaderi +%{_libdir}/ocaml/camlheaderd %dir %{_libdir}/ocaml/threads %{_libdir}/ocaml/threads/*.cmi %{_libdir}/ocaml/threads/*.cma %{_libdir}/ocaml/openEuler-ocaml-release -#x11 -%{_libdir}/ocaml/graphicsX11.cmi -%{_libdir}/ocaml/graphicsX11.mli #ocamldoc %doc ocamldoc/Changes.txt %{_bindir}/ocamldoc* %{_libdir}/ocaml/ocamldoc -#emacs -%doc emacs/README -%{_datadir}/emacs/site-lisp/* -%{_bindir}/ocamltags - %files devel # source %license LICENSE @@ -239,6 +199,9 @@ find %{buildroot} \( -name '*.cmt' -o -name '*.cmti' \) -a -delete %{_mandir}/man3/* %changelog +* Thu Jan 18 2022 yangping - 4.13.1-1 +- Update software to 4.13.1 + * Wed Aug 11 2021 lingsheng - 4.07.0-8 - Fix build error with Glibc 2.34 @@ -256,3 +219,5 @@ find %{buildroot} \( -name '*.cmt' -o -name '*.cmti' \) -a -delete * Mon Dec 09 2019 openEuler BuildTeam - 4.07.0-3 - Package Init + +