diff options
-rw-r--r-- | CMake/FindPCRE.cmake | 37 | ||||
-rw-r--r-- | CMakeLists.txt | 13 | ||||
-rw-r--r-- | sway/handlers.c | 3 |
3 files changed, 43 insertions, 10 deletions
diff --git a/CMake/FindPCRE.cmake b/CMake/FindPCRE.cmake new file mode 100644 index 00000000..dbbd60ad --- /dev/null +++ b/CMake/FindPCRE.cmake @@ -0,0 +1,37 @@ +# Copyright (C) 2007-2009 LuaDist. +# Created by Peter Kapec <kapecp@gmail.com> +# Redistribution and use of this file is allowed according to the terms of the MIT license. +# For details see the COPYRIGHT file distributed with LuaDist. +# Note: +# Searching headers and libraries is very simple and is NOT as powerful as scripts +# distributed with CMake, because LuaDist defines directories to search for. +# Everyone is encouraged to contact the author with improvements. Maybe this file +# becomes part of CMake distribution sometimes. + +# - Find pcre +# Find the native PCRE headers and libraries. +# +# PCRE_INCLUDE_DIRS - where to find pcre.h, etc. +# PCRE_LIBRARIES - List of libraries when using pcre. +# PCRE_FOUND - True if pcre found. + +# Look for the header file. +FIND_PATH(PCRE_INCLUDE_DIR NAMES pcre.h) + +# Look for the library. +FIND_LIBRARY(PCRE_LIBRARY NAMES pcre) + +# Handle the QUIETLY and REQUIRED arguments and set PCRE_FOUND to TRUE if all listed variables are TRUE. +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCRE DEFAULT_MSG PCRE_LIBRARY PCRE_INCLUDE_DIR) + +# Copy the results to the output variables. +IF(PCRE_FOUND) + SET(PCRE_LIBRARIES ${PCRE_LIBRARY}) + SET(PCRE_INCLUDE_DIRS ${PCRE_INCLUDE_DIR}) +ELSE(PCRE_FOUND) + SET(PCRE_LIBRARIES) + SET(PCRE_INCLUDE_DIRS) +ENDIF(PCRE_FOUND) + +MARK_AS_ADVANCED(PCRE_INCLUDE_DIRS PCRE_LIBRARIES) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3e639e1f..bbf61299 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required(VERSION 2.8.5) project(sway C) set(CMAKE_C_FLAGS "-g") +set(CMAKE_C_STANDARD 99) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "bin/") add_definitions("-Wall -Wextra -Wno-unused-parameter") set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMake) @@ -20,19 +21,13 @@ add_definitions("${GIT_VERSION_FLAG}") find_package(XKBCommon REQUIRED) find_package(WLC REQUIRED) find_package(A2X REQUIRED) - -if (UNIX) - find_library(DL_LIBRARY dl) - mark_as_advanced(DL_LIBRARY) - if (NOT DL_LIBRARY) - message(FATAL_ERROR "libdl is needed on unix systems") - endif () -endif (UNIX) +find_package(PCRE REQUIRED) FILE(GLOB sources ${PROJECT_SOURCE_DIR}/sway/*.c) include_directories( ${WLC_INCLUDE_DIRS} + ${PCRE_INCLUDE_DIRS} include/ ) @@ -43,7 +38,7 @@ add_executable(sway target_link_libraries(sway ${WLC_LIBRARIES} ${XKBCOMMON_LIBRARIES} - ${DL_LIBRARY} + ${PCRE_LIBRARIES} ) INSTALL( diff --git a/sway/handlers.c b/sway/handlers.c index 330f6c0c..93b124bd 100644 --- a/sway/handlers.c +++ b/sway/handlers.c @@ -302,7 +302,8 @@ static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifier struct sway_mode *mode = config->current_mode; - uint32_t sym = tolower(wlc_keyboard_get_keysym_for_key(key, modifiers)); + struct wlc_modifiers no_mods = { 0, 0 }; + uint32_t sym = tolower(wlc_keyboard_get_keysym_for_key(key, &no_mods)); int i; |