Conversation
This basically allows configure to complete and set up a configuration suitable for building the BSD port for supported platforms (FreeBSD, OpenBSD and NetBSD.) The flag `_BSDONLY_SOURCE` is defined for all the BSD's _except_ for Apple MacOS, while the existing `_ALLBSD_SOURCE` _includes_ Apple MacOS. For the BSD's we set the `OPENJDK_TARGET_OS_ENV` variable to distinct values reflecting the BSD variant being built. This is used to distinguish build flags, library locations and what libraries and modules to include for the various builds. As an example, FreeBSD includes the ALSA library, and should build the Serviceability Agent, while the other BSD's do not. This work was sponsored by: The FreeBSD Foundation Co-authored-by: Greg Lewis <glewis@eyesbeyond.com> Co-authored-by: Kurt Miller <bsdkurt@gmail.com>
|
👋 Welcome back haraldei! A progress list of the required criteria for merging this PR into |
|
❗ This change is not yet ready to be integrated. |
|
This is a squashed version of #3, but from a fork so that actions will run for the PR in the forked repo. |
|
/contributor @bsdkurt |
|
@snake66 Syntax:
User names can only be used for users in the census associated with this repository. For other contributors you need to supply the full name and email address. |
|
@snake66 Syntax:
User names can only be used for users in the census associated with this repository. For other contributors you need to supply the full name and email address. |
|
@snake66 |
|
/contributor add @battleblow |
|
@snake66 |
|
@snake66 |
|
A happy FreeBSD user passed by, was delighted to see that this PR didn't break any build on other platforms, that even the tests were passing on those, and decided to give this a try on his system. So he installed some stuff with And then ran the following command: (Noting that To get the following output: The user didn't dare to try to make the resulting build configuration at that moment, because the dinner was getting cold. While having dinner he thought that many other more experienced FreeBSD users could be interested in giving this a run in their own systems, or even contribute to this somehow. But then maybe those users didn't know about this effort. After a long working day, the user fell into a deep sleep, dreaming with Java on FreeBSD. |
|
@vieiro Thanks for verifying that the configuration passes :) And you're right, this is just the first step, so in itself not enough to build for FreeBSD yet. You will find a complete port for the current mainline in the battleblow/jdk repo. By now this passes all tier1 tests on AMD64, and all but one on Aarch64. (Except for a handful more if running on ZFS, as ZFS is not (yet?) able to give the guarantees required by We also do have OpenJDK for FreeBSD in the ports tree and in pkg. Up to and including the latest OpenJDK 25. |
|
@snake66 My pleasure! Keep up the good work! |
This basically allows configure to complete and set up a configuration suitable for building the BSD port for supported platforms (FreeBSD, OpenBSD and NetBSD.)
The flag
_BSDONLY_SOURCEis defined for all the BSD's except for Apple MacOS, while the existing_ALLBSD_SOURCEincludes Apple MacOS.For the BSD's we set the
OPENJDK_TARGET_OS_ENVvariable to distinct values reflecting the BSD variant being built. This is used to distinguish build flags, library locations and what libraries and modules to include for the various builds.As an example, FreeBSD includes the ALSA library, and should build the Serviceability Agent, while the other BSD's do not.
This work was sponsored by: The FreeBSD Foundation
Progress
Contributors
<glewis@openjdk.org><kurt@openjdk.org>Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/bsd-port.git pull/4/head:pull/4$ git checkout pull/4Update a local copy of the PR:
$ git checkout pull/4$ git pull https://git.openjdk.org/bsd-port.git pull/4/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 4View PR using the GUI difftool:
$ git pr show -t 4Using diff file
Download this PR as a diff file:
https://git.openjdk.org/bsd-port/pull/4.diff
Using Webrev
Link to Webrev Comment