Page MenuHomeSolus

Irrlicht: build against system libraries

Authored by aleksvor on May 15 2020, 4:09 PM.



Build Irrlicht against system libraries (namely libjpeg, libpng, libz and libbz2) instead of bundled libs.

Test Plan

Rebuilt minetest against this version and played Minetest Game and MineClone2 for a few minutes.

Diff Detail

R1485 irrlicht
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.May 15 2020, 4:09 PM
aleksvor requested review of this revision.May 15 2020, 4:09 PM
ermo added a subscriber: ermo.EditedMay 16 2020, 11:12 AM

Hard-coding the use of internal/vendored libraries in a header file and expecting packagers to create a patch to override this seems odious.

This ought to be configurable at build-time using a ./configure flag (or similar).

@ermo, if I understood their documentation correctly, it's supposed to use system libraries just if I define those "NO_IRR_USE_NON_SYSTEM..." flags, i.e. one could just add this defines through $CFLAGS. But unfortunately, to force Irrlicht to link against external libs you also have to patch the Makefile - remove linking against static libs and add necessary flags to linker manually (see my patch), in other case it will continue to build bundled libraries and statically compile them.
And they don't provide any configuration script - just a bare Makefile.

DataDrake accepted this revision.May 17 2020, 2:34 AM
DataDrake added a subscriber: DataDrake.

LGTM. Thanks!

This revision is now accepted and ready to land.May 17 2020, 2:34 AM
This revision was automatically updated to reflect the committed changes.