Skip to content

{lib,tools}[GCCcore/10.2.0,foss/2020b] Highway v0.12.2, LibLZF v3.4, libavif v0.9.0, libjxl v0.6.1, Zopfli v1.0.3, zpf v0.5.5, zlib-ng v2.0.5 (dependencies for imagecodecs)#14246

Merged
boegel merged 32 commits intoeasybuilders:developfrom
deniskristak:20211029150651_new_pr_Highway0122
Nov 9, 2021
Merged

{lib,tools}[GCCcore/10.2.0,foss/2020b] Highway v0.12.2, LibLZF v3.4, libavif v0.9.0, libjxl v0.6.1, Zopfli v1.0.3, zpf v0.5.5, zlib-ng v2.0.5 (dependencies for imagecodecs)#14246
boegel merged 32 commits intoeasybuilders:developfrom
deniskristak:20211029150651_new_pr_Highway0122

Conversation

@deniskristak
Copy link
Copy Markdown
Contributor

adding easyconfigs: Highway-0.12.2-GCCcore-10.2.0.eb, zopfli-1.0.3-fo…ss-2020b.eb, zlib-ng-2.0.5-foss-2020b.eb, liblzma-5.2.5-foss-2020b.eb, liblzf-3.4-GCCcore-10.2.0.eb, libjxl-0.5-GCCcore-10.2.0.eb, libavif-0.9.0-foss-2020b.eb

…ss-2020b.eb, zlib-ng-2.0.5-foss-2020b.eb, liblzma-5.2.5-foss-2020b.eb, liblzf-3.4-GCCcore-10.2.0.eb, libjxl-0.5-GCCcore-10.2.0.eb, libavif-0.9.0-foss-2020b.eb
@boegelbot

This comment has been minimized.

Comment thread easybuild/easyconfigs/l/liblzma/liblzma-5.2.5-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/z/zopfli/zopfli-1.0.3-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.0.5-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/z/zopfli/zopfli-1.0.3-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/z/zopfli/zopfli-1.0.3-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/l/liblzf/liblzf-3.4-GCCcore-10.2.0.eb Outdated
Comment thread easybuild/easyconfigs/l/libjxl/libjxl-0.5-GCCcore-10.2.0.eb Outdated
Comment thread easybuild/easyconfigs/l/libavif/libavif-0.9.0-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/l/liblzf/liblzf-3.4-GCCcore-10.2.0.eb Outdated
@Micket Micket added this to the 4.x milestone Oct 29, 2021
@boegelbot

This comment has been minimized.

@Micket
Copy link
Copy Markdown
Contributor

Micket commented Nov 1, 2021

Tips: eb xxxxxxx --inject-checksums --force for injecting all the checksums
You also need to specify eb --update-pr1 14246 :OldName-1.2.3.eb NewName-1.2.3.eb to indicate removal of an old file (which git will automatically detect as a git mv. Right now you ended up with some duplicates from the renaming

Comment thread easybuild/easyconfigs/l/LibLZF/LibLZF-3.4-GCCcore-10.2.0.eb Outdated
Comment thread easybuild/easyconfigs/l/libavif/libavif-0.9.0-foss-2020b.eb Outdated
]
patches = [
'libjxl-0.6.1_external_lcms2.patch',
'libjxl-%(version)s_remove-broken-test.patch',
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this version should have fixed that broken test (not 100% sure)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it doesnt

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can confirm, the fix is merged in the main branch, but not included yet with libjxl 0.6.1...

Comment thread easybuild/easyconfigs/l/libjxl/libjxl-0.6.1_external_lcms2.patch
Comment thread easybuild/easyconfigs/l/liblzma/liblzma-5.2.5-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/z/Zopfli/Zopfli-1.0.3-GCCcore-10.2.0.eb
@@ -0,0 +1,33 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Denis Kristak
easyblock = 'MakeCp'
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How come it's not a CMakeMake block instead?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was just closed without any comment or change?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems like zfp supports building with just make, or via cmake (because, you know, why not...).

Although I'm not a big fan of CMake, it's probably better to go that way instead, since it gives us more control over compiler options, etc, and it hopefully also avoids the need for "manually" installing stuff via files_to_copy, and we can just use make install instead.

I'll take a quick look at the myself, so we can get this merged and proceed with #14247 ...

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And it actually supports the configopts, which.. I suspect does absolutely nothing in MakeCp?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed, configopts doesn't make sense with MakeCp.

I just spent an hour trying to get zfp built with CMake, and it's living up to its reputation, again...

Problems I ran into before I gave up:

  • The build was failing while linking the zfp binary due to an undefined reference to log10, basically because -lm wasn't being used. There's some logic in CMakeLists.txt to check whether -lm is required or not, but it only checks for compilation, not linking. Even after replacing check_c_source_compiles with check_c_source_runs, it still concludes that -lm isn't needed at all, and then fails to link zfp because -lm isn't used.
    I was able to dance around that by force-feeding CMake -lm via -DCMAKE_EXE_LINKER_FLAGS='-lm'.
  • After fixing the zfp linking issue, the sanity check was failing because bin/zfp wasn't being installed via make install, and it was building libzfp.so by default (while using the Makefile it builds libzfp.a by default).
    I couldn't figure out why CMake in all its wisdom as building the zfp utility to then not install it at all, so I gave up.

Conclusion: if you get the option to either just run make or build through cmake, go with the former.

Comment thread easybuild/easyconfigs/z/zfp/zfp-0.5.5-GCCcore-10.2.0.eb Outdated
Comment thread easybuild/easyconfigs/z/zfp/zfp-0.5.5-GCCcore-10.2.0.eb
Comment thread easybuild/easyconfigs/z/zlib-ng/zlib-ng-2.0.5-GCCcore-10.2.0.eb Outdated
@easybuilders easybuilders deleted a comment from boegelbot Nov 9, 2021
@easybuilders easybuilders deleted a comment from boegelbot Nov 9, 2021
@easybuilders easybuilders deleted a comment from boegelbot Nov 9, 2021
@boegel boegel changed the title easyconfigs - deps for imagecodecs {lib,tools}[GCCcore/10.2.0,foss/2020b] Highway v0.12.2, LibLZF v3.4, libavif v0.9.0, libjxl v0.6.1, Zopfli v1.0.3, zpf v0.5.5, zlib-ng v2.0.5 (dependencies for imagecodecs) Nov 9, 2021
Comment thread easybuild/easyconfigs/l/libavif/libavif-0.9.0-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/l/libavif/libavif-0.9.0-foss-2020b.eb Outdated
Comment thread easybuild/easyconfigs/l/libavif/libavif-0.9.0-foss-2020b.eb Outdated
Micket
Micket previously requested changes Nov 9, 2021
Comment thread easybuild/easyconfigs/z/zfp/zfp-0.5.5-GCCcore-10.2.0.eb Outdated
@@ -0,0 +1,33 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Denis Kristak
easyblock = 'MakeCp'
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was just closed without any comment or change?

@boegel
Copy link
Copy Markdown
Member

boegel commented Nov 9, 2021

@boegelbot please test @ generoso

@boegelbot
Copy link
Copy Markdown
Collaborator

@boegel: Request for testing this PR well received on login1

PR test command 'EB_PR=14246 EB_ARGS= /opt/software/slurm/bin/sbatch --job-name test_PR_14246 --ntasks=4 ~/boegelbot/eb_from_pr_upload_generoso.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 7244

Test results coming soon (I hope)...

Details

- notification for comment with ID 964083734 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegel boegel dismissed Micket’s stale review November 9, 2021 12:01

suggested changes done

@boegel
Copy link
Copy Markdown
Member

boegel commented Nov 9, 2021

Test report by @boegel
SUCCESS
Build succeeded for 7 out of 7 (7 easyconfigs in total)
node3116.skitty.os - Linux centos linux 7.9.2009, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (skylake_avx512), Python 3.6.8
See https://gist.github.com/643e3877220dba24703718968453f200 for a full test report.

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 7 out of 7 (7 easyconfigs in total)
cnx1 - Linux rocky linux 8.4, x86_64, Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz (haswell), Python 3.6.8
See https://gist.github.com/a47961c0dac2b553cbcc02d23b3c9442 for a full test report.

@boegel boegel modified the milestones: 4.x, next release (4.5.1?) Nov 9, 2021
@boegel
Copy link
Copy Markdown
Member

boegel commented Nov 9, 2021

Test report by @boegel
SUCCESS
Build succeeded for 14 out of 14 (7 easyconfigs in total)
node3518.doduo.os - Linux RHEL 8.2, x86_64, AMD EPYC 7552 48-Core Processor (zen2), Python 3.6.8
See https://gist.github.com/b77bb6ea0be41b5db1812f40684e87b2 for a full test report.

@boegel
Copy link
Copy Markdown
Member

boegel commented Nov 9, 2021

Going in, thanks @deniskristak!

@boegel boegel merged commit aba1edf into easybuilders:develop Nov 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants