===> The following configuration options are available for z3-5.3.1.0:
GMP=off: GMP (multiple precision arithmetic) support
===> Use 'make config' to modify these settings
math/z3: Improve port
* Use upstream release archive
* Change USES= compiler:c++11-lang to compiler:c++20-lang
* Do some slight rearragement of port Makefile to more closely follow Porters
Handbook
* Respect CPUTYPE set by framework
Note:
Upstream is inconsistent about versioning but 4.13.4.0 is defined
in project files.
PR: 283858
Reviewed by: arrowd (maintainer)
math/z3: fix build with clang 19
Clang 19 has become more strict about errors in member functions, which
results in:
/wrkdirs/usr/ports/math/z3/work/z3-z3-4.13.0/src/math/lp/static_matrix.h:82:72:
error: no member named 'get' in 'static_matrix<T, X>'; did you mean 'set'?
82 | ref operator=(ref & v) { m_matrix.set(m_row, m_col,
v.m_matrix.get(v.m_row, v.m_col)); return *this; }
| ^~~
| set
/wrkdirs/usr/ports/math/z3/work/z3-z3-4.13.0/src/math/lp/static_matrix.h:164:10:
note: 'set' declared here
164 | void set(unsigned row, unsigned col, T const & val);
| ^
Upstream fixed this as part of a few other changes for gcc 15 in
<https://github.com/Z3Prover/z3/commit/2ce89e5f4>, but it does not apply
cleanly to this version, so add a backported patch.
PR: 281512
MFH: 2024Q3
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
math/z3: fix build on powerpc with clang
Add -fPIC to CXXFLAGS:
ld: error: relocation R_PPC_ADDR16_HA cannot be used against local symbol;
recompile with -fPIC
>>> defined in api/dll/gparams_register_modules.o
>>> referenced by gparams_register_modules.cpp
>>>
api/dll/gparams_register_modules.o:(gparams_register_modules())
Adding -Wl,-znotext to LDFLAGS doesn't help.
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
math/z3: add -znotext to LDFLAGS on i386, for lld
This port links some non-PIC code, which fails with lld as it defaults
to disallowing relocations against read-only segments. For i386 we can
just add -znotext unconditionally: for GNU BFD ld it just affirms BFD's
existing default.
PR: 214864
Approved by: portmgr (lld blanket)
Sponsored by: The FreeBSD Foundation
math/z3: Fix the python binding to work for all python versions
The python binding is removed from math/z3 and placed into a separate
port math/mpy-z3-solver that builds for all python versions.
While here, remove the unnecessary CONFLICTS statement.
PR: 229937
Approved by: portmgr
Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
(Only the first 15 lines of the commit message are shown above )
math/z3: Patch to add SONAME to shared library
Also ensure that python is available at build time when the PYTHON option
(for python bindings) is off.
PR: 221321
Submitted by: 6yearold@gmail.com (maintainer)
Z3 is a high-performance theorem prover developed
at Microsoft Research.
WWW: https://github.com/Z3Prover/z3
PR: 202136
Submitted by: 6yearold@gmail.com