X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=CMakeLists.txt;h=1babad4d8717c5fbb66db6b8de9c47440ee62375;hb=f73d072d63607cdfb6657f828c2e55b8f100669a;hp=791e645e6979c9343e6d18810d105bd5c284b64e;hpb=11369e6592800fcf03138b109fee3d4c0736f21a;p=staging%2Fwindowmanager.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 791e645..1babad4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,3 +1,19 @@ +# +# Copyright (C) 2017 Mentor Graphics Development (Deutschland) GmbH +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + cmake_minimum_required(VERSION 2.8) project(TMCAGLWM) @@ -11,9 +27,11 @@ find_package(PkgConfig REQUIRED) pkg_check_modules(WLC wayland-client>=1.11.0 REQUIRED) -find_program(WLSCAN NAMES wayland-scanner) - macro(wlproto var_basename proto_xml_basename) + if("${WLSCAN}" STREQUAL "") + find_program(WLSCAN NAMES wayland-scanner) + endif() + if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/protocol) set(proto_dir "${CMAKE_CURRENT_SOURCE_DIR}/protocol") elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../protocol) @@ -40,9 +58,24 @@ macro(wlproto var_basename proto_xml_basename) include_directories(${CMAKE_CURRENT_BINARY_DIR}) endmacro() -add_definitions(-D_GNU_SOURCE) +# Should modernize the following somehow... +set(ENABLE_DEBUG_OUTPUT OFF CACHE BOOL "Enable debug logging") +if(ENABLE_DEBUG_OUTPUT) + add_definitions(-DDEBUG_OUTPUT) +else() + remove_definitions(-DDEBUG_OUTPUT) +endif() + +# Should modernize the following somehow... +set(ENABLE_SCOPE_TRACING OFF CACHE BOOL "Enable scope enter/leave messages for certain parts of the code.") +if(ENABLE_SCOPE_TRACING) + add_definitions(-DSCOPE_TRACING) +else() + remove_definitions(-DSCOPE_TRACING) +endif() + +set(SANITIZER_MODE "none" CACHE STRING "Build using a specific sanitizer (e.g. 'address', 'thread', 'leak', 'undefined'), depends on compiler; default none") -set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-unused-parameter -std=c99 ${CMAKE_C_FLAGS}") -set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-unused-parameter -std=c++14 ${CMAKE_CXX_FLAGS}") +set(LINK_LIBCXX OFF CACHE BOOL "Link against LLVMs libc++") add_subdirectory(src)