Skip to content

Commit c2f4bd5

Browse files
author
Petros Kataras
committed
Use more recent FindOSMesa.cmake script.
1 parent b2e4387 commit c2f4bd5

File tree

2 files changed

+54
-12
lines changed

2 files changed

+54
-12
lines changed
Lines changed: 52 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,56 @@
1-
# Try to find OSMesa. Once done this will define
1+
# Try to find Mesa off-screen library and include dir.
2+
# Once done this will define
23
#
3-
# OSMESA_FOUND - true if OSMesa has been found
4-
# OSMESA_INCLUDE_DIR - where the GL/osmesa.h can be found
5-
# OSMESA_LIBRARIES - Link this to use OSMesa
4+
# OSMesa_FOUND - true if OSMesa has been found
5+
# OSMesa_INCLUDE_DIRS - where the GL/osmesa.h can be found
6+
# OSMesa_LIBRARIES - Link this to use OSMesa
7+
# OSMesa_VERSION - Version of OSMesa found
8+
# OSMesa::OSMesa - Imported target
69

7-
find_path( OSMESA_INCLUDE_DIR NAMES GL/osmesa.h PATHS "${OSMESA_ROOT}/include" "$ENV{OSMESA_ROOT}/include" "/usr/local/include" "/usr/include" NO_DEFAULT_PATH )
8-
find_library( OSMESA_LIBRARIES NAMES OSMesa PATHS "${OSMESA_ROOT}/lib" "$ENV{OSMESA_ROOT}/lib" "${OSMESA_ROOT}/lib/x86_64-linux-gnu" "/usr/local/lib" "/usr/lib/x86_64-linux-gnu" PATH_SUFFIXES gallium NO_DEFAULT_PATH )
9-
find_library( OSMESA_GL_LIBRARIES Names GL PATHS "${OSMESA_ROOT}/lib" "$ENV{OSMESA_ROOT}/lib" "${OSMESA_ROOT}/lib/x86_64-linux-gnu" "/usr/local/lib" "/usr/lib/x86_64-linux-gnu" PATH_SUFFIXES gallium NO_DEFAULT_PATH )
10+
find_path(OSMESA_INCLUDE_DIR
11+
NAMES GL/osmesa.h
12+
PATHS "${OSMESA_ROOT}/include"
13+
"$ENV{OSMESA_ROOT}/include"
14+
/usr/openwin/share/include
15+
/opt/graphics/OpenGL/include
16+
DOC "OSMesa include directory")
17+
mark_as_advanced(OSMESA_INCLUDE_DIR)
1018

11-
include( FindPackageHandleStandardArgs )
12-
find_package_handle_standard_args( OSMesa DEFAULT_MSG OSMESA_LIBRARIES OSMESA_INCLUDE_DIR OSMESA_GL_LIBRARIES )
19+
find_library(OSMESA_LIBRARY
20+
NAMES OSMesa OSMesa16 OSMesa32
21+
PATHS "${OSMESA_ROOT}/lib"
22+
"$ENV{OSMESA_ROOT}/lib"
23+
/opt/graphics/OpenGL/lib
24+
/usr/openwin/lib
25+
DOC "OSMesa library")
26+
mark_as_advanced(OSMESA_LIBRARY)
1327

14-
mark_as_advanced( OSMESA_INCLUDE_DIR OSMESA_LIBRARY OSMESA_GL_LIBRARIES )
28+
if (OSMESA_INCLUDE_DIR AND EXISTS "${OSMESA_INCLUDE_DIR}/GL/osmesa.h")
29+
file(STRINGS "${OSMESA_INCLUDE_DIR}/GL/osmesa.h" _OSMesa_version_lines
30+
REGEX "OSMESA_[A-Z]+_VERSION")
31+
string(REGEX REPLACE ".*# *define +OSMESA_MAJOR_VERSION +([0-9]+).*" "\\1" _OSMesa_version_major "${_OSMesa_version_lines}")
32+
string(REGEX REPLACE ".*# *define +OSMESA_MINOR_VERSION +([0-9]+).*" "\\1" _OSMesa_version_minor "${_OSMesa_version_lines}")
33+
string(REGEX REPLACE ".*# *define +OSMESA_PATCH_VERSION +([0-9]+).*" "\\1" _OSMesa_version_patch "${_OSMesa_version_lines}")
34+
set(OSMesa_VERSION "${_OSMesa_version_major}.${_OSMesa_version_minor}.${_OSMesa_version_patch}")
35+
unset(_OSMesa_version_major)
36+
unset(_OSMesa_version_minor)
37+
unset(_OSMesa_version_patch)
38+
unset(_OSMesa_version_lines)
39+
endif ()
40+
41+
include(FindPackageHandleStandardArgs)
42+
find_package_handle_standard_args(OSMesa
43+
REQUIRED_VARS OSMESA_INCLUDE_DIR OSMESA_LIBRARY
44+
VERSION_VAR OSMesa_VERSION)
45+
46+
if (OSMesa_FOUND)
47+
set(OSMesa_INCLUDE_DIRS "${OSMESA_INCLUDE_DIR}")
48+
set(OSMesa_LIBRARIES "${OSMESA_LIBRARY}")
49+
50+
if (NOT TARGET OSMesa::OSMesa)
51+
add_library(OSMesa::OSMesa UNKNOWN IMPORTED)
52+
set_target_properties(OSMesa::OSMesa PROPERTIES
53+
IMPORTED_LOCATION "${OSMESA_LIBRARY}"
54+
INTERFACE_INCLUDE_DIRECTORIES "${OSMESA_INCLUDE_DIR}")
55+
endif ()
56+
endif ()

proj/cmake/platform_linux.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,8 @@ if( CINDER_GL_CORE )
111111
list( APPEND CINDER_LIBS_DEPENDS ${X11_LIBRARIES} Xcursor Xinerama Xrandr Xi )
112112
list( APPEND CINDER_INCLUDE_SYSTEM_PRIVATE ${X11_INCLUDE_DIR} )
113113
find_package( OSMesa REQUIRED )
114-
list( APPEND CINDER_LIBS_DEPENDS ${OSMESA_LIBRARIES} ${OSMESA_GL_LIBRARIES} )
115-
list( APPEND CINDER_INCLUDE_SYSTEM_PRIVATE ${OSMESA_INCLUDE_DIR} )
114+
list( APPEND CINDER_LIBS_DEPENDS ${OSMesa_LIBRARIES} )
115+
list( APPEND CINDER_INCLUDE_SYSTEM_PRIVATE ${OSMesa_INCLUDE_DIRS} )
116116
endif()
117117
elseif( CINDER_GL_ES )
118118
find_package( X11 REQUIRED )

0 commit comments

Comments
 (0)