During an exp-run for llvm 15 (see bug 265425), it turned out that
java/openjdk18 failed to build with clang 15:
/wrkdirs/usr/ports/java/openjdk18/work/jdk18u-jdk-18.0.2-9-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:374:41: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
proxies = (*g_proxy_resolver_lookup)(resolver, uri, NULL, &error);
^
/wrkdirs/usr/ports/java/openjdk18/work/jdk18u-jdk-18.0.2-9-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:393:63: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
(*g_network_address_parse_uri)(proxies[i], 0,
^
/wrkdirs/usr/ports/java/openjdk18/work/jdk18u-jdk-18.0.2-9-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:398:70: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
phost = (*g_network_address_get_hostname)(conn);
^
/wrkdirs/usr/ports/java/openjdk18/work/jdk18u-jdk-18.0.2-9-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:399:66: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
pport = (*g_network_address_get_port)(conn);
^
/wrkdirs/usr/ports/java/openjdk18/work/jdk18u-jdk-18.0.2-9-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:435:22: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
(*g_strfreev)(proxies);
^
This is because clang 15 warns by default about functions without
arguments in their prototypes. Fix this by suppressing the warning.
PR: 268373
Approved by: portmgr (tcberner)
MFH: 2022Q4
During an exp-run for llvm 15 (see bug 265425), it turned out that
java/openjdk17 failed to build with clang 15:
/wrkdirs/usr/ports/java/openjdk17/work/jdk17u-jdk-17.0.5-8-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:374:41: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
proxies = (*g_proxy_resolver_lookup)(resolver, uri, NULL, &error);
^
/wrkdirs/usr/ports/java/openjdk17/work/jdk17u-jdk-17.0.5-8-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:393:63: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
(*g_network_address_parse_uri)(proxies[i], 0,
^
/wrkdirs/usr/ports/java/openjdk17/work/jdk17u-jdk-17.0.5-8-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:398:70: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
phost = (*g_network_address_get_hostname)(conn);
^
/wrkdirs/usr/ports/java/openjdk17/work/jdk17u-jdk-17.0.5-8-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:399:66: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
pport = (*g_network_address_get_port)(conn);
^
/wrkdirs/usr/ports/java/openjdk17/work/jdk17u-jdk-17.0.5-8-1/src/java.base/unix/native/libnet/DefaultProxySelector.c:435:22: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
(*g_strfreev)(proxies);
^
This is because clang 15 warns by default about functions without
arguments in their prototypes. Fix this by suppressing the warning.
PR: 268366
Approved by: portmgr (tcberner)
MFH: 2022Q4
During an exp-run for llvm 15 (see bug 265425), it turned out that
java/openjdk8 failed to build with clang 15:
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:64:30: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
INVOKE(SplashLoadMemory, NULL)(pdata, size);
^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
#define NULL ((void *)0)
^~~~~~~~~~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
#define INVOKE(name,def) _INVOKE(name,def,return)
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
if (!proc) { return def; } \
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:68:28: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
INVOKE(SplashLoadFile, NULL)(filename);
^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
#define NULL ((void *)0)
^~~~~~~~~~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
#define INVOKE(name,def) _INVOKE(name,def,return)
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
if (!proc) { return def; } \
^~~
2 errors generated.
Indeed, instead of the pointer value NULL, the integer value 0 should be
used.
PR: 268223
Approved by: portmgr (tcberner)
MFH: 2022Q4
See also <https://bugs.openjdk.org/browse/JDK-8247766>.
Even though the upstream fix has been applied to this version of the
JDK, some users still report the assertion "guarantee(val < (1U <<
nbits)) failed: Field too big for insn" occurring, when it is built with
recent versions of clang.
Therefore, restore the workaround that uses clang 12 to build the JDK on
aarch64.
PR: 264065
MFH: 2022Q3
The WWW: lines in the pkg-descr files of these ports where not at the
end of those files and have been missed in prior conversion runs.
Approved by: portmgr (implicit)
Commit b7f05445c0 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)
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.
This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.
There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.
The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.
Approved by: portmgr (tcberner)
Recent LLVM versions issue warnings for "|" being used with boolean
operands. Such operations exist in OpenJDK and the source lines are
marked with comments to not use logical operations instead.
This breaks the build on 13.1 and -CURRENT when building with LLVM-13
or newer due to the -Werror option being passed to the compiler.
Fix this issue by casting one of the boolean operands to int, as
suggested by the compiler in the error message for the case that the
"|" operation should actually be used on purpose.
I had submitted this patch as an attachment to PR 265687 on
2022-08-07, but it has been ignored by the maintainer (java team).
PR: 265687
Approved by: portmgr (implicit)
Revert back the revert of the update of rust and related commits
This revert was drive by beside validation by portmgr via exp-run
and not respectful of the etiquette we have between committers
This reverts commit 8ecb1f8141.
This reverts commit 04d257baa1.
This reverts commit 2757c63bd0.
This reverts commit 75f4713de5.
This reverts commit e88e592111.
This reverts commit 783c056d7d.
With hat: portmgr
Go back to using LLVM 12, bin/java built with LLVM 13 crashes with:
* For target jdk__packages_attribute.done:
A fatal error has been detected by the Java Runtime Environment:
SIGILL (0x4) at pc=0x0000000802e3d438, pid=28756, tid=149399
JRE version: (11.0.16+8) (build )
Java VM: OpenJDK 64-Bit Server VM (11.0.16+8-1, mixed mode, tiered, compressed oops, serial gc, bsd-ppc64)
Problematic frame:
V [libjvm.so+0xe3d438] JVM_RaiseSignal+0x446bcc
Revert part of commit 3d803e4460 that should only have affected the
deskutils/calendar port.
This patch that has been committed by accident had already been
attached to PR 265687 to fix the build issue of openjdk11 on -CURRENT,
but it is up to the java@ team to apply this or some other fix.
Approved by: portmgr (implicit)
Update the man page to match the version the -CURRENT base system.
The only change is a better description of the // single line comment
syntax, i.e. that // is only considered to start a comment when it
appears at the start of the line or after white space. This allows to
embed URLs in calendar entries.