package/glm: fix musl build
PATCH 1/1 package/glm: fix musl build
The musl-related build error occurs because -pedantic is used for gcc which is broken with musl, for details refer to
https://git.buildroot.net/buildroot/commit/package/jsoncpp?id=6b462ac8bd4021dda4f84198a127f1be7b46087d
Glm uses this option only if GLM_TEST_ENABLE_LANG_EXTENSIONS=OFF, to solve the problem we set it to ON in order to use another code path in CMakeLists.txt which causes no other changes to compiler options because GLM_TEST_ENABLE_FAST_MATH defaults to OFF.
To sum up, this patch only prevents -pedantic being added to gcc options which fixes
http://autobuild.buildroot.net/results/890/8900d0c45c859edd95bb3610b224b9f222ef7493/
--- package/glm/glm.mk | 2 ++ 1 file changed, 2 insertions(+)
package/glm/glm.mk +2 -0
@@ -14,4 +14,6 @@ GLM_LICENSE_FILES = copying.txt GLM_INSTALL_STAGING = YES GLM_INSTALL_TARGET = NO +GLM_CONF_OPTS = -DGLM_TEST_ENABLE_LANG_EXTENSIONS=ON + $(eval $(cmake-package))
Signature · 1 line
2.11.0
PATCH 1/1 package/glm: fix musl build
Hello,
Quoted 4 lines · Bernd Kuhls
The musl-related build error occurs because -pedantic is used for gcc which is broken with musl, for details refer to
https://git.buildroot.net/buildroot/commit/package/jsoncpp?id=6b462ac8bd4021dda4f84198a127f1be7b46087d
Quoted 8 lines
Glm uses this option only if GLM_TEST_ENABLE_LANG_EXTENSIONS=OFF, to solve the problem we set it to ON in order to use another code path in CMakeLists.txt which causes no other changes to compiler options because
GLM_TEST_ENABLE_FAST_MATHdefaults to OFF.To sum up, this patch only prevents -pedantic being added to gcc options which fixes
http://autobuild.buildroot.net/results/890/8900d0c45c859edd95bb3610b224b9f222ef7493/
While I agree this works, it looks very, very fragile and clunky. Shouldn't we patch out the -pedantic instead?
It's much more explicit and less likely to break.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 package/glm: fix musl build
In reply to Bernd KuhlsHello,
Quoted 9 lines · Bernd Kuhls
The musl-related build error occurs because -pedantic is used for gcc which is broken with musl, for details refer to
https://git.buildroot.net/buildroot/commit/package/jsoncpp?id=6b462ac8bd4021dda4f84198a127f1be7b46087dGlm uses this option only if GLM_TEST_ENABLE_LANG_EXTENSIONS=OFF, to solve the problem we set it to ON in order to use another code path in CMakeLists.txt which causes no other changes to compiler options because
GLM_TEST_ENABLE_FAST_MATHdefaults to OFF.
Quoted 5 lines
To sum up, this patch only prevents -pedantic being added to gcc options which fixes
http://autobuild.buildroot.net/results/890/8900d0c45c859edd95bb3610b224b9f222ef7493/Signed-off-by Bernd Kuhls <[email protected]>
The problem fixed by this patch no longer exists with the latest rebuild of the musl toolchains, which use gcc 6.x over gcc 5.x. However, I haven't been able to identify which commit in gcc is fixing this. Could you investigate this a little bit?
Also, I would prefer a patch to the package that removes -pedantic rather than the fragile solution you proposed.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com