deps: Add build recipe for GIF
Description
As requested in https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4387.
Checklist:
- [ x] I have read the contribution guidelines.
- [ ] I have updated the documentation, if applicable. (Check if there is no need to update the documentation, for example if this is a bug fix that doesn't change the API.)
- [ ] I have ensured that the change is tested somewhere in the testsuite (adding new test cases if necessary).
- [ ] If I added or modified a C++ API call, I have also amended the corresponding Python bindings (and if altering ImageBufAlgo functions, also exposed the new functionality as oiiotool options).
- [ ] My code follows the prevailing code style of this project. If I haven't already run clang-format before submitting, I definitely will look at the CI test that runs clang-format and fix anything that it highlights as being nonconforming.
How did you test this and verify that it works?
I'm still working on the pull request -
Here's what I'm currently doing to test and verify the CMake files:
- I've turned on the "ignore homebrew-installed dependencies" option in the CMakeLists.txt file.
- Then I'm building with these commands:
mkdir build
cd build
cmake .. -DOpenImageIO_BUILD_MISSING_DEPS=all
This makes CMake to build all dependencies locally instead of using system-installed versions.
Another way to test and verify:
- To build oiiotool specifically, you can continue the build process with:
make -j8 # Adjust based on the number of CPU cores
- Once the build completes, you can verify GIF support by:
a. Converting an image to GIF format:
./bin/oiiotool path/to/some/image.jpg -o test_output.gif
b. You can also try to convert a GIF to another format to further verify that it's working:
./bin/oiiotool ~/Downloads/earth.gif -o earth.jpg
The committers listed above are authorized under a signed CLA.
- :white_check_mark: login: hisergiorojas / name: Sergio Rojas (0f7a5592d0f8d8992b12ac2ffb109169334fecde, 34ba5403fd831410c96ecf0d8430f372f51073bd)
This PR has been idling for a while, I think because it never quite passed CI. Is this something you're going to return to, @hisergiorojas? Maybe we should start by rebasing it on top of the current main and see what, if anything, is still broken?
Closing. This never fully passed CI, the PR has sat idle for months without the author fixing it, and in the mean time, somebody else has fully implemented it in #4921. Sincere thanks for trying to implement this; it's ok, not all PRs work out. The effort is appreciated.