New upstream version 4.05.0.

- Disable parallel builds for now.
- *.mli files are now included in ocaml-compiler-libs.
This commit is contained in:
Richard W.M. Jones 2017-07-17 11:15:49 +01:00
parent f1516cc100
commit 40c060b8ec
12 changed files with 60 additions and 80 deletions

1
.gitignore vendored
View File

@ -6,3 +6,4 @@
/4.04.0+beta2.tar.gz
/ocaml-4.04.1.tar.xz
/ocaml-4.04.2.tar.xz
/ocaml-4.05.0.tar.xz

View File

@ -1,17 +1,17 @@
From ff87e5c4252e5545e50fff0a2e7c10b813c02ec2 Mon Sep 17 00:00:00 2001
From d56e6c1562eb5052789f4e7272d5bd523c8c7b2f Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 24 Jun 2014 10:00:15 +0100
Subject: [PATCH 1/9] Don't add rpaths to libraries.
Subject: [PATCH 1/8] Don't add rpaths to libraries.
---
tools/Makefile.shared | 6 +++---
tools/Makefile | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/Makefile.shared b/tools/Makefile.shared
index a873bdd98..ba263b88f 100644
--- a/tools/Makefile.shared
+++ b/tools/Makefile.shared
@@ -154,9 +154,9 @@ $(call byte_and_opt,ocamlmklib,ocamlmklibconfig.cmo config.cmo misc.cmo \
diff --git a/tools/Makefile b/tools/Makefile
index 9a8cf652b..269aa18e6 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -156,9 +156,9 @@ $(call byte_and_opt,ocamlmklib,ocamlmklibconfig.cmo config.cmo misc.cmo \
ocamlmklibconfig.ml: ../config/Makefile Makefile
(echo 'let bindir = "$(BINDIR)"'; \
echo 'let supports_shared_libraries = $(SUPPORTS_SHARED_LIBRARIES)';\

View File

@ -1,7 +1,7 @@
From c047077c1c8a2acdc1d9bfe502c1a9b910ac3b9d Mon Sep 17 00:00:00 2001
From 8037f8f3e5679275ac78e6f5f96602616efb7eb4 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 29 May 2012 20:40:36 +0100
Subject: [PATCH 2/9] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
Subject: [PATCH 2/8] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
Debian, sent upstream.
See:

View File

@ -1,17 +1,17 @@
From 77475cec6718b9f15bc6e8e5c7e6edb936b93cd2 Mon Sep 17 00:00:00 2001
From 24ba1a8796c191f2e38c0dffa130c324c69c8dff Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 29 May 2012 20:44:18 +0100
Subject: [PATCH 3/9] configure: Allow user defined C compiler flags.
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 3b2636035..d53d90367 100755
index e79659954..786f4cdbe 100755
--- a/configure
+++ b/configure
@@ -1912,6 +1912,10 @@ if $with_fpic; then
@@ -2002,6 +2002,10 @@ if $with_fpic; then
echo "#define CAML_WITH_FPIC" >> m.h
fi

View File

@ -1,7 +1,7 @@
From 8860338049b0a43377c2ea7fa05a47766b3b21aa Mon Sep 17 00:00:00 2001
From d5a3ec5286c9b467ff1c896313b40c1b0d9ec802 Mon Sep 17 00:00:00 2001
From: Nicolas Ojeda Bar <n.oje.bar@gmail.com>
Date: Tue, 8 Nov 2016 23:56:50 +0100
Subject: [PATCH 5/9] Adapt config.guess for RISC-V
Subject: [PATCH 4/8] Adapt config.guess for RISC-V
---
config/gnu/config.guess | 5 ++++-

View File

@ -1,28 +0,0 @@
From 5376164719c12fbad2321551425b3c46ec794817 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 3 Nov 2016 19:50:20 +0000
Subject: [PATCH 4/9] Don't rewrite -Werror.
In Fedora our CFLAGS contains -Wall -Werror=format-security.
As written, the sed phrase substitutes this with -Wall=format-security
which is bogus. Remove this rewriting completely.
---
Makefile | 1 -
1 file changed, 1 deletion(-)
diff --git a/Makefile b/Makefile
index b30564d00..e8514d41e 100644
--- a/Makefile
+++ b/Makefile
@@ -409,7 +409,6 @@ utils/config.ml: utils/config.mlp config/Makefile
-e 's|%%CCOMPTYPE%%|cc|' \
-e 's|%%BYTECC%%|$(BYTECC) $(BYTECCCOMPOPTS) $(SHAREDCCCOMPOPTS)|' \
-e 's|%%NATIVECC%%|$(NATIVECC) $(NATIVECCCOMPOPTS)|' \
- -e '/c_compiler =/s| -Werror||' \
-e 's|%%PACKLD%%|$(PACKLD)|' \
-e 's|%%BYTECCLIBS%%|$(BYTECCLIBS)|' \
-e 's|%%NATIVECCLIBS%%|$(NATIVECCLIBS)|' \
--
2.13.1

View File

@ -1,7 +1,7 @@
From c7d7b98e82b5571965e57c1537899094222f3157 Mon Sep 17 00:00:00 2001
From 75da776601959f2f05288d27660c09fe86bbafcf Mon Sep 17 00:00:00 2001
From: Nicolas Ojeda Bar <n.oje.bar@gmail.com>
Date: Fri, 4 Nov 2016 20:39:09 +0100
Subject: [PATCH 6/9] Add RISC-V backend & runtime
Subject: [PATCH 5/8] Add RISC-V backend & runtime
---
README.adoc | 1 +
@ -26,7 +26,7 @@ Subject: [PATCH 6/9] Add RISC-V backend & runtime
create mode 100644 asmrun/riscv.S
diff --git a/README.adoc b/README.adoc
index 480b0250f..cb6eebf1d 100644
index fe07edbba..f7d13bc06 100644
--- a/README.adoc
+++ b/README.adoc
@@ -34,6 +34,7 @@ IA32 (Pentium):: NetBSD, OpenBSD, Solaris 9
@ -1683,10 +1683,10 @@ index fd9d528e9..781c2517b 100644
struct caml_context {
diff --git a/configure b/configure
index d53d90367..04acb43be 100755
index 786f4cdbe..b88dab26b 100755
--- a/configure
+++ b/configure
@@ -820,6 +820,7 @@ if test $with_sharedlibs = "yes"; then
@@ -854,6 +854,7 @@ if test $with_sharedlibs = "yes"; then
arm*-*-freebsd*) natdynlink=true;;
earm*-*-netbsd*) natdynlink=true;;
aarch64-*-linux*) natdynlink=true;;
@ -1694,7 +1694,7 @@ index d53d90367..04acb43be 100755
esac
fi
@@ -889,6 +890,8 @@ case "$target" in
@@ -947,6 +948,8 @@ case "$target" in
x86_64-*-mingw*) arch=amd64; system=mingw;;
aarch64-*-linux*) arch=arm64; system=linux;;
x86_64-*-cygwin*) arch=amd64; system=cygwin;;
@ -1703,15 +1703,15 @@ index d53d90367..04acb43be 100755
esac
# Some platforms exist both in 32-bit and 64-bit variants, not distinguished
@@ -964,7 +967,7 @@ case "$arch,$system" in
@@ -1023,7 +1026,7 @@ case "$arch,$system" in
aspp="${TOOLPREF}cc -c";;
*,freebsd) as="${TOOLPREF}as"
aspp="${TOOLPREF}cc -c";;
- amd64,*|arm,*|arm64,*|i386,*|power,bsd*|sparc,*)
+ amd64,*|arm,*|arm64,*|i386,*|power,bsd*|sparc,*|riscv,*)
as="${TOOLPREF}as"
aspp="${TOOLPREF}gcc -c";;
esac
case "$ccfamily" in
clang-*)
--
2.13.1

View File

@ -1,7 +1,7 @@
From 80e5cd3dc503319490761a705e14f3fa421ff760 Mon Sep 17 00:00:00 2001
From ed0d512547d332e582e1a132d33931feec0cb3bd Mon Sep 17 00:00:00 2001
From: Nicolas Ojeda Bar <n.oje.bar@gmail.com>
Date: Thu, 10 Nov 2016 14:12:53 +0100
Subject: [PATCH 7/9] Try fix for andi/ori/xori immediates (#1)
Subject: [PATCH 6/8] Try fix for andi/ori/xori immediates (#1)
---
asmcomp/riscv/selection.ml | 13 -------------

View File

@ -1,7 +1,7 @@
From ded14c206a5e73ba5eae6d84ed4ee82c11ce6245 Mon Sep 17 00:00:00 2001
From d5009d1287904987d8ad6fb66babfa15433b396a Mon Sep 17 00:00:00 2001
From: Nicolas Ojeda Bar <n.oje.bar@gmail.com>
Date: Tue, 22 Nov 2016 22:30:35 +0100
Subject: [PATCH 8/9] Fix immediates' range when adjusting/indexing sp
Subject: [PATCH 7/8] Fix immediates' range when adjusting/indexing sp
---
asmcomp/riscv/arch.ml | 3 +++

View File

@ -1,7 +1,7 @@
From 664a26d436919be1fe3a33094aa44403b4bf710d Mon Sep 17 00:00:00 2001
From f1a94da0563eb4bc0fea86a3c83c7c152ec93ae8 Mon Sep 17 00:00:00 2001
From: Nicolas Ojeda Bar <n.oje.bar@gmail.com>
Date: Wed, 23 Nov 2016 12:38:28 +0100
Subject: [PATCH 9/9] Another immediate range fix
Subject: [PATCH 8/8] Another immediate range fix
---
asmcomp/riscv/emit.mlp | 57 ++++++++++++++++++++++++++++++--------------------

View File

@ -23,10 +23,10 @@
%global test_arches_required aarch64 %{power64} x86_64
# Architectures where parallel builds fail.
%global no_parallel_build_arches aarch64
#%global no_parallel_build_arches aarch64
Name: ocaml
Version: 4.04.2
Version: 4.05.0
Release: 1%{?dist}
Summary: OCaml compiler and programming environment
@ -35,11 +35,11 @@ License: QPL and (LGPLv2+ with exceptions)
URL: http://www.ocaml.org
Source0: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-%{version}.tar.xz
Source0: http://caml.inria.fr/pub/distrib/ocaml-4.05/ocaml-%{version}.tar.xz
Source1: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04-refman-html.tar.gz
Source2: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04-refman.pdf
Source3: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04-refman.info.tar.gz
Source1: http://caml.inria.fr/pub/distrib/ocaml-4.05/ocaml-4.05-refman-html.tar.gz
Source2: http://caml.inria.fr/pub/distrib/ocaml-4.05/ocaml-4.05-refman.pdf
Source3: http://caml.inria.fr/pub/distrib/ocaml-4.05/ocaml-4.05-refman.info.tar.gz
# IMPORTANT NOTE:
#
@ -50,7 +50,7 @@ Source3: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04-refman.in
#
# https://pagure.io/fedora-ocaml
#
# Current branch: fedora-27-4.04.1
# Current branch: fedora-27-4.05.0
#
# ALTERNATIVELY add a patch to the end of the list (leaving the
# existing patches unchanged) adding a comment to note that it should
@ -59,14 +59,13 @@ Source3: http://caml.inria.fr/pub/distrib/ocaml-4.04/ocaml-4.04-refman.in
Patch0001: 0001-Don-t-add-rpaths-to-libraries.patch
Patch0002: 0002-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
Patch0003: 0003-configure-Allow-user-defined-C-compiler-flags.patch
Patch0004: 0004-Don-t-rewrite-Werror.patch
# Out of tree patches from
# https://github.com/nojb/riscv-ocaml
Patch0005: 0005-Adapt-config.guess-for-RISC-V.patch
Patch0006: 0006-Add-RISC-V-backend-runtime.patch
Patch0007: 0007-Try-fix-for-andi-ori-xori-immediates-1.patch
Patch0008: 0008-Fix-immediates-range-when-adjusting-indexing-sp.patch
Patch0009: 0009-Another-immediate-range-fix.patch
Patch0004: 0004-Adapt-config.guess-for-RISC-V.patch
Patch0005: 0005-Add-RISC-V-backend-runtime.patch
Patch0006: 0006-Try-fix-for-andi-ori-xori-immediates-1.patch
Patch0007: 0007-Fix-immediates-range-when-adjusting-indexing-sp.patch
Patch0008: 0008-Another-immediate-range-fix.patch
BuildRequires: binutils-devel
BuildRequires: ncurses-devel
@ -205,12 +204,14 @@ cp %{SOURCE2} refman.pdf
%build
%ifnarch %{no_parallel_build_arches}
make="make %{?_smp_mflags}"
%else
# Parallel builds are broken in 4.05.0, see
# https://caml.inria.fr/mantis/view.php?id=7587
#%ifnarch %{no_parallel_build_arches}
#make="make %{?_smp_mflags}"
#%else
unset MAKEFLAGS
make=make
%endif
#%endif
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \
./configure \
@ -441,6 +442,7 @@ fi
%files compiler-libs
%doc LICENSE
%dir %{_libdir}/ocaml/compiler-libs
%{_libdir}/ocaml/compiler-libs/*.mli
%{_libdir}/ocaml/compiler-libs/*.cmi
%{_libdir}/ocaml/compiler-libs/*.cmo
%{_libdir}/ocaml/compiler-libs/*.cma
@ -453,6 +455,11 @@ fi
%changelog
* Mon Jul 17 2017 Richard W.M. Jones <rjones@redhat.com> - 4.05.0-1
- New upstream version 4.05.0.
- Disable parallel builds for now.
- *.mli files are now included in ocaml-compiler-libs.
* Mon Jun 26 2017 Richard W.M. Jones <rjones@redhat.com> - 4.04.2-1
- New upstream version 4.04.2.
- Fix: ocaml: Insufficient sanitisation allows privilege escalation for

View File

@ -1,4 +1,4 @@
SHA512 (ocaml-4.04-refman-html.tar.gz) = 027ad5ea08488beb5ce65ec97a8aaf04197317d7d3194de771a4170dea9f8b90fc4309fd917b4176cd930dd0835c84448771b84fa92a735cfc60668ef0a6a413
SHA512 (ocaml-4.04-refman.info.tar.gz) = e83a28e8fb6af198471d26e790ce64ae11d6a2262110ecd5a7b150f9248c221847b1bde3e076b38a7e412ea1d709e0c1bfbf890ccbd5721869ea98d6d9dcc052
SHA512 (ocaml-4.04-refman.pdf) = 9194d0a9cddb1cde3f86f90fbe6e23740ef0e4e49515f40708fe5a2acc3318f6c3839377f93163e2520770357ad0ce7145c5cfb1424503e8873106b17338e4b6
SHA512 (ocaml-4.04.2.tar.xz) = 0449f650388fe63e1f96c6f63d994855cf76bac5b52d3f76e781c8d9f5fddb657a24a88063c1280d45ccc741c372085bad46cdb3dbc186e1861627d500290629
SHA512 (ocaml-4.05.0.tar.xz) = e87bb25d8a580f608ea3c8308129c4e4f4513e9bb3d218a5038a67b3f39b06656ff6ebe08a4b6f36960fb603be62e6bef2694fc3cf1b0fa0df3a1ca177d4e004
SHA512 (ocaml-4.05-refman-html.tar.gz) = a01aef22015cfcb1d230e63f24f2deeba6a8bc1a1225152e346a15e3a52be261d7f22430e561c7cbf64fbc53d3fa13606b87823efb56d139cf5e988c9a326af8
SHA512 (ocaml-4.05-refman.info.tar.gz) = 49cd780445576061e89cf46690a5f7297d5b2c92446e6fc0e2d8878089e6b18e235785d5eb658e508a15c2bfbdd4a1c990b6eca7dadb4b4a7f313e1a8f3d0642
SHA512 (ocaml-4.05-refman.pdf) = 2190deef5f89064774236790a130c036fe7d615177ce7e17c17a60b4d8500f78a75e15157fe13cf47125219ad731d04fb1339692047aced1ee9d768aae2a8038