-
Notifications
You must be signed in to change notification settings - Fork 1.1k
/
opam
97 lines (92 loc) · 3.76 KB
/
opam
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
opam-version: "2.0"
synopsis: "Official release 5.2.0"
maintainer: [
"David Allsopp <david@tarides.com>"
"Florian Angeletti <florian.angeletti@inria.fr>"
]
license: "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception"
authors: "Xavier Leroy and many contributors"
homepage: "https://ocaml.org"
bug-reports: "https://github.com/ocaml/opam-repository/issues"
dev-repo: "git+https://github.com/ocaml/ocaml#5.2"
depends: [
# This is OCaml 5.2.0
"ocaml" {= "5.2.0" & post}
# General base- packages
"base-unix" {post}
"base-bigarray" {post}
"base-threads" {post}
"base-domains" {post}
"base-nnp" {post}
# Architecture (non-Windows)
# opam-repository at present requires that ocaml-base-compiler is installed
# using an architecture which matches the machine's, since arch is used in
# available fields. Cross-compilation at this stage is an unstable accident.
"host-arch-arm32" {arch = "arm32" & post}
"host-arch-arm64" {arch = "arm64" & post}
"host-arch-ppc64" {arch = "ppc64" & post}
"host-arch-riscv64" {arch = "riscv64" & post}
"host-arch-s390x" {arch = "s390x" & post}
# The Windows ports explicitly select the architecture (see below) this
# facility is not yet available for other platforms.
"host-arch-x86_32" {os != "win32" & arch = "x86_32" & post}
"host-arch-x86_64" {os != "win32" & arch = "x86_64" & post}
"host-arch-unknown" {os != "win32" & arch != "arm32" & arch != "arm64" & arch != "ppc64" & arch != "riscv64" & arch != "s390x" & arch != "x86_32" & arch != "x86_64" & post}
# Port selection (Windows)
# amd64 mingw-w64 only
(("arch-x86_64" {os = "win32" & arch = "x86_64"} &
"system-mingw" & "mingw-w64-shims" {os-distribution = "cygwin" & build}) |
# i686 mingw-w64 only
("arch-x86_32" {os = "win32"} & "ocaml-option-bytecode-only" &
"system-mingw" & "mingw-w64-shims" {os-distribution = "cygwin" & build}) |
# Non-Windows systems
"host-system-other" {os != "win32" & post})
# OCaml with default configuration (no flambda, TSAN, etc.)
"ocaml-options-vanilla" {post}
"ocaml-option-bytecode-only" {arch != "arm64" & arch != "x86_64" & arch != "s390x" & arch != "riscv64" & arch != "ppc64"}
# Support Packages
"flexdll" {>= "0.42" & os = "win32"}
]
conflicts: "system-msvc"
conflict-class: "ocaml-core-compiler"
flags: compiler
setenv: CAML_LD_LIBRARY_PATH = "%{lib}%/stublibs"
x-env-path-rewrite: [
[CAML_LD_LIBRARY_PATH (";" {os = "win32"} ":" {os != "win32"}) "target"]
]
build: [
[
"./configure"
"--host=x86_64-w64-mingw32" {os-distribution = "cygwin" & system-mingw:installed & arch-x86_64:installed}
"--host=i686-w64-mingw32" {os-distribution = "cygwin" & system-mingw:installed & arch-x86_32:installed}
"--prefix=%{prefix}%"
"--docdir=%{doc}%/ocaml"
"--with-flexdll=%{flexdll:share}%" {os = "win32" & flexdll:installed}
"-C"
"CC=cc" {os = "openbsd" | os = "macos"}
"ASPP=cc -c" {os = "openbsd" | os = "macos"}
]
[make "-j%{jobs}%"]
]
install: [make "install"]
url {
src: "https://github.com/ocaml/ocaml/archive/5.2.0.tar.gz"
checksum: "sha256=48554abfd530fcdaa08f23f801b699e4f74c320ddf7d0bd56b0e8c24e55fc911"
}
post-messages: [
"A failure in the middle of the build may be caused by build parallelism
(enabled by default).
Please file a bug report at https://github.com/ocaml/opam-repository/issues"
{failure & jobs > 1}
"You can try installing again including --jobs=1
to force a sequential build instead."
{failure & jobs > 1 & opam-version >= "2.0.5"}
]
extra-source "ocaml-base-compiler.install" {
src:
"https://raw.githubusercontent.com/ocaml/opam-source-archives/main/patches/ocaml-base-compiler/ocaml-base-compiler.install"
checksum: [
"sha256=79f2a1a5044a91350a0eb6ce12e261a72a2855c094c425cddf3860e58c486678"
"md5=3e969b841df1f51ca448e6e6295cb451"
]
}