Closed rafaqz closed 4 years ago
I'd be interested to also link GRIB.jl to ClimateTools. :)
Regards
Hi, sorry I didn't see this earlier, I thought GitHub would send emails for new issues but apparently it doesn't. I'll go through those things and do what I can figure out. I am concerned about Windows support still. ecCodes has a Windows build, but I can't figure out how to link to it properly.
It should normally message you....
Windows support is a pain. These days you would use https://juliapackaging.github.io/BinaryBuilder.jl/dev/ to build an ecCodes_jll package, instead of using BinDeps.
@weech it would be really nice if you could register this package. Also consider migrating it to some organization like JuliaGeo or JuliaClimate if you think you don't have enough time to maintain it by yourself. Folks will certainly help with BinaryBuilder.jl and other issues.
BinaryBuilder won't work because ecCodes doesn't support cross-compilation (at least that's what I took away from the wizard; the endianness checks were failing). Right now I think I want to remove the Conda dependency and trust that the user can figure out how to download ecCodes themselves. I'm going to test and see if the linker can figure that out.
Do you think that not supporting Windows is a problem? That's the only other issue I can think of.
I think it is better to have something registered that works on Linux/Mac than having nothing registered :) Later on people will jump in to help with Windows if that is an issue.
So I managed to get BinaryBuilder to build it for Linux with this build scipt!
cd $WORKSPACE/srcdir
mkdir build
sed -i '91,93d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '88d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '60-86d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '60,86d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '55,57d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '51d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
sed -i '23,49d' eccodes-2.17.0-Source/cmake/eccodes_test_endiness.cmake
cd build/
cmake -DCMAKE_INSTALL_PREFIX=${prefix} -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TARGET_TOOLCHAIN} -DCMAKE_BUILD_TYPE=Release -DENABLE_NETCDF=OFF -DENABLE_JPG=OFF -DENABLE_PYTHON=OFF -DENABLE_FORTRAN=OFF ../eccodes-2.17.0-Source/
make
make install
I'm running it for the other operating systems now, but it's taking forever to download the environments. Also there isn't a jasper or openjpeg jll yet, so I'm going to see if it's possible to build one of those tomorrow to enable jpeg decompression. I'm hoping to have it done tomorrow or Friday!
Also there isn't a jasper or openjpeg jll yet,
There is actually an openjpeg jll: https://github.com/JuliaPackaging/Yggdrasil/tree/master/O/OpenJpeg. It was added in https://github.com/JuliaPackaging/Yggdrasil/pull/904
Awesome! I didn't think to try the CamelCase variant. Maybe they could add an alias to libopenjpeg to make it more discoverable? Anyways, I fixed the bugs in that build script and added support for jpeg and png compressed files, so now I'm just waiting for the wizard to finish. It's failed so many times now :sweat_smile:
Yeah, the capitalization is a bit unfortunate. I generally just search the Yggdrasil repository, which is more forgiving, and also shows you if there is for instance an open PR or issue to add it.
If you're stuck, you can also just make a PR to Yggrasil and others may be able to help out. Plus the builds there are really fast ;)
I want to share here that the package is already super useful to some investigations I am doing. Any progress with the registration?
I literally just finished the 3 day waiting period and had it merged! Hopefully it will start showing up soon. https://github.com/JuliaRegistries/General/pull/15914
Awesome! Updating my Project.toml accordingly for the stable release :)
I think this issue can be closed now :+1:
Install tagbot to automatically tag your versions:
https://github.com/marketplace/actions/julia-tagbot
Install julia registrator:
https://github.com/apps/juliateam-registrator/installations/new
@JuliaRegistrator register
in a comment box on the latest/supported commitAll things going to plant your package should be registered.
More details on registrator here: https://github.com/JuliaRegistries/Registrator.jl