Skip to content

Commit 836a09b

Browse files
Merge pull request ocaml#27833 from Octachron/OCaml_5.5_trunk
Ocaml compiler: add the 5.5.0+trunk dev package
2 parents 46ed88f + d9a9978 commit 836a09b

File tree

3 files changed

+198
-0
lines changed
  • packages
    • ocaml-compiler/ocaml-compiler.5.5
    • ocaml-variants/ocaml-variants.5.5.0+trunk
    • ocaml/ocaml.5.5.0

3 files changed

+198
-0
lines changed
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
opam-version: "2.0"
2+
license: "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
3+
synopsis: "Latest 5.5 development"
4+
maintainer: [
5+
"David Allsopp <[email protected]>"
6+
"Florian Angeletti <[email protected]>"
7+
]
8+
authors: [
9+
"Xavier Leroy"
10+
"Damien Doligez"
11+
"Alain Frisch"
12+
"Jacques Garrigue"
13+
"Didier Rémy"
14+
"KC Sivaramakrishnan"
15+
"Jérôme Vouillon"
16+
]
17+
homepage: "https://ocaml.org"
18+
bug-reports: "https://github.com/ocaml/opam-repository/issues"
19+
dev-repo: "git+https://github.com/ocaml/ocaml.git#trunk"
20+
depends: [
21+
# This is OCaml 5.5.0
22+
"ocaml" {= "5.5.0" & post}
23+
24+
# General base- packages
25+
"base-unix" {post}
26+
"base-bigarray" {post}
27+
"base-threads" {post}
28+
"base-domains" {post}
29+
"base-nnp" {post}
30+
"base-effects" {post}
31+
32+
"ocaml-beta" {opam-version < "2.1.0"}
33+
34+
# Architecture (non-Windows)
35+
# opam-repository at present requires that ocaml-base-compiler is installed
36+
# using an architecture which matches the machine's, since arch is used in
37+
# available fields. Cross-compilation at this stage is an unstable accident.
38+
"host-arch-arm32" {arch = "arm32" & post}
39+
"host-arch-arm64" {arch = "arm64" & post}
40+
"host-arch-ppc64" {arch = "ppc64" & post}
41+
"host-arch-riscv64" {arch = "riscv64" & post}
42+
"host-arch-s390x" {arch = "s390x" & post}
43+
# The Windows ports explicitly select the architecture (see below) this
44+
# facility is not yet available for other platforms.
45+
"host-arch-x86_32" {os != "win32" & arch = "x86_32" & post}
46+
("host-arch-x86_64" {os != "win32" & arch = "x86_64" & post} |
47+
("host-arch-x86_32" {os != "win32" & arch = "x86_64" & post} & "ocaml-option-32bit" {os != "win32" & arch = "x86_64"}))
48+
"host-arch-unknown" {os != "win32" & arch != "arm32" & arch != "arm64" & arch != "ppc64" & arch != "riscv64" & arch != "s390x" & arch != "x86_32" & arch != "x86_64" & post}
49+
50+
# Port selection (Windows)
51+
# amd64 mingw-w64 / MSVC
52+
(("arch-x86_64" {os = "win32" & arch = "x86_64"} &
53+
(("system-mingw" & "mingw-w64-shims" {os-distribution = "cygwin" & build}) |
54+
("system-msvc" & "winpthreads" & "ocaml-option-no-compression" {os = "win32"}))) |
55+
# i686 mingw-w64 / MSVC
56+
("arch-x86_32" {os = "win32"} & "ocaml-option-bytecode-only" {os = "win32"} &
57+
(("system-mingw" & "mingw-w64-shims" {os-distribution = "cygwin" & build}) |
58+
("system-msvc" & "winpthreads" & "ocaml-option-no-compression" {os = "win32"}))) |
59+
# Non-Windows systems
60+
"host-system-other" {os != "win32" & post})
61+
62+
# All the 32-bit architectures are bytecode-only
63+
"ocaml-option-bytecode-only" {arch != "arm64" & arch != "x86_64" & arch != "s390x" & arch != "riscv64" & arch != "ppc64"}
64+
65+
# Support Packages
66+
"flexdll" {>= "0.42" & os = "win32"}
67+
]
68+
flags: [ avoid-version ]
69+
setenv: CAML_LD_LIBRARY_PATH = "%{lib}%/stublibs"
70+
x-env-path-rewrite: [
71+
[CAML_LD_LIBRARY_PATH (";" {os = "win32"} ":" {os != "win32"}) "target"]
72+
]
73+
build-env: [
74+
[MSYS2_ARG_CONV_EXCL = "*"]
75+
[LSAN_OPTIONS = "detect_leaks=0,exitcode=0"]
76+
[ASAN_OPTIONS = "detect_leaks=0,exitcode=0"]
77+
]
78+
build: [
79+
[
80+
"./configure"
81+
"--host=x86_64-pc-windows" {system-msvc:installed & arch-x86_64:installed}
82+
"--host=x86_64-w64-mingw32" {os-distribution = "cygwin" & system-mingw:installed & arch-x86_64:installed}
83+
"--host=i686-pc-windows" {system-msvc:installed & arch-x86_32:installed}
84+
"--host=i686-w64-mingw32" {os-distribution = "cygwin" & system-mingw:installed & arch-x86_32:installed}
85+
"--prefix=%{prefix}%"
86+
"--docdir=%{doc}%/ocaml"
87+
"--with-flexdll=%{flexdll:share}%" {os = "win32" & flexdll:installed}
88+
"--with-winpthreads-msvc=%{winpthreads:share}%" {system-msvc:installed}
89+
"-C"
90+
"--with-afl" {ocaml-option-afl:installed}
91+
"--disable-native-compiler" {ocaml-option-bytecode-only:installed}
92+
"--disable-flat-float-array" {ocaml-option-no-flat-float-array:installed}
93+
"--enable-flambda" {ocaml-option-flambda:installed}
94+
"--enable-frame-pointers" {ocaml-option-fp:installed}
95+
"--without-zstd" {ocaml-option-no-compression:installed}
96+
"--enable-tsan" {ocaml-option-tsan:installed}
97+
"CC=cc" {!ocaml-option-32bit:installed & !ocaml-option-musl:installed & (os = "openbsd" | os = "macos")}
98+
"CC=clang" {ocaml-option-tsan:installed & (os="macos")}
99+
"CC=musl-gcc" {ocaml-option-musl:installed & os-distribution!="alpine"}
100+
"CFLAGS=-Os" {ocaml-option-musl:installed & arch != "arm64"}
101+
"CFLAGS=-Os -mno-outline-atomics" {ocaml-option-musl:installed & arch = "arm64"}
102+
"LDFLAGS=-Wl,--no-as-needed,-ldl" {ocaml-option-leak-sanitizer:installed | (ocaml-option-address-sanitizer:installed & os!="macos")}
103+
"CC=gcc -ldl -fsanitize=leak -fno-omit-frame-pointer -O1 -g" {ocaml-option-leak-sanitizer:installed}
104+
"CC=gcc -ldl -fsanitize=address -fno-omit-frame-pointer -O1 -g" {ocaml-option-address-sanitizer:installed & os!="macos"}
105+
"CC=clang -fsanitize=address -fno-omit-frame-pointer -O1 -g" {ocaml-option-address-sanitizer:installed & os="macos"}
106+
"CC=gcc -m32" {ocaml-option-32bit:installed & os="linux"}
107+
"CC=gcc -Wl,-read_only_relocs,suppress -arch i386 -m32" {ocaml-option-32bit:installed & os="macos"}
108+
"ASPP=musl-gcc -c" {ocaml-option-musl:installed & os-distribution!="alpine"}
109+
"--host=i386-linux" {ocaml-option-32bit:installed & os="linux"}
110+
"--host=i386-apple-darwin13.2.0" {ocaml-option-32bit:installed & os="macos"}
111+
"LIBS=-static" {ocaml-option-static:installed}
112+
"--disable-warn-error"
113+
]
114+
[make "-j%{jobs}%"]
115+
]
116+
install: [make "install"]
117+
url {
118+
src: "https://github.com/ocaml/ocaml/archive/trunk.tar.gz"
119+
}
120+
depopts: [
121+
"ocaml-option-32bit"
122+
"ocaml-option-afl"
123+
"ocaml-option-bytecode-only"
124+
"ocaml-option-no-flat-float-array"
125+
"ocaml-option-flambda"
126+
"ocaml-option-fp"
127+
"ocaml-option-no-compression"
128+
"ocaml-option-musl"
129+
"ocaml-option-leak-sanitizer"
130+
"ocaml-option-address-sanitizer"
131+
"ocaml-option-static"
132+
"ocaml-option-tsan"
133+
]
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
opam-version: "2.0"
2+
license: "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
3+
synopsis: "Current trunk"
4+
maintainer: [
5+
"David Allsopp <[email protected]>"
6+
"Florian Angeletti <[email protected]>"
7+
]
8+
authors: [
9+
"Xavier Leroy"
10+
"Damien Doligez"
11+
"Alain Frisch"
12+
"Jacques Garrigue"
13+
"Didier Rémy"
14+
"KC Sivaramakrishnan"
15+
"Jérôme Vouillon"
16+
]
17+
homepage: "https://ocaml.org"
18+
bug-reports: "https://github.com/ocaml/opam-repository/issues"
19+
dev-repo: "git+https://github.com/ocaml/ocaml.git#trunk"
20+
depends: [
21+
"ocaml-compiler" {= "5.5"}
22+
23+
"ocaml-beta" {opam-version < "2.1.0"}
24+
]
25+
conflict-class: "ocaml-core-compiler"
26+
flags: [ compiler avoid-version ]

packages/ocaml/ocaml.5.5.0/opam

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
opam-version: "2.0"
2+
license: "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
3+
synopsis: "The OCaml compiler (virtual package)"
4+
description: """
5+
This package requires a matching implementation of OCaml,
6+
and polls it to initialise specific variables like `ocaml:native-dynlink`"""
7+
maintainer: "David Allsopp <[email protected]>"
8+
depends: [
9+
"ocaml-config" {>= "3"}
10+
"ocaml-base-compiler" {= "5.5.0"} |
11+
"ocaml-variants" {>= "5.5.0~" & < "5.5.1~"} |
12+
"ocaml-system" {>= "5.5.0~" & < "5.5.1~"} |
13+
"dkml-base-compiler" {>= "5.5.0~" & < "5.5.1~"}
14+
]
15+
setenv: [
16+
[CAML_LD_LIBRARY_PATH = "%{_:stubsdir}%"]
17+
[CAML_LD_LIBRARY_PATH += "%{lib}%/stublibs"]
18+
[OCAML_TOPLEVEL_PATH = "%{toplevel}%"]
19+
]
20+
x-env-path-rewrite: [
21+
[CAML_LD_LIBRARY_PATH (";" {os = "win32"} ":" {os != "win32"}) "target"]
22+
]
23+
build: ["ocaml" "%{ocaml-config:share}%/gen_ocaml_config.ml" _:version _:name]
24+
build-env: [
25+
[CAML_LD_LIBRARY_PATH = ""]
26+
[LSAN_OPTIONS = "detect_leaks=0,exitcode=0"]
27+
[ASAN_OPTIONS = "detect_leaks=0,exitcode=0"]
28+
]
29+
homepage: "https://ocaml.org"
30+
bug-reports: "https://github.com/ocaml/opam-repository/issues"
31+
authors: [
32+
"Xavier Leroy"
33+
"Damien Doligez"
34+
"Alain Frisch"
35+
"Jacques Garrigue"
36+
"Didier Rémy"
37+
"Jérôme Vouillon"
38+
]
39+
flags: [conf avoid-version]

0 commit comments

Comments
 (0)