summaryrefslogtreecommitdiffstats
path: root/recipes-core/openjdk
Commit message (Collapse)AuthorAgeFilesLines
* openjdk-8: fix changed upstream checksumsRichard Leitner2020-11-091-8/+8
| | | | | | | | | | | | | The upstream archives and therefore their checksums for 8u272 have changed. This is caused by a new "jdk8u275-b00" tag which was added on the same revision as our "jdk8u272-ga" tag. Therefore the .hg_archival.txt file changed. This patch adds the new upstream checksums. Reported-by: Chencheng Zhang <chencheng@wittra.se> Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Cherry-picked-from: 6e84638d77ac921aac46649095bca5ddbde94d2a
* openjdk-8: update to latest ga version 272Richard Leitner2020-10-2241-123/+166
| | | | | | | | | | | For aarch32 we need to fall back to b09 as there is no ga tag available yet. Patch related changes: * 0011, 0012 & 0013 were changed to valid git patches Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Cherry-picked-from: 03537feee539526ec9bb0cf4f55dd4eef6badc71
* openjdk-8-common: fix soundless evaluationRichard Leitner2020-09-111-4/+1
| | | | | | | | If only alsa and not pulseaudio was in PACKAGECONFIG soundless was configured. This is incorrect for obvious reasons, therefore set soundless only if alsa and pulseaudio isn't set. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjre-8: add ALTERNATIVE for "keytool"Richard Leitner2020-09-091-2/+6
| | | | | | | As we have ALTERNATIVEs for java and javac we should also provide for the keytool. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: add ALTERNATIVE for "keytool"Richard Leitner2020-09-091-1/+4
| | | | | | | As we have ALTERNATIVEs for java and javac we should also provide one for the keytool. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: update to latest ga version 265Richard Leitner2020-08-2048-451/+268
| | | | | | | | | | | | | | | | | | Patch related changes: * The hotspot patch 1004 was mainlined in changeset 3a3803a0c789 [1] and is therfore dropped. * The jdk patch 2010 was mainlined in changeset c4418d567028 [2] and is therefore dropped. * Rename hotspot/aarch64 patches to start with number 1401. * Rename hotspot/aarch32 patches to start with number 1201. * Merge aarch32-hotspot-fix-shark-build-pt2.patch and openjdk8-fix-shark-build-pt2.patch to hotspot patch 1013 as they were the same. [1] https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/3a3803a0c789 [2] https://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/c4418d567028 Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: add a glibc 2.32 compatibility patchAlexander Kanavin2020-08-202-0/+40
| | | | | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: refresh patchesRichard Leitner2020-08-2015-57/+76
| | | | | | Refresh all openjdk8 patches as a preparation for the upcoming update. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: update to latest ga version 252Richard Leitner2020-08-206-50/+26
| | | | | | | This patch also drops the md5 checksums as sha256 checksums are sufficient. Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Tested-by: Jacob Kroon <jacob.kroon@gmail.com>
* openjdk-8: remove -WerrorRichard Leitner2020-08-174-13/+227
| | | | | | | | Add patches to remove Werror from the build process. Therefore we also drop the "-Wno-*" exceptions. Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Tested-by: Jacob Kroon <jacob.kroon@gmail.com>
* openjdk-8: require GCC >= v6Richard Leitner2020-08-171-14/+8
| | | | | | | | | As nobody should use older versions of GCC anymore this patch drops all version dependent workarounds and requiers host gcc >=6 for building openjdk-8. Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Tested-by: Jacob Kroon <jacob.kroon@gmail.com>
* openjdk-8: Fix building with GCC 10Jacob Kroon2020-08-171-0/+4
| | | | | Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: Don't set TOPDIR bitbake variableJacob Kroon2020-08-171-1/+4
| | | | | | | | | It is used to set the default sstate cache location. Just export it to the environment. Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> [richard.leitner@skidata.com: adapted commit message] Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: update to latest ga version 242Richard Leitner2020-08-1768-4018/+1310
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As OpenJDK-8 is now tagging "ga" versions in addition to the "build" version the recipes are adapted to use those "ga" versions. All existing patches got re-applied and renamed. For better handling Hotspot patches now start at patch number 1001 and jdk patches at 2001. Furthermore architecture dependent patches are prefixed with the architecture they apply on. Following patches/hunks were completely dropped: - 0002-hotspot-fix-compilation-with-security-flags-enabled.patch got backported to hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/c40a28e54185 - 0011-hotspot-backport-patch-to-fix-misuses-of-strncpy-str.patch ostream.cpp:112 got fixed in hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/f3108e56b502 - 0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch got backported to hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/ca4663e58916 - 0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch fixed in hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/32bc598624bd - 0020-Enable-HotSpot-builds-on-5.x-Linux-kernels.patch fixed in hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/5af8ec63c21c - openjdk8-add-missing-linker-flags.patch fixed in hotspot jdk8u https://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/f175513c2c3a - openjdk8-fix-shark-stdc++11.patch fixed in hotspot jdk8u - openjdk8-fix-libpng-neon-build.patch fixed in jdk https://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/5d57817931e1 - aarch64-hotspot-fix-undefined-behaviour-gcc-v8-fix.patch got backported to hotspot jdk8u Following patches were newly added: - 0011-autoconf-fix-CC-with-arguments-detection.patch needed because of jdk8u commit "8038340: Cleanup and fix sysroot and devkit handling on Linux and Solaris" - 0012-autoconf-NativeCompilation-remove-sysroot.patch needed because of jdk8u commit "8038340: Cleanup and fix sysroot and devkit handling on Linux and Solaris" Additionally add UPDATING.md which describes the openjdk8 update process for this layer and update8checksums.sh, a script that updates the openjdk8 source archive checksums in the corresponding .inc files. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: fix a random crash on JNI_CreateJavaVMWenlin Kang2020-08-172-0/+37
| | | | | | | | When call JNI_CreateJavaVM API, sometimes it will crash(we have reproduced it on quemuppc), this patch fixes it. Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* remove True option to getVar callsAndré Draszik2020-08-173-8/+8
| | | | | | | | | | | | | | | getVar() has been defaulting to expanding by default for a long time (2016), thus remove the True option from getVar() calls with a regex search and replace. Search & replace made using the following command: sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \ -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \ | cut -d':' -f1 \ | sort -u) Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk8: Make kerberos optional through PACKAGECONFIGRicardo Ribalda Delgado2020-08-171-1/+3
| | | | | | | | It triggers a lot of dependencies, and it is no clear that is needed. Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: disable stringop-overflow compiler errorsRichard Leitner2020-08-171-0/+5
| | | | | | | | As new compilers generate this error we disable it for now as a WORKAROUND. This will be removed when openjdk-8 is updated to the latest version Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: Enable HotSpot builds on 5.x Linux kernelsNicola Lunghi2020-08-172-0/+44
| | | | | | | | This is a backport of a patch to enable hotspot builds with 5.x kernels. Signed-off-by: Nicola Lunghi <nick83ola@gmail.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* Revert "openjdk-8: disable, stringop-overflow compiler errors"Richard Leitner2020-01-031-5/+0
| | | | | | | | | | This reverts commit d5a8ec9e269d1f04a6cf78867ebf74a297f33258 as it broke the build with older GCC versions. See also https://lists.yoctoproject.org/g/yocto/message/47850 Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Cc: Darcy Watkins <dwatkins@sierrawireless.com>
* openjdk-8: disable stringop-overflow compiler errorsRichard Leitner2019-12-271-0/+5
| | | | | | | | As new compilers generate this error we disable it for now as a WORKAROUND. This will be removed when openjdk-8 is updated to the latest version Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8-native: hotspot: handle format-overflow error for gcc >= 7Andreas Obergschwandtner2018-10-242-0/+26
| | | | | | | | fixed the format-overflow warnings by patch affected files in openjdk-8-hotspot Signed-off-by: Andreas Obergschwandtner <andreas.obergschwandtner@skidata.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk: remove incorrect PROVIDES (java2-vm java2-runtime)André Draszik2018-10-222-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two issues here: * PROVIDES is not package specific * it doesn't look like the intention is to be able to DEPENDS on java2-vm or java2-runtime anyway Regarding java2-vm: ------------------- java2-vm was originally used in the OpenJDK 6 & 7 recipes to be able to select shark, zero, cacao, or jamvm VMs. OpenJDK-6 is not available any more, and OpenJDK-7 has removed support for most of this in commit 38f4c1365c11 ("openjdk7: remove broken/unsupported VM's") It is not clear why it was added to the OpenJDK-8 recipe either. Given OpenJDK-7 has no way of using the VM compiled as part of OpenJDK-8, and given that no part of the OpenJDK-8 makes use of the java2-vm part, the correct solution here is to actually *remove* the incorrect PROVIDES as well as *R*PROVIDES statements for java2-vm completely. Regarding java2-runtime: ------------------------ Again, looking at the other uses of this: java2-runtime is a virtual runtime package name, which is provided by different *runtime* packages (created by the OpenJDK-7, OpenJDK-8, JamVM, or Cacao recipes). Other recipes only ever RDEPEND on java2-runtime. It makes no sense for the OpenJDK-8 recipe to PROVIDES java2-runtime given the above. Remove the incorrect (R)PROVIDES statements. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: support rm_work disabledAndré Draszik2018-10-221-0/+1
| | | | | | | | | | | | | | | | | | | | Now that generation of the Java keystore actually works (again?), OE-core commit 09bb7718d74 ("ca-certificates: use relative symlinks from $ETCCERTSDIR"), do_compile() will fail when invoked multiple times. The reason is that during do_compile(), the Java keytool is used to create a Java keystore with the certificates provided by ca-certificates. Before above OE-core commit, no certificates were actually being added, but as certificates are being added now, multiple do_compile() runs will end up adding the same certificate twice when rm_work is disabled, causing a keytool exception, as that is not allowed. So let's remove any previously generated keystore before trying to add certificates to it. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-7-common: fix jvm postinst scriptsRichard Leitner2018-10-021-18/+18
| | | | | | | | | | | | As the JVM postinst scripts fail during rootfs creation we postpone them to the target using the "pkg_postinst_ontarget_" function. Failing the build at failing postinst scripts was intentionally introduced by oe-core. Furthermore remove the no longer needed $D prefixes from those postinst scripts. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-7: merge postinst into openjdk-7-commonRichard Leitner2018-10-022-101/+99
| | | | | | | | | | As openjdk-7-common was the only consumer of openjdk-postinst.inc move it's content and remove openjdk-postinst.inc. Now all files in recipes-core/openjdk are named correctly according to their versions again. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: use openjdk-commonRichard Leitner2018-10-021-6/+1
| | | | | | | | As openjdk-common.inc now serves all OpenJDK version let openjdk-8-common require it. Furthermore remove the now duplicated lines. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-7: remove version dependent stuff from openjdk-commonRichard Leitner2018-10-022-37/+38
| | | | | | | Move the OpenJDK-7 specific parts from openjdk-common.inc to openjdk-7-common.inc. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-7: use openjdk_build_helper's ARCH translation functionsRichard Leitner2018-10-022-41/+2
| | | | | | | | | As the openjdk_build_helper now provides the ARCH translation function use those and drop the local ones. Furthermore remove the duplicated LLVM_CONFIGURE_ARCH export. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: use openjdk_build_helper's ARCH translation functionsRichard Leitner2018-10-021-40/+3
| | | | | | | As the openjdk_build_helper now provides the ARCH translation function use those and drop the local ones. Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: add aarch32 port 8u172b11André Draszik2018-10-0217-98/+416
| | | | | | | | | | | | | | Similar to the aarch64 build, we import the specific aarch32 port when building for ARMv7. We also add all the necessary patches to: * compile using gcc v8 * compile against musl This was tested on: * QEMU with cortex A7 emulation (using glibc) * real hardware (using musl) Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: allow to build client JVM via PACKAGECONFIGAndré Draszik2018-08-211-0/+2
| | | | | | | The aarch32 port will need to unconditionally enable this. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <dev@g0hl1n.net>
* openjdk-8: always apply some patchesAndré Draszik2018-08-212-3/+2
| | | | | | | As a simplification for the upcoming aarch32 port. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <dev@g0hl1n.net>
* openjdk-8: fix malformed patchesAndré Draszik2018-08-2116-32/+32
| | | | | | | | | | | | | git am complains: Warning: commit message did not conform to UTF-8. You may want to amend it after fixing the message, or set the config variable i18n.commitencoding to the encoding your project uses. Not sure what happened there when they were applied to git, they certainly weren't sent like that to the mailing list. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <dev@g0hl1n.net>
* openjdk-8: gcc-8 fix #4: undefined behaviour (hotspot)André Draszik2018-08-1411-2/+673
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using gcc-8, Hotspot is being miscompiled, resulting in non- working binaries. The reason is undefined behaviour, which gcc-8 even warns about and errors out. We have so far have taped over those warnings, but it turns out that we simply cannot do that. Add patches to address undefined behaviour causing miscompilation of hotsport. This also means we can remove the -Wno-error=return-type C compiler flag again which was recently added in error in commit 52fb41cec7d5 ("openjdk-8: fix build for gcc8.x") only hiding the compiler warnings/errors that were flagging the incorrect code in the first place. With these patches applied, the openjdk-8 ARM port works again: | RESULTS: | RESULTS - ping.PingTest.test_ping - Testcase 964: PASSED (0.04s) | RESULTS - ssh.SSHTest.test_ssh - Testcase 224: PASSED (0.68s) | RESULTS - java.JavaTest.test_java_exists - Testcase -1: PASSED (0.14s) | RESULTS - java.JavaTest.test_java_jar_comp_mode - Testcase -1: FAILED (5.13s) | RESULTS - java.JavaTest.test_java_jar_int_mode - Testcase -1: PASSED (4.48s) | RESULTS - java.JavaTest.test_java_jar_works - Testcase -1: PASSED (4.44s) | RESULTS - java.JavaTest.test_java_version - Testcase -1: PASSED (3.66s) | RESULTS - javac.JavacTest.test_javac_exists - Testcase -1: PASSED (0.13s) | RESULTS - javac.JavacTest.test_javac_works - Testcase -1: PASSED (30.87s) | SUMMARY: | openjdk-8-test-image () - Ran 9 tests in 50.263s The java.JavaTest.test_java_jar_comp_mode failure can be ignored for now, as that test verifies compiled mode which is not available on arm. The testcase must be fixed instead. (We need to refresh one unrelated existing patch to avoid patch fuzz warnings) Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-build-helper: move c compiler flags retrieval to here (from openjdk-8)André Draszik2018-08-131-41/+4
| | | | | | | | | | Icedtea 7 and OpenJDK 7 will need to apply new compiler flags for certain compiler version without breaking support for older (host) compilers. Move here so that the same code can be re-used. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* java.bbclass: move openjdk/icedtea specific code into new classAndré Draszik2018-08-135-3/+5
| | | | | | | | | | The code moved is not relevant to anything using java, just for compiling java itself. It doesn't make sense to have here. Move it into openjdk-build-helper Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-7: clarify a bitbake warningRichard Leitner2018-08-131-1/+2
| | | | | | | | | | | | | | | | We get a bitbake warning during recipe building complaining about unsupported architectures unconditionally. That check is relevant only for shark builds, so it is quite confusing for non-shark builds. Make the warning conditional on whether shark builds are enabled or not. This is the same patch as the one for openjdk-8 by André Draszik (commit 86c729cb51f880fd5a1ec6485baddfa2bedaa998) Signed-off-by: Richard Leitner <richard.leitner@skidata.com> Acked-by: Henning Heinold <henning@itconsulting-heinold.de>
* openjdk-8: update to 8u172b11André Draszik2018-08-138-90/+75
| | | | | Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: gcc-8 fix #3: working binariesAndré Draszik2018-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to the existing gcc-6 and gcc-7 support, we need to add the same specific compiler flags to avoid miscompilation on gcc-8: -fno-lifetime-dse -fno-delete-null-pointer-checks With this, bitbake -c testimage openjdk-8-test-image works again for x86_64 and aarch64: RESULTS: RESULTS - ping.PingTest.test_ping - Testcase 964: PASSED (0.12s) RESULTS - ssh.SSHTest.test_ssh - Testcase 224: PASSED (1.20s) RESULTS - java.JavaTest.test_java_exists - Testcase -1: PASSED (0.15s) RESULTS - java.JavaTest.test_java_jar_comp_mode - Testcase -1: PASSED (41.98s) RESULTS - java.JavaTest.test_java_jar_int_mode - Testcase -1: PASSED (1.76s) RESULTS - java.JavaTest.test_java_jar_works - Testcase -1: PASSED (2.13s) RESULTS - java.JavaTest.test_java_version - Testcase -1: PASSED (1.51s) RESULTS - javac.JavacTest.test_javac_exists - Testcase -1: PASSED (0.11s) RESULTS - javac.JavacTest.test_javac_works - Testcase -1: PASSED (17.64s) SUMMARY: openjdk-8-test-image () - Ran 9 tests in 67.112s openjdk-8-test-image - OK - All required tests passed NOTE: armv5e still doesn't work with gcc v8, and other arches weren't tested. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: gcc-8 fix #2: silence build warnings/errors (return-type)André Draszik2018-08-131-0/+1
| | | | | | | | | | | | | | | | | | | | Similar to the patch just reverted, we silence the build warnings regarding return type of functions, but we only do this for gcc versions where it matters, now that our infrastructure for doing so works again: | <<PKGBUILDDIR>>/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp:223:32: error: control reaches end of non-void function [-Werror=return-type] | #define BREAKPOINT ::breakpoint() | ~~~~~~~~~~~~^~ | <<PKGBUILDDIR>>/hotspot/src/share/vm/utilities/debug.hpp:192:3: note: in expansion of macro 'BREAKPOINT' | BREAKPOINT; \ | ^~~~~~~~~~ | <<PKGBUILDDIR>>/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp:197:2: note: in expansion of macro 'ShouldNotReachHere' | ShouldNotReachHere(); | ^~~~~~~~~~~~~~~~~~ etc. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* Revert "openjdk-8: fix build for gcc8.x"André Draszik2018-08-132-22/+0
| | | | | | | | | | | | | | | | | | | | | This reverts commit 52fb41cec7d5125bb11c718705158696ffef11f8. The change being reverted has two problems: - it still doesn't produce working binaries - compilation on pre-gcc v7 compilers fails (which is relevant for compiling openjdk-8-native, as that uses the build machine's gcc, not yocto's gcc): | At global scope: | cc1plus: error: unrecognized command line option ‘-Wno-stringop-overflow’ [-Werror] | cc1plus: all warnings being treated as errors We now use a different approach to address the issues than that patch, and it is thusly not needed anymore. We fully support gcc < 7 again. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: gcc-8 fix #1: backport patch to fix misuses of strncpy/strncatAndré Draszik2018-08-132-0/+182
| | | | | | | | | | | | | The original approach doesn't work with all compilers, as not all compilers support the flag used to suppress the warnings / errors. This patch here avoids passing unsupported compiler options into older compilers, and at the same time fixes the bugs, rather than just silencing the compiler. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: fix infrastructure for version host gcc != cross gcc (again)André Draszik2018-08-132-25/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building OpenJDK-8 (target) with an older host compiler (gcc < 6) does not work as the build errors with error messages regarding unrecognized gcc command line options. As part of the (cross) build particularly, OpenJDK-8 builds a host tool (adlc) using the host gcc. We have a patch, openjdk8-fix-adlc-flags.patch, that tries to make the adlc build use the correct / intended compiler flags. This doesn't work right now, as that build still sees compiler flags intended for / understood by the gcc version used for the actual cross compile only. The reason is that while we have infrastructure in place to add compiler flags based on the compiler version, we add all of them unconditionally to CFLAGS / CXXFLAGS directly but above patch uses TARGET_CFLAGS / TARGET_CXXFLAGS to filter out unwanted BUILD_CFLAGS / BUILD_CXXFLAGS from CFLAGS / CXXFLAGS, In other words above patch cannot do what it intends to do and all compiler version specific flags (-fno-lifetime-dse & -fno-delete-null-pointer-checks) end up in CFLAGS / CXXFLAGS. So far, this was only affecting people using host gcc < 6, but upcoming patches adding support for gcc >= 8 will add even more compiler flags that even gcc < 7 don't support - it's time to finally address this. We fix the issue by adding the compiler version specific flags to BUILD_CFLAGS / BUILD_CXXFLAGS and TARGET_CFLAGS / TARGET_CXXFLAGS as necessary, so that above patch can work as intended. We now support all necessary combinations: * -native builds * -target builds * host tools built using the native compiler during the -target build A similar but different patch existed here before as commit 6801f6d4e19c ("openjdk-8-common: Fix the issue of building failed adlc on host with gcc < 6") but was reverted subsequently due to reportedly still(?) having (new?) issues with older compilers. This patch here is different from the older patch in that it *doesn't* set the cflags during a python_anonymous() function, and thus it guarantees deterministic execution order. This change here was tested to work using host gcc versions 4.8.4 and 6.3.0 and 7.3.0 Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: remove superfluous compiler flag (-std=gnu++98)André Draszik2018-08-131-1/+0
| | | | | | | | These days, OpenJDK-8 adds this to the build itself, no need to do it again here in the recipe. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: speed-up do_install() (pack200)André Draszik2018-08-131-2/+2
| | | | | | | | | | | | | | | We run pack200 sequentially on all found archives, but there doesn't seem to be a reason to do so, the java_get_parallel_make() apperas to be related to compiling java itself, running multiple java applications (pack200) at the same time on the same machine should be possible, otherwise we have a big problem... Just run up to BB_NUMBER_THREADS pack200 processes at the same time to speed up the build. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: 'do_unpack_remove_X11_wrappers' confuses pyro bitbake parserMatthew McClain2018-07-311-2/+2
| | | | | | | | | | | | When building without X11 support on the sumo or master branches of meta-java with the pyro branch of poky, meta-oe, etc, the recipe fails to parse. Renaming the function to anything else allows the recipe to be parsed. The problem appears to be the word "_remove_". Signed-off-by: Matthew McClain <mmcclain@uplogix.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: correct the typo mistakefan.xin2018-07-101-1/+1
| | | | | Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* set SUMMARY instead of DESCRIPTIONAndré Draszik2018-06-192-2/+2
| | | | | | | | | Short descriptions should go into SUMMARY (DESCRIPTION will get the same value if not set.) Signed-off-by: André Draszik <andre.draszik@jci.com> Tested-by: Richard Leitner <richard.leitner@skidata.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
* openjdk-8: give downloaded files a more descriptive nameAndré Draszik2018-06-192-15/+23
| | | | | | | | | | Rather than using the HG (mercurial) changeset IDs directly, add a more descriptive part to the file name. This can help with download cache management. Signed-off-by: André Draszik <andre.draszik@jci.com> Tested-by: Richard Leitner <richard.leitner@skidata.com> Signed-off-by: Richard Leitner <richard.leitner@skidata.com>