Package: openscenegraph-3.4
Version: 3.4.0+dfsg1-4
Severity: important
Tags: patch
User: [email protected]
Usertags: origin-ubuntu artful ubuntu-patch
Dear maintainers,
In Ubuntu, we saw openscenegraph-3.4 FTBFS on armhf after cmake 3.8.0 landed
in the devel release (synced from Debian experimental), because of changes
in the behavior of the opengl detection module:
-- Found OpenGL: -lGLESv2
Called from: [4] /usr/share/cmake-3.8/Modules/FindPackageMessage.cmake
[3]
/usr/share/cmake-3.8/Modules/FindPackageHandleStandardArgs.cmake
[2] /usr/share/cmake-3.8/Modules/FindOpenGL.cmake
[1]
/<<BUILDDIR>>/openscenegraph-3.4-3.4.0+dfsg1/CMakeLists.txt
CMake Error at /usr/share/cmake-3.8/Modules/FindOpenGL.cmake:191
(set_target_properties):
IMPORTED_LIBNAME property value
-lGLESv2
may not start with '-'.
Call Stack (most recent call first):
CMakeLists.txt:232 (FIND_PACKAGE)
Called from: [2] /usr/share/cmake-3.8/Modules/FindOpenGL.cmake
[1]
/<<BUILDDIR>>/openscenegraph-3.4-3.4.0+dfsg1/CMakeLists.txt
The attached patch maintains compatibility with current cmake, while
continuing to use GLES instead of GL on armhf. Despite the hard-coding of
paths this should remain fairly reliable on Debian armhf systems.
You also have bug #852423 filed which is asking to use libGL instead of
libGLESv2. I think that would be generally disadvantageous for ARM users of
Debian, since there exist hardware-accelerated GLES drivers for ARM but
TTBOMK no hardware-accelerated GL drivers. If you did decide to switch back
to libGL, then you could also close this bug (though Ubuntu would carry a
delta in order to continue leveraging GLES).
Thanks,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
[email protected] [email protected]
diff -Nru openscenegraph-3.4-3.4.0+dfsg1/debian/rules
openscenegraph-3.4-3.4.0+dfsg1/debian/rules
--- openscenegraph-3.4-3.4.0+dfsg1/debian/rules 2016-09-23 12:17:22.000000000
-0700
+++ openscenegraph-3.4-3.4.0+dfsg1/debian/rules 2017-07-25 14:47:36.000000000
-0700
@@ -65,8 +65,6 @@
LDFLAGS += -Wl,--as-needed
ifeq (armhf,$(DEB_HOST_ARCH))
-EGL_LDFLAGS=$(shell pkg-config egl --libs)
-OPENGLES_LDFLAGS=$(shell pkg-config glesv2 --libs)
ARMHF_DEFINES=-D OSG_GL1_AVAILABLE:BOOL=OFF \
-D OSG_GL2_AVAILABLE:BOOL=OFF \
-D OSG_GL3_AVAILABLE:BOOL=OFF \
@@ -78,8 +76,8 @@
-D OSG_GL_VERTEX_ARRAY_FUNCS_AVAILABLE:BOOL=OFF \
-D OSG_GL_FIXED_FUNCTION_AVAILABLE:BOOL=OFF \
-D OSG_CPP_EXCEPTIONS_AVAILABLE:BOOL=OFF \
- -D OPENGL_gl_LIBRARY:STRING="${OPENGLES_LDFLAGS}" \
- -D OPENGL_egl_LIBRARY:STRING="${EGL_LDFLAGS}"
+ -D OPENGL_gl_LIBRARY:STRING=/usr/lib/arm-linux-gnueabihf/libGLESv2.so \
+ -D OPENGL_egl_LIBRARY:STRING=/usr/lib/arm-linux-gnueabihf/libEGL.so
endif
#