Open junaruga opened 4 years ago
@junaruga Neat. I've never heard anyone trying to build on some of those before.
It looks like in some of them it's just tests that are failing, and in particular the tests to see if the intel deflater is working.
We attempt to avoid this problem by skipping those tests if the we're not running on what we think is a valid architecture, but our test doesn't seem to be very good.
private void checkIntelSupported(final String componentName) {
if (!SystemUtils.IS_OS_LINUX && !SystemUtils.IS_OS_MAC) {
throw new SkipException(componentName + " is not available on this platform");
}
if (SystemUtils.OS_ARCH != null && SystemUtils.OS_ARCH.equals("ppc64le")) {
throw new SkipException(componentName + " is not available for this architecture");
}
}
So we check that we're running on linux or OSX and then we check that we're NOT running on PPC.
SO that's why ppc64le is passing the tests and skipping. I don't know why we didn't check that we WERE running on a specific architecture instead of checking a list to exclude, we should change that.
So of your 3 cases
Hi @lbergelson
Thank you for checking the issue!
SO that's why ppc64le is passing the tests and skipping. I don't know why we didn't check that we WERE running on a specific architecture instead of checking a list to exclude, we should change that.
I see. You have already implemented the logic to skip for non-Intel CPU. You can use the a list to exclude (black list) or you can use a list to include (white list), seeing this article to check Intel CPU.
If SystemUtils.OS_ARCH
is "x86", "i386", "i486", "i586" or "i686", it is Intel x86 32-bit
If SystemUtils.OS_ARCH
is "x86_64" or "amd64", it is Intel x86 64-bit
So of your 3 cases
Thank you for checking the 3 cases. It's really great if those are fixed. Nowadays some Linux distributions have an availability for multiple CPUs. Red Hat Enterprise Linux 8 was released at May 7th 2019, supporting 4 CPUs x86_64, aarch64 (arm64), ppc64le, s390x. Wikipedia, Release note. I have a chance to use aarch64 (arm64) base HPC montblanc.
Instructions
This issue is feature request or bug report.
My friend was trying to build picard on multiple CPU architectures such as arm64, ppc64le and s390x in Debian to build and run igv and artemis on the CPUs.
And I tried to build picard on Travis CI multiple CPU architectures to help the work.
But it seems that the CI was failed because of failing to load GKL library. As it seems that the GKL only supports Intel CPU, I want to see the library is not loaded when building picard on non-Intel CPU architectures.
Seeing the CPU macros document, the logic might be like this.
Bug Report
Affected tool(s)
Affected version(s)
Description
Describe the problem below. Provide screenshots , stacktrace , logs where appropriate.
The Travis logs: https://travis-ci.org/junaruga/picard/builds/647790095
arm64
ppc64le
s390x
Steps to reproduce
Tell us how to reproduce this issue. If possible, include command lines that reproduce the problem and provide a minimal test case.
Expected behavior
The unit tests are passed on The Travis CI arm64, ppc64le and s390x cases.
Actual behavior
Tell us what happens instead
The unit tests are not passed on The Travis CI arm64, ppc64le and s390x cases.
How do you think? Thank you.