Skip to content

Commit

Permalink
[wip] Bootstrap the magnum-player application.
Browse files Browse the repository at this point in the history
Initial code is a plain copy of the Viewer example.

TODO: properly add to docs, packages, ci, Find module ...
  • Loading branch information
mosra committed Jul 27, 2018
1 parent 98385ba commit 61d1799
Show file tree
Hide file tree
Showing 4 changed files with 426 additions and 1 deletion.
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,8 @@ cmake_dependent_option(BUILD_GL_TESTS "Build unit tests for OpenGL code" OFF "BU
option(BUILD_STATIC "Build static libraries (default are dynamic)" OFF)
cmake_dependent_option(BUILD_STATIC_PIC "Build static libraries with position-independent code" ON "BUILD_STATIC" OFF)

option(WITH_UI "Build Ui library" OFF)
option(WITH_PLAYER "Build the magnum-player application" OFF)
cmake_dependent_option(WITH_UI "Build Ui library" OFF "WITH_PLAYER" ON)
cmake_dependent_option(WITH_UI_GALLERY "Build magnum-ui-gallery executable" OFF "WITH_UI" OFF)

# Dynamic linking is meaningless on Emscripten and too inconvenient on Android
Expand Down
4 changes: 4 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,9 @@ endif()

add_subdirectory(Magnum)

if(WITH_PLAYER)
add_subdirectory(player)
endif()

# Magnum extras include dir for superprojects
set(MAGNUMEXTRAS_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "")
50 changes: 50 additions & 0 deletions src/player/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#
# This file is part of Magnum.
#
# Original authors — credit is appreciated but not required:
#
# 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 —
# Vladimír Vondruš <[email protected]>
#
# This is free and unencumbered software released into the public domain.
#
# Anyone is free to copy, modify, publish, use, compile, sell, or distribute
# this software, either in source code form or as a compiled binary, for any
# purpose, commercial or non-commercial, and by any means.
#
# In jurisdictions that recognize copyright laws, the author or authors of
# this software dedicate any and all copyright interest in the software to
# the public domain. We make this dedication for the benefit of the public
# at large and to the detriment of our heirs and successors. We intend this
# dedication to be an overt act of relinquishment in perpetuity of all
# present and future rights to this software under copyright law.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#

find_package(Magnum REQUIRED
GL
MeshTools
Shaders
SceneGraph
Trade
Sdl2Application)

set_directory_properties(PROPERTIES CORRADE_USE_PEDANTIC_FLAGS ON)

add_executable(magnum-player Player.cpp)
target_link_libraries(magnum-player PRIVATE
Magnum::Application
Magnum::GL
Magnum::Magnum
Magnum::MeshTools
Magnum::SceneGraph
Magnum::Shaders
Magnum::Trade)

install(TARGETS magnum-player DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
Loading

0 comments on commit 61d1799

Please sign in to comment.