[ocaml] Update to 4.02.0-beta1 + patches from the upstream 4.02 branch.
Richard W.M. Jones
rjones at fedoraproject.org
Sat Jul 12 18:01:48 UTC 2014
commit 7335bbf1f360fb3c5f9629e31888f8899c270438
Author: Richard W.M. Jones <rjones at redhat.com>
Date: Tue Jun 24 22:28:27 2014 +0100
Update to 4.02.0-beta1 + patches from the upstream 4.02 branch.
- REMOVED labltk and camlp4 packages, since these are now packaged
separately upstream.
- Upstream includes fix for stack alignment issues on i686, so remove hack.
- Upstream now uses mkstemp where available, so patch removed.
- Upstream includes Aarch64 backend, so remove our own backport.
- Drop BR on ocaml-srpm-macros, since it is now included in Fedora.
....gitignore-file-to-ignore-generated-files.patch | 366 ----
...t-ignore-.-configure-it-s-a-real-git-file.patch | 24 +
...y-compilerlibs-directory-is-created-by-gi.patch | 4 +-
0003-Don-t-add-rpaths-to-libraries.patch | 29 +
0004-Don-t-add-rpaths-to-libraries.patch | 26 -
...fo-ocamlplugininfo-Useful-utilities-from-.patch | 4 +-
...igure-Allow-user-defined-C-compiler-flags.patch | 8 +-
0006-Add-support-for-ppc64.patch | 34 +-
...4le.patch => 0007-Add-support-for-ppc64le.patch | 34 +-
0007-yacc-Use-mkstemp-instead-of-mktemp.patch | 25 -
...-ARM-64-bits-AArch64-architecture-experim.patch | 2280 --------------------
...08-arm-arm64-Mark-stack-as-non-executable.patch | 6 +-
0009-Updated-with-latest-versions-from-FSF.patch | 716 ------
...g-Add-no_arg-and-get_arg-helper-functions.patch | 6 +-
...lags-such-as-flag-arg-as-well-as-flag-arg.patch | 10 +-
0010-arm64-Align-code-and-data-to-8-bytes.patch | 41 -
ocaml.spec | 191 +--
sources | 8 +-
18 files changed, 143 insertions(+), 3669 deletions(-)
---
diff --git a/0001-Don-t-ignore-.-configure-it-s-a-real-git-file.patch b/0001-Don-t-ignore-.-configure-it-s-a-real-git-file.patch
new file mode 100644
index 0000000..8bf7f61
--- /dev/null
+++ b/0001-Don-t-ignore-.-configure-it-s-a-real-git-file.patch
@@ -0,0 +1,24 @@
+From 73598ab5b5b9c859e900413a31ca6452c324ff3d Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones at redhat.com>
+Date: Tue, 24 Jun 2014 22:29:38 +0100
+Subject: [PATCH 01/10] Don't ignore ./configure, it's a real git file.
+
+---
+ .gitignore | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/.gitignore b/.gitignore
+index 2817041..6835234 100644
+--- a/.gitignore
++++ b/.gitignore
+@@ -22,7 +22,6 @@
+ /.depend
+ /.depend.nt
+ /.DS_Store
+-/configure
+ /ocamlc
+ /ocamlc.opt
+ /expunge
+--
+1.9.0
+
diff --git a/0002-Ensure-empty-compilerlibs-directory-is-created-by-gi.patch b/0002-Ensure-empty-compilerlibs-directory-is-created-by-gi.patch
index 6208ace..afa4d92 100644
--- a/0002-Ensure-empty-compilerlibs-directory-is-created-by-gi.patch
+++ b/0002-Ensure-empty-compilerlibs-directory-is-created-by-gi.patch
@@ -1,7 +1,7 @@
-From 7756582741dc56070c03629a3b4640147723beda Mon Sep 17 00:00:00 2001
+From 8566059ac5eb68ac8006ba8d825644411d4c4cd1 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Thu, 7 Jun 2012 15:36:16 +0100
-Subject: [PATCH 02/14] Ensure empty compilerlibs/ directory is created by git.
+Subject: [PATCH 02/10] Ensure empty compilerlibs/ directory is created by git.
This directory exists in the OCaml tarball, but is empty. As a
result, git ignores it unless we put a dummy file in it.
diff --git a/0003-Don-t-add-rpaths-to-libraries.patch b/0003-Don-t-add-rpaths-to-libraries.patch
new file mode 100644
index 0000000..c27d19e
--- /dev/null
+++ b/0003-Don-t-add-rpaths-to-libraries.patch
@@ -0,0 +1,29 @@
+From 8d1cb3e2a169a642a0c75e965bc6fc17184124c8 Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones at redhat.com>
+Date: Tue, 24 Jun 2014 10:00:15 +0100
+Subject: [PATCH 03/10] Don't add rpaths to libraries.
+
+---
+ tools/Makefile.shared | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tools/Makefile.shared b/tools/Makefile.shared
+index c4c9030..7a918e5 100644
+--- a/tools/Makefile.shared
++++ b/tools/Makefile.shared
+@@ -112,9 +112,9 @@ ocamlmklibconfig.ml: ../config/Makefile
+ echo 'let ext_dll = "$(EXT_DLL)"'; \
+ echo 'let supports_shared_libraries = $(SUPPORTS_SHARED_LIBRARIES)';\
+ echo 'let mkdll = "$(MKDLL)"'; \
+- echo 'let byteccrpath = "$(BYTECCRPATH)"'; \
+- echo 'let nativeccrpath = "$(NATIVECCRPATH)"'; \
+- echo 'let mksharedlibrpath = "$(MKSHAREDLIBRPATH)"'; \
++ echo 'let byteccrpath = ""'; \
++ echo 'let nativeccrpath = ""'; \
++ echo 'let mksharedlibrpath = ""'; \
+ echo 'let toolpref = "$(TOOLPREF)"'; \
+ sed -n -e 's/^#ml //p' ../config/Makefile) \
+ > ocamlmklibconfig.ml
+--
+1.9.0
+
diff --git a/0003-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch b/0004-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
similarity index 98%
rename from 0003-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
rename to 0004-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
index 9bc9b44..a239f5c 100644
--- a/0003-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
+++ b/0004-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
@@ -1,7 +1,7 @@
-From a6d87cd4bc62d3987835c1ac844f35cc06804294 Mon Sep 17 00:00:00 2001
+From 0112a99407da09f066c9cbaa41fe770370ba6706 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Tue, 29 May 2012 20:40:36 +0100
-Subject: [PATCH 03/14] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
+Subject: [PATCH 04/10] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
Debian, sent upstream.
See:
diff --git a/0005-configure-Allow-user-defined-C-compiler-flags.patch b/0005-configure-Allow-user-defined-C-compiler-flags.patch
index 5864c92..89688bc 100644
--- a/0005-configure-Allow-user-defined-C-compiler-flags.patch
+++ b/0005-configure-Allow-user-defined-C-compiler-flags.patch
@@ -1,17 +1,17 @@
-From 459e9550f174e11176a2ece013fc4dd2b08a06bb Mon Sep 17 00:00:00 2001
+From 96ec5173787ce5e03dca7da6527c4cc732772051 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Tue, 29 May 2012 20:44:18 +0100
-Subject: [PATCH 05/14] configure: Allow user defined C compiler flags.
+Subject: [PATCH 05/10] configure: Allow user defined C compiler flags.
---
configure | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/configure b/configure
-index 07b1c35..39b38dc 100755
+index 74d489f..251ee2c 100755
--- a/configure
+++ b/configure
-@@ -1612,6 +1612,10 @@ case "$buggycc" in
+@@ -1629,6 +1629,10 @@ case "$buggycc" in
nativecccompopts="$nativecccompopts -fomit-frame-pointer";;
esac
diff --git a/0006-Add-support-for-ppc64.patch b/0006-Add-support-for-ppc64.patch
index 35e3b74..166e7b6 100644
--- a/0006-Add-support-for-ppc64.patch
+++ b/0006-Add-support-for-ppc64.patch
@@ -1,7 +1,7 @@
-From a85437a0d2ffdf7a340d379789500eb583ae4708 Mon Sep 17 00:00:00 2001
+From 443863864a99a0408c6068ba0b5ba6beddec337a Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Tue, 29 May 2012 20:47:07 +0100
-Subject: [PATCH 06/14] Add support for ppc64.
+Subject: [PATCH 06/10] Add support for ppc64.
Note (1): This patch was rejected upstream because they don't have
appropriate hardware for testing.
@@ -1576,10 +1576,10 @@ index 0000000..53b7828
+
+let fundecl f = (new selector)#emit_fundecl f
diff --git a/asmrun/Makefile b/asmrun/Makefile
-index 5ebf7aa..6a8ed98 100644
+index 63ff80c..5da022c 100644
--- a/asmrun/Makefile
+++ b/asmrun/Makefile
-@@ -90,6 +90,12 @@ power.o: power-$(SYSTEM).o
+@@ -93,6 +93,12 @@ power.o: power-$(SYSTEM).o
power.p.o: power-$(SYSTEM).o
cp power-$(SYSTEM).o power.p.o
@@ -2085,7 +2085,7 @@ index 0000000..b2c24d6
+ .align 3
+
diff --git a/asmrun/stack.h b/asmrun/stack.h
-index 57c87fa..756db95 100644
+index 92b3c28..5202c3a 100644
--- a/asmrun/stack.h
+++ b/asmrun/stack.h
@@ -46,6 +46,15 @@
@@ -2105,26 +2105,26 @@ index 57c87fa..756db95 100644
#define Saved_return_address(sp) *((intnat *)((sp) - 4))
#define Callback_link(sp) ((struct caml_context *)((sp) + 8))
diff --git a/configure b/configure
-index 39b38dc..9b02664 100755
+index 251ee2c..5f92bac 100755
--- a/configure
+++ b/configure
-@@ -694,6 +694,7 @@ case "$host" in
- arch=i386; system=macosx
+@@ -807,6 +807,7 @@ case "$target" in
fi;;
i[3456]86-*-gnu*) arch=i386; system=gnu;;
+ i[3456]86-*-mingw*) arch=i386; system=mingw;;
+ powerpc64-*-linux*) arch=power64; model=ppc64; system=elf;;
powerpc*-*-linux*) arch=power; model=ppc; system=elf;;
powerpc-*-netbsd*) arch=power; model=ppc; system=elf;;
powerpc-*-openbsd*) arch=power; model=ppc; system=bsd_elf;;
-@@ -776,6 +777,8 @@ case "$arch,$model,$system" in
- aspp='gcc -c';;
- power,*,bsd*) as='as'
- aspp='gcc -c';;
-+ power64,*,elf) as='as -u -m ppc64'
-+ aspp='gcc -c';;
- power,*,rhapsody) as="as -arch $model"
- aspp="$bytecc -c";;
- sparc,*,solaris) as='as'
+@@ -886,6 +887,8 @@ case "$arch,$system" in
+ aspp="/usr/ccs/bin/${TOOLPREF}as -P";;
+ power,elf) as="${TOOLPREF}as -u -m ppc"
+ aspp="${TOOLPREF}gcc -c";;
++ power64,*,elf) as='${TOOLPREF}as -u -m ppc64'
++ aspp='${TOOLPREF}gcc -c';;
+ power,rhapsody) as="${TOOLPREF}as -arch $model"
+ aspp="$bytecc -c";;
+ sparc,solaris) as="${TOOLPREF}as"
--
1.9.0
diff --git a/0013-Add-support-for-ppc64le.patch b/0007-Add-support-for-ppc64le.patch
similarity index 98%
rename from 0013-Add-support-for-ppc64le.patch
rename to 0007-Add-support-for-ppc64le.patch
index d3b4e3b..ff5f928 100644
--- a/0013-Add-support-for-ppc64le.patch
+++ b/0007-Add-support-for-ppc64le.patch
@@ -1,7 +1,7 @@
-From d9ec3ac29493999687b0f7daa23f4888bc57c7be Mon Sep 17 00:00:00 2001
+From 69837e1be517082e841d583f59f017edfd7ffa39 Mon Sep 17 00:00:00 2001
From: Michel Normand <normand at linux.vnet.ibm.com>
Date: Tue, 18 Mar 2014 09:15:47 -0400
-Subject: [PATCH 13/14] Add support for ppc64le.
+Subject: [PATCH 07/10] Add support for ppc64le.
Signed-off-by: Michel Normand <normand at linux.vnet.ibm.com>
---
@@ -1556,10 +1556,10 @@ index 0000000..6101d53
+
+let fundecl f = (new selector)#emit_fundecl f
diff --git a/asmrun/Makefile b/asmrun/Makefile
-index 6a8ed98..1ff256f 100644
+index 5da022c..c0362b6 100644
--- a/asmrun/Makefile
+++ b/asmrun/Makefile
-@@ -96,6 +96,12 @@ power64.o: power64-$(SYSTEM).o
+@@ -99,6 +99,12 @@ power64.o: power64-$(SYSTEM).o
power64.p.o: power64-$(SYSTEM).o
cp power64-$(SYSTEM).o power64.p.o
@@ -1858,7 +1858,7 @@ index 0000000..f49d00c
+power64-elf.S
\ No newline at end of file
diff --git a/asmrun/stack.h b/asmrun/stack.h
-index 031e408..f1890c1 100644
+index 5202c3a..94b81e4 100644
--- a/asmrun/stack.h
+++ b/asmrun/stack.h
@@ -55,6 +55,15 @@
@@ -1892,26 +1892,26 @@ index b79252d..049652e 100755
echo powerpc-unknown-linux-${LIBC}
exit ;;
diff --git a/configure b/configure
-index 36edfab..8a22078 100755
+index 5f92bac..8b300a4 100755
--- a/configure
+++ b/configure
-@@ -696,6 +696,7 @@ case "$host" in
- fi;;
+@@ -808,6 +808,7 @@ case "$target" in
i[3456]86-*-gnu*) arch=i386; system=gnu;;
+ i[3456]86-*-mingw*) arch=i386; system=mingw;;
powerpc64-*-linux*) arch=power64; model=ppc64; system=elf;;
+ powerpc64le-*-linux*) arch=power64le; model=ppc64le; system=elf;;
powerpc*-*-linux*) arch=power; model=ppc; system=elf;;
powerpc-*-netbsd*) arch=power; model=ppc; system=elf;;
powerpc-*-openbsd*) arch=power; model=ppc; system=bsd_elf;;
-@@ -781,6 +782,8 @@ case "$arch,$model,$system" in
- aspp='gcc -c';;
- power64,*,elf) as='as -u -m ppc64'
- aspp='gcc -c';;
-+ power64le,*,elf) as='as -u -m ppc64'
-+ aspp='gcc -c';;
- power,*,rhapsody) as="as -arch $model"
- aspp="$bytecc -c";;
- sparc,*,solaris) as='as'
+@@ -889,6 +890,8 @@ case "$arch,$system" in
+ aspp="${TOOLPREF}gcc -c";;
+ power64,*,elf) as='${TOOLPREF}as -u -m ppc64'
+ aspp='${TOOLPREF}gcc -c';;
++ power64le,*,elf) as='${TOOLPREF}as -u -m ppc64'
++ aspp='${TOOLPREF}gcc -c';;
+ power,rhapsody) as="${TOOLPREF}as -arch $model"
+ aspp="$bytecc -c";;
+ sparc,solaris) as="${TOOLPREF}as"
--
1.9.0
diff --git a/0014-arm-arm64-Mark-stack-as-non-executable.patch b/0008-arm-arm64-Mark-stack-as-non-executable.patch
similarity index 87%
rename from 0014-arm-arm64-Mark-stack-as-non-executable.patch
rename to 0008-arm-arm64-Mark-stack-as-non-executable.patch
index 7767b40..2b73aed 100644
--- a/0014-arm-arm64-Mark-stack-as-non-executable.patch
+++ b/0008-arm-arm64-Mark-stack-as-non-executable.patch
@@ -1,7 +1,7 @@
-From 64da031fc17ca93efd5beabcf0b7ea49bcd645a0 Mon Sep 17 00:00:00 2001
+From 8db6171b43cf7d18340a68a2f636f9b2570236ac Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Sat, 10 May 2014 03:20:35 -0400
-Subject: [PATCH 14/14] arm, arm64: Mark stack as non-executable.
+Subject: [PATCH 08/10] arm, arm64: Mark stack as non-executable.
The same fix as this one, which was only fully applied to
i686 & x86-64:
@@ -24,7 +24,7 @@ index 2ce244a..90f5b6e 100644
+ /* Mark stack as non-executable, PR#4564 */
+ .section .note.GNU-stack,"",%progbits
diff --git a/asmrun/arm64.S b/asmrun/arm64.S
-index de670e6..84e18ba 100644
+index 2c16a0e..a7d4953 100644
--- a/asmrun/arm64.S
+++ b/asmrun/arm64.S
@@ -533,3 +533,6 @@ caml_system__frametable:
diff --git a/0011-arg-Add-no_arg-and-get_arg-helper-functions.patch b/0009-arg-Add-no_arg-and-get_arg-helper-functions.patch
similarity index 96%
rename from 0011-arg-Add-no_arg-and-get_arg-helper-functions.patch
rename to 0009-arg-Add-no_arg-and-get_arg-helper-functions.patch
index 4173775..290e7dd 100644
--- a/0011-arg-Add-no_arg-and-get_arg-helper-functions.patch
+++ b/0009-arg-Add-no_arg-and-get_arg-helper-functions.patch
@@ -1,7 +1,7 @@
-From 251d3447bb10550320f43512d8886561c1298f74 Mon Sep 17 00:00:00 2001
+From 01298aadfd0bf571b9ce745a7a198015b2a20da9 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Tue, 1 Apr 2014 11:17:07 +0100
-Subject: [PATCH 11/14] arg: Add no_arg and get_arg helper functions.
+Subject: [PATCH 09/10] arg: Add no_arg and get_arg helper functions.
The no_arg function in this patch is a no-op. It will do something
useful in the followups.
@@ -19,7 +19,7 @@ In particular, this should not change the treatment of Arg.current
1 file changed, 26 insertions(+), 21 deletions(-)
diff --git a/stdlib/arg.ml b/stdlib/arg.ml
-index 8b64236..c8b3d44 100644
+index 0f6480b..a41e0a2 100644
--- a/stdlib/arg.ml
+++ b/stdlib/arg.ml
@@ -134,56 +134,62 @@ let parse_argv_dynamic ?(current=current) argv speclist anonfun errmsg =
diff --git a/0012-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch b/0010-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
similarity index 90%
rename from 0012-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
rename to 0010-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
index 4a1ba25..9a55cdd 100644
--- a/0012-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
+++ b/0010-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
@@ -1,7 +1,7 @@
-From 57955b8a4d4cf7732cb87964f5e124ab713e084b Mon Sep 17 00:00:00 2001
+From 5af2eab80b969d88ecd5bdbe55f33e20753f9ceb Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Tue, 1 Apr 2014 11:21:40 +0100
-Subject: [PATCH 12/14] arg: Allow flags such as --flag=arg as well as --flag
+Subject: [PATCH 10/10] arg: Allow flags such as --flag=arg as well as --flag
arg.
Allow flags to be followed directly by their argument, separated by an '='
@@ -16,7 +16,7 @@ http://caml.inria.fr/mantis/view.php?id=5197
2 files changed, 24 insertions(+), 7 deletions(-)
diff --git a/stdlib/arg.ml b/stdlib/arg.ml
-index c8b3d44..766de5f 100644
+index a41e0a2..88b1306 100644
--- a/stdlib/arg.ml
+++ b/stdlib/arg.ml
@@ -55,6 +55,12 @@ let rec assoc3 x l =
@@ -35,7 +35,7 @@ index c8b3d44..766de5f 100644
@@ -130,14 +136,24 @@ let parse_argv_dynamic ?(current=current) argv speclist anonfun errmsg =
while !current < l do
let s = argv.(!current) in
- if String.length s >= 1 && String.get s 0 = '-' then begin
+ if String.length s >= 1 && s.[0] = '-' then begin
- let action =
- try assoc3 s !speclist
- with Not_found -> stop (Unknown s)
@@ -64,7 +64,7 @@ index c8b3d44..766de5f 100644
begin try
let rec treat_action = function
diff --git a/stdlib/arg.mli b/stdlib/arg.mli
-index 869d030..b8c6f11 100644
+index 22eda40..7078071 100644
--- a/stdlib/arg.mli
+++ b/stdlib/arg.mli
@@ -25,7 +25,8 @@
diff --git a/ocaml.spec b/ocaml.spec
index 77c693d..16eda5b 100644
--- a/ocaml.spec
+++ b/ocaml.spec
@@ -15,9 +15,12 @@
%global natdynlink 0
%endif
+%global gitcommit 8c1e5cdf9154b7c4f979327a554bdde5c8f76436
+%global shortcommit 8c1e5cdf
+
Name: ocaml
-Version: 4.01.0
-Release: 20%{?dist}
+Version: 4.02.0
+Release: 0.1.git%{shortcommit}%{?dist}
Summary: OCaml compiler and programming environment
@@ -25,10 +28,10 @@ License: QPL and (LGPLv2+ with exceptions)
URL: http://www.ocaml.org
-Source0: http://caml.inria.fr/pub/distrib/ocaml-4.01/ocaml-%{version}.tar.gz
-Source1: http://caml.inria.fr/pub/distrib/ocaml-4.01/ocaml-4.01-refman-html.tar.gz
-Source2: http://caml.inria.fr/pub/distrib/ocaml-4.01/ocaml-4.01-refman.pdf
-Source3: http://caml.inria.fr/pub/distrib/ocaml-4.01/ocaml-4.01-refman.info.tar.gz
+Source0: https://github.com/ocaml/%{name}/archive/%{gitcommit}/%{name}-%{gitcommit}.tar.gz
+Source1: http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02beta-refman-html.tar.gz
+Source2: http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02beta-refman.pdf
+Source3: http://caml.inria.fr/pub/distrib/ocaml-4.02/ocaml-4.02beta-refman.info.tar.gz
# IMPORTANT NOTE:
#
@@ -39,40 +42,28 @@ Source3: http://caml.inria.fr/pub/distrib/ocaml-4.01/ocaml-4.01-refman.in
#
# https://git.fedorahosted.org/cgit/fedora-ocaml.git/
#
+# Current branch: fedora-22-4.02
+#
# ALTERNATIVELY add a patch to the end of the list (leaving the
# existing patches unchanged) adding a comment to note that it should
# be incorporated into the git repo at a later time.
#
-Patch0001: 0001-Add-.gitignore-file-to-ignore-generated-files.patch
+Patch0001: 0001-Don-t-ignore-.-configure-it-s-a-real-git-file.patch
Patch0002: 0002-Ensure-empty-compilerlibs-directory-is-created-by-gi.patch
-Patch0003: 0003-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
-Patch0004: 0004-Don-t-add-rpaths-to-libraries.patch
+Patch0003: 0003-Don-t-add-rpaths-to-libraries.patch
+Patch0004: 0004-ocamlbyteinfo-ocamlplugininfo-Useful-utilities-from-.patch
Patch0005: 0005-configure-Allow-user-defined-C-compiler-flags.patch
Patch0006: 0006-Add-support-for-ppc64.patch
-Patch0007: 0007-yacc-Use-mkstemp-instead-of-mktemp.patch
-
-# Aarch64 patches.
-Patch0008: 0008-Port-to-the-ARM-64-bits-AArch64-architecture-experim.patch
-Patch0009: 0009-Updated-with-latest-versions-from-FSF.patch
-Patch0010: 0010-arm64-Align-code-and-data-to-8-bytes.patch
-
-# NON-upstream patch to allow '--flag=arg' as an alternative to '--flag arg'.
-Patch0011: 0011-arg-Add-no_arg-and-get_arg-helper-functions.patch
-Patch0012: 0012-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
-
-# ppc64le support (Michel Normand).
-Patch0013: 0013-Add-support-for-ppc64le.patch
-
-# ARM & Aarch64 non-executable stack.
-Patch0014: 0014-arm-arm64-Mark-stack-as-non-executable.patch
+Patch0007: 0007-Add-support-for-ppc64le.patch
+Patch0008: 0008-arm-arm64-Mark-stack-as-non-executable.patch
+Patch0009: 0009-arg-Add-no_arg-and-get_arg-helper-functions.patch
+Patch0010: 0010-arg-Allow-flags-such-as-flag-arg-as-well-as-flag-arg.patch
# Add BFD support so that ocamlobjinfo supports *.cmxs format (RHBZ#1113735).
BuildRequires: binutils-devel
BuildRequires: ncurses-devel
BuildRequires: gdbm-devel
-BuildRequires: tcl-devel
-BuildRequires: tk-devel
BuildRequires: emacs
BuildRequires: gawk
BuildRequires: perl
@@ -111,7 +102,7 @@ programming language from the ML family of languages.
This package comprises two batch compilers (a fast bytecode compiler
and an optimizing native-code compiler), an interactive toplevel system,
-parsing tools (Lex,Yacc,Camlp4), a replay debugger, a documentation generator,
+parsing tools (Lex,Yacc), a replay debugger, a documentation generator,
and a comprehensive library.
@@ -145,56 +136,6 @@ Requires: libX11-devel
X11 support for OCaml.
-%package labltk
-Summary: Tk bindings for OCaml
-Requires: ocaml-runtime = %{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
-Summary: Development files for labltk
-Requires: ocaml = %{version}-%{release}
-Requires: %{name}-labltk = %{version}-%{release}
-Requires: libX11-devel
-Requires: tcl-devel
-Requires: tk-devel
-
-%description labltk-devel
-Labltk is a library for interfacing OCaml with the scripting language
-Tcl/Tk.
-
-This package contains the development files. It includes the ocaml
-browser for code editing and library browsing.
-
-
-%package camlp4
-Summary: Pre-Processor-Pretty-Printer for OCaml
-Requires: ocaml-runtime = %{version}-%{release}
-
-%description camlp4
-Camlp4 is a Pre-Processor-Pretty-Printer for OCaml, parsing a source
-file and printing some result on standard output.
-
-This package contains the runtime files.
-
-
-%package camlp4-devel
-Summary: Pre-Processor-Pretty-Printer for OCaml
-Requires: ocaml = %{version}-%{release}
-Requires: %{name}-camlp4 = %{version}-%{release}
-
-%description camlp4-devel
-Camlp4 is a Pre-Processor-Pretty-Printer for OCaml, parsing a source
-file and printing some result on standard output.
-
-This package contains the development files.
-
-
%package ocamldoc
Summary: Documentation generator for OCaml
Requires: ocaml = %{version}-%{release}
@@ -244,15 +185,16 @@ may not be portable between versions.
%prep
-%setup -q -T -b 0 -n %{name}-%{version}
-%setup -q -T -D -a 1 -n %{name}-%{version}
-%setup -q -T -D -a 3 -n %{name}-%{version}
+%setup -q -T -b 0 -n %{name}-%{gitcommit}
+%setup -q -T -D -a 1 -n %{name}-%{gitcommit}
+%setup -q -T -D -a 3 -n %{name}-%{gitcommit}
cp %{SOURCE2} refman.pdf
git init
git config user.email "noone at example.com"
git config user.name "no one"
git add .
+git add -f configure ;# required because .gitignore lists this file
git commit -a -q -m "%{version} baseline"
git am %{patches} </dev/null
@@ -271,14 +213,7 @@ ulimit -Hs 65536
ulimit -Ss 65536
%endif
-# For the use of -mpreferred-stack-boundary to workaround gcc stack
-# alignment issues, see: http://caml.inria.fr/mantis/view.php?id=5700
-# ONLY use this on i386.
-%ifarch %{ix86}
-CFLAGS="$RPM_OPT_FLAGS -mpreferred-stack-boundary=2" \
-%else
CFLAGS="$RPM_OPT_FLAGS" \
-%endif
./configure \
-bindir %{_bindir} \
-libdir %{_libdir}/ocaml \
@@ -432,8 +367,6 @@ fi
%{_libdir}/ocaml/threads/*.cma
%{_libdir}/ocaml/fedora-ocaml-release
%exclude %{_libdir}/ocaml/graphicsX11.cmi
-%exclude %{_libdir}/ocaml/stublibs/dlllabltk.so
-#%exclude %{_libdir}/ocaml/stublibs/dlltkanim.so
%files source
@@ -447,74 +380,6 @@ fi
%{_libdir}/ocaml/graphicsX11.mli
-%files labltk
-%doc LICENSE
-%{_bindir}/labltk
-%dir %{_libdir}/ocaml/labltk
-%{_libdir}/ocaml/labltk/*.cmi
-%{_libdir}/ocaml/labltk/*.cma
-%{_libdir}/ocaml/labltk/*.cmo
-%{_libdir}/ocaml/stublibs/dlllabltk.so
-#%{_libdir}/ocaml/stublibs/dlltkanim.so
-
-
-%files labltk-devel
-%doc LICENSE
-%doc otherlibs/labltk/examples_labltk
-%doc otherlibs/labltk/examples_camltk
-%{_bindir}/ocamlbrowser
-%{_libdir}/ocaml/labltk/labltktop
-%{_libdir}/ocaml/labltk/pp
-%{_libdir}/ocaml/labltk/tkcompiler
-%{_libdir}/ocaml/labltk/*.a
-%if %{native_compiler}
-%{_libdir}/ocaml/labltk/*.cmxa
-%{_libdir}/ocaml/labltk/*.cmx
-%{_libdir}/ocaml/labltk/*.o
-%endif
-%{_libdir}/ocaml/labltk/*.mli
-
-
-%files camlp4
-%doc LICENSE
-%dir %{_libdir}/ocaml/camlp4
-%{_libdir}/ocaml/camlp4/*.cmi
-%{_libdir}/ocaml/camlp4/*.cma
-%{_libdir}/ocaml/camlp4/*.cmo
-%dir %{_libdir}/ocaml/camlp4/Camlp4Filters
-%{_libdir}/ocaml/camlp4/Camlp4Filters/*.cmi
-%{_libdir}/ocaml/camlp4/Camlp4Filters/*.cmo
-%dir %{_libdir}/ocaml/camlp4/Camlp4Parsers
-%{_libdir}/ocaml/camlp4/Camlp4Parsers/*.cmo
-%{_libdir}/ocaml/camlp4/Camlp4Parsers/*.cmi
-%dir %{_libdir}/ocaml/camlp4/Camlp4Printers
-%{_libdir}/ocaml/camlp4/Camlp4Printers/*.cmi
-%{_libdir}/ocaml/camlp4/Camlp4Printers/*.cmo
-%dir %{_libdir}/ocaml/camlp4/Camlp4Top
-%{_libdir}/ocaml/camlp4/Camlp4Top/*.cmi
-%{_libdir}/ocaml/camlp4/Camlp4Top/*.cmo
-
-
-%files camlp4-devel
-%{_bindir}/camlp4*
-%{_bindir}/mkcamlp4
-%if %{native_compiler}
-%{_libdir}/ocaml/camlp4/*.a
-%{_libdir}/ocaml/camlp4/*.cmxa
-%{_libdir}/ocaml/camlp4/*.cmx
-%{_libdir}/ocaml/camlp4/*.o
-%{_libdir}/ocaml/camlp4/Camlp4Filters/*.cmx
-%{_libdir}/ocaml/camlp4/Camlp4Filters/*.o
-%{_libdir}/ocaml/camlp4/Camlp4Parsers/*.cmx
-%{_libdir}/ocaml/camlp4/Camlp4Parsers/*.o
-%{_libdir}/ocaml/camlp4/Camlp4Printers/*.cmx
-%{_libdir}/ocaml/camlp4/Camlp4Printers/*.o
-%{_libdir}/ocaml/camlp4/Camlp4Top/*.cmx
-%{_libdir}/ocaml/camlp4/Camlp4Top/*.o
-%endif
-%{_mandir}/man1/*
-
-
%files ocamldoc
%doc LICENSE
%doc ocamldoc/Changes.txt
@@ -525,6 +390,7 @@ fi
%files docs
%doc refman.pdf htmlman
%{_infodir}/*
+%{_mandir}/man1/*
%{_mandir}/man3/*
@@ -549,6 +415,15 @@ fi
%changelog
+* Sat Jul 12 2014 Richard W.M. Jones <rjones at redhat.com> - 4.02.0-0.1
+- Update to 4.02.0-beta1 + patches from the upstream 4.02 branch.
+- REMOVED labltk and camlp4 packages, since these are now packaged
+ separately upstream.
+- Upstream includes fix for stack alignment issues on i686, so remove hack.
+- Upstream now uses mkstemp where available, so patch removed.
+- Upstream includes Aarch64 backend, so remove our own backport.
+- Drop BR on ocaml-srpm-macros, since it is now included in Fedora.
+
* Thu Jun 26 2014 Richard W.M. Jones <rjones at redhat.com> - 4.01.0-20
- BR binutils-devel so ocamlobjinfo supports *.cmxs files (RHBZ#1113735).
diff --git a/sources b/sources
index ab191f4..65dc833 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
-04dfdd7da189462a4f10ec6530359cef ocaml-4.01.0.tar.gz
-73f4657680baeb200135720fbc84eb4b ocaml-4.01-refman-html.tar.gz
-f4605c5cf0dbf90395331997e600e159 ocaml-4.01-refman.info.tar.gz
-f14652070cfb984c75de1919085b6915 ocaml-4.01-refman.pdf
+c308e831a1c5d6b3024bb339fcee72f4 ocaml-4.02beta-refman-html.tar.gz
+672044269cea28b661fca5c0edadc195 ocaml-4.02beta-refman.info.tar.gz
+d05fc06025d7bad2a969a659f6de1c83 ocaml-4.02beta-refman.pdf
+053f03be03e82407f76ca0eb92bf2adf ocaml-8c1e5cdf9154b7c4f979327a554bdde5c8f76436.tar.gz
More information about the scm-commits
mailing list