Subject: CVS commit: pkgsrc/lang/polyml
From: Thomas Klausner
Date: 2023-03-05 21:19:11
Message id: 20230305201911.E0232FA90@cvs.NetBSD.org

Log Message:
polyml: update to 5.9.

Provided by Pete Padilla in pkgsrc-wip.

Changes:

Native code-generator for ARM/64

There is now a native code-generator for the 64-bit ARM architecture.
All features of Poly/ML are supported, including FFI and compact-32
bits. It has been tested on a variety of platforms and operating
systems including Mac M1, Windows and WSL as well as the Raspberry
Pi on Raspbian and even big-endian NetBSD. At the moment the
code-generator does no optimisation so the performance should
improve in future releases.

Position-independent code for X86/64 and ARM64

The code segments in object files created by PolyML.export for
X86/64 and ARM64 are now position-independent on Linux and Mac/OS.
This is necessary for some platforms and desirable on others. Text
relocations are still generated on the X86/32 since changing this
would require changes to the code-generator.

New bootstrap process

The initial build process has been changed to reduce the number of
pre-built compilers required. The build process takes longer than
before but the final code will be the same.

Minor Changes

*   Additional FFI conversions for size_t, ssize_t, long long, unsigned long \ 
long, ptrdiff_t, intptr_t and uintptr_t.
*   Fix to build problem for 5.8.2 on big-endian.
*   Fix to underlying sleep function that could fail in BSD.
*   Fixes for some problems in Unix.execute and Unix.executeInEnv introduced in \ 
the changes in 5.8.2.
*   Fixes for Foreign.LowLevel.cTypeUint and cTypeULong which were incorrectly \ 
signed rather than unsigned.
*   Fix for systems where PTHREAD_STACK_MIN is a function rather than a constant.
*   Fixes to profiling of live data.
*   Fixed printing of type functions when the type is passed as an argument to a \ 
functor.
*   Fix to passing struct argument in SysV x86/64.

Files:
RevisionActionfile
1.28modifypkgsrc/lang/polyml/Makefile
1.5modifypkgsrc/lang/polyml/PLIST
1.3modifypkgsrc/lang/polyml/buildlink3.mk
1.21modifypkgsrc/lang/polyml/distinfo
1.3removepkgsrc/lang/polyml/patches/patch-Makefile.in
1.2removepkgsrc/lang/polyml/patches/patch-configure
1.2removepkgsrc/lang/polyml/patches/patch-configure.ac
1.4removepkgsrc/lang/polyml/patches/patch-libpolyml_elfexport.cpp