Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE REQUEST] Add self-building abilities for more dependencies #4387

Open
7 tasks
lgritz opened this issue Aug 22, 2024 · 1 comment
Open
7 tasks

[FEATURE REQUEST] Add self-building abilities for more dependencies #4387

lgritz opened this issue Aug 22, 2024 · 1 comment
Labels
build / testing / port / CI Affecting the build system, tests, platform support, porting, or continuous integration. Dev Days ASWF Dev Days suitable project devdays24 Dev Days 2024 difficulty/easy Hours-to-days for veterans, days for newcomers to the project good first issue Good one-day project for beginners without much knowledge of the code base. help wanted A task that is desired, but needs somebody to commit the effort to implement it.

Comments

@lgritz
Copy link
Collaborator

lgritz commented Aug 22, 2024

We recently added (in PR #4242) the ability for OIIO's CMake build system to automatically download and build certain dependencies if they are not found.

(Note: It doesn't happen by default, it requires OpenImageIO_BUILD_MISSING_DEPS to be set to a comma-separated list of deps to self-build (or "all"). Also, OpenImageIO_BUILD_LOCAL_DEPS can be use to force listed dependencies to be built in this way, even if found.)

The original PR #4242 set this up for Imath, OpenEXR, fmt, Robinmap, and OpenColorIO. Subsequent PRs added the self-build ability for Freetype (#4283), libtiff and its libdeflate dependency (#4296), pybind11 (#4297), and improved that of OpenColorIO (#4367).

It would be great to have this ability added for other dependencies! Each can be tackled separately, and each is therefore a fairly self-contained task that doesn't require any prior deep knowledge of the OIIO internals, and could be a good first issue or Dev Days project.

The other high priority dependencies that would be good to add these self-build scripts for are:

  • LibJPEG
  • libPNG
  • GIFlib
  • LibWEBP
  • Ptex
  • OpenJPEG
  • libheif (may also require libde265 to be made)

If you'd like to work on one of these, just comment below 👇 and say which one you will work on so that two people aren't trying to do the same one. Also feel free to ask below if you have any questions about what needs to be done, where to find examples of the ones that already work, or anything else that would help you get started.

@lgritz lgritz added build / testing / port / CI Affecting the build system, tests, platform support, porting, or continuous integration. good first issue Good one-day project for beginners without much knowledge of the code base. difficulty/easy Hours-to-days for veterans, days for newcomers to the project labels Aug 22, 2024
@zachlewis
Copy link
Contributor

I've actually already done libjpeg-turbo -- was necessary for building with cibuildwheel on the manylinux images. I'll submit a PR for that.

@lgritz lgritz added Dev Days ASWF Dev Days suitable project help wanted A task that is desired, but needs somebody to commit the effort to implement it. labels Sep 7, 2024
@lgritz lgritz added the devdays24 Dev Days 2024 label Sep 23, 2024
@lgritz lgritz assigned lgritz and zachlewis and unassigned lgritz and zachlewis Sep 23, 2024
lgritz pushed a commit that referenced this issue Oct 29, 2024
As requested in #4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: zachlewis <[email protected]>
lgritz pushed a commit to lgritz/OpenImageIO that referenced this issue Oct 29, 2024
lgritz added a commit that referenced this issue Nov 6, 2024
As requested in #4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Larry Gritz <[email protected]>
Signed-off-by: zachlewis <[email protected]>
Co-authored-by: Larry Gritz <[email protected]>
lgritz added a commit to lgritz/OpenImageIO that referenced this issue Nov 10, 2024
As requested in AcademySoftwareFoundation#4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Larry Gritz <[email protected]>
Signed-off-by: zachlewis <[email protected]>
Co-authored-by: Larry Gritz <[email protected]>
lgritz added a commit to lgritz/OpenImageIO that referenced this issue Nov 10, 2024
As requested in AcademySoftwareFoundation#4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Larry Gritz <[email protected]>
Signed-off-by: zachlewis <[email protected]>
Co-authored-by: Larry Gritz <[email protected]>
lgritz added a commit to lgritz/OpenImageIO that referenced this issue Nov 13, 2024
As requested in AcademySoftwareFoundation#4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Larry Gritz <[email protected]>
Signed-off-by: zachlewis <[email protected]>
Co-authored-by: Larry Gritz <[email protected]>
lgritz added a commit to lgritz/OpenImageIO that referenced this issue Nov 21, 2024
As requested in AcademySoftwareFoundation#4387.

---------

Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Larry Gritz <[email protected]>
Signed-off-by: zachlewis <[email protected]>
Co-authored-by: Larry Gritz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build / testing / port / CI Affecting the build system, tests, platform support, porting, or continuous integration. Dev Days ASWF Dev Days suitable project devdays24 Dev Days 2024 difficulty/easy Hours-to-days for veterans, days for newcomers to the project good first issue Good one-day project for beginners without much knowledge of the code base. help wanted A task that is desired, but needs somebody to commit the effort to implement it.
Projects
None yet
Development

No branches or pull requests

2 participants