HomeFreeBSD

qmake5: Set QMAKE_{INC,LIB}DIR_OPENGL.

Description

qmake5: Set QMAKE_{INC,LIB}DIR_OPENGL.

Follow-up to r404694. When we stopped setting CPATH and LIBRARY_PATH, some
Qt5-based ports (astro/stellarium, audio/musescore, audio/cantata,
irc/quassel, deskutils/owncloudclient) broke because the QtGui headers end
up bringing in GL/gl.h, but -I/usr/local/include was no longer being passed
to the compiler.

This is generally caused by QMAKE_{INC,LIB}DIR_OPENGL being empty, which
leads to some parts of Qt5ConfigExtras.cmake.in being left out when being
processed into Qt5ConfigExtras.cmake. Specifically, the bits of code that
make the directories containing GL/gl.h and libGL.so a dependency of the
Qt5::Gui CMake target were not present.

Fix it by setting those two variables again like we also do in devel/qmake4.

Most ports broken by r404694 are fixed by this change, but not all:

  • audio/cantata: Accidentally fixed by this change. Upstream includes the TagLib headers wrongly. `taglib-config --cflags' returns -I${LOCALBASE}/include/taglib, but the code references headers as <taglib/foo.h> instead of <foo.h>.
  • multimedia/obs-studio, textproc/sigil, x11/antimicro: Those remain broken, linker calls pass -lfoo instead of /path/to/libfoo.so, and they were only working because we were passing LIBRARY_PATH to the linker before. They need to be fixed separately.

Thanks to antoine@ for the fallout heads-up.

PR: 194088
PR: 195105
PR: 198720
MFH: 2015Q4

Details

Provenance
rakucoAuthored on
Parents
rP404855: - Update to 3.2.2
Branches
Unknown
Tags
Unknown