Skip to content

Commit 48dcbbd

Browse files
committed
Fix for labstreaminglayer tree structure.
1 parent d14a55e commit 48dcbbd

2 files changed

Lines changed: 35 additions & 33 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
build*/
2+
13
# Prerequisites
24
*.d
35

CMakeLists.txt

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,46 @@
1-
cmake_minimum_required(VERSION 2.8)
2-
3-
PROJECT(MCCOutlet)
4-
5-
# General settings
6-
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
7-
cmake_policy(SET CMP0042 NEW) # ENABLE CMP0042: MACOSX_RPATH is enabled by default.
8-
IF(UNIX)
9-
# c++11 for nullptr and others
10-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
11-
ENDIF()
12-
1+
cmake_minimum_required(VERSION 3.5)
2+
3+
project(MCCOutlet
4+
LANGUAGES CXX
5+
VERSION 0.1)
6+
7+
# set up LSL if not done already
8+
if(NOT TARGET LSL::lsl)
9+
# when building out of tree LSL_ROOT needs to be specified on the cmd line
10+
file(TO_CMAKE_PATH "${LSL_INSTALL_ROOT}" LSL_INSTALL_ROOT)
11+
list(APPEND LSL_INSTALL_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../LSL/liblsl/build/install")
12+
list(APPEND LSL_INSTALL_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../build/install")
13+
find_package(LSL HINTS ${LSL_INSTALL_ROOT}/share/LSL/ ${LSL_INSTALL_ROOT}/LSL/share/LSL QUIET)
14+
if(NOT LSL_FOUND)
15+
message(FATAL_ERROR "Precompiled LSL was not found. See https://github.com/labstreaminglayer/labstreaminglayer/blob/master/doc/BUILD.md#lsl_install_root for more information.")
16+
endif()
17+
list(APPEND CMAKE_MODULE_PATH ${LSL_DIR})
18+
message(STATUS "Looking for LSLCMake in ${LSL_DIR}")
19+
include(LSLCMake)
20+
endif()
21+
22+
# mccdaq
1323
add_subdirectory(MCCDaq-libusb-driver)
1424

15-
# Third party packages
16-
SET(REQUIRED_LIBS)
17-
# LSL
18-
set(LSL_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../labstreaminglayer/LSL/liblsl)
19-
find_package(LSL REQUIRED)
20-
LIST(APPEND REQUIRED_LIBS ${LSL_LIBRARIES})
21-
2225
# Target executable
23-
add_executable(${PROJECT_NAME}
24-
${CMAKE_CURRENT_SOURCE_DIR}/MCCOutlet.cpp
26+
add_executable(${PROJECT_NAME} MACOSX_BUNDLE WIN32
27+
MCCOutlet.cpp
2528
)
2629

2730
target_include_directories(${PROJECT_NAME} PRIVATE
2831
mccdaq
29-
${LSL_INCLUDE_DIRS}
3032
)
3133

3234
target_link_libraries(${PROJECT_NAME}
3335
mccdaq
34-
${REQUIRED_LIBS}
36+
LSL::lsl
3537
)
3638

37-
IF(WIN32)
38-
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
39-
COMMAND ${CMAKE_COMMAND} -E copy_if_different
40-
${LSL_BINARY_RELEASE}
41-
$<TARGET_FILE_DIR:${PROJECT_NAME}>)
42-
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
43-
COMMAND ${CMAKE_COMMAND} -E copy_if_different
44-
${LSL_BINARY_DEBUG}
45-
$<TARGET_FILE_DIR:${PROJECT_NAME}>)
46-
ENDIF()
39+
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 14)
40+
# target_compile_features(${PROJECT_NAME} PRIVATE cxx_auto_type cxx_lambda_init_captures)
41+
42+
installLSLApp(${PROJECT_NAME})
43+
installLSLAuxFiles(${PROJECT_NAME}
44+
${PROJECT_NAME}.cfg
45+
)
46+
LSLGenerateCPackConfig()

0 commit comments

Comments
 (0)