From: MIvanchev <MIvanchev@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] [WIP] ocaml: update to 5.1.1
Date: Sun, 04 Feb 2024 09:41:34 +0100 [thread overview]
Message-ID: <20240204084134.30CD023202@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-48430@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 387 bytes --]
There is an updated pull request by MIvanchev against master on the void-packages repository
https://github.com/MIvanchev/void-packages ocaml
https://github.com/void-linux/void-packages/pull/48430
[WIP] ocaml: update to 5.1.1
#### Testing the changes
- I tested the changes in this PR: **NO**
A patch file from https://github.com/void-linux/void-packages/pull/48430.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-ocaml-48430.patch --]
[-- Type: text/x-diff, Size: 27607 bytes --]
From 2ff9f9bfed93be3ee7e3fc699295b16b3bc82f2d Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Mon, 29 Jan 2024 22:43:20 +0100
Subject: [PATCH] ocaml: update to 5.1.1
---
srcpkgs/camlp5/template | 20 --
srcpkgs/camlp5/update | 2 -
srcpkgs/coq/patches/coqide.patch | 203 ++++++++++++++++++
srcpkgs/coq/template | 21 +-
srcpkgs/dune/template | 2 +-
srcpkgs/mathcomp/template | 8 +-
srcpkgs/ocaml-findlib/template | 22 +-
srcpkgs/ocaml-num/template | 14 +-
srcpkgs/ocaml-stdcompat/template | 2 +-
.../patches/native-code-tests.patch | 30 +++
srcpkgs/ocaml-zarith/template | 9 +-
srcpkgs/ocaml/patches/musl-ppc.patch | 11 -
.../patches/ocaml-4.08.0-elfv2-ppc64.patch | 198 -----------------
.../ocaml/patches/ocaml-4.08.0-ppc-pie.patch | 42 ----
srcpkgs/ocaml/template | 21 +-
srcpkgs/ocamlbuild/template | 6 +-
srcpkgs/opam/template | 2 +-
srcpkgs/unison/template | 2 +-
srcpkgs/z3/template | 2 +-
19 files changed, 297 insertions(+), 320 deletions(-)
delete mode 100644 srcpkgs/camlp5/template
delete mode 100644 srcpkgs/camlp5/update
create mode 100644 srcpkgs/coq/patches/coqide.patch
create mode 100644 srcpkgs/ocaml-zarith/patches/native-code-tests.patch
delete mode 100644 srcpkgs/ocaml/patches/musl-ppc.patch
delete mode 100644 srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
delete mode 100644 srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch
diff --git a/srcpkgs/camlp5/template b/srcpkgs/camlp5/template
deleted file mode 100644
index 62223f806a0f02..00000000000000
--- a/srcpkgs/camlp5/template
+++ /dev/null
@@ -1,20 +0,0 @@
-# Template file for 'camlp5'
-pkgname=camlp5
-version=8.00.04
-revision=1
-build_style=configure
-configure_args="-mandir /usr/share/man"
-hostmakedepends="ocaml perl ocaml-findlib"
-makedepends="ocaml-camlp-streams"
-short_desc="OCaml preprocessor and pretty-printer"
-maintainer="Leah Neukirchen <leah@vuxu.org>"
-license="BSD-3-Clause"
-homepage="https://camlp5.github.io/"
-distfiles="https://github.com/${pkgname}/${pkgname}/archive/rel${version}.tar.gz"
-checksum=bddbcb5c3c2d410c9a61c4dfb6e46e3bbe984d25ac68221a7a65c82a29956b1d
-nocross=yes
-nopie=yes
-
-post_install() {
- vlicense LICENSE
-}
diff --git a/srcpkgs/camlp5/update b/srcpkgs/camlp5/update
deleted file mode 100644
index d3695ee92307ba..00000000000000
--- a/srcpkgs/camlp5/update
+++ /dev/null
@@ -1,2 +0,0 @@
-pattern='rel\K[\d\.]+(?=\.tar\.gz")'
-ignore='71?'
diff --git a/srcpkgs/coq/patches/coqide.patch b/srcpkgs/coq/patches/coqide.patch
new file mode 100644
index 00000000000000..29139dff8482f2
--- /dev/null
+++ b/srcpkgs/coq/patches/coqide.patch
@@ -0,0 +1,203 @@
+diff --git a/coqide.opam b/coqide.opam
+deleted file mode 100644
+index 6fd9e8d3ba..0000000000
+--- a/coqide.opam
++++ /dev/null
+@@ -1,45 +0,0 @@
+-# This file is generated by dune, edit dune-project instead
+-opam-version: "2.0"
+-version: "dev"
+-synopsis: "The Coq Proof Assistant --- GTK3 IDE"
+-description: """
+-Coq is a formal proof management system. It provides
+-a formal language to write mathematical definitions, executable
+-algorithms and theorems together with an environment for
+-semi-interactive development of machine-checked proofs.
+-
+-This package provides the CoqIDE, a graphical user interface for the
+-development of interactive proofs."""
+-maintainer: ["The Coq development team <coqdev@inria.fr>"]
+-authors: ["The Coq development team, INRIA, CNRS, and contributors"]
+-license: "LGPL-2.1-only"
+-homepage: "https://coq.inria.fr/"
+-doc: "https://coq.github.io/doc/"
+-bug-reports: "https://github.com/coq/coq/issues"
+-depends: [
+- "dune" {>= "2.9"}
+- "ocamlfind" {build}
+- "conf-findutils" {build}
+- "conf-adwaita-icon-theme"
+- "coqide-server" {= version}
+- "cairo2" {>= "0.6.4"}
+- "lablgtk3-sourceview3" {>= "3.1.2"}
+- "odoc" {with-doc}
+-]
+-build: [
+- ["dune" "subst"] {dev}
+- [
+- "dune"
+- "build"
+- "-p"
+- name
+- "-j"
+- jobs
+- "--promote-install-files=false"
+- "@install"
+- "@runtest" {with-test}
+- "@doc" {with-doc}
+- ]
+- ["dune" "install" "-p" name "--create-install-files" name]
+-]
+-dev-repo: "git+https://github.com/coq/coq.git"
+diff --git a/dune-project b/dune-project
+index a6a64f84f0..5bb8203351 100644
+--- a/dune-project
++++ b/dune-project
+@@ -80,23 +80,23 @@ implementation of Coq's [XML protocol](https://github.com/coq/coq/blob/master/de
+ which allows clients, such as CoqIDE, to interact with Coq in a
+ structured way."))
+
+-(package
+- (name coqide)
+- (depends
+- (ocamlfind :build)
+- (conf-findutils :build)
+- conf-adwaita-icon-theme
+- (coqide-server (= :version))
+- (cairo2 (>= 0.6.4))
+- (lablgtk3-sourceview3 (>= 3.1.2)))
+- (synopsis "The Coq Proof Assistant --- GTK3 IDE")
+- (description "Coq is a formal proof management system. It provides
+-a formal language to write mathematical definitions, executable
+-algorithms and theorems together with an environment for
+-semi-interactive development of machine-checked proofs.
+-
+-This package provides the CoqIDE, a graphical user interface for the
+-development of interactive proofs."))
++;(package
++; (name coqide)
++; (depends
++; (ocamlfind :build)
++; (conf-findutils :build)
++; conf-adwaita-icon-theme
++; (coqide-server (= :version))
++; (cairo2 (>= 0.6.4))
++; (lablgtk3-sourceview3 (>= 3.1.2)))
++; (synopsis "The Coq Proof Assistant --- GTK3 IDE")
++; (description "Coq is a formal proof management system. It provides
++;a formal language to write mathematical definitions, executable
++;algorithms and theorems together with an environment for
++;semi-interactive development of machine-checked proofs.
++;
++;This package provides the CoqIDE, a graphical user interface for the
++;development of interactive proofs."))
+
+ (package
+ (name coq-doc)
+diff --git a/ide/coqide/dune b/ide/coqide/dune
+index c3a5469984..b96af2a073 100644
+--- a/ide/coqide/dune
++++ b/ide/coqide/dune
+@@ -23,16 +23,16 @@
+ (files (idetop.bc as coqidetop.byte)))
+
+ ; IDE Client, we may want to add the macos_prehook.ml conditionally.
+-(library
+- (name coqide_gui)
+- (wrapped false)
+- (modules (:standard \ document idetop coqide_main default_bindings_src gen_gtk_platform
+- shared shared_os_specific))
+- (modules_without_implementation configwin_types)
+- (foreign_stubs
+- (language c)
+- (names coqide_os_stubs))
+- (libraries coqide-server.protocol coqide-server.core lablgtk3-sourceview3 platform_specific))
++;(library
++; (name coqide_gui)
++; (wrapped false)
++; (modules (:standard \ document idetop coqide_main default_bindings_src gen_gtk_platform
++; shared shared_os_specific))
++; (modules_without_implementation configwin_types)
++; (foreign_stubs
++; (language c)
++; (names coqide_os_stubs))
++; (libraries coqide-server.protocol coqide-server.core lablgtk3-sourceview3 platform_specific))
+
+ (library
+ (name platform_specific)
+@@ -68,16 +68,16 @@
+ (targets shared_os_stubs.c)
+ (action (copy shared_%{read:gtk_platform.conf}.c.in %{targets})))
+
+-(executable
+- (name coqide_main)
+- (public_name coqide)
+- (package coqide)
+- (modules coqide_main)
+- (modes exe byte)
+- (libraries coqide_gui))
++;(executable
++; (name coqide_main)
++; (public_name coqide)
++; (package coqide)
++; (modules coqide_main)
++; (modes exe byte)
++; (libraries coqide_gui))
+
+-(documentation
+- (package coqide))
++;(documentation
++; (package coqide))
+
+ ; Input-method bindings
+ (executable
+@@ -89,19 +89,19 @@
+ (deps (:gen ./default_bindings_src.exe))
+ (action (run %{gen} %{targets})))
+
+-(install
+- (section doc)
+- (package coqide)
+- (files FAQ))
++;(install
++; (section doc)
++; (package coqide)
++; (files FAQ))
+
+ ; FIXME: we should install those in share/coqide. We better do this
+ ; once the make-based system has been phased out.
+-(install
+- (section share_root)
+- (package coqide)
+- (files
+- (coq.png as coq/coq.png)
+- (default.bindings as coq/default.bindings)
+- (coq_style.xml as coq/coq_style.xml)
+- (coq.lang as coq/coq.lang)
+- (coq-ssreflect.lang as coq/coq-ssreflect.lang)))
++;(install
++; (section share_root)
++; (package coqide)
++; (files
++; (coq.png as coq/coq.png)
++; (default.bindings as coq/default.bindings)
++; (coq_style.xml as coq/coq_style.xml)
++; (coq.lang as coq/coq.lang)
++; (coq-ssreflect.lang as coq/coq-ssreflect.lang)))
+diff --git a/man/dune b/man/dune
+index 3f33fcd95b..e2339853cc 100644
+--- a/man/dune
++++ b/man/dune
+@@ -3,8 +3,8 @@
+ (package coq-core)
+ (files coqc.1 coqtop.1 coqtop.byte.1 coqtop.opt.1 coqchk.1 coqdep.1 coqdoc.1 coq_makefile.1 coq-tex.1 coqwc.1 coqnative.1))
+
+-(install
+- (section man)
+- (package coqide)
+- (files coqide.1))
++;(install
++; (section man)
++; (package coqide)
++; (files coqide.1))
+
diff --git a/srcpkgs/coq/template b/srcpkgs/coq/template
index 78d6caa780dda0..0ced3aa0e43cc3 100644
--- a/srcpkgs/coq/template
+++ b/srcpkgs/coq/template
@@ -1,29 +1,26 @@
# Template file for 'coq'
pkgname=coq
-version=8.18.0
+version=8.19.0
revision=1
-hostmakedepends="camlp5 dune ocaml ocaml-findlib ocaml-num ocaml-zarith"
+build_style="configure"
+configure_args="-prefix /usr"
+hostmakedepends="dune ocaml ocaml-findlib ocaml-num ocaml-zarith"
depends="ocaml-findlib"
short_desc="Proof assistant written in OCaml"
maintainer="Leah Neukirchen <leah@vuxu.org>"
license="LGPL-2.1-only"
homepage="https://coq.inria.fr"
distfiles="https://github.com/coq/coq/archive/V${version}.tar.gz"
-checksum=00a18c796a6e154a1f1bac7e1aef9e14107e0295fa4e0a18f10cdea6fc2e840b
+checksum=17e5c10fadcd3cda7509d822099a892fcd003485272b56a45abd30390f6a426f
nopie=yes
nocross=yes
-case "$XBPS_TARGET_MACHINE" in
- ppc64*) ;;
- ppc*) broken="R_PPC_REL24 relocation out of range";;
-esac
-
-post_patch() {
- vsed -i -e 's/which/command -v/g' dev/tools/make_git_revision.sh
-}
-
do_build() {
make dunestrap
+ if [ "${XBPS_TARGET_MACHINE%-musl}" = "i686" ]; then
+ sed -i 's/\.cmxs/.cma/g' theories/dune
+ sed -i 's/\.cmxs/.cma/g' user-contrib/Ltac2/dune
+ fi
dune build --display=short -p coq-core,coq-stdlib
}
diff --git a/srcpkgs/dune/template b/srcpkgs/dune/template
index ca28c69b2fac7e..7cc448744e85aa 100644
--- a/srcpkgs/dune/template
+++ b/srcpkgs/dune/template
@@ -1,7 +1,7 @@
# Template file for 'dune'
pkgname=dune
version=3.13.0
-revision=1
+revision=2
makedepends="ocaml"
depends="ocaml"
short_desc="Composable build system for OCaml"
diff --git a/srcpkgs/mathcomp/template b/srcpkgs/mathcomp/template
index 9757979e5af1c5..9d1de2eeae31e0 100644
--- a/srcpkgs/mathcomp/template
+++ b/srcpkgs/mathcomp/template
@@ -1,7 +1,7 @@
# Template file for 'mathcomp'
pkgname=mathcomp
-version=1.17.0
-revision=3
+version=1.19.0
+revision=1
build_wrksrc="mathcomp"
build_style=gnu-makefile
hostmakedepends="coq ocaml-findlib"
@@ -9,8 +9,8 @@ short_desc="Mathematical Components Library for the Coq proof assistant"
maintainer="Leah Neukirchen <leah@vuxu.org>"
license="CECILL-B"
homepage="https://github.com/math-comp/math-comp"
-distfiles="https://github.com/math-comp/math-comp/archive/${pkgname}-${version}.tar.gz"
-checksum=1779bcdac5d23d90997627364a5943ef4883c6eb54d67ddbb1dfbe6b7795a188
+distfiles="https://github.com/math-comp/math-comp/archive/refs/tags/${pkgname}-${version}.tar.gz"
+checksum=786db902d904347f2108ffceae15ba29037ff8e63a6c58b87928f08671456394
nocross="ocaml"
post_patch() {
diff --git a/srcpkgs/ocaml-findlib/template b/srcpkgs/ocaml-findlib/template
index cd10d0a4bf4b3c..09a1427f3095d3 100644
--- a/srcpkgs/ocaml-findlib/template
+++ b/srcpkgs/ocaml-findlib/template
@@ -1,25 +1,31 @@
# Template file for 'ocaml-findlib'
pkgname=ocaml-findlib
-version=1.9.3
-revision=2
+version=1.9.6
+revision=1
build_style=configure
configure_args="-config /etc/findlib.conf -sitelib /usr/lib/ocaml -mandir /usr/share/man"
-make_build_args="all opt"
-makedepends="ncurses-devel ocaml ocamlbuild"
+makedepends="ocaml ocamlbuild"
short_desc="OCaml package manager"
maintainer="Orphaned <orphan@voidlinux.org>"
license="MIT"
homepage="http://projects.camlcity.org/projects/findlib.html"
distfiles="http://download.camlcity.org/download/findlib-${version}.tar.gz"
-checksum=c310fcb62838d9e50f0b6d6c5ceefcbe4fe056f72496950ae7d5c6cdaae2cc41
+checksum=2df996279ae16b606db5ff5879f93dbfade0898db9f1a3e82f7f845faa2930a2
nocross=yes
nopie=yes
disable_parallel_build=yes
+case "$XBPS_TARGET_MACHINE" in
+ # native code platforms
+ x86_64*|aarch64*|riscv64*)
+ make_build_args="all opt" ;;
+ *)
+ make_build_target="all"
+ # Do not strip; removes byte code!
+ nostrip_files="/usr/bin/ocamlfind" ;;
+esac
+
do_install() {
make prefix="$DESTDIR" install
- vbin src/findlib/ocamlfind_opt
vlicense LICENSE
-
- rm -rf ${DESTDIR}/usr/lib/ocaml/ocamlbuild
}
diff --git a/srcpkgs/ocaml-num/template b/srcpkgs/ocaml-num/template
index 72c9bace0d0747..8f6a51ccb6ae87 100644
--- a/srcpkgs/ocaml-num/template
+++ b/srcpkgs/ocaml-num/template
@@ -1,7 +1,7 @@
# Template file for 'ocaml-num'
pkgname=ocaml-num
-version=1.4
-revision=4
+version=1.5
+revision=1
build_style=gnu-makefile
make_install_target="findlib-install"
makedepends="ocaml ocaml-findlib"
@@ -10,8 +10,16 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
license="custom: LGPL-2.1-only with OCaml-LGPL-linking-exception"
homepage="https://github.com/ocaml/num"
distfiles="https://github.com/ocaml/num/archive/v${version}.tar.gz"
-checksum=015088b68e717b04c07997920e33c53219711dfaf36d1196d02313f48ea00f24
+checksum=7ae07c8f5601e2dfc5008a62dcaf2719912ae596a19365c5d7bdf2230515959a
nocross=yes
+disable_parallel_build=yes
+
+pre_build() {
+ if ! command -v ocamlc.opt >/dev/null; then
+ sed 's/ifeq "$(NATDYNLINK)" "true"/ifeq "true" "false"/' src/Makefile
+ sed -i 's/ifeq "$(NATDYNLINK)" "true"/ifeq "true" "false"/' src/Makefile
+ fi
+}
pre_install() {
export OCAMLFIND_DESTDIR=${DESTDIR}/usr/lib/ocaml
diff --git a/srcpkgs/ocaml-stdcompat/template b/srcpkgs/ocaml-stdcompat/template
index 7bfcf2576ce842..a7251039c3c0fb 100644
--- a/srcpkgs/ocaml-stdcompat/template
+++ b/srcpkgs/ocaml-stdcompat/template
@@ -1,7 +1,7 @@
# Template file for 'ocaml-stdcompat'
pkgname=ocaml-stdcompat
version=19
-revision=1
+revision=2
build_style=gnu-configure
configure_args="--libdir=/usr/lib/ocaml"
hostmakedepends="automake"
diff --git a/srcpkgs/ocaml-zarith/patches/native-code-tests.patch b/srcpkgs/ocaml-zarith/patches/native-code-tests.patch
new file mode 100644
index 00000000000000..458cc5348a017e
--- /dev/null
+++ b/srcpkgs/ocaml-zarith/patches/native-code-tests.patch
@@ -0,0 +1,30 @@
+diff --git a/tests/Makefile b/tests/Makefile
+index 760294b..9b3f365 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -10,14 +10,17 @@ NUMS_CMA=nums.cma
+ NUMS_CMXA=nums.cmxa
+ endif
+
++ifeq ($(HASOCAMLOPT),yes)
+ test:: zq.exe
+ @echo "Testing zq (native)..."
+ @if ./zq.exe | cmp -s zq.output$(WORDSIZE) - ; then echo "zq: passed"; else echo "zq: FAILED"; exit 2; fi
++endif
+
+ test:: zq.byt
+ @echo "Testing zq (bytecode)..."
+ @if ocamlrun -I .. ./zq.byt | cmp -s zq.output$(WORDSIZE) - ; then echo "zq: passed"; else echo "zq: FAILED"; exit 2; fi
+
++ifeq ($(HASOCAMLOPT),yes)
+ ifeq ($(HAS_NUM),true)
+ test:: bi.exe
+ @echo "Testing bi..."
+@@ -49,6 +52,7 @@ bench:: pi.exe
+ test:: tst_extract.exe
+ @echo "Testing extract..."
+ @if ./tst_extract.exe; then echo "tst_extract: passed"; else echo "tst_extract: FAILED"; exit 2; fi
++endif
+
+ tofloat.exe: tofloat.ml setround.o ../zarith.cmxa
+ ocamlopt -I .. -ccopt "-L.." zarith.cmxa -o tofloat.exe \
diff --git a/srcpkgs/ocaml-zarith/template b/srcpkgs/ocaml-zarith/template
index 8c5485e6981810..dfef566ae3079a 100644
--- a/srcpkgs/ocaml-zarith/template
+++ b/srcpkgs/ocaml-zarith/template
@@ -1,7 +1,7 @@
# Template file for 'ocaml-zarith'
pkgname=ocaml-zarith
-version=1.12
-revision=4
+version=1.13
+revision=1
build_style=configure
make_check_target="tests"
hostmakedepends="perl"
@@ -12,13 +12,16 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
license="LGPL-2.0-only,OCaml-LGPL-linking-exception"
homepage="https://github.com/ocaml/zarith"
distfiles="https://github.com/ocaml/zarith/archive/release-${version}.tar.gz"
-checksum=cc32563c3845c86d0f609c86d83bf8607ef12354863d31d3bffc0dacf1ed2881
+checksum=a5826d33fea0103ad6e66f92583d8e075fb77976de893ffdd73ada0409b3f83b
nocross=yes
disable_parallel_build=yes
post_configure() {
sed -i 's/INSTALLDIR=/&$(DESTDIR)/' Makefile
}
+pre_install() {
+ mkdir -p ${DESTDIR}/usr/lib/ocaml/stublibs
+}
post_install() {
vcopy META usr/lib/ocaml/zarith
}
diff --git a/srcpkgs/ocaml/patches/musl-ppc.patch b/srcpkgs/ocaml/patches/musl-ppc.patch
deleted file mode 100644
index bc2c10fd43ab8c..00000000000000
--- a/srcpkgs/ocaml/patches/musl-ppc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/runtime/signals_osdep.h
-+++ b/runtime/signals_osdep.h
-@@ -309,6 +309,8 @@
-
- #elif defined(TARGET_power) && defined(SYS_elf)
-
-+ #include <asm/ptrace.h>
-+
- #define DECLARE_SIGNAL_HANDLER(name) \
- static void name(int sig, struct sigcontext * context)
-
diff --git a/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch b/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
deleted file mode 100644
index 65a6cea92adf4b..00000000000000
--- a/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
+++ /dev/null
@@ -1,198 +0,0 @@
---- ocaml-4.08.0/asmcomp/power/arch.ml
-+++ ocaml-4.08.0/asmcomp/power/arch.ml
-@@ -28,7 +28,7 @@ type abi = ELF32 | ELF64v1 | ELF64v2
- let abi =
- match Config.model with
- | "ppc" -> ELF32
-- | "ppc64" -> ELF64v1
-+ | "ppc64" -> ELF64v2
- | "ppc64le" -> ELF64v2
- | _ -> assert false
-
---- ocaml-4.10.0/runtime/power.S
-+++ ocaml-4.10.0/runtime/power.S
-@@ -13,7 +13,7 @@
- /* */
- /**************************************************************************/
-
--#if defined(MODEL_ppc64le)
-+#if _CALL_ELF == 2
- .abiversion 2
- #endif
-
-@@ -52,8 +52,7 @@
- #define TRAP_PREVIOUS_OFFSET 4
- #define CALLBACK_LINK_SIZE 16
- #define CALLBACK_LINK_OFFSET 0
--#endif
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define RESERVED_STACK 48
- #define PARAM_SAVE_AREA (8*8)
- #define LR_SAVE 16
-@@ -64,8 +63,7 @@
- #define TRAP_PREVIOUS_OFFSET 64
- #define CALLBACK_LINK_SIZE 32
- #define CALLBACK_LINK_OFFSET 48
--#endif
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define RESERVED_STACK 32
- #define PARAM_SAVE_AREA 0
- #define LR_SAVE 16
-@@ -91,9 +89,8 @@
- #define ENDFUNCTION(name) \
- .size name, . - name
-
--#endif
-
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define FUNCTION(name) \
- .section ".opd","aw"; \
- .align 3; \
-@@ -107,9 +104,8 @@
- #define ENDFUNCTION(name) \
- .size name, . - .L.name
-
--#endif
-
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define FUNCTION(name) \
- .section ".text"; \
- .globl name; \
-@@ -151,7 +147,7 @@
-
- #define Caml_state(var) 8*domain_field_caml_##var(28)
-
--#if defined(MODEL_ppc64)
-+#if _CALL_ELF == 1
- .section ".opd","aw"
- #else
- .section ".text"
-@@ -332,14 +328,14 @@
- #if defined(MODEL_ppc)
- mtctr C_CALL_FUN
- bctrl
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- ld 0, 0(C_CALL_FUN)
- mr C_CALL_TOC, 2 /* save current TOC in a callee-save register */
- mtctr 0
- ld 2, 8(C_CALL_FUN)
- bctrl
- mr 2, C_CALL_TOC /* restore current TOC */
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- mtctr C_CALL_FUN
- mr 12, C_CALL_FUN
- mr C_CALL_TOC, 2 /* save current TOC in a callee-save register */
-@@ -515,14 +511,14 @@
- #if defined(MODEL_ppc)
- mtctr 12
- .L105: bctrl
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- ld 0, 0(12)
- mtctr 0
- std 2, TOC_SAVE(1)
- ld 2, 8(12)
- .L105: bctrl
- ld 2, TOC_SAVE(1)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- mtctr 12
- std 2, TOC_SAVE(1)
- .L105: bctrl
-@@ -641,7 +637,7 @@
- b .L102
- ENDFUNCTION(caml_callback3_asm)
-
--#if defined(MODEL_ppc64)
-+#if _CALL_ELF == 1
- .section ".opd","aw"
- #else
- .section ".text"
---- ocaml-4.08.0/testsuite/tools/asmgen_power.S
-+++ ocaml-4.08.0/testsuite/tools/asmgen_power.S
-@@ -25,12 +25,10 @@
- #if defined(MODEL_ppc)
- #define RESERVED_STACK 16
- #define LR_SAVE_AREA 4
--#endif
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define RESERVED_STACK 48
- #define LR_SAVE_AREA 16
--#endif
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define RESERVED_STACK 32
- #define LR_SAVE_AREA 16
- #endif
-@@ -44,9 +42,8 @@
- .type name, @function; \
- .align 2; \
- name:
--#endif
-
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define FUNCTION(name) \
- .section ".opd","aw"; \
- .align 3; \
-@@ -56,9 +53,8 @@
- .text; \
- .align 2; \
- .L.name:
--#endif
-
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define FUNCTION(name) \
- .section ".text"; \
- .globl name; \
-@@ -118,11 +114,11 @@ FUNCTION(call_gen_code)
- /* Get function pointer in CTR */
- #if defined(MODEL_ppc)
- mtctr 3
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- ld 0, 0(3)
- mtctr 0
- ld 2, 8(3)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- mtctr 3
- mr 12, 3
- #else
-@@ -184,11 +180,11 @@ FUNCTION(caml_c_call)
- /* Jump to C function (address in r28) */
- #if defined(MODEL_ppc)
- mtctr 28
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- ld 0, 0(28)
- mtctr 0
- ld 2, 8(28)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- mtctr 28
- mr 12, 28
- #else
---- ocaml-4.08.0/runtime/caml/stack.h
-+++ ocaml-4.08.0/runtime/caml/stack.h
-@@ -35,10 +35,10 @@
- #if defined(MODEL_ppc)
- #define Saved_return_address(sp) *((intnat *)((sp) - 4))
- #define Callback_link(sp) ((struct caml_context *)((sp) + 16))
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define Saved_return_address(sp) *((intnat *)((sp) + 16))
- #define Callback_link(sp) ((struct caml_context *)((sp) + (48 + 32)))
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define Saved_return_address(sp) *((intnat *)((sp) + 16))
- #define Callback_link(sp) ((struct caml_context *)((sp) + (32 + 32)))
- #else
diff --git a/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch b/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch
deleted file mode 100644
index a26f6a639e185b..00000000000000
--- a/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- ocaml-4.11.0/asmcomp/emitaux.ml
-+++ ocaml-4.11.0/asmcomp/emitaux.ml
-@@ -268,6 +268,7 @@
- match rdbg with
- | [] -> assert false
- | d :: rest -> emit rs d rest in
-+ a.efa_align Arch.size_addr;
- a.efa_word (List.length !frame_descriptors);
- List.iter emit_frame !frame_descriptors;
- Label_table.iter emit_debuginfo debuginfos;
---- ocaml-4.08.0/runtime/power.S
-+++ ocaml-4.08.0/runtime/power.S
-@@ -642,6 +642,7 @@ caml_system__code_end:
- /* Frame table */
-
- .section ".data"
-+ .align wordalign
- .globl caml_system__frametable
- .type caml_system__frametable, @object
- caml_system__frametable:
---- ocaml-4.14.0/configure.ac
-+++ ocaml-4.14.0/configure.ac
-@@ -1006,7 +1006,7 @@ AS_IF([test $arch != "none" && $arch64 ],
- # e.g. Ubuntu >= 17.10 for i386, which uses the glibc dynamic loader.
-
- AS_CASE([$arch],
-- [amd64|arm64|s390x|none],
-+ [amd64|arm64|s390x|power|none],
- # ocamlopt generates PIC code or doesn't generate code at all
- [],
- [AS_CASE([$host],
---- ocaml-4.14.0/configure
-+++ ocaml-4.14.0/configure
-@@ -13886,7 +13886,7 @@
- # e.g. Ubuntu >= 17.10 for i386, which uses the glibc dynamic loader.
-
- case $arch in #(
-- amd64|arm64|s390x|none) :
-+ amd64|arm64|s390x|power|none) :
- # ocamlopt generates PIC code or doesn't generate code at all
- ;; #(
- *) :
diff --git a/srcpkgs/ocaml/template b/srcpkgs/ocaml/template
index f44b0b83941a22..db4e45cc77d1cc 100644
--- a/srcpkgs/ocaml/template
+++ b/srcpkgs/ocaml/template
@@ -1,26 +1,25 @@
# Template file for 'ocaml'
pkgname=ocaml
-version=4.14.0
-revision=2
+version=5.1.0
+revision=1
build_style="gnu-configure"
configure_args="--with-pic --libdir=/usr/lib/ocaml"
-make_build_target="world.opt"
-makedepends="ncurses-devel libX11-devel"
-short_desc="Main implementation of the Caml language"
+short_desc="Main implementation of the OCaml language"
maintainer="Leah Neukirchen <leah@vuxu.org>"
license="QPL-1.0, LGPL-2.1-only"
homepage="http://ocaml.org/"
-distfiles="https://github.com/${pkgname}/${pkgname}/archive/${version}.tar.gz"
-checksum=39f44260382f28d1054c5f9d8bf4753cb7ad64027da792f7938344544da155e8
+distfiles="https://github.com/ocaml/ocaml/archive/${version}.tar.gz"
+checksum=43a3ac7aab7f8880f2bb6221317be55319b356e517622fdc28359fe943e6a450
nocross=yes
-export ASPP="cc -c"
-
case "$XBPS_TARGET_MACHINE" in
- # also just segfaults when compiled without PIE (BSS-PLT?)
- ppc-musl) broken="/usr/bin/ocamlc: unsupported relocation type 6";;
+ # native code platforms
+ x86_64*|aarch64*|riscv64*) make_build_target="world.opt";;
+ *) make_build_target="world";;
esac
+export ASPP="cc -c"
+
post_install() {
vlicense LICENSE
}
diff --git a/srcpkgs/ocamlbuild/template b/srcpkgs/ocamlbuild/template
index 188b9b23dc0303..3aa82504b36561 100644
--- a/srcpkgs/ocamlbuild/template
+++ b/srcpkgs/ocamlbuild/template
@@ -1,7 +1,7 @@
# Template file for 'ocamlbuild'
pkgname=ocamlbuild
version=0.14.2
-revision=1
+revision=2
build_style=gnu-makefile
hostmakedepends="ocaml"
short_desc="OCaml build tool"
@@ -13,3 +13,7 @@ checksum=62d2dab6037794c702a83ac584a7066d018cf1645370d1f3d5764c2b458791b1
nocross=yes
export CHECK_IF_PREINSTALLED=false
+
+pre_build() {
+ command -v ocamlc.opt >/dev/null || export OCAML_NATIVE=false
+}
diff --git a/srcpkgs/opam/template b/srcpkgs/opam/template
index 46e4a305f2b946..9e3e3af6944d25 100644
--- a/srcpkgs/opam/template
+++ b/srcpkgs/opam/template
@@ -1,7 +1,7 @@
# Template file for 'opam'
pkgname=opam
version=2.1.5
-revision=1
+revision=2
build_style=gnu-configure
configure_args="--docdir=/usr/share/doc/${pkgname}"
make_build_args="lib-ext all"
diff --git a/srcpkgs/unison/template b/srcpkgs/unison/template
index 2360574efa4f51..df4a21bea61713 100644
--- a/srcpkgs/unison/template
+++ b/srcpkgs/unison/template
@@ -1,7 +1,7 @@
# Template file for 'unison'
pkgname=unison
version=2.53.3
-revision=1
+revision=2
hostmakedepends="ocaml"
short_desc="File-synchronization tool"
maintainer="Andrew J. Hesford <ajh@sideband.org>"
diff --git a/srcpkgs/z3/template b/srcpkgs/z3/template
index 5c24bec533b2f9..2e50a0a0e82ac7 100644
--- a/srcpkgs/z3/template
+++ b/srcpkgs/z3/template
@@ -1,7 +1,7 @@
# Template file for 'z3'
pkgname=z3
version=4.12.5
-revision=1
+revision=2
build_style=configure
configure_args="--prefix=/usr -g --python $(vopt_if ocaml --ml)"
make_build_args="-C build all examples"
next prev parent reply other threads:[~2024-02-04 8:41 UTC|newest]
Thread overview: 139+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-29 21:43 [PR PATCH] " MIvanchev
2024-01-29 21:45 ` [PR PATCH] [Updated] " MIvanchev
2024-01-29 21:55 ` MIvanchev
2024-01-29 21:57 ` MIvanchev
2024-01-29 22:07 ` MIvanchev
2024-01-29 22:10 ` MIvanchev
2024-01-29 22:13 ` MIvanchev
2024-01-29 22:17 ` MIvanchev
2024-01-29 22:21 ` MIvanchev
2024-01-29 22:26 ` MIvanchev
2024-01-29 22:33 ` MIvanchev
2024-01-29 22:41 ` MIvanchev
2024-01-29 22:42 ` MIvanchev
2024-01-29 22:44 ` MIvanchev
2024-01-30 2:47 ` zdykstra
2024-01-30 6:44 ` icp1994
2024-01-30 8:05 ` MIvanchev
2024-01-30 8:05 ` [PR PATCH] [Closed]: " MIvanchev
2024-01-30 16:55 ` [PR PATCH] [Updated] " MIvanchev
2024-01-30 17:06 ` [PR PATCH] [Updated] [WIP] " MIvanchev
2024-01-30 17:16 ` MIvanchev
2024-01-30 17:36 ` MIvanchev
2024-01-30 17:48 ` MIvanchev
2024-01-30 17:55 ` MIvanchev
2024-01-30 18:07 ` MIvanchev
2024-01-30 20:24 ` MIvanchev
2024-01-30 20:25 ` MIvanchev
2024-01-30 21:34 ` MIvanchev
2024-01-30 21:54 ` MIvanchev
2024-01-31 8:27 ` MIvanchev
2024-01-31 8:41 ` MIvanchev
2024-01-31 8:54 ` MIvanchev
2024-01-31 11:37 ` MIvanchev
2024-01-31 11:53 ` MIvanchev
2024-01-31 13:25 ` MIvanchev
2024-01-31 13:38 ` MIvanchev
2024-01-31 18:32 ` MIvanchev
2024-01-31 18:38 ` MIvanchev
2024-01-31 19:05 ` MIvanchev
2024-01-31 19:12 ` MIvanchev
2024-01-31 19:13 ` MIvanchev
2024-01-31 19:21 ` MIvanchev
2024-01-31 19:30 ` MIvanchev
2024-01-31 19:41 ` MIvanchev
2024-01-31 20:19 ` MIvanchev
2024-01-31 20:38 ` MIvanchev
2024-01-31 20:49 ` MIvanchev
2024-01-31 20:55 ` MIvanchev
2024-01-31 21:05 ` MIvanchev
2024-01-31 21:46 ` MIvanchev
2024-01-31 21:50 ` MIvanchev
2024-01-31 22:03 ` MIvanchev
2024-02-01 15:58 ` MIvanchev
2024-02-01 16:12 ` MIvanchev
2024-02-01 16:32 ` MIvanchev
2024-02-01 16:39 ` MIvanchev
2024-02-01 16:48 ` MIvanchev
2024-02-01 21:11 ` MIvanchev
2024-02-01 21:25 ` MIvanchev
2024-02-01 21:38 ` MIvanchev
2024-02-02 8:54 ` MIvanchev
2024-02-02 9:00 ` MIvanchev
2024-02-02 9:15 ` MIvanchev
2024-02-02 9:26 ` MIvanchev
2024-02-02 9:47 ` MIvanchev
2024-02-02 9:51 ` MIvanchev
2024-02-02 9:56 ` MIvanchev
2024-02-02 10:29 ` MIvanchev
2024-02-02 10:51 ` MIvanchev
2024-02-02 11:14 ` MIvanchev
2024-02-02 11:28 ` MIvanchev
2024-02-02 11:46 ` MIvanchev
2024-02-02 12:00 ` MIvanchev
2024-02-02 13:05 ` MIvanchev
2024-02-02 13:34 ` MIvanchev
2024-02-02 13:41 ` MIvanchev
2024-02-02 13:53 ` MIvanchev
2024-02-02 14:09 ` MIvanchev
2024-02-02 14:20 ` MIvanchev
2024-02-02 14:32 ` MIvanchev
2024-02-02 15:18 ` MIvanchev
2024-02-02 15:18 ` MIvanchev
2024-02-02 15:19 ` MIvanchev
2024-02-02 15:19 ` MIvanchev
2024-02-02 15:20 ` MIvanchev
2024-02-02 15:41 ` MIvanchev
2024-02-02 23:21 ` MIvanchev
2024-02-02 23:33 ` MIvanchev
2024-02-03 8:35 ` MIvanchev
2024-02-03 8:52 ` MIvanchev
2024-02-03 8:59 ` MIvanchev
2024-02-03 9:50 ` MIvanchev
2024-02-03 9:56 ` MIvanchev
2024-02-03 10:20 ` MIvanchev
2024-02-03 10:24 ` MIvanchev
2024-02-03 10:38 ` MIvanchev
2024-02-04 8:41 ` MIvanchev [this message]
2024-02-04 8:42 ` MIvanchev
2024-02-04 9:20 ` MIvanchev
2024-02-04 9:22 ` MIvanchev
2024-02-04 9:30 ` MIvanchev
2024-02-04 10:20 ` MIvanchev
2024-02-04 11:46 ` MIvanchev
2024-02-04 11:51 ` MIvanchev
2024-02-04 12:07 ` MIvanchev
2024-02-04 12:32 ` MIvanchev
2024-02-04 19:28 ` MIvanchev
2024-02-04 20:21 ` MIvanchev
2024-02-04 22:06 ` MIvanchev
2024-02-05 8:41 ` MIvanchev
2024-02-05 9:20 ` MIvanchev
2024-02-05 11:44 ` MIvanchev
2024-02-05 11:45 ` MIvanchev
2024-02-05 11:46 ` MIvanchev
2024-02-05 12:54 ` MIvanchev
2024-02-05 15:48 ` MIvanchev
2024-02-05 16:47 ` MIvanchev
2024-02-05 21:02 ` MIvanchev
2024-02-05 21:55 ` MIvanchev
2024-02-05 22:00 ` MIvanchev
2024-02-05 22:20 ` MIvanchev
2024-02-05 22:21 ` MIvanchev
2024-02-06 8:32 ` MIvanchev
2024-02-06 8:34 ` MIvanchev
2024-02-24 8:27 ` MIvanchev
2024-02-24 8:34 ` MIvanchev
2024-02-24 8:35 ` MIvanchev
2024-02-24 8:48 ` MIvanchev
2024-02-24 9:24 ` MIvanchev
2024-02-24 10:11 ` MIvanchev
2024-02-24 11:10 ` MIvanchev
2024-02-24 11:37 ` MIvanchev
2024-02-24 18:06 ` MIvanchev
2024-02-25 16:48 ` [PR PATCH] [Closed]: " MIvanchev
-- strict thread matches above, loose matches on Subject: below --
2022-12-21 22:30 [PR PATCH] [WIP] ocaml: update to 5.0.0 leahneukirchen
2024-02-24 0:32 ` [PR PATCH] [Updated] [WIP] ocaml: update to 5.1.1 leahneukirchen
2024-02-24 17:26 ` leahneukirchen
2024-02-24 19:55 ` leahneukirchen
2024-02-24 21:06 ` leahneukirchen
2024-02-24 22:54 ` leahneukirchen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240204084134.30CD023202@inbox.vuxu.org \
--to=mivanchev@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).