facebookresearch / ocean

Ocean is the in-house framework for Computer Vision (CV) and Augmented Reality (AR) applications at Meta. It is platform independent and is mainly implemented in C/C++.
https://facebookresearch.github.io/ocean/
MIT License
642 stars 58 forks source link

[third-party] Disable some optional dependencies of libtiff and freetype #18

Closed enpe closed 4 months ago

enpe commented 4 months ago

Summary

  1. Disabling lzma, jbig, webp, and zstd Some the dependencies of libtiff cause build errors, cf. issues

    • 9

    • 15

    Since these dependencies are not absolutely required for Ocean, let's disable them for now.

  2. Disabling harfbuzz On Macs (Intel-based), when libharfbuzz*.a exists in a system-level directory, CMake currently selects that version and not the version that comes with Ocean.

    This causes iOS builds to fail because CMake doesn't seems to notice that's intended for a different platform.

    To work-around this problem, this diff disables the build and use of harfbuzz altogether.

    Also, if harfbuzz is not absolutely required by freetype (or Ocean), we should probably remove it completely to reduce build times and complexity.

Testing

Confirm that the build of the third-party libraries and Ocean no longer fails because of missing JBIG::JBIG or similar

https://github.com/facebookresearch/ocean/blob/main/building_for_macos.md https://github.com/facebookresearch/ocean/blob/main/building_for_ios.md

Builds fine on Macs (for macOS and iOS). Testing on Windows, Linux, and Android is still required.

facebook-github-bot commented 4 months ago

@enpe has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

facebook-github-bot commented 4 months ago

@enpe merged this pull request in facebookresearch/ocean@20983f19b7672d8ef2ba47212af8d9d6a53f567b.