-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
15 changed files
with
1,405 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
|
||
# set path to additional CMake modules | ||
SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules ${CMAKE_MODULE_PATH}) | ||
|
||
FIND_PACKAGE(OSG REQUIRED) | ||
FIND_PACKAGE(OSGEARTH REQUIRED) | ||
FIND_PACKAGE(Threads) | ||
|
||
######################################################## | ||
# Files | ||
|
||
SET (globe_plugin_SRCS | ||
globe_plugin.cpp | ||
globe_plugin_gui.cpp | ||
qgsosgviewer.cpp | ||
qgsosgearthtilesource.cpp | ||
) | ||
|
||
SET (globe_plugin_UIS globe_plugin_guibase.ui) | ||
|
||
SET (globe_plugin_MOC_HDRS | ||
globe_plugin.h | ||
globe_plugin_gui.h | ||
) | ||
|
||
SET (globe_plugin_RCCS globe_plugin.qrc) | ||
|
||
######################################################## | ||
# Build | ||
|
||
QT4_WRAP_UI (globe_plugin_UIS_H ${globe_plugin_UIS}) | ||
|
||
QT4_WRAP_CPP (globe_plugin_MOC_SRCS ${globe_plugin_MOC_HDRS}) | ||
|
||
QT4_ADD_RESOURCES(globe_plugin_RCC_SRCS ${globe_plugin_RCCS}) | ||
|
||
ADD_LIBRARY (globeplugin MODULE ${globe_plugin_SRCS} ${globe_plugin_MOC_SRCS} ${globe_plugin_RCC_SRCS} ${globe_plugin_UIS_H}) | ||
|
||
INCLUDE_DIRECTORIES( | ||
${CMAKE_CURRENT_BINARY_DIR} | ||
../../core ../../core/raster ../../core/renderer ../../core/symbology | ||
../../gui | ||
.. | ||
) | ||
|
||
# SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY) | ||
|
||
TARGET_LINK_LIBRARIES(globeplugin | ||
qgis_core | ||
qgis_gui | ||
QtOpenGL | ||
osgDB | ||
osgGA | ||
osg | ||
osgViewer | ||
osgEarth | ||
osgEarthFeatures | ||
osgEarthUtil | ||
${OPENTHREADS_LIBRARY} | ||
) | ||
|
||
|
||
######################################################## | ||
# Install | ||
|
||
INSTALL(TARGETS globeplugin | ||
RUNTIME DESTINATION ${QGIS_PLUGIN_DIR} | ||
LIBRARY DESTINATION ${QGIS_PLUGIN_DIR}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,122 @@ | ||
# This module defines | ||
|
||
# OSG_LIBRARY | ||
# OSG_FOUND, if false, do not try to link to osg | ||
# OSG_INCLUDE_DIRS, where to find the headers | ||
# OSG_INCLUDE_DIR, where to find the source headers | ||
# OSG_GEN_INCLUDE_DIR, where to find the generated headers | ||
|
||
# to use this module, set variables to point to the osg build | ||
# directory, and source directory, respectively | ||
# OSGDIR or OSG_SOURCE_DIR: osg source directory, typically OpenSceneGraph | ||
# OSG_DIR or OSG_BUILD_DIR: osg build directory, place in which you've | ||
# built osg via cmake | ||
|
||
# Header files are presumed to be included like | ||
# #include <osg/PositionAttitudeTransform> | ||
# #include <osgUtil/SceneView> | ||
|
||
###### headers ###### | ||
|
||
MACRO( FIND_OSG_INCLUDE THIS_OSG_INCLUDE_DIR THIS_OSG_INCLUDE_FILE ) | ||
|
||
FIND_PATH( ${THIS_OSG_INCLUDE_DIR} ${THIS_OSG_INCLUDE_FILE} | ||
PATHS | ||
${OSG_DIR} | ||
$ENV{OSG_SOURCE_DIR} | ||
$ENV{OSGDIR} | ||
$ENV{OSG_DIR} | ||
/usr/local/ | ||
/usr/ | ||
/sw/ # Fink | ||
/opt/local/ # DarwinPorts | ||
/opt/csw/ # Blastwave | ||
/opt/ | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/ | ||
~/Library/Frameworks | ||
/Library/Frameworks | ||
PATH_SUFFIXES | ||
/include/ | ||
) | ||
|
||
ENDMACRO( FIND_OSG_INCLUDE THIS_OSG_INCLUDE_DIR THIS_OSG_INCLUDE_FILE ) | ||
|
||
FIND_OSG_INCLUDE( OSG_GEN_INCLUDE_DIR osg/Config ) | ||
FIND_OSG_INCLUDE( OSG_INCLUDE_DIR osg/Node ) | ||
|
||
###### libraries ###### | ||
|
||
MACRO( FIND_OSG_LIBRARY MYLIBRARY MYLIBRARYNAME ) | ||
|
||
FIND_LIBRARY(${MYLIBRARY} | ||
NAMES | ||
${MYLIBRARYNAME} | ||
PATHS | ||
${OSG_DIR} | ||
$ENV{OSG_BUILD_DIR} | ||
$ENV{OSG_DIR} | ||
$ENV{OSGDIR} | ||
$ENV{OSG_ROOT} | ||
~/Library/Frameworks | ||
/Library/Frameworks | ||
/usr/local | ||
/usr | ||
/sw | ||
/opt/local | ||
/opt/csw | ||
/opt | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib | ||
/usr/freeware | ||
PATH_SUFFIXES | ||
/lib/ | ||
/lib64/ | ||
/build/lib/ | ||
/build/lib64/ | ||
/Build/lib/ | ||
/Build/lib64/ | ||
) | ||
|
||
ENDMACRO(FIND_OSG_LIBRARY LIBRARY LIBRARYNAME) | ||
|
||
FIND_OSG_LIBRARY( OSG_LIBRARY osg ) | ||
FIND_OSG_LIBRARY( OSG_LIBRARY_DEBUG osgd) | ||
|
||
FIND_OSG_LIBRARY( OSGUTIL_LIBRARY osgUtil ) | ||
FIND_OSG_LIBRARY( OSGUTIL_LIBRARY_DEBUG osgUtild) | ||
|
||
FIND_OSG_LIBRARY( OSGDB_LIBRARY osgDB ) | ||
FIND_OSG_LIBRARY( OSGDB_LIBRARY_DEBUG osgDBd) | ||
|
||
FIND_OSG_LIBRARY( OSGTEXT_LIBRARY osgText ) | ||
FIND_OSG_LIBRARY( OSGTEXT_LIBRARY_DEBUG osgTextd ) | ||
|
||
FIND_OSG_LIBRARY( OSGTERRAIN_LIBRARY osgTerrain ) | ||
FIND_OSG_LIBRARY( OSGTERRAIN_LIBRARY_DEBUG osgTerraind ) | ||
|
||
FIND_OSG_LIBRARY( OSGFX_LIBRARY osgFX ) | ||
FIND_OSG_LIBRARY( OSGFX_LIBRARY_DEBUG osgFXd ) | ||
|
||
FIND_OSG_LIBRARY( OSGSIM_LIBRARY osgSim ) | ||
FIND_OSG_LIBRARY( OSGSIM_LIBRARY_DEBUG osgSimd ) | ||
|
||
FIND_OSG_LIBRARY( OSGVIEWER_LIBRARY osgViewer ) | ||
FIND_OSG_LIBRARY( OSGVIEWER_LIBRARY_DEBUG osgViewerd ) | ||
|
||
FIND_OSG_LIBRARY( OSGGA_LIBRARY osgGA ) | ||
FIND_OSG_LIBRARY( OSGGA_LIBRARY_DEBUG osgGAd ) | ||
|
||
FIND_OSG_LIBRARY( OSGWIDGET_LIBRARY osgWidget ) | ||
FIND_OSG_LIBRARY( OSGWIDGET_LIBRARY_DEBUG osgWidgetd ) | ||
|
||
|
||
FIND_OSG_LIBRARY( OPENTHREADS_LIBRARY OpenThreads ) | ||
FIND_OSG_LIBRARY( OPENTHREADS_LIBRARY_DEBUG OpenThreadsd ) | ||
|
||
SET( OSG_FOUND "NO" ) | ||
IF( OSG_LIBRARY AND OSG_INCLUDE_DIR ) | ||
SET( OSG_FOUND "YES" ) | ||
SET( OSG_INCLUDE_DIRS ${OSG_INCLUDE_DIR} ${OSG_GEN_INCLUDE_DIR} ) | ||
GET_FILENAME_COMPONENT( OSG_LIBRARIES_DIR ${OSG_LIBRARY} PATH ) | ||
ENDIF( OSG_LIBRARY AND OSG_INCLUDE_DIR ) | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,185 @@ | ||
# OpenThreads is a C++ based threading library. Its largest userbase | ||
# seems to OpenSceneGraph so you might notice I accept OSGDIR as an | ||
# environment path. | ||
# I consider this part of the Findosg* suite used to find OpenSceneGraph | ||
# components. | ||
# Each component is separate and you must opt in to each module. | ||
# | ||
# Locate OpenThreads | ||
# This module defines | ||
# OPENTHREADS_LIBRARY | ||
# OPENTHREADS_FOUND, if false, do not try to link to OpenThreads | ||
# OPENTHREADS_INCLUDE_DIR, where to find the headers | ||
# | ||
# $OPENTHREADS_DIR is an environment variable that would | ||
# correspond to the ./configure --prefix=$OPENTHREADS_DIR | ||
# used in building osg. | ||
# | ||
# Created by Eric Wing. | ||
|
||
# Header files are presumed to be included like | ||
# #include <OpenThreads/Thread> | ||
|
||
# To make it easier for one-step automated configuration/builds, | ||
# we leverage environmental paths. This is preferable | ||
# to the -DVAR=value switches because it insulates the | ||
# users from changes we may make in this script. | ||
# It also offers a little more flexibility than setting | ||
# the CMAKE_*_PATH since we can target specific components. | ||
# However, the default CMake behavior will search system paths | ||
# before anything else. This is problematic in the cases | ||
# where you have an older (stable) version installed, but | ||
# are trying to build a newer version. | ||
# CMake doesn't offer a nice way to globally control this behavior | ||
# so we have to do a nasty "double FIND_" in this module. | ||
# The first FIND disables the CMAKE_ search paths and only checks | ||
# the environmental paths. | ||
# If nothing is found, then the second find will search the | ||
# standard install paths. | ||
# Explicit -DVAR=value arguments should still be able to override everything. | ||
# Note: We have added an additional check for ${CMAKE_PREFIX_PATH}. | ||
# This is not an official CMake variable, but one we are proposing be | ||
# added to CMake. Be warned that this may go away or the variable name | ||
# may change. | ||
|
||
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread | ||
$ENV{OPENTHREADS_INCLUDE_DIR} | ||
$ENV{OPENTHREADS_DIR}/include | ||
$ENV{OPENTHREADS_DIR} | ||
$ENV{OSG_INCLUDE_DIR} | ||
$ENV{OSG_DIR}/include | ||
$ENV{OSG_DIR} | ||
NO_DEFAULT_PATH | ||
) | ||
|
||
IF(NOT OPENTHREADS_INCLUDE_DIR) | ||
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread | ||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this. | ||
PATH_SUFFIXES include | ||
) | ||
ENDIF(NOT OPENTHREADS_INCLUDE_DIR) | ||
|
||
IF(NOT OPENTHREADS_INCLUDE_DIR) | ||
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread | ||
~/Library/Frameworks | ||
/Library/Frameworks | ||
/usr/local/include | ||
/usr/include | ||
/sw/include # Fink | ||
/opt/local/include # DarwinPorts | ||
/opt/csw/include # Blastwave | ||
/opt/include | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/include | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include | ||
) | ||
ENDIF(NOT OPENTHREADS_INCLUDE_DIR) | ||
|
||
|
||
FIND_LIBRARY(OPENTHREADS_LIBRARY | ||
NAMES OpenThreads OpenThreadsWin32 | ||
PATHS | ||
$ENV{OPENTHREADS_LIBRARY_DIR} | ||
$ENV{OPENTHREADS_DIR}/lib64 | ||
$ENV{OPENTHREADS_DIR}/lib | ||
$ENV{OPENTHREADS_DIR} | ||
$ENV{OSG_LIBRARY_DIR} | ||
$ENV{OSG_DIR}/lib64 | ||
$ENV{OSG_DIR}/lib | ||
$ENV{OSG_DIR} | ||
NO_DEFAULT_PATH | ||
) | ||
|
||
IF(NOT OPENTHREADS_LIBRARY) | ||
FIND_LIBRARY(OPENTHREADS_LIBRARY | ||
NAMES OpenThreads OpenThreadsWin32 | ||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this. | ||
PATH_SUFFIXES lib64 lib | ||
) | ||
ENDIF(NOT OPENTHREADS_LIBRARY) | ||
|
||
IF(NOT OPENTHREADS_LIBRARY) | ||
FIND_LIBRARY(OPENTHREADS_LIBRARY | ||
NAMES OpenThreads OpenThreadsWin32 | ||
PATHS | ||
~/Library/Frameworks | ||
/Library/Frameworks | ||
/usr/local/lib64 | ||
/usr/local/lib | ||
/usr/lib64 | ||
/usr/lib | ||
/sw/lib64 | ||
/sw/lib | ||
/opt/local/lib64 | ||
/opt/local/lib | ||
/opt/csw/lib64 | ||
/opt/csw/lib | ||
/opt/lib64 | ||
/opt/lib | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib | ||
) | ||
ENDIF(NOT OPENTHREADS_LIBRARY) | ||
|
||
|
||
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG | ||
NAMES OpenThreadsd OpenThreadsWin32d | ||
PATHS | ||
$ENV{OPENTHREADS_DEBUG_LIBRARY_DIR} | ||
$ENV{OPENTHREADS_LIBRARY_DIR} | ||
$ENV{OPENTHREADS_DIR}/lib64 | ||
$ENV{OPENTHREADS_DIR}/lib | ||
$ENV{OPENTHREADS_DIR} | ||
$ENV{OSG_LIBRARY_DIR} | ||
$ENV{OSG_DIR}/lib64 | ||
$ENV{OSG_DIR}/lib | ||
$ENV{OSG_DIR} | ||
${CMAKE_PREFIX_PATH}/lib64 | ||
${CMAKE_PREFIX_PATH}/lib | ||
${CMAKE_PREFIX_PATH} | ||
NO_DEFAULT_PATH | ||
) | ||
|
||
IF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG | ||
NAMES OpenThreadsd OpenThreadsWin32d | ||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this. | ||
PATH_SUFFIXES lib64 lib | ||
) | ||
ENDIF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
|
||
IF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG | ||
NAMES OpenThreadsd OpenThreadsWin32d | ||
PATHS | ||
/usr/local/lib64 | ||
/usr/local/lib | ||
/usr/lib64 | ||
/usr/lib | ||
/sw/lib64 | ||
/sw/lib | ||
/opt/local/lib64 | ||
/opt/local/lib | ||
/opt/csw/lib64 | ||
/opt/csw/lib | ||
/opt/lib64 | ||
/opt/lib | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib | ||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib | ||
) | ||
ENDIF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
|
||
|
||
IF(OPENTHREADS_LIBRARY) | ||
IF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
#MESSAGE("-- Warning Debug OpenThreads not found, using: ${OPENTHREADS_LIBRARY}") | ||
#SET(OPENTHREADS_LIBRARY_DEBUG "${OPENTHREADS_LIBRARY}") | ||
SET(OPENTHREADS_LIBRARY_DEBUG "${OPENTHREADS_LIBRARY}" CACHE FILEPATH "Debug version of OpenThreads Library (use regular version if not available)" FORCE) | ||
ENDIF(NOT OPENTHREADS_LIBRARY_DEBUG) | ||
ENDIF(OPENTHREADS_LIBRARY) | ||
|
||
SET(OPENTHREADS_FOUND "NO") | ||
IF(OPENTHREADS_INCLUDE_DIR AND OPENTHREADS_LIBRARY) | ||
SET(OPENTHREADS_FOUND "YES") | ||
# MESSAGE("-- Found OpenThreads: "${OPENTHREADS_LIBRARY}) | ||
ENDIF(OPENTHREADS_INCLUDE_DIR AND OPENTHREADS_LIBRARY) | ||
|
Oops, something went wrong.