This unbreaks python 3.* on powerpc. The build had enabled PGO
(Profile Guided Optimization), then got "Segmentation fault" from the
./python binary. This seems to be a bug in clang or lld specific to
32-bit powerpc. We continue to --enable-optimizations on powerpc64.
ok kmos@, sthen@
pyproject.toml-only ports - add a comment making it clear that it was
generated by python.port.mk; makes it easier to identify where it came
from when looking at files in a port's WRKSRC
This is version 3.0 of Guile, Project GNU's extension language library.
Guile is an implementation of the Scheme programming language, packaged
as a library that can be linked into applications to give them their own
extension language. Guile supports other languages as well, giving
users of Guile-based applications a choice of languages.
gkoehler@ tested it on powerpc64 and confirmed that it's broken on
powerpc.
ok sthen@
At least one of the older binary bootstraps was still using direct system
calls. This also changes amd64 to use binary bootstrap, as the native
go-bootstrap is no longer useful due to recent syscall removals.
This adds internal linking support for calling SDYNIMPORT calls on
openbsd/mips64, which avoids the requirement for external linking with
libc-based system calls. This in turn allows for cross compilation and
reduces build/compilation time.
Integer multiplications where both integers are less than 64-bit but the
multiplication was greater than 64-bit were handled using an int128_t
type on octeon, with inconsistent results. The simplest fix in this
case is to not use an int128_t type, and fallback to the default codepath.
I pushed a fix for this upstream, this backports that fix.
Problem discovered by the openssl-ruby tests
Initial debugging by tb@ and claudio@
Access to octeon thanks to bluhm@
Further debugging and fix by me
Testing by tb@ and visa@
OK tb@
Any Ruby distpatches are going to use these going forward, and it's
better to set these once in Makefile.inc instead of in the Makefile
for each version.
few changes since 1.11.1.1113, but all minor things:
- Fix directory context of -X:deps prep with transitive local deps
- Fix bug in TDEPS-213 change
- TDEPS-213 - Add -X:deps aliases to list available aliases
- TDEPS-226 - More nunanced error handling for s3 downloads
- Better error message when git url can’t be inferred
- Use tools.deps.alpha 0.14.1185
while here also get rid of the double NO_BUILD, once is enough!
except for Python-2.7, which stays with 8.5.
Make COMMENTs and DESCRs consistent with Tk.
Fix typo in 3.10/files/CHANGES.OpenBSD.
OKs and thanks to kmos@, sthen@.
Mostly mechanical, except for having to run ./boot per
https://gitlab.haskell.org/ghc/ghc/-/issues/21626
Removed the %n patches merged into the release. The ./configure patch
is no longer needed and wouldn't apply due to #21626 above.
OK kili@
- Use CFLAGS and CXXFLAGS instead of CMAKE_CXX_FLAGS and CMAKE_C_FLAGS.
- Use MODCMAKE_LDFLAGS instead of CMAKE_EXE_LINKER_FLAGS
- Fix broken builds with CMake 3.23
Update HOMEPAGE.
Remove three patch files thanks to upstream changes.
Remove one patch file not needed since 2017-12-14:
https://marc.info/?l=openbsd-cvs&m=151322225127141
Remove static library section from README; 8.5 only.
built on top of llvm sources (but without any of our patches), it
builds/bundles compiler-rt, libcxx and libcxxabi for the 'wasm32-wasi'
target to provide the wasi sysroot required to enable wasm sandboxing in
firefox.
with some inspiration from freebsd/pkgsrc/archlinux.
ok sthen@
WASI Libc is a libc for WebAssembly programs built on top of WASI system
calls. It provides a wide array of POSIX-compatible C APIs, including
support for standard I/O, file I/O, filesystem manipulation, memory
management, time, string, environment variables, program startup, and
many other APIs.
this is one of the requirements to enable wasm sandboxing for bundled
libraries in firefox via rlbox, cf https://hacks.mozilla.org/2021/12/webassembly-and-back-again-fine-grained-sandboxing-in-firefox-95/
ok sthen@
cargo on i386 still need upstream libz (statically build) and break at runtime
(assert) when linked dynamically with base libz.
found the hard way by sthen@
build on i386 failed, no package produced, so no bump.
tests for the contrib packages are run during the build. sb-concurrency
has failed in bulks three times in a row (reported by naddy) but I can't
reproduce the failure locally so disable the tests. This is a quick
hack to allow sbcl,threads to build, hence not waiting for the
maintainer. (I'm working on a better approach that runs the contrib
tests during `make test'.)
go1.18.2 (released 2022-05-10) includes security fixes to the
syscall package, as well as bug fixes to the compiler, runtime, the
go command, and the crypto/x509, go/types, net/http/httptest,
reflect, and sync/atomic packages.
ok jsing@ (maintainer), who spotted a mistake of mine in the PLIST
Binaryen is a compiler and toolchain infrastructure library for WebAssembly,
written in C++. It aims to make compiling to WebAssembly easy, fast, and
effective.
* Easy: Binaryen has a simple C API in a single header, and can also be used
from JavaScript. It accepts input in WebAssembly-like form but also accepts
a general control flow graph for compilers that prefer that.
* Fast: Binaryen's internal IR uses compact data structures and is designed
for completely parallel codegen and optimization, using all available CPU
cores. Binaryen's IR also compiles down to WebAssembly extremely easily and
quickly because it is essentially a subset of WebAssembly.
* Effective: Binaryen's optimizer has many passes that can improve code
size and speed. These optimizations aim to make Binaryen powerful enough
to be used as a compiler backend by itself. One specific area of focus
is on WebAssembly-specific optimizations (that general-purpose compilers
might not do), which you can think of as wasm minification, similar to
minification for JavaScript, CSS, etc., all of which are language-specific.
OK op@
unbreak sbcl on i386 by using lang/ecl for the bootstrap: it's waaay
slower than lang/clisp but works. Joshua hinted that it can be used to
build sbcl on other arches too.
Add a BDEP on capstone because the sb-capstone package uses it at build
time if present to run some sanity checks. The sb-capstone library
caused some failures in the past on powerpc: they were fixed (with help
from gkoehler@, thanks!) and upstreamed.
maintainer timeout; ok solene@. (ok sthen@ and gkoehler@ on a previous
version.)
if MODGO_FLAGS ends up in the environment as $GOFLAGS then go fails to
parse it and errors out:
% GOFLAGS='-p 1' go build
go: parsing $GOFLAGS: non-flag "1"
ok abieber@
Our recipe for rebuilding bootstrap binaries produces binaries prone
to SEGV. The platform has limited memory and was already failing to
build haddocks for ghc.
Consolidated PLIST back into a single file.
ok kili@
The build was broken in the update to 3.10.2 due to the upstream commit
3ce6945f5f
This seems to have escaped notice of the maintainers because the build
system only whines and carries on instead of failing (although this was
also visible in the PLIST). Avoid use of undefined short names and NIDs
and do not use an inexistent flag.
ok sthen
DESCR:
M or MUMPS is a a high performance transaction processing key-value database
with integrated programming language. It was originally developed at
Massachusetts General Hospital for managing hospital laboratory information
systems. It is widely used in the healthcare and banking sectors.
Reference Standard M (RSM) is an implementation of the M programming language
and database, which was originally created by Ray Douglas Newman as MUMPS V1
(MV1). The name change to Reference Standard M reflects its role as a reference
implementation for the M Development Committee (MDC). RSM attempts to track and
implement the latest M standard that is released by the MDC, currently ANSI
X11.1-1995.
RSM is developed and maintained by David Wicksell.
ok op@
QBE is a compiler backend. It aims to be a pure C embeddable backend
that provides 70% of the performance of advanced compilers in 10% of the
code. Its small size serves both its aspirations of correctness and our
ability to understand, fix, and improve it. It also serves its users by
providing trivial integration and great flexibility.
python-3.8)
-@conflict py3-setuptools-<=57.4.0v0
+@conflict py3-setuptools-<57.4.0p0v0
<= in this case covers 57.4.0v0 *and* any 57.4.0pXXv0 version,
which is not we want. Use < and the specific p0v0 instead.
Since the non-default versions of Python now have pip executables
(in this case named bin/pip3.8) when updating from the OpenBSD version
where that file was in py3-pip, pkg_add needs to merge the updates
of the new py3-pip and python-3.8 packages. Found by sdk@ testing
7.0->-current updates. Add to the "switching default version"
checklist.
if you want to run some software that needs an older or newer version
of Python you can do so in most cases. For the default versions (2.7, 3.9)
pip is available from the separate port (devel/py2-pip, devel/py-pip).
Factor out some common parts to ../Makefile.inc while there. OK kmos@
as was the case before the update to 16.x. Upstream's default is to bind
to :: unless it fails which is not ideal on an OS which will not support
v4 connections on a v6 socket. (Pre-16.x, the port used a bundled libuv,
and due to a bug in a local patch to that, binding to IPv6 didn't work
at all).
With help from maintainer Volker Schlecht, part of his 16.14.2 update
but I prefer doing this as separate commits.
- bump autoconf/automake versions for pecl ports; they're all ok with newer
and this drops the count of automake/1.9 from 59 to 20 pkgs
- setup variables for some binary paths (TEST_PHP_CGI_EXECUTABLE etc)
in TEST_ENV