summaryrefslogtreecommitdiffstats
path: root/src/input/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/input/CMakeLists.txt')
-rw-r--r--src/input/CMakeLists.txt73
1 files changed, 67 insertions, 6 deletions
diff --git a/src/input/CMakeLists.txt b/src/input/CMakeLists.txt
index 20fd531..26eeb64 100644
--- a/src/input/CMakeLists.txt
+++ b/src/input/CMakeLists.txt
@@ -2,17 +2,32 @@ include(${QT_USE_FILE})
set(pvsinput_SRCS
inputEvent.cpp
+ unprivilegedInputHandlerChain.cpp
+ inputEventHandler.cpp
+ logNonMatchingHandler.cpp
)
+
+set(feature_DEFS)
if(UNIX)
find_file(XINPUT2_HDR X11/extensions/XInput2.h)
if(XINPUT2_HDR)
- set_property(SOURCE x11FakeKeyboardHandler.cpp
- APPEND
- PROPERTY COMPILE_DEFINITIONS HAVE_XINPUT2_H
- )
+ list(APPEND feature_DEFS
+ HAVE_XINPUT2_H)
endif()
-
+
+ find_file(XINPUT_HDR X11/extensions/XInput.h)
+ if(XINPUT_HDR)
+ list(APPEND feature_DEFS
+ HAVE_XINPUT_H)
+ endif()
+
+ find_file(XKBLIB_HDR X11/XKBlib.h)
+ if(XKBLIB_HDR)
+ list(APPEND feature_DEFS
+ HAVE_XKBLIB_H)
+ endif()
+
set(pvsprivinputd_SRCS
pvsprivinputd.cpp
pvsPrivInputHandler.cpp
@@ -23,7 +38,8 @@ if(UNIX)
killX11Handler.cpp
magicSysRqHandler.cpp
sayHelloHandler.cpp
- inputEventHandler.cpp
+ privilegedInputHandlerChain.cpp
+ allowLocalOrPrivileged.cpp
)
set(pvsprivinputd_MOC_HDRS
@@ -105,10 +121,55 @@ if(UNIX)
install(FILES pvsprivinputd.conf
DESTINATION /etc
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+
+ # Install the daemon
+ install(TARGETS pvsprivinputd
+ DESTINATION sbin)
endif()
+set_property(SOURCE ${pvsinput_SRCS} ${pvsprivinputd_SRCS}
+ APPEND
+ PROPERTY COMPILE_DEFINITIONS ${feature_DEFS}
+)
+
+set(pvsinput_TSS
+ i18n/pvsinput_de_DE.ts
+ i18n/pvsinput_fr_FR.ts
+ i18n/pvsinput_es_MX.ts
+ i18n/pvsinput_ar_JO.ts
+ i18n/pvsinput_pl_PL.ts)
+
+QT4_CREATE_TRANSLATION(pvsinput_QMS
+ ${pvsinput_SRCS}
+ ${pvsprivinputd_SRCS}
+ ${pvsinput_TSS})
+
+# Generate an RCC file for our translations:
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pvsinput.qrc"
+ "<RCC version='1.0'><qresource prefix='/i18n/pvsinput'>")
+foreach(qm ${pvsinput_QMS})
+ file(RELATIVE_PATH qm_rel ${CMAKE_CURRENT_BINARY_DIR} ${qm})
+ get_filename_component(qm_basename ${qm} NAME)
+ file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/pvsinput.qrc"
+ "<file alias='${qm_basename}'>${qm_rel}</file>")
+endforeach()
+file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/pvsinput.qrc" "</qresource></RCC>")
+
+qt4_add_resources(pvsinput_RCS
+ "${CMAKE_CURRENT_BINARY_DIR}/pvsinput.qrc")
+
add_library(
pvsinput
STATIC
${pvsinput_SRCS}
+ ${pvsinput_RCS}
)
+
+if(EXISTS /etc/gentoo-release)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/pvsprivinputd.gentooinit.in ${CMAKE_CURRENT_BINARY_DIR}/pvsprivinputd.init @ONLY@)
+else()
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/pvsprivinputd.lsbinit.in ${CMAKE_CURRENT_BINARY_DIR}/pvsprivinputd.init @ONLY@)
+endif()
+install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/pvsprivinputd.init
+ DESTINATION /etc/init.d
+ RENAME pvsprivinputd)