* [gentoo-commits] gentoo-x86 commit in app-office/libreoffice/files: libreoffice-4.3.1.2-implement--with-system-coinmp.patch libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch libreoffice-4.3.1.2-implement--with-system-gltf.patch libreoffice-4.3.1.2-handle-collada-libs-seperately.patch
@ 2014-09-16 9:14 Andreas HAttel (dilfridge)
0 siblings, 0 replies; only message in thread
From: Andreas HAttel (dilfridge) @ 2014-09-16 9:14 UTC (permalink / raw
To: gentoo-commits
dilfridge 14/09/16 09:14:01
Added:
libreoffice-4.3.1.2-implement--with-system-coinmp.patch
libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch
libreoffice-4.3.1.2-implement--with-system-gltf.patch
libreoffice-4.3.1.2-handle-collada-libs-seperately.patch
Log:
Version bump, thanks to Andreas Sturmlechner
(Portage version: 2.2.12/cvs/Linux x86_64, signed Manifest commit with key 84AD142F)
Revision Changes Path
1.1 app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-coinmp.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-coinmp.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-coinmp.patch?rev=1.1&content-type=text/plain
Index: libreoffice-4.3.1.2-implement--with-system-coinmp.patch
===================================================================
From d85f513934bb5735a2c0c343fbe7dc2b9c11af3e Mon Sep 17 00:00:00 2001
From: Rene Engelhard <rene@debian.org>
Date: Wed, 6 Aug 2014 00:03:21 +0200
Subject: [PATCH] implement --with-system-coinmp
Change-Id: I02928097f049e8f3cbefbc872b570b2d2b072658
---
RepositoryExternal.mk | 15 +++++++++++++++
config_host.mk.in | 3 +++
configure.ac | 16 ++++++++++++++--
3 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index a9c9e53..1961829 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -2250,6 +2250,8 @@ endif # ENABLE_LPSOLVE
ifneq ($(ENABLE_COINMP),)
+ifneq ($(SYSTEM_COINMP),TRUE)
+
define gb_LinkTarget__use_coinmp
$(call gb_LinkTarget_use_package,$(1),coinmp)
ifeq ($(COM),MSC)
@@ -2279,6 +2281,19 @@ $(eval $(call gb_Helper_register_packages_for_install,ooo,\
coinmp \
))
+else # SYSTEM_COINMP
+
+define gb_LinkTarget__use_coinmp
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(COINMP_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(COINMP_LIBS))
+
+endef
+
+endif
+
else
gb_LinkTarget__use_coinmp :=
diff --git a/config_host.mk.in b/config_host.mk.in
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -109,6 +109,9 @@ export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
export ENABLE_CHART_TESTS=@ENABLE_CHART_TESTS@
export ENABLE_CMIS=@ENABLE_CMIS@
export ENABLE_COINMP=@ENABLE_COINMP@
+export SYSTEM_COINMP=@SYSTEM_COINMP@
+export COINMP_CFLAGS=@COINMP_CFLAGS@
+export COINMP_LIBS=@COINMP_LIBS@
export ENABLE_COLLADA=@ENABLE_COLLADA@
export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
export ENABLE_CUPS=@ENABLE_CUPS@
diff --git a/configure.ac b/configure.ac
index e91773f..3aadd12 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1867,6 +1867,11 @@ AC_ARG_WITH(system-lpsolve,
[Use lpsolve already on system.]),,
[with_system_lpsolve="$with_system_libs"])
+AC_ARG_WITH(system-coinmp,
+ AS_HELP_STRING([--with-system-coinmp],
+ [Use CoinMP already on system.]),,
+ [with_system_coinmp="$with_system_libs"])
+
AC_ARG_WITH(system-liblangtag,
AS_HELP_STRING([--with-system-liblangtag],
[Use liblangtag library already on system.]),,
@@ -9661,12 +9666,19 @@ AC_MSG_CHECKING([whether to build with CoinMP])
if test "$enable_coinmp" != "no"; then
ENABLE_COINMP=TRUE
AC_MSG_RESULT([yes])
- # Should we check for system CoinMP ? How to do that ?
- BUILD_TYPE="$BUILD_TYPE COINMP"
+ if test "$with_system_coinmp" = "yes"; then
+ SYSTEM_COINMP=TRUE
+ PKG_CHECK_MODULES( COINMP, coinmp )
+ else
+ BUILD_TYPE="$BUILD_TYPE COINMP"
+ fi
else
AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_COINMP)
+AC_SUBST(SYSTEM_COINMP)
+AC_SUBST(COINMP_CFLAGS)
+AC_SUBST(COINMP_LIBS)
ENABLE_LPSOLVE=
AC_MSG_CHECKING([whether to build with lpsolve])
--
1.7.1
1.1 app-office/libreoffice/files/libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch?rev=1.1&content-type=text/plain
Index: libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch
===================================================================
From d431986bd49081581e86444af124d1d2ce90a407 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolnai=20Tam=C3=A1s?= <tamas.zolnai@collabora.com>
Date: Fri, 29 Aug 2014 22:41:26 +0200
Subject: [PATCH] Upgrade libgltf to 0.0.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
News in this version:
- Solve some limitations of walkthrough mode (fdo#81425)
- Multisampling (better rendering quality, mainly at the edges)
- Better error handling (no crash in case of invalid input file)
Reviewed-on: https://gerrit.libreoffice.org/11179
Reviewed-by: Zolnai Tamás <tamas.zolnai@collabora.com>
Tested-by: Zolnai Tamás <tamas.zolnai@collabora.com>
Conflicts:
download.lst
external/libgltf/UnpackedTarball_libgltf.mk
external/libgltf/pathces/append_shader_version.patch
external/libgltf/pathces/missing_include.patch
vcl/source/opengl/OpenGLContext.cxx
Change-Id: I46fdf56b00476614487fbcc04178e43e33a01794
Reviewed-on: https://gerrit.libreoffice.org/11194
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
---
RepositoryExternal.mk | 8 -----
avmedia/source/opengl/oglframegrabber.hxx | 4 ---
avmedia/source/opengl/oglplayer.cxx | 16 ++++++++--
avmedia/source/opengl/oglplayer.hxx | 6 ++--
avmedia/source/opengl/oglwindow.cxx | 36 +++++++++++----------
avmedia/source/opengl/oglwindow.hxx | 6 +---
configure.ac | 2 +-
download.lst | 4 +--
external/libgltf/ExternalProject_libgltf.mk | 2 ++
external/libgltf/UnpackedTarball_libgltf.mk | 2 --
.../libgltf/pathces/append_shader_version.patch | 37 ----------------------
external/libgltf/pathces/missing_include.patch | 11 -------
include/vcl/opengl/OpenGLContext.hxx | 2 ++
vcl/source/opengl/OpenGLContext.cxx | 5 +++
14 files changed, 48 insertions(+), 93 deletions(-)
delete mode 100644 external/libgltf/pathces/append_shader_version.patch
delete mode 100644 external/libgltf/pathces/missing_include.patch
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index cd99108..f194fcb 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -3303,11 +3303,6 @@ $(call gb_LinkTarget_use_external_project,$(1),libgltf)
endef
-define gb_ExternalProject__use_libgltf
-$(call gb_ExternalProject_use_external_project,$(1),libgltf)
-
-endef
-
else # SYSTEM_LIBGLTF
define gb_LinkTarget__use_libgltf
@@ -3316,9 +3311,6 @@ $(call gb_LinkTarget_set_include,$(1),\
$(LIBGLTF_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LIBGLTF_LIBS))
-$(call gb_LinkTarget_add_defs,$(1),\
- -DSYSTEM_LIBGLTF \
-)
endef
diff --git a/avmedia/source/opengl/oglframegrabber.hxx b/avmedia/source/opengl/oglframegrabber.hxx
index 0d38224..5beb15b 100644
--- a/avmedia/source/opengl/oglframegrabber.hxx
+++ b/avmedia/source/opengl/oglframegrabber.hxx
@@ -14,11 +14,7 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/media/XFrameGrabber.hpp>
-#ifdef SYSTEM_LIBGLTF
-#include <libgltf/libgltf.h>
-#else
#include <libgltf.h>
-#endif
namespace avmedia { namespace ogl {
diff --git a/avmedia/source/opengl/oglplayer.cxx b/avmedia/source/opengl/oglplayer.cxx
index a052dc9..d2e600b 100644
--- a/avmedia/source/opengl/oglplayer.cxx
+++ b/avmedia/source/opengl/oglplayer.cxx
@@ -269,6 +269,12 @@ uno::Reference< media::XPlayerWindow > SAL_CALL OGLPlayer::createPlayerWindow( c
return uno::Reference< media::XPlayerWindow >();
}
+ if( !m_aContext.supportMultiSampling() )
+ {
+ SAL_WARN("avmedia.opengl", "Context does not support multisampling!");
+ return uno::Reference< media::XPlayerWindow >();
+ }
+
if( !lcl_CheckOpenGLRequirements() )
{
SAL_WARN("avmedia.opengl", "Your platform does not have the minimal OpenGL requiremenets!");
@@ -287,7 +293,7 @@ uno::Reference< media::XPlayerWindow > SAL_CALL OGLPlayer::createPlayerWindow( c
releaseInputFiles();
if( nRet != 0 )
{
- SAL_WARN("avmedia.opengl", "Error occured while parsing *.json file! Error code: " << nRet);
+ SAL_WARN("avmedia.opengl", "Error occured while setting up the scene! Error code: " << nRet);
return uno::Reference< media::XPlayerWindow >();
}
// The background color is white by default, but we need to separate the
@@ -309,6 +315,12 @@ uno::Reference< media::XFrameGrabber > SAL_CALL OGLPlayer::createFrameGrabber()
return uno::Reference< media::XFrameGrabber >();
}
+ if( !m_aContext.supportMultiSampling() )
+ {
+ SAL_WARN("avmedia.opengl", "Context does not support multisampling!");
+ return uno::Reference< media::XFrameGrabber >();
+ }
+
if( !lcl_CheckOpenGLRequirements() )
{
SAL_WARN("avmedia.opengl", "Your platform does not have the minimal OpenGL requiremenets!");
@@ -324,7 +336,7 @@ uno::Reference< media::XFrameGrabber > SAL_CALL OGLPlayer::createFrameGrabber()
releaseInputFiles();
if( nRet != 0 )
{
- SAL_WARN("avmedia.opengl", "Error occured while parsing *.json file! Error code: " << nRet);
+ SAL_WARN("avmedia.opengl", "Error occured while setting up the scene! Error code: " << nRet);
return uno::Reference< media::XFrameGrabber >();
}
glClearColor(0.5f, 0.5f, 0.5f, 0.5f);
diff --git a/avmedia/source/opengl/oglplayer.hxx b/avmedia/source/opengl/oglplayer.hxx
index 52aa395..465ed6b 100644
--- a/avmedia/source/opengl/oglplayer.hxx
+++ b/avmedia/source/opengl/oglplayer.hxx
@@ -14,11 +14,9 @@
#include <cppuhelper/basemutex.hxx>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/media/XPlayer.hpp>
-#ifdef SYSTEM_LIBGLTF
-#include <libgltf/libgltf.h>
-#else
+
#include <libgltf.h>
-#endif
+
#include <vcl/opengl/OpenGLContext.hxx>
#include <vcl/timer.hxx>
diff --git a/avmedia/source/opengl/oglwindow.cxx b/avmedia/source/opengl/oglwindow.cxx
index a770ff5..1092483 100644
--- a/avmedia/source/opengl/oglwindow.cxx
+++ b/avmedia/source/opengl/oglwindow.cxx
@@ -23,7 +23,6 @@ OGLWindow::OGLWindow( glTFHandle& rHandle, OpenGLContext& rContext, Window& rEve
, meZoomLevel( media::ZoomLevel_ORIGINAL )
, m_aLastMousePos(Point(0,0))
, m_bIsOrbitMode( false )
- , m_fCameraDistance(0.0)
{
}
@@ -267,15 +266,15 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
glm::vec3 vMove = vView-vEye;
vMove = glm::normalize(vMove);
vMove *= 25.0f;
- glm::vec3 vStrafe = glm::cross(vView-vEye, vUp);
+ glm::vec3 vStrafe = glm::cross(vMove, vUp);
vStrafe = glm::normalize(vStrafe);
vStrafe *= 25.0f;
- glm::vec3 vMup = glm::cross(vView-vEye,glm::vec3(1.0f,0.0f,0.0f) );
- vMup = glm::normalize(vMup);
- vMup *= 25.0f;
+ glm::vec3 vMup = vUp * 25.0f;
if( !m_bIsOrbitMode )
{
+ if(nCode == KEY_E)vMoveBy += vMup*(0.0005f*fModelSize);
+ if(nCode == KEY_Q)vMoveBy -= vMup*(0.0005f*fModelSize);
if(nCode == KEY_W)vMoveBy += vMove*(0.0005f*fModelSize);
if(nCode == KEY_S)vMoveBy -= vMove*(0.0005f*fModelSize);
if(nCode == KEY_A)vMoveBy -= vStrafe*(0.0005f*fModelSize);
@@ -283,15 +282,24 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
}
else
{
- if(nCode == KEY_E)vMoveBy += vMove*(0.0005f*fModelSize);
- if(nCode == KEY_Q)vMoveBy -= vMove*(0.0005f*fModelSize);
+ bool bZoomIn = false;
+ bool bZoomOut = false;
+ if(nCode == KEY_E)
+ {
+ vMoveBy += vMove*(0.0005f*fModelSize);
+ bZoomIn = true;
+ }
+ if(nCode == KEY_Q)
+ {
+ vMoveBy -= vMove*(0.0005f*fModelSize);
+ bZoomOut = true;
+ }
// Limit zooming in orbit mode
- m_fCameraDistance += vMoveBy.z;
- if ((m_fCameraDistance < 0.5 * fModelSize && vMoveBy.z < 0.0 ) ||
- (m_fCameraDistance > 2 * fModelSize && vMoveBy.z > 0.0 ))
+ float fCameraDistFromModelGlobe = glm::length(vEye + vMoveBy - vView) - fModelSize / 2.0f;
+ if ((fCameraDistFromModelGlobe < 0.5 * fModelSize && bZoomIn ) ||
+ (fCameraDistFromModelGlobe > 2 * fModelSize && bZoomOut ))
{
- m_fCameraDistance -= vMoveBy.z;
vMoveBy = glm::vec3(0.0);
}
}
@@ -333,12 +341,6 @@ IMPL_LINK(OGLWindow, CameraHandler, VclWindowEvent*, pEvent)
{
gltf_orbit_mode_start(&m_rHandle);
m_bIsOrbitMode = true;
- // Set default camera distance
- glm::vec3 vEye;
- glm::vec3 vView;
- glm::vec3 vUp;
- gltf_get_camera_pos(&m_rHandle, &vEye,&vView,&vUp);
- m_fCameraDistance = vEye.z - gltf_get_model_center_pos(&m_rHandle)->z - (gltf_get_model_size(&m_rHandle)/2.0);
}
}
else if(nCode == KEY_F)
diff --git a/avmedia/source/opengl/oglwindow.hxx b/avmedia/source/opengl/oglwindow.hxx
index ae86083..8b15813 100644
--- a/avmedia/source/opengl/oglwindow.hxx
+++ b/avmedia/source/opengl/oglwindow.hxx
@@ -17,11 +17,8 @@
#include <com/sun/star/media/XPlayerWindow.hpp>
#include <com/sun/star/media/ZoomLevel.hpp>
-#ifdef SYSTEM_LIBGLTF
-#include <libgltf/libgltf.h>
-#else
#include <libgltf.h>
-#endif
+
#include <vcl/opengl/OpenGLContext.hxx>
#include <vcl/syschild.hxx>
@@ -77,7 +74,6 @@ private:
com::sun::star::media::ZoomLevel meZoomLevel;
Point m_aLastMousePos;
bool m_bIsOrbitMode;
- double m_fCameraDistance;
};
} // namespace ogl
diff --git a/configure.ac b/configure.ac
index b6e8124..9cd589b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10572,7 +10572,7 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
AC_DEFINE(HAVE_FEATURE_GLTF,1)
if test "$with_system_libgltf" = "yes"; then
SYSTEM_LIBGLTF=TRUE
- PKG_CHECK_MODULES( LIBGLTF, libgltf-0.0 )
+ PKG_CHECK_MODULES( LIBGLTF, [libgltf-0.0 >= 0.0.1] )
else
BUILD_TYPE="$BUILD_TYPE LIBGLTF"
fi
diff --git a/download.lst b/download.lst
index bc2b383..f413a57 100644
--- a/download.lst
+++ b/download.lst
@@ -87,8 +87,8 @@ export LIBATOMIC_OPS_TARBALL := libatomic_ops-7_2d.zip
export LIBEOT_MD5SUM := aa24f5dd2a2992f4a116aa72af817548
export LIBEOT_TARBALL := libeot-0.01.tar.bz2
export LIBEXTTEXTCAT_TARBALL := ae330b9493bd4503ac390106ff6060d7-libexttextcat-3.4.3.tar.bz2
-export LIBGLTF_MD5SUM := ca5436e916bfe70694adfe2607782786
-export LIBGLTF_TARBALL := libgltf-0.0.0.tar.bz2
+export LIBGLTF_MD5SUM := 03821c9c827e647fb5fedb12496e0067
+export LIBGLTF_TARBALL := libgltf-0.0.1.tar.bz2
export LIBLANGTAG_TARBALL := 36271d3fa0d9dec1632029b6d7aac925-liblangtag-0.5.1.tar.bz2
export LIBXMLSEC_TARBALL := 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
export LIBXML_TARBALL := 9c0cfef285d5c4a5c80d00904ddab380-libxml2-2.9.1.tar.gz
diff --git a/external/libgltf/ExternalProject_libgltf.mk b/external/libgltf/ExternalProject_libgltf.mk
index 548487b..62e25a3 100644
--- a/external/libgltf/ExternalProject_libgltf.mk
+++ b/external/libgltf/ExternalProject_libgltf.mk
@@ -63,6 +63,8 @@ $(call gb_ExternalProject_get_state_target,libgltf,build) :
export CPPFLAGS='$(libgltf_CPPFLAGS)' \
&& export PKG_CONFIG="" \
&& ./configure \
+ --disable-shared \
+ --enable-static \
--with-pic \
--disable-debug \
--disable-werror \
diff --git a/external/libgltf/UnpackedTarball_libgltf.mk b/external/libgltf/UnpackedTarball_libgltf.mk
index 42c821b..176c1d1 100644
--- a/external/libgltf/UnpackedTarball_libgltf.mk
+++ b/external/libgltf/UnpackedTarball_libgltf.mk
@@ -16,8 +16,6 @@ $(eval $(call gb_UnpackedTarball_set_patchflags,libgltf,--binary))
$(eval $(call gb_UnpackedTarball_set_patchlevel,libgltf,1))
$(eval $(call gb_UnpackedTarball_add_patches,libgltf,\
- external/libgltf/pathces/missing_include.patch \
- external/libgltf/pathces/append_shader_version.patch \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/libgltf/pathces/append_shader_version.patch b/external/libgltf/pathces/append_shader_version.patch
deleted file mode 100644
index 27f0cc6..0000000
--- a/external/libgltf/pathces/append_shader_version.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp
---- libgltf.org/src/Shaders.cpp 2014-08-18 09:19:48.323955939 +0200
-+++ libgltf/src/Shaders.cpp 2014-08-18 09:20:46.711953465 +0200
-@@ -11,6 +11,7 @@
-
- #include <GL/glew.h>
- #include <cstdio>
-+#include <cstring>
-
- namespace libgltf
- {
-@@ -166,7 +167,24 @@
- unsigned int shaderId)
- {
- GLint iGLSize = iSize;
-- glShaderSource(shaderId, 1, &pShader, &iGLSize);
-+ if( strstr(pShader,"#version") == 0 )
-+ {
-+ const GLchar* aSources[] = {
-+ "#version 130\n",
-+ pShader,
-+ };
-+
-+ const GLint aSizes[] = {
-+ strlen("#version 130\n"),
-+ iGLSize,
-+ };
-+
-+ glShaderSource(shaderId, 2, &aSources[0], &aSizes[0]);
-+ }
-+ else
-+ {
-+ glShaderSource(shaderId, 1, &pShader, &iGLSize);
-+ }
- glCompileShader(shaderId);
- int iStatus = 0;
- glGetShaderiv(shaderId, GL_COMPILE_STATUS, &iStatus);
diff --git a/external/libgltf/pathces/missing_include.patch b/external/libgltf/pathces/missing_include.patch
deleted file mode 100644
index 8b05224..0000000
--- a/external/libgltf/pathces/missing_include.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp
---- libgltf.org/src/Shaders.cpp 2014-08-05 11:40:30.387537876 +0200
-+++ libgltf/src/Shaders.cpp 2014-08-05 11:41:13.887536123 +0200
-@@ -10,6 +10,7 @@
- #include "Shaders.h"
-
- #include <GL/glew.h>
-+#include <cstdio>
-
- namespace libgltf
- {
diff --git a/include/vcl/opengl/OpenGLContext.hxx b/include/vcl/opengl/OpenGLContext.hxx
index 8a7eb55..f1e0bd2 100644
--- a/include/vcl/opengl/OpenGLContext.hxx
+++ b/include/vcl/opengl/OpenGLContext.hxx
@@ -166,6 +166,8 @@ public:
return mbInitialized;
}
+ bool supportMultiSampling() const;
+
static SystemWindowData generateWinData(Window* pParent);
private:
SAL_DLLPRIVATE bool initWindow();
diff --git a/vcl/source/opengl/OpenGLContext.cxx b/vcl/source/opengl/OpenGLContext.cxx
index 974f913..338edc3 100644
--- a/vcl/source/opengl/OpenGLContext.cxx
+++ b/vcl/source/opengl/OpenGLContext.cxx
@@ -833,4 +833,9 @@ void OpenGLContext::show()
m_pWindow->Show();
}
+bool OpenGLContext::supportMultiSampling() const
+{
+ return m_aGLWin.bMultiSampleSupported;
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
--
2.1.0
1.1 app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-gltf.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-gltf.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-implement--with-system-gltf.patch?rev=1.1&content-type=text/plain
Index: libreoffice-4.3.1.2-implement--with-system-gltf.patch
===================================================================
From 2378f45d70c9ce4a093fd6b09216c1cd4563ebe2 Mon Sep 17 00:00:00 2001
From: Rene Engelhard <rene@debian.org>
Date: Tue, 5 Aug 2014 20:05:35 +0200
Subject: [PATCH] implement --with-system-gltf
Change-Id: Ic842006b28f8043bcbbaa81ab5a20e15aa52ac82
(cherry picked from commit 97bda8e081fd746e9ef743b165b5bf621fc21fbb)
---
RepositoryExternal.mk | 18 ++++++++++++++++++
avmedia/source/opengl/oglframegrabber.hxx | 4 ++++
avmedia/source/opengl/oglplayer.hxx | 4 ++++
avmedia/source/opengl/oglwindow.hxx | 4 ++++
config_host.mk.in | 3 +++
configure.ac | 15 ++++++++++++++-
6 files changed, 47 insertions(+), 1 deletion(-)
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index ff50598..b42dce2 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -3281,6 +3281,8 @@ endif # DESKTOP
ifeq ($(ENABLE_GLTF),TRUE)
+ifneq ($(SYSTEM_LIBGLTF),TRUE)
+
define gb_LinkTarget__use_libgltf
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,libgltf)/inc \
@@ -3306,6 +3308,22 @@ $(call gb_ExternalProject_use_external_project,$(1),libgltf)
endef
+else # SYSTEM_LIBGLTF
+
+define gb_LinkTarget__use_libgltf
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(LIBGLTF_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(LIBGLTF_LIBS))
+$(call gb_LinkTarget_add_defs,$(1),\
+ -DSYSTEM_LIBGLTF \
+)
+
+endef
+
+endif # SYSTEN_LIBGLTF
+
define gb_LinkTarget__use_opencollada_parser
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
diff --git a/avmedia/source/opengl/oglframegrabber.hxx b/avmedia/source/opengl/oglframegrabber.hxx
index 5beb15b..0d38224 100644
--- a/avmedia/source/opengl/oglframegrabber.hxx
+++ b/avmedia/source/opengl/oglframegrabber.hxx
@@ -14,7 +14,11 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/media/XFrameGrabber.hpp>
+#ifdef SYSTEM_LIBGLTF
+#include <libgltf/libgltf.h>
+#else
#include <libgltf.h>
+#endif
namespace avmedia { namespace ogl {
diff --git a/avmedia/source/opengl/oglplayer.hxx b/avmedia/source/opengl/oglplayer.hxx
index 03ad515..52aa395 100644
--- a/avmedia/source/opengl/oglplayer.hxx
+++ b/avmedia/source/opengl/oglplayer.hxx
@@ -14,7 +14,11 @@
#include <cppuhelper/basemutex.hxx>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/media/XPlayer.hpp>
+#ifdef SYSTEM_LIBGLTF
+#include <libgltf/libgltf.h>
+#else
#include <libgltf.h>
+#endif
#include <vcl/opengl/OpenGLContext.hxx>
#include <vcl/timer.hxx>
diff --git a/avmedia/source/opengl/oglwindow.hxx b/avmedia/source/opengl/oglwindow.hxx
index a68f667..ae86083 100644
--- a/avmedia/source/opengl/oglwindow.hxx
+++ b/avmedia/source/opengl/oglwindow.hxx
@@ -17,7 +17,11 @@
#include <com/sun/star/media/XPlayerWindow.hpp>
#include <com/sun/star/media/ZoomLevel.hpp>
+#ifdef SYSTEM_LIBGLTF
+#include <libgltf/libgltf.h>
+#else
#include <libgltf.h>
+#endif
#include <vcl/opengl/OpenGLContext.hxx>
#include <vcl/syschild.hxx>
diff --git a/config_host.mk.in b/config_host.mk.in
index b7e5b6c..aec0fa5 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -127,6 +127,9 @@ export ENABLE_GRAPHITE=@ENABLE_GRAPHITE@
export ENABLE_ORCUS=@ENABLE_ORCUS@
export ENABLE_HARFBUZZ=@ENABLE_HARFBUZZ@
export ENABLE_GLTF=@ENABLE_GLTF@
+export SYSTEM_LIBGLTF=@SYSTEM_LIBGLTF@
+export LIBGLTF_CFLAGS=@LIBGLTF_CFLAGS@
+export LIBGLTF_LIBS=@LIBGLTF_LIBS@
export ENABLE_GSTREAMER=@ENABLE_GSTREAMER@
export ENABLE_GSTREAMER_0_10=@ENABLE_GSTREAMER_0_10@
export ENABLE_GTK3=@ENABLE_GTK3@
diff --git a/configure.ac b/configure.ac
index 02791ca..63e067b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1552,6 +1552,11 @@ AC_ARG_WITH(system-jpeg,
[Use jpeg already on system.]),,
[with_system_jpeg=auto])
+AC_ARG_WITH(system-libgltf,
+ AS_HELP_STRING([--with-system-libgltf],
+ [Use libgltf already on system.]),,
+ [with_system_libgltf=auto])
+
AC_ARG_WITH(system-clucene,
AS_HELP_STRING([--with-system-clucene],
[Use clucene already on system.]),,
@@ -10561,7 +10566,12 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
ENABLE_GLTF=TRUE
AC_MSG_RESULT([yes])
AC_DEFINE(HAVE_FEATURE_GLTF,1)
- BUILD_TYPE="$BUILD_TYPE LIBGLTF"
+ if test "$with_system_libgltf" = "yes"; then
+ SYSTEM_LIBGLTF=TRUE
+ PKG_CHECK_MODULES( LIBGLTF, libgltf-0.0 )
+ else
+ BUILD_TYPE="$BUILD_TYPE LIBGLTF"
+ fi
# otherwise build fails in collada2gltf external because of std::shared_ptr
if test "$have_std_shared_ptr" = "yes"; then
BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
@@ -10570,6 +10580,9 @@ else
AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_GLTF)
+AC_SUBST(SYSTEM_LIBGLTF)
+AC_SUBST(LIBGLTF_CFLAGS)
+AC_SUBST(LIBGLTF_LIBS)
# pdf import?
AC_MSG_CHECKING([whether to build the PDF import feature])
--
2.1.0
1.1 app-office/libreoffice/files/libreoffice-4.3.1.2-handle-collada-libs-seperately.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-handle-collada-libs-seperately.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-office/libreoffice/files/libreoffice-4.3.1.2-handle-collada-libs-seperately.patch?rev=1.1&content-type=text/plain
Index: libreoffice-4.3.1.2-handle-collada-libs-seperately.patch
===================================================================
From 6d239ee19a4b1d9068fbd04b5a692c859142f613 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolnai=20Tam=C3=A1s?= <tamas.zolnai@collabora.com>
Date: Fri, 29 Aug 2014 14:14:31 +0200
Subject: [PATCH] Handle collada libraries seperately: --disable-collada
Depends on gltf support.
(cherry picked from commit 191f0944fd8fc30493eda58c7adfdfa0b538f507)
Conflicts:
config_host.mk.in
sd/source/ui/func/fuinsert.cxx
Change-Id: Ief0452da3d03b0ddbca45272e5f5cd268691aeca
Reviewed-on: https://gerrit.libreoffice.org/11193
Tested-by: Rene Engelhard <rene@debian.org>
Reviewed-by: Rene Engelhard <rene@debian.org>
---
RepositoryExternal.mk | 6 +++++-
avmedia/Library_avmedia.mk | 5 +----
avmedia/source/framework/modeltools.cxx | 9 ++++++---
config_host.mk.in | 1 +
config_host/config_features.h.in | 5 +++++
configure.ac | 23 +++++++++++++++++++----
include/avmedia/modeltools.hxx | 4 ++++
sd/source/ui/func/fuinsert.cxx | 9 +++++++++
8 files changed, 50 insertions(+), 12 deletions(-)
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index b42dce2..cd99108 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -3324,6 +3324,8 @@ endef
endif # SYSTEN_LIBGLTF
+ifeq ($(ENABLE_COLLADA),TRUE)
+
define gb_LinkTarget__use_opencollada_parser
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,opencollada)/COLLADABaseUtils/include \
@@ -3354,7 +3356,9 @@ $(call gb_LinkTarget_use_static_libraries,$(1),\
)
endef
-endif
+endif # ENABLE_COLLADA
+
+endif # ENABLE_GLTF
### Jars ############################################################
diff --git a/avmedia/Library_avmedia.mk b/avmedia/Library_avmedia.mk
index 184c66c..7cc08fa 100644
--- a/avmedia/Library_avmedia.mk
+++ b/avmedia/Library_avmedia.mk
@@ -52,7 +52,7 @@ $(eval $(call gb_Library_add_exception_objects,avmedia,\
))
endif
-ifneq (,$(filter COLLADA2GLTF,$(BUILD_TYPE)))
+ifeq ($(ENABLE_COLLADA),TRUE)
$(eval $(call gb_Library_set_warnings_not_errors,avmedia))
ifeq ($(OS),LINUX)
@@ -68,9 +68,6 @@ $(eval $(call gb_Library_use_externals,avmedia,\
png \
))
-$(eval $(call gb_Library_add_defs,avmedia,\
- -DENABLE_COLLADA2GLTF \
-))
endif
$(eval $(call gb_Library_add_exception_objects,avmedia,\
diff --git a/avmedia/source/framework/modeltools.cxx b/avmedia/source/framework/modeltools.cxx
index 6119cb7..8c4251e 100644
--- a/avmedia/source/framework/modeltools.cxx
+++ b/avmedia/source/framework/modeltools.cxx
@@ -29,7 +29,9 @@
#include <boost/foreach.hpp>
#include <boost/optional.hpp>
-#ifdef ENABLE_COLLADA2GLTF
+#include <config_features.h>
+
+#if HAVE_FEATURE_COLLADA
#include <COLLADA2GLTFWriter.h>
#include <GLTFAsset.h>
#endif
@@ -42,7 +44,7 @@ using namespace boost::property_tree;
namespace avmedia {
-#ifdef ENABLE_COLLADA2GLTF
+#if HAVE_FEATURE_COLLADA
static void lcl_UnzipKmz(const OUString& rSourceURL, const OUString& rOutputFolderURL, OUString& o_rDaeFileURL)
{
@@ -242,7 +244,8 @@ bool Embed3DModel( const uno::Reference<frame::XModel>& xModel,
const OUString& rSourceURL, OUString& o_rEmbeddedURL)
{
OUString sSource = rSourceURL;
-#ifdef ENABLE_COLLADA2GLTF
+
+#if HAVE_FEATURE_COLLADA
if( !rSourceURL.endsWithIgnoreAsciiCase(".json") )
KmzDae2Gltf(rSourceURL, sSource);
#endif
diff --git a/config_host.mk.in b/config_host.mk.in
index aec0fa5..36a6866 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -109,6 +109,7 @@ export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
export ENABLE_CHART_TESTS=@ENABLE_CHART_TESTS@
export ENABLE_CMIS=@ENABLE_CMIS@
export ENABLE_COINMP=@ENABLE_COINMP@
+export ENABLE_COLLADA=@ENABLE_COLLADA@
export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
export ENABLE_CUPS=@ENABLE_CUPS@
export ENABLE_CURL=@ENABLE_CURL@
diff --git a/config_host/config_features.h.in b/config_host/config_features.h.in
index 3fd1da5..f87ee27 100644
--- a/config_host/config_features.h.in
+++ b/config_host/config_features.h.in
@@ -142,4 +142,9 @@
*/
#define HAVE_FEATURE_GLTF 0
+/*
+ * Whether we have COLLADA support.
+ */
+#define HAVE_FEATURE_COLLADA 0
+
#endif
diff --git a/configure.ac b/configure.ac
index 63e067b..b6e8124 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1395,6 +1395,10 @@ AC_ARG_ENABLE(gltf,
AS_HELP_STRING([--disable-gltf],
[Determines whether to build libraries related to glTF 3D model rendering.]))
+AC_ARG_ENABLE(collada,
+ AS_HELP_STRING([--disable-collada],
+ [Disable collada support (Rendering 3D models stored in *.dae and *.kmz format).]))
+
dnl ===================================================================
dnl Optional Packages (--with/without-)
dnl ===================================================================
@@ -10572,10 +10576,6 @@ if test "x$enable_gltf" != "xno" -a $_os != Darwin -a $_os != iOS -a $_os != And
else
BUILD_TYPE="$BUILD_TYPE LIBGLTF"
fi
- # otherwise build fails in collada2gltf external because of std::shared_ptr
- if test "$have_std_shared_ptr" = "yes"; then
- BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
- fi
else
AC_MSG_RESULT([no])
fi
@@ -10584,6 +10584,21 @@ AC_SUBST(SYSTEM_LIBGLTF)
AC_SUBST(LIBGLTF_CFLAGS)
AC_SUBST(LIBGLTF_LIBS)
+dnl ===================================================================
+dnl Check whether to enable COLLADA support
+dnl ===================================================================
+AC_MSG_CHECKING([whether to enable COLLADA support])
+ENABLE_COLLADA=
+if test "$enable_collada" != "no" -a "$ENABLE_GLTF" = "TRUE" -a "$have_std_shared_ptr" = "yes"; then
+ AC_MSG_RESULT([yes])
+ ENABLE_COLLADA=TRUE
+ AC_DEFINE(HAVE_FEATURE_COLLADA,1)
+ BUILD_TYPE="$BUILD_TYPE COLLADA2GLTF"
+else
+ AC_MSG_RESULT([no])
+fi
+AC_SUBST(ENABLE_COLLADA)
+
# pdf import?
AC_MSG_CHECKING([whether to build the PDF import feature])
ENABLE_PDFIMPORT=
diff --git a/include/avmedia/modeltools.hxx b/include/avmedia/modeltools.hxx
index ed2de44..526b240 100644
--- a/include/avmedia/modeltools.hxx
+++ b/include/avmedia/modeltools.hxx
@@ -11,9 +11,13 @@
#include <com/sun/star/frame/XModel.hpp>
#include <avmedia/avmediadllapi.h>
+#include <config_features.h>
+
namespace avmedia {
+#if HAVE_FEATURE_COLLADA
bool KmzDae2Gltf(const OUString& rSourceURL, OUString& o_rOutput);
+#endif
bool AVMEDIA_DLLPUBLIC Embed3DModel(
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel>& xModel,
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
index cd03700..9c1c4ad 100644
--- a/sd/source/ui/func/fuinsert.cxx
+++ b/sd/source/ui/func/fuinsert.cxx
@@ -789,10 +789,19 @@ void FuInsert3DModel::DoExecute( SfxRequest& )
sfx2::FileDialogHelper aDlg( ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
aDlg.SetTitle( "Insert 3D Model" );
+
+#if HAVE_FEATURE_COLLADA
aDlg.AddFilter( "All supported formats", "*.json;*.dae;*.kmz" );
+#else
+ aDlg.AddFilter( "All supported formats", "*.json" );
+#endif
+
aDlg.AddFilter( "JSON - GL Transmission Format", "*.json" );
+
+#if HAVE_FEATURE_COLLADA
aDlg.AddFilter( "DAE - COLLADA", "*.dae" );
aDlg.AddFilter( "KMZ - Keyhole Markup language Zipped", "*.kmz" );
+#endif
OUString sURL;
if( aDlg.Execute() == ERRCODE_NONE )
--
2.1.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2014-09-16 9:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-16 9:14 [gentoo-commits] gentoo-x86 commit in app-office/libreoffice/files: libreoffice-4.3.1.2-implement--with-system-coinmp.patch libreoffice-4.3.1.2-upgrade-to-libgltf-0.0.1.patch libreoffice-4.3.1.2-implement--with-system-gltf.patch libreoffice-4.3.1.2-handle-collada-libs-seperately.patch Andreas HAttel (dilfridge)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox