With the attached patch to OSG, I can get it to compile on armhf with
GLESv1 (libgles1-mesa-dev). It disables GLESv2 however, I got an error
while they were both enabled.
I installed the resulting packages on my RPi2 without a problem and
got OpenMW to compile on there as well.
Was there a reason why GLESv2 as chosen over GLESv1? Are there any
other packages that depend on OSG-3.4? Can we use GLESv1 instead of
GLESv2? It would be even better if we can just use "Desktop OpenGL" on
armhf instead of the GLESvX.
Thoughts?
Cheers,
Bret
diff --git a/debian/control b/debian/control
index 1877a5d..ab2ba2d 100644
--- a/debian/control
+++ b/debian/control
@@ -22,6 +22,7 @@ Build-Depends: debhelper (>= 7.0.50),
freeglut3-dev [!armhf],
libgl1-mesa-dev [!armhf] | libgl-dev [!armhf],
libegl1-mesa-dev [armhf],
+ libgles1-mesa-dev [armhf],
libgles2-mesa-dev [armhf],
libxine2-dev,
libavcodec-dev,
diff --git a/debian/rules b/debian/rules
index f2113fb..408c533 100755
--- a/debian/rules
+++ b/debian/rules
@@ -66,19 +66,20 @@ LDFLAGS += -Wl,--as-needed
ifeq (armhf,$(DEB_HOST_ARCH))
EGL_LDFLAGS=$(shell pkg-config egl --libs)
-OPENGLES_LDFLAGS=$(shell pkg-config glesv2 --libs)
+OPENGLES1_LDFLAGS=$(shell pkg-config glesv1_cm --libs)
+OPENGLES2_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 \
- -D OSG_GLES1_AVAILABLE:BOOL=OFF \
- -D OSG_GLES2_AVAILABLE:BOOL=ON \
+ -D OSG_GLES1_AVAILABLE:BOOL=ON \
+ -D OSG_GLES2_AVAILABLE:BOOL=OFF \
-D OSG_GL_DISPLAYLISTS_AVAILABLE:BOOL=OFF \
-D OSG_GL_MATRICES_AVAILABLE:BOOL=OFF \
-D OSG_GL_VERTEX_FUNCS_AVAILABLE:BOOL=OFF \
-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_gl_LIBRARY:STRING="${OPENGLES1_LDFLAGS}" \
-D OPENGL_egl_LIBRARY:STRING="${EGL_LDFLAGS}"
endif