Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenFlipper
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
OpenFlipper-Free
OpenFlipper
Commits
9e13abfd
Commit
9e13abfd
authored
Jan 14, 2019
by
Jan Möbius
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Switch PluginLib from searching to fixed source settings
parent
741b2296
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
282 additions
and
161 deletions
+282
-161
PluginLib/CMakeLists.txt
PluginLib/CMakeLists.txt
+282
-161
No files found.
PluginLib/CMakeLists.txt
View file @
9e13abfd
include
(
ACGCommon
)
set
(
ADDITIONAL_PLUGINLIB_LIBS
""
)
set
(
ADDITIONAL_PLUGINLIB_INCS
""
)
set
(
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
""
)
set
(
ADDITIONAL_PLUGINLIB_LINK_DIRS
""
)
# search all ObjectTypes in the ObjectType directory for additional build information
file
(
GLOB _plugin_buildinfos
RELATIVE
"
${
CMAKE_SOURCE_DIR
}
"
"
${
CMAKE_SOURCE_DIR
}
/ObjectTypes/*/CMakeLists.txt"
"
${
CMAKE_SOURCE_DIR
}
/Package*/ObjectTypes/*/CMakeLists.txt"
)
# include all cmake files found for objecttypes here
foreach
(
_buildInfo
${
_plugin_buildinfos
}
)
include
(
"
${
CMAKE_SOURCE_DIR
}
/
${
_buildInfo
}
"
)
endforeach
()
# Find all packages and include their Paths here like the toplevel would be
file
(
GLOB OF_PACKAGES RELATIVE
"
${
CMAKE_SOURCE_DIR
}
"
"
${
CMAKE_SOURCE_DIR
}
/Package*"
)
foreach
(
OF_PACKAGE
${
OF_PACKAGES
}
)
list
(
APPEND PACKAGE_INCLUDES
"
${
CMAKE_SOURCE_DIR
}
/
${
OF_PACKAGES
}
"
)
endforeach
()
# search all lib directories in packages for OpenFlipper
file
(
GLOB PACKAGE_DIRS
"
${
CMAKE_SOURCE_DIR
}
/Package-*"
)
include_directories
(
..
${
PACKAGE_DIRS
}
${
ACG_INCLUDE_DIR
}
${
OPENMESH_INCLUDE_DIRS
}
${
CMAKE_SOURCE_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
${
ADDITIONAL_PLUGINLIB_INCS
}
${
PACKAGE_INCLUDES
}
)
link_directories
(
${
GLEW_LIBRARY_DIR
}
${
ADDITIONAL_PLUGINLIB_LINK_DIRS
}
)
#=======================================================
# General defines
#=======================================================
# generate dllexport macros on windows
if
(
WIN32
)
add_definitions
(
-DPLUGINLIBDLL
-DACGDLL
-DUSEACG
-DFREEGLUT_LIB_PRAGMAS=0
)
endif
()
# define core version
add_definitions
(
-DCORE_VERSION=
"
${
OPENFLIPPER_VERSION
}
"
)
# Mark this build part as building OpenFLippers Core
add_definitions
(
-DOPENFLIPPERPLUGINLIB
)
#=======================================================
# Add possibility to debug OpenFlipperSettings
#=======================================================
if
(
NOT DEFINED OPENFLIPPER_SETTINGS_DEBUG
)
set
(
OPENFLIPPER_SETTINGS_DEBUG false CACHE BOOL
"Enable or disable debugging of OpenFlipperSettings"
)
mark_as_advanced
(
OPENFLIPPER_SETTINGS_DEBUG
)
endif
()
if
(
OPENFLIPPER_SETTINGS_DEBUG
)
add_definitions
(
-DOPENFLIPPER_SETTINGS_DEBUG
)
endif
()
#=======================================================
# Collect files to compile
#=======================================================
# source code directories
set
(
directories
../BasePlugin
../ACGHelper
../common
../threads
../common/bsp
../INIFile
../widgets/glWidget
../publicWidgets/objectSelectionWidget
../widgets/filePicker
../Utils/FileIO
../Utils/Memory
)
# collect all header,source and ui files
acg_append_files
(
headers
"*.hh"
${
directories
}
)
acg_append_files
(
sources
"*.cc"
${
directories
}
)
#=======================================================
# Cleanup
#=======================================================
# remove template cc files from source file list
acg_drop_templates
(
sources
)
#=======================================================
# Create library
#=======================================================
RECURSE_GROUPS
(
${
CMAKE_CURRENT_SOURCE_DIR
}
/../../
)
if
(
QT5_FOUND
)
acg_add_library
(
OpenFlipperPluginLib SHARED
${
sources
}
${
headers
}
)
endif
()
if
(
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
)
set_target_properties
(
OpenFlipperPluginLib PROPERTIES
COMPILE_FLAGS
${
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
}
)
endif
()
target_link_libraries
(
OpenFlipperPluginLib
${
OPENMESH_LIBRARIES
}
ACG
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
${
FTGL_LIBS
}
${
ADDITIONAL_PLUGINLIB_LIBS
}
)
#=======================================================
# Setup translation files for OpenFlipperPluginLib
#=======================================================
set
(
trans_files
${
sources
}
)
list
(
APPEND trans_files
${
ui
}
)
list
(
APPEND trans_files
${
headers
}
)
acg_add_translations
(
OpenFlipperPluginLib
"de_DE"
"
${
trans_files
}
"
)
include
(
ACGCommon
)
set
(
ADDITIONAL_PLUGINLIB_LIBS
""
)
set
(
ADDITIONAL_PLUGINLIB_INCS
""
)
set
(
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
""
)
set
(
ADDITIONAL_PLUGINLIB_LINK_DIRS
""
)
# search all ObjectTypes in the ObjectType directory for additional build information
file
(
GLOB _plugin_buildinfos
RELATIVE
"
${
CMAKE_SOURCE_DIR
}
"
"
${
CMAKE_SOURCE_DIR
}
/ObjectTypes/*/CMakeLists.txt"
"
${
CMAKE_SOURCE_DIR
}
/Package*/ObjectTypes/*/CMakeLists.txt"
)
# include all cmake files found for objecttypes here
foreach
(
_buildInfo
${
_plugin_buildinfos
}
)
include
(
"
${
CMAKE_SOURCE_DIR
}
/
${
_buildInfo
}
"
)
endforeach
()
# Find all packages and include their Paths here like the toplevel would be
file
(
GLOB OF_PACKAGES RELATIVE
"
${
CMAKE_SOURCE_DIR
}
"
"
${
CMAKE_SOURCE_DIR
}
/Package*"
)
foreach
(
OF_PACKAGE
${
OF_PACKAGES
}
)
list
(
APPEND PACKAGE_INCLUDES
"
${
CMAKE_SOURCE_DIR
}
/
${
OF_PACKAGES
}
"
)
endforeach
()
# search all lib directories in packages for OpenFlipper
file
(
GLOB PACKAGE_DIRS
"
${
CMAKE_SOURCE_DIR
}
/Package-*"
)
include_directories
(
..
${
PACKAGE_DIRS
}
${
ACG_INCLUDE_DIR
}
${
OPENMESH_INCLUDE_DIRS
}
${
CMAKE_SOURCE_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
${
ADDITIONAL_PLUGINLIB_INCS
}
${
PACKAGE_INCLUDES
}
)
link_directories
(
${
GLEW_LIBRARY_DIR
}
${
ADDITIONAL_PLUGINLIB_LINK_DIRS
}
)
#=======================================================
# General defines
#=======================================================
# generate dllexport macros on windows
if
(
WIN32
)
add_definitions
(
-DPLUGINLIBDLL
-DACGDLL
-DUSEACG
-DFREEGLUT_LIB_PRAGMAS=0
)
endif
()
# define core version
add_definitions
(
-DCORE_VERSION=
"
${
OPENFLIPPER_VERSION
}
"
)
# Mark this build part as building OpenFLippers Core
add_definitions
(
-DOPENFLIPPERPLUGINLIB
)
#=======================================================
# Add possibility to debug OpenFlipperSettings
#=======================================================
if
(
NOT DEFINED OPENFLIPPER_SETTINGS_DEBUG
)
set
(
OPENFLIPPER_SETTINGS_DEBUG false CACHE BOOL
"Enable or disable debugging of OpenFlipperSettings"
)
mark_as_advanced
(
OPENFLIPPER_SETTINGS_DEBUG
)
endif
()
if
(
OPENFLIPPER_SETTINGS_DEBUG
)
add_definitions
(
-DOPENFLIPPER_SETTINGS_DEBUG
)
endif
()
#=======================================================
# Collect files to compile
#=======================================================
set
(
headers
../INIFile/INIFile.hh
../BasePlugin/InformationInterface.hh
../BasePlugin/BackupInterface.hh
../BasePlugin/RenderInterface.hh
../BasePlugin/OptionsInterface.hh
../BasePlugin/MouseInterface.hh
../BasePlugin/RPCInterface.hh
../BasePlugin/MenuInterface.hh
../BasePlugin/RPCWrappers.hh
../BasePlugin/ProcessInterface.hh
../BasePlugin/TextureInterface.hh
../BasePlugin/KeyInterface.hh
../BasePlugin/FileInterface.hh
../BasePlugin/PostProcessorInterface.hh
../BasePlugin/LoadSaveInterface.hh
../BasePlugin/PluginFunctions.hh
../BasePlugin/INIInterface.hh
../BasePlugin/StatusbarInterface.hh
../BasePlugin/PluginFunctionsCore.hh
../BasePlugin/PluginFunctionsViewControls.hh
../BasePlugin/PickingInterface.hh
../BasePlugin/AboutInfoInterface.hh
../BasePlugin/SelectionInterface.hh
../BasePlugin/ViewInterface.hh
../BasePlugin/ScriptInterface.hh
../BasePlugin/ToolbarInterface.hh
../BasePlugin/ViewModeInterface.hh
../BasePlugin/ContextMenuInterface.hh
../BasePlugin/WhatsThisGenerator.hh
../BasePlugin/RPCWrappersHelper.hh
../BasePlugin/PluginConnectionInterface.hh
../BasePlugin/SecurityInterface.hh
../BasePlugin/LoggingInterface.hh
../BasePlugin/ToolboxInterface.hh
../BasePlugin/MetadataInterface.hh
../BasePlugin/TypeInterface.hh
../BasePlugin/PluginFunctionsSceneGraphWidget.hh
../BasePlugin/BaseInterface.hh
../LicenseManager/LicenseManagerDisabled.hh
../LicenseManager/LicenseManager.hh
../LicenseManager/LicenseManagerActive.hh
../ACGHelper/DrawModeConverter.hh
../publicWidgets/objectSelectionWidget/SelectionObjectMarker.hh
../publicWidgets/objectSelectionWidget/TreeItemObjectSelection.hh
../publicWidgets/objectSelectionWidget/TreeModelObjectSelection.hh
../publicWidgets/objectSelectionWidget/objectPickDialog.hh
../publicWidgets/objectSelectionWidget/objectSelectionWidget.hh
../threads/JobInfo.hh
../threads/OpenFlipperThread.hh
../widgets/glWidget/PostProcessing.hh
../widgets/glWidget/QtBaseViewer.hh
../widgets/glWidget/simpleViewer.hh
../widgets/glWidget/CursorPainter.hh
../widgets/glWidget/QtGLGraphicsView.hh
../widgets/glWidget/QtMultiViewLayout.hh
../widgets/glWidget/QtGLViewerLayout.hh
../widgets/glWidget/QtSlideWindow.hh
../widgets/glWidget/simpleGLGraphicsScene.hh
../widgets/glWidget/QtGLGraphicsScene.hh
../widgets/glWidget/QtGraphicsButton.hh
../widgets/filePicker/FilePicker.hh
../common/BaseBackup.hh
../common/RendererInfo.hh
../common/BaseObject.hh
../common/GlobalDefines.hh
../common/ViewerProperties.hh
../common/BaseObjectData.hh
../common/BaseObjectCore.hh
../common/InformationPlugins.hh
../common/RecentFiles.hh
../common/BackupData.hh
../common/GroupObject.hh
../common/ObjectTypeDLLDefines.hh
../common/FileTypes.hh
../common/GlobalOptions.hh
../common/PluginStorage.hh
../common/TypesInternal.hh
../common/DataTypes.hh
../common/glew_wrappers.hh
../common/ObjectIDPointerManagerT.hh
../common/OpenFlipperQSettings.hh
../common/Types.hh
../common/ViewObjectMarker.hh
../common/OFGLWidget.hh
../common/perObjectData.hh
../common/UpdateType.hh
../Utils/Memory/RAMInfo.hh
../Utils/FileIO/NumberParsing.hh
)
set
(
sources
../BasePlugin/PluginFunctions.cc
../BasePlugin/PluginFunctionsBaseIterator.cc
../BasePlugin/PluginFunctionsIterator.cc
../BasePlugin/PostProcessorInterface.cc
../BasePlugin/RPCWrappers.cc
../BasePlugin/RPCWrappersHelper.cc
../BasePlugin/WhatsThisGenerator.cc
../ACGHelper/DrawModeConverter.cc
../common/BackupData.cc
../common/BaseBackup.cc
../common/BaseObject.cc
../common/BaseObjectCore.cc
../common/BaseObjectData.cc
../common/FileTypes.cc
../common/GlobalOptions.cc
../common/GroupObject.cc
../common/InformationPlugins.cc
../common/OpenFlipperQSettings.cc
../common/PluginStorage.cc
../common/RecentFiles.cc
../common/RendererInfo.cc
../common/Types.cc
../common/UpdateType.cc
../common/ViewerProperties.cc
../common/glew_wrappers.cc
../common/perObjectData.cc
../threads/JobInfo.cc
../threads/OpenFlipperThread.cc
../INIFile/INIFile.cc
../widgets/glWidget/CursorPainter.cc
../widgets/glWidget/PostProcessing.cc
../widgets/glWidget/QtBaseViewer.cc
../widgets/glWidget/QtBaseViewerFlyAnimation.cc
../widgets/glWidget/QtBaseViewerPicking.cc
../widgets/glWidget/QtBaseViewer_qt.cc
../widgets/glWidget/QtGLGraphicsScene.cc
../widgets/glWidget/QtGLGraphicsView.cc
../widgets/glWidget/QtGLViewerLayout.cc
../widgets/glWidget/QtGraphicsButton.cc
../widgets/glWidget/QtMultiViewLayout.cc
../widgets/glWidget/QtSlideWindow.cc
../widgets/glWidget/simpleGLGraphicsScene.cc
../widgets/glWidget/simpleViewer.cc
../publicWidgets/objectSelectionWidget/SelectionObjectMarker.cc
../publicWidgets/objectSelectionWidget/TreeItemObjectSelection.cc
../publicWidgets/objectSelectionWidget/TreeModelObjectSelection.cc
../publicWidgets/objectSelectionWidget/objectPickDialog.cc
../publicWidgets/objectSelectionWidget/objectSelectionWidget.cc
../widgets/filePicker/FilePicker.cc
../Utils/FileIO/NumberParsing.cc
../Utils/Memory/RAMInfo.cc
)
# Group the sources in VS to get a tree structure like in the file system instead of all files in one folder
source_group
(
TREE
${
CMAKE_SOURCE_DIR
}
FILES
${
sources
}
${
headers
}
)
#=======================================================
# Create library
#=======================================================
if
(
QT5_FOUND
)
acg_add_library
(
OpenFlipperPluginLib SHARED
${
sources
}
${
headers
}
)
endif
()
if
(
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
)
set_target_properties
(
OpenFlipperPluginLib PROPERTIES
COMPILE_FLAGS
${
ADDITIONAL_PLUGINLIB_COMPILER_FLAGS
}
)
endif
()
target_link_libraries
(
OpenFlipperPluginLib
${
OPENMESH_LIBRARIES
}
ACG
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
${
FTGL_LIBS
}
${
ADDITIONAL_PLUGINLIB_LIBS
}
)
#=======================================================
# Setup translation files for OpenFlipperPluginLib
#=======================================================
set
(
trans_files
${
sources
}
)
list
(
APPEND trans_files
${
ui
}
)
list
(
APPEND trans_files
${
headers
}
)
acg_add_translations
(
OpenFlipperPluginLib
"de_DE"
"
${
trans_files
}
"
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment