summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorRiccardo Magliocchetti <riccardo.magliocchetti@gmail.com>2014-12-22 19:10:59 +0100
committerMichael Stahl <mstahl@redhat.com>2015-02-07 00:01:41 +0000
commitb9a847b78ceaa3b5840429dab1bc50d35c7ef3de (patch)
tree1bcd505077a08a8f24362e35362a0fad54bc9684 /vcl
parent7ce1e0e1ecbb1b3ec5e3cc15306a9df7e786c564 (diff)
Fixup --without-x build
Accept gl linkage in hope of future offscreen mesa support. Avoid linking with GLX though. Change-Id: I4e666f60e74fe34075a8da9eeba95807cf8fe38c Signed-off-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/13452 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/Executable_icontest.mk2
-rw-r--r--vcl/Module_vcl.mk18
-rw-r--r--vcl/source/opengl/OpenGLContext.cxx26
-rw-r--r--vcl/source/opengl/OpenGLHelper.cxx2
-rw-r--r--vcl/source/salmain/salmain.cxx4
5 files changed, 30 insertions, 22 deletions
diff --git a/vcl/Executable_icontest.mk b/vcl/Executable_icontest.mk
index 345203c877ca..28b686bbd7e7 100644
--- a/vcl/Executable_icontest.mk
+++ b/vcl/Executable_icontest.mk
@@ -26,7 +26,6 @@ $(eval $(call gb_Executable_use_static_libraries,icontest,\
))
ifeq ($(OS),LINUX)
-
$(eval $(call gb_Executable_add_libs,icontest,\
-lm \
-ldl \
@@ -39,7 +38,6 @@ $(eval $(call gb_Executable_add_libs,icontest,\
$(eval $(call gb_Executable_use_static_libraries,icontest,\
glxtest \
))
-
else ifeq ($(OS),WNT)
$(eval $(call gb_Executable_use_system_win32_libs,icontest,\
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index 9cc9ee038d87..a0ed040cdbe5 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -25,12 +25,14 @@ $(eval $(call gb_Module_add_targets,vcl,\
Package_opengl \
$(if $(filter DESKTOP,$(BUILD_TYPE)), \
StaticLibrary_vclmain \
- Executable_ui-previewer \
+ $(if $(ENABLE_HEADLESS),, \
+ Executable_ui-previewer) \
$(if $(filter LINUX MACOSX WNT,$(OS)), \
- Executable_icontest \
Executable_outdevgrind \
- Executable_vcldemo \
- Executable_mtfdemo )) \
+ $(if $(ENABLE_HEADLESS),, \
+ Executable_vcldemo \
+ Executable_icontest \
+ Executable_mtfdemo ))) \
$(if $(filter-out ANDROID IOS WNT,$(OS)), \
Executable_svdemo \
Executable_svptest \
@@ -48,7 +50,7 @@ $(eval $(call gb_Module_add_targets,vcl,\
Library_vclplug_gen \
Library_desktop_detector \
StaticLibrary_headless \
- StaticLibrary_glxtest \
+ StaticLibrary_glxtest \
Package_fontunxppds \
Package_fontunxpsprint \
))
@@ -107,10 +109,16 @@ $(eval $(call gb_Module_add_check_targets,vcl,\
CppunitTest_vcl_wmf_test \
))
+
ifeq ($(GUIBASE),unx)
$(eval $(call gb_Module_add_check_targets,vcl,\
CppunitTest_vcl_timer \
))
endif
+ifeq ($(ENABLE_HEADLESS),TRUE)
+$(eval $(call gb_Module_add_check_targets,vcl,\
+ CppunitTest_vcl_timer \
+))
+endif
# vim: set noet sw=4 ts=4:
diff --git a/vcl/source/opengl/OpenGLContext.cxx b/vcl/source/opengl/OpenGLContext.cxx
index 04aa5dac8ad7..fa0684d063a3 100644
--- a/vcl/source/opengl/OpenGLContext.cxx
+++ b/vcl/source/opengl/OpenGLContext.cxx
@@ -38,7 +38,7 @@ using namespace com::sun::star;
#define MAX_FRAMEBUFFER_COUNT 30
// TODO use rtl::Static instead of 'static'
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
static std::vector<GLXContext> g_vShareList;
#elif defined(WNT)
static std::vector<HGLRC> g_vShareList;
@@ -46,7 +46,7 @@ static std::vector<HGLRC> g_vShareList;
GLWindow::~GLWindow()
{
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
XFree(vi);
#endif
}
@@ -69,7 +69,7 @@ OpenGLContext::OpenGLContext():
mpNextContext(NULL)
{
SAL_INFO("vcl.opengl", "new context: " << this);
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
mbPixmap = false;
#endif
@@ -450,7 +450,7 @@ debug_callback(GLenum source, GLenum type, GLuint id,
#endif
-#if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
namespace {
@@ -679,7 +679,7 @@ bool OpenGLContext::init(SystemChildWindow* pChildWindow)
return ImplInit();
}
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
bool OpenGLContext::init(Display* dpy, Window win, int screen)
{
if(mbInitialized)
@@ -1125,7 +1125,7 @@ bool OpenGLContext::initWindow()
return true;
}
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
bool OpenGLContext::initWindow()
{
@@ -1245,7 +1245,7 @@ void OpenGLContext::reset()
}
#elif defined( MACOSX )
OpenGLWrapper::resetCurrent();
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
// nothing
#elif defined( UNX )
if(m_aGLWin.ctx)
@@ -1289,6 +1289,7 @@ SystemWindowData OpenGLContext::generateWinData(vcl::Window* pParent, bool)
aWinData.nSize = sizeof(aWinData);
aWinData.pVisual = NULL;
+#if !defined(LIBO_HEADLESS)
const SystemEnvData* sysData(pParent->GetSystemData());
Display *dpy = reinterpret_cast<Display*>(sysData->pDisplay);
@@ -1316,6 +1317,7 @@ SystemWindowData OpenGLContext::generateWinData(vcl::Window* pParent, bool)
SAL_INFO("vcl.opengl", "using VisualID " << vi->visualid);
aWinData.pVisual = (void*)(vi->visual);
}
+#endif
return aWinData;
}
@@ -1329,7 +1331,7 @@ bool OpenGLContext::isCurrent()
wglGetCurrentDC() == m_aGLWin.hDC);
#elif defined( MACOSX )
return false;
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
return false;
#elif defined( UNX )
GLXDrawable nDrawable = mbPixmap ? m_aGLWin.glPix : m_aGLWin.win;
@@ -1367,7 +1369,7 @@ void OpenGLContext::makeCurrent()
#elif defined( MACOSX )
NSOpenGLView* pView = getOpenGLView();
OpenGLWrapper::makeCurrent(pView);
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
// nothing
#elif defined( UNX )
#ifdef DBG_UTIL
@@ -1408,7 +1410,7 @@ void OpenGLContext::resetCurrent()
wglMakeCurrent( m_aGLWin.hDC, 0 );
#elif defined( MACOSX )
OpenGLWrapper::resetCurrent();
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
// nothing
#elif defined( UNX )
glXMakeCurrent(m_aGLWin.dpy, None, NULL);
@@ -1422,7 +1424,7 @@ void OpenGLContext::swapBuffers()
#elif defined( MACOSX )
NSOpenGLView* pView = getOpenGLView();
OpenGLWrapper::swapBuffers(pView);
-#elif defined( IOS ) || defined( ANDROID )
+#elif defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
// nothing
#elif defined( UNX )
glXSwapBuffers(m_aGLWin.dpy, mbPixmap ? m_aGLWin.glPix : m_aGLWin.win);
@@ -1433,7 +1435,7 @@ void OpenGLContext::sync()
{
#if defined( WNT )
// nothing
-#elif defined( MACOSX ) || defined( IOS ) || defined( ANDROID )
+#elif defined( MACOSX ) || defined( IOS ) || defined( ANDROID ) || defined(LIBO_HEADLESS)
// nothing
#elif defined( UNX )
glXWaitGL();
diff --git a/vcl/source/opengl/OpenGLHelper.cxx b/vcl/source/opengl/OpenGLHelper.cxx
index 7ef47c231618..23b5fccca57d 100644
--- a/vcl/source/opengl/OpenGLHelper.cxx
+++ b/vcl/source/opengl/OpenGLHelper.cxx
@@ -480,7 +480,7 @@ bool OpenGLHelper::isVCLOpenGLEnabled()
return bEnable;
}
-#if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID && !defined(LIBO_HEADLESS)
bool OpenGLHelper::GetVisualInfo(Display* pDisplay, int nScreen, XVisualInfo& rVI)
{
diff --git a/vcl/source/salmain/salmain.cxx b/vcl/source/salmain/salmain.cxx
index e7318e8424cd..ee9ed69fb11b 100644
--- a/vcl/source/salmain/salmain.cxx
+++ b/vcl/source/salmain/salmain.cxx
@@ -28,12 +28,12 @@
#include "salinst.hxx"
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined LIBO_HEADLESS
#include <vcl/opengl/glxtest.hxx>
#endif
SAL_IMPLEMENT_MAIN() {
-#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID
+#if defined( UNX ) && !defined MACOSX && !defined IOS && !defined ANDROID && !defined LIBO_HEADLESS
fire_glxtest_process();
#endif
tools::extendApplicationEnvironment();