Commit graph

300 commits

Author SHA1 Message Date
jaapb
1f583dbce3 Updated lang/ocaml to version 4.14.0.
This is a long-overdue update, so there are many changes. Details are in
the Changes file in the distribution.

The mk/ocaml file will be moved to lang/ocaml and the logic for selecting
whether to use the native-code compiler will be factored out into
native.mk to avoid duplications.

This is the final version before OCaml 5.0 arrives, which has
multicore support and should be a major change from the 4.x versions.
2022-05-24 18:25:38 +00:00
jaapb
7b45b33716 PLIST fix for lang/ocaml for non-native architectures
This fixes the PLIST for architectures that do not use OCaml's native
compiler; other architectures should not be affected.

Thanks to Havard Eidnes and Martin Husemann for reporting the error.
2022-03-26 19:19:07 +00:00
jperkin
db16c71f43 ocaml: Use OPSYS_VERSION. 2021-11-29 16:24:52 +00:00
nia
2176cc7249 lang: Replace RMD160 checksums with BLAKE2s checksums
All checksums have been double-checked against existing RMD160 and
SHA512 hashes

The following distfiles could not be fetched (possibly fetched
conditionally?):

./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-linux-gnu.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-linux-musl.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-aarch64-unknown-netbsd.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-armv7-unknown-netbsd-eabihf.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-i686-unknown-linux-gnu.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-powerpc-unknown-netbsd90.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-sparc64-unknown-netbsd.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-apple-darwin.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-freebsd.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-linux-gnu.tar.gz
./lang/rust-bin/distinfo rust-bin-1.54.0/rust-1.54.0-x86_64-unknown-linux-musl.tar.gz
./lang/smlnj/distinfo smlnj-110.73/boot.ppc-unix.tgz
./lang/smlnj/distinfo smlnj-110.73/boot.sparc-unix.tgz
./lang/oracle-jre8/distinfo jce_policy-8.zip
./lang/oracle-jre8/distinfo jre-8u202-linux-i586.tar.gz
./lang/oracle-jre8/distinfo jre-8u202-linux-x64.tar.gz
./lang/oracle-jre8/distinfo jre-8u202-macosx-x64.tar.gz
./lang/oracle-jre8/distinfo jre-8u202-solaris-x64.tar.gz
./lang/oracle-jdk8/distinfo jdk-8u202-linux-i586.tar.gz
./lang/oracle-jdk8/distinfo jdk-8u202-linux-x64.tar.gz
./lang/oracle-jdk8/distinfo jdk-8u202-solaris-x64.tar.gz
./lang/ghc80/distinfo ghc-7.10.3-boot-x86_64-unknown-solaris2.tar.xz
./lang/ghc80/distinfo ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz
./lang/ghc80/distinfo ghc-8.0.2-boot-x86_64-unknown-freebsd.tar.xz
./lang/gcc5-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2
./lang/gcc5-aux/distinfo ada-bootstrap.i386.freebsd.84.tar.bz2
./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.dragonfly.41.tar.bz2
./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2
./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2
./lang/gcc5-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2
./lang/rust/distinfo rust-1.53.0-aarch64-apple-darwin.tar.gz
./lang/rust/distinfo rust-1.53.0-aarch64-unknown-linux-gnu.tar.gz
./lang/rust/distinfo rust-1.53.0-aarch64-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-1.53.0-aarch64_be-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-1.53.0-arm-unknown-linux-gnueabihf.tar.gz
./lang/rust/distinfo rust-1.53.0-armv7-unknown-linux-gnueabihf.tar.gz
./lang/rust/distinfo rust-1.53.0-i686-unknown-linux-gnu.tar.gz
./lang/rust/distinfo rust-1.53.0-powerpc-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-1.53.0-powerpc-unknown-netbsd90.tar.gz
./lang/rust/distinfo rust-1.53.0-sparc64-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-1.53.0-x86_64-apple-darwin.tar.gz
./lang/rust/distinfo rust-1.53.0-x86_64-unknown-freebsd.tar.gz
./lang/rust/distinfo rust-1.53.0-x86_64-unknown-illumos.tar.gz
./lang/rust/distinfo rust-1.53.0-x86_64-unknown-linux-gnu.tar.gz
./lang/rust/distinfo rust-std-1.53.0-aarch64-apple-darwin.tar.gz
./lang/rust/distinfo rust-std-1.53.0-aarch64-unknown-linux-gnu.tar.gz
./lang/rust/distinfo rust-std-1.53.0-aarch64-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-std-1.53.0-aarch64_be-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-std-1.53.0-arm-unknown-linux-gnueabihf.tar.gz
./lang/rust/distinfo rust-std-1.53.0-armv7-unknown-linux-gnueabihf.tar.gz
./lang/rust/distinfo rust-std-1.53.0-i686-unknown-linux-gnu.tar.gz
./lang/rust/distinfo rust-std-1.53.0-powerpc-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-std-1.53.0-powerpc-unknown-netbsd90.tar.gz
./lang/rust/distinfo rust-std-1.53.0-sparc64-unknown-netbsd.tar.gz
./lang/rust/distinfo rust-std-1.53.0-x86_64-apple-darwin.tar.gz
./lang/rust/distinfo rust-std-1.53.0-x86_64-unknown-freebsd.tar.gz
./lang/rust/distinfo rust-std-1.53.0-x86_64-unknown-linux-gnu.tar.gz
./lang/smlnj11072/distinfo smlnj-110.72/boot.ppc-unix.tgz
./lang/smlnj11072/distinfo smlnj-110.72/boot.sparc-unix.tgz
./lang/ghc84/distinfo ghc-8.0.2-boot-x86_64-unknown-solaris2.tar.xz
./lang/ghc84/distinfo ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz
./lang/ghc84/distinfo ghc-8.4.4-boot-x86_64-apple-darwin.tar.xz
./lang/ghc84/distinfo ghc-8.4.4-boot-x86_64-unknown-freebsd.tar.xz
./lang/ghc7/distinfo ghc-7.10.3-boot-i386-unknown-freebsd.tar.xz
./lang/ghc7/distinfo ghc-7.6.3-boot-i386-unknown-solaris2.tar.xz
./lang/ghc7/distinfo ghc-7.6.3-boot-powerpc-apple-darwin.tar.xz
./lang/ghc7/distinfo ghc-7.6.3-boot-x86_64-unknown-solaris2.tar.xz
./lang/ghc90/distinfo ghc-8.10.4-boot-x86_64-unknown-solaris2.tar.xz
./lang/ghc90/distinfo ghc-9.0.1-boot-aarch64-unknown-netbsd.tar.xz
./lang/ghc90/distinfo ghc-9.0.1-boot-i386-unknown-freebsd.tar.xz
./lang/ghc90/distinfo ghc-9.0.1-boot-x86_64-apple-darwin.tar.xz
./lang/ghc90/distinfo ghc-9.0.1-boot-x86_64-unknown-freebsd.tar.xz
./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz
./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz
./lang/openjdk8/distinfo openjdk7/bootstrap-jdk-1.8.181-netbsd-8-aarch64-20180917.tar.xz
./lang/openjdk8/distinfo openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.6-amd64-20140719.tar.bz2
./lang/openjdk8/distinfo openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2
./lang/go-bin/distinfo go1.14.2.darwin-amd64.tar.gz
./lang/go-bin/distinfo go1.14.2.linux-386.tar.gz
./lang/go-bin/distinfo go1.14.2.linux-amd64.tar.gz
./lang/go-bin/distinfo go1.14.2.linux-arm64.tar.gz
./lang/go-bin/distinfo go1.14.2.linux-armv6l.tar.gz
./lang/go-bin/distinfo go1.14.2.netbsd-arm64.tar.gz
./lang/go-bin/distinfo go1.16beta1.darwin-arm64.tar.gz
./lang/gcc6-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2
./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.dragonfly.41.tar.bz2
./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2
./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2
./lang/gcc6-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2
./lang/ghc810/distinfo ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz
./lang/sun-jre7/distinfo UnlimitedJCEPolicyJDK7.zip
./lang/sun-jre7/distinfo jre-7u80-linux-x64.tar.gz
./lang/sun-jre7/distinfo jre-7u80-solaris-i586.tar.gz
./lang/sun-jre7/distinfo jre-7u80-solaris-x64.tar.gz
./lang/ghc88/distinfo ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz
./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-apple-darwin.tar.xz
./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-unknown-freebsd.tar.xz
./lang/ghc88/distinfo ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz
./lang/gcc-aux/distinfo ada-bootstrap.i386.dragonfly.36A.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.i386.freebsd.100B.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.i386.freebsd.84.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.x86_64.freebsd.100B.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.x86_64.freebsd.84.tar.bz2
./lang/gcc-aux/distinfo ada-bootstrap.x86_64.solaris.511.tar.bz2
./lang/gcc6/distinfo ecj-4.5.jar
./lang/openjdk11/distinfo bootstrap-jdk-1.11.0.7.10-netbsd-9-aarch64-20200509.tar.xz
./lang/sun-jdk7/distinfo jdk-7u80-linux-x64.tar.gz
./lang/sun-jdk7/distinfo jdk-7u80-solaris-i586.tar.gz
./lang/sun-jdk7/distinfo jdk-7u80-solaris-x64.tar.gz
2021-10-26 10:51:29 +00:00
nia
1361343c24 lang: Remove SHA1 hashes for distfiles 2021-10-07 14:20:45 +00:00
nia
85209c95e0 ocaml: unsafe for MKPIE 2021-09-30 11:08:57 +00:00
jaapb
9721d18581 Updated lang/ocaml to version 4.11.2.
This is a bugfix release from 4.11.1. The amd64 runtime patches have been
removed since they seem to have been incorporated by upstream.
2021-03-08 08:08:43 +00:00
jperkin
d3bdd1a46f ocaml: Fix ocamlmklib wrapper script for ld options.
Tested by wiz for relro.
2021-01-12 11:19:17 +00:00
jperkin
415dada556 ocaml: Try to fix wrapper script.
Passing LDFLAGS verbatim no longer works, prefix each of them with -ccopt,
this seems to work across more ocaml binaries than -ldopt.

Tested across a number of packages that previously failed.
2021-01-10 11:13:33 +00:00
jperkin
fe2bce194f ocaml: Fix previous correctly. 2021-01-08 12:28:16 +00:00
jperkin
d5631afb8e ocaml: Don't quote LDFLAGS.
Breaks the build when it contains multiple arguments.
2021-01-04 07:58:55 +00:00
nia
c20c704675 ocaml: Fix PLIST on 32-bit NetBSD/arm. 2020-12-26 08:36:18 +00:00
he
684d2d9a0e Fix PLIST failures on NetBSD/powerpc. 2020-12-16 18:25:26 +00:00
wiz
f9f44bd89a ocaml: honor LDFLAGS in one more place to fix RELRO builds
From jaapb, thanks!
2020-12-10 21:37:07 +00:00
wiz
8acf56136f ocaml: remove references to non-existent files 2020-12-10 16:17:55 +00:00
jaapb
24289a687d Updated lang/ocaml to 4.11.1.
Patches for solaris and friends are reinstated (thanks jperkin@)
Also thanks to he@ for testing on powerpc and arm

Highlights for 4.10.0:
* A new best-fit allocator for the major heap which reducing both GC cost
  and memory usage.
* Immutable strings are now enforced at configuration time
* User-defined indexing operators for multidimensional arrays
* Miscellaneous improvements to the manual
* A more precise exhaustiveness check for GADTs
* Many bug fixes

Highlights for 4.11.0:
* Statmemprof: a new statistical memory profiler
* A new instrumented runtime that logs runtime statistics in a standard
  format
* A native backend for the RISC-V architecture
* Improved backtraces that refer to function names
* Suppport for recursive and yet unboxed types
* A quoted extension syntax for ppxs.
* Many quality of life improvements
* Many bug fixes.

4.11.1 is a bugfix release. Full details in the CHANGELOG included with
the distribution.
2020-12-09 10:33:04 +00:00
he
227049f19f Apply a workaround for NetBSD to the testyield.ml test.
On NetBSD, the "thread scheduler" appears to just schedule two
threads out of 4 when all they in essence to is "yield", and not
do round-robin scheduling, causing the test to loop.  Reduce the
number of threads in the test to 2.

Bump PKGREVISION.

OK'ed by jaapb@
2020-12-08 08:53:16 +00:00
he
2908d48299 NetBSD/powerpc also builds shared libs -- fix PLIST errors. 2020-12-01 23:44:00 +00:00
he
9d038c5d1f Add support for building ocaml on NetBSD/powerpc.
On NetBSD 8.x, there will be issues with shared library
support, due to missing support for ADDR16_LO, ADDR16_HI
and ADDR16_HA relocations, available in newer code.
There are however other issues, text relocations, and
apparent missing REL24 relocation support(?!?).

The testyield.ml test appears to not terminate, only two
of the 4(?) threads ever get any CPU time, so has to be killed
to complete the selftests.  Test result:

  2438 tests passed
   36 tests skipped
   12 tests failed
  108 tests not started (parent test skipped or failed)
    8 unexpected errors
  2602 tests considered
2020-12-01 23:16:44 +00:00
rillig
1918e27154 lang/ocaml: fix bashisms in tests 2020-05-23 20:33:51 +00:00
jaapb
9ef00e534c Updated lang/ocaml to 4.09.1.
This is mainly a bug-fix release, with a handful of configuration fixes
and a GC fix backported from 4.10.0.
2020-04-15 09:50:54 +00:00
jperkin
fd51d1862f ocaml: Switch to BROKEN_ON_PLATFORM.
Unfortunately NOT_FOR_BULK_PLATFORM does not actually stop the package from
being built and appearing as a valid entry in bulk build reports.
2020-04-11 08:25:20 +00:00
jperkin
b9cee5ecc9 ocaml: Give up and mark as NOT_FOR_BULK_PLATFORM on SunOS.
I'm sick and fed up of wasting my time fixing this package every time it is
updated, only for my work to be unceremoniously and silently reverted each
time (along with a bunch of other clearly incorrect changes).
2020-04-09 15:53:10 +00:00
rillig
01126c3c89 lang/ocaml: remove unknown configure option --without-x 2020-02-15 14:48:08 +00:00
dbj
cc0a9c37fd ocaml: fix Darwin install names
ressurects a change that got dropped in package upgrade
2020-01-23 07:17:13 +00:00
jaapb
65245bda28 Updated lang/ocaml to version 4.09.0.
Highlights of this release are:
* new optimisations, in particular for affine functions in matches;
* the graphics library was moved out of the main distribution;
* the vmthread library was removed;
* support for compiler plugins was removed;
* many bug fixes.

For more details see the Changes file in the distribution.
2020-01-14 19:53:35 +00:00
adam
b731279ce6 ocaml: fix installation on Darwin + minor cleanups 2019-11-24 09:23:13 +00:00
maya
e93f05be4b ocaml: claim natdynlink support on solaris. bump PKGREVISION
fixes ocaml-findlib PLIST issue.
2019-10-04 10:33:21 +00:00
maya
a73c5e37b7 ocaml: use the narrower scoped _POSIX_PTHREAD_SEMANTICS
The wider _XOPEN_SOURCE might cause issues with older versions of smartos
and newer C standards.
2019-10-01 09:52:51 +00:00
maya
ed25bb0631 ocaml: fix SmartOS build.
- Claimed shared library support. same as other ELF platforms, but
  since it's not GNU ld, no -Wl,-E available.
- Change the PLIST vars based on what is actually built
- consider x86_64-*-solaris to be x86_64 and solaris. the arch=none
  option doesn't build.
- Search for socket stuff in -lnsl -lsocket.
- for a POSIX prototype sigwait, we need to define _XOPEN_SOURCE to something
2019-10-01 09:07:33 +00:00
jaapb
7a7f41b24c Removed more superfluous patches (oops!) from lang/ocaml 2019-08-27 06:23:50 +00:00
jaapb
61fd3cad14 Removed superfluous patch from lang/ocaml; revbump. 2019-08-27 05:37:38 +00:00
jaapb
5da7f4ee60 Updated lang/ocaml to 4.08.1.
4.08.1 is a bugfix release, fixing compilation failures in presence of the
-pack option, and dynlinking failures.

Highlights in 4.08.0 are:
* Binding operators (let*, let+, and*, etc). They can be used to
  streamline monadic code.
* open now applies to arbitrary module expression in structures and to
  applicative paths in signatures.
* A new notion of (user-defined) "alerts" generalizes the deprecated
  warning.
* New modules in the standard library: Fun, Bool, Int, Option, Result.
* A significant number of new functions in Float, including FMA support,
  and a new Float.Array submodule.
* Source highlighting for errors and warnings in batch mode.
* Many error messages were improved.
* Improved AFL instrumentation for objects and lazy values.
2019-08-24 10:54:23 +00:00
schmonz
74a9bf969e Fix rpaths in installed shlibs on Darwin. Bump PKGREVISION. 2019-08-02 03:13:06 +00:00
sevan
f5b14bdecc Need strnlen(3), make sure we obtain it from libnbcompat if host OS doesn't
include it.
2019-07-10 17:53:38 +00:00
jaapb
2eb40ce23e Added natdynlink support to lang/ocaml on arm32 platforms 2019-05-15 09:39:21 +00:00
jaapb
263d0fd672 Updated lang/ocaml for non-opt architectures. Revbump 2019-05-14 15:34:16 +00:00
jaapb
0426d7fcb1 Updated lang/ocaml to compile on aarch64 and revbump.
A few patches to the configure script to recognise the combination of
NetBSD and aarch64, and a few changes to the Makefile to make sure we've
got the right combination of options for the PLIST. It now compiles on my
Pinebook.
2019-01-07 18:52:23 +00:00
jaapb
0da97a7af6 Updated lang/ocaml to version 4.07.1.
This is a bug-fix release, the full list of fixes can be found in the
Changes file in the distribution.
2018-11-12 16:09:34 +00:00
gdt
71756448ae ocaml: Adjust PLIST for old MacOS
MacOS before 10.13 lacks the POSIX-required clock_gettime(), and fails
to build some "instrumented runtime" files.  Conditionalize the PLIST
and avoid expecting these on older MacOS.

Based almost entirely on a patch from Ryo Kogule on tech-pkg@, with
minor munging by me.
2018-10-16 00:19:40 +00:00
jperkin
96cfe179b0 ocaml: Restore PLIST.ocaml-prof entries. Should fix SunOS-*-i386. 2018-09-25 11:39:12 +00:00
dholland
3f30aede7a Reinsert uses of ${PLIST.ocaml-spacetime} in PLIST, apparently lost
in last update.
2018-08-20 20:23:29 +00:00
jaapb
546125906f Committed correct version of Makefile patch for lang/ocaml 2018-07-19 12:46:04 +00:00
jaapb
eb138e1daa Corrected buildlink file for lang/ocaml 2018-07-19 12:20:57 +00:00
jaapb
a58f512a8d Updated lang/ocaml to the newest version, 4.07.0.
This breaks quite a few dependencies, more commits to follow.

There are many bugfixes and improvements (see the Changes file), I will
summarise the changes that may cause breakage:

* all standard library modules are now packed into the Stdlib module;
* Unix.isatty now works under the native Windows ports
* strings and bytes are distinguishable in bytecode
* Module aliases are no longer removed in 'module type of' and
  'with module'
* soundness bugfix with non-generalised type variables and local modules
* Ident.t is now abstract and immutable
* only allow directives with filename and at the begining of the line
2018-07-19 12:16:38 +00:00
joerg
187bef3bf8 Fix attributes and entry size for the .rodata mergable constant section. 2018-07-18 00:09:12 +00:00
wiz
52e59d462a ocaml: remove references to obsolete DragonFly/i386 2018-04-30 10:38:04 +00:00
jaapb
78097e5b7c Updated lang/ocaml to version 4.06.1.
This is a bugfix release that contains no breaking changes.
2018-04-04 09:34:46 +00:00
jperkin
7fba46feb3 ocaml: Support SunOS/clang. 2018-01-29 14:15:57 +00:00
wiz
b659667051 ocaml: Honor LDFLAGS. Fixes RELRO build. 2018-01-22 10:22:30 +00:00