summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJari Vetoniemi <mailRoxas@gmail.com>2019-03-25 10:52:24 +0200
committerGitHub <noreply@github.com>2019-03-25 10:52:24 +0200
commitb375ef8b0bd2c40b4fc26bd0c4d38dcb4374c149 (patch)
treebb8fb87db0be7f207c98dbb79a44b4955fccf6f6 /lib
parent1be74a290f7ef9a0cc420ad98239c2f7dbb03165 (diff)
parent5ca32626dc603dfddcf833c762174b4260b8af2c (diff)
downloadbemenu-b375ef8b0bd2c40b4fc26bd0c4d38dcb4374c149.tar.gz
bemenu-b375ef8b0bd2c40b4fc26bd0c4d38dcb4374c149.tar.bz2
bemenu-b375ef8b0bd2c40b4fc26bd0c4d38dcb4374c149.zip
Merge pull request #46 from DanySpin97/master
Add options for renderers, make deps required
Diffstat (limited to 'lib')
-rw-r--r--lib/renderers/CMakeLists.txt22
-rw-r--r--lib/renderers/curses/CMakeLists.txt14
-rw-r--r--lib/renderers/wayland/CMakeLists.txt26
-rw-r--r--lib/renderers/x11/CMakeLists.txt16
4 files changed, 42 insertions, 36 deletions
diff --git a/lib/renderers/CMakeLists.txt b/lib/renderers/CMakeLists.txt
index ef85317..a3350c7 100644
--- a/lib/renderers/CMakeLists.txt
+++ b/lib/renderers/CMakeLists.txt
@@ -1,8 +1,20 @@
-SET(RENDERERS
- "curses"
- "wayland"
- "x11"
-)
+SET(RENDERERS "")
+
+IF(BEMENU_CURSES_RENDERER)
+ LIST(APPEND RENDERERS "curses")
+ENDIF()
+
+IF(BEMENU_X11_RENDERER)
+ LIST(APPEND RENDERERS "x11")
+ENDIF()
+
+IF(BEMENU_WAYLAND_RENDERER)
+ LIST(APPEND RENDERERS "wayland")
+ENDIF()
+
+IF(NOT RENDERERS)
+ MESSAGE(FATAL_ERROR "At least one renderer should be enabled")
+ENDIF()
ADD_DEFINITIONS(-DPANGO_DISABLE_DEPRECATED)
diff --git a/lib/renderers/curses/CMakeLists.txt b/lib/renderers/curses/CMakeLists.txt
index 86acc02..09fad22 100644
--- a/lib/renderers/curses/CMakeLists.txt
+++ b/lib/renderers/curses/CMakeLists.txt
@@ -1,10 +1,8 @@
SET(CURSES_NEED_NCURSES TRUE)
-FIND_PACKAGE(Curses)
+FIND_PACKAGE(Curses REQUIRED)
-if (CURSES_FOUND)
- INCLUDE_DIRECTORIES(${CURSES_INCLUDE_DIRS})
- ADD_LIBRARY(bemenu-renderer-curses SHARED curses.c)
- SET_TARGET_PROPERTIES(bemenu-renderer-curses PROPERTIES PREFIX "")
- TARGET_LINK_LIBRARIES(bemenu-renderer-curses ${BEMENU_LIBRARIES} ${CURSES_LIBRARY} m)
- INSTALL(TARGETS bemenu-renderer-curses DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")
-endif ()
+INCLUDE_DIRECTORIES(${CURSES_INCLUDE_DIRS})
+ADD_LIBRARY(bemenu-renderer-curses SHARED curses.c)
+SET_TARGET_PROPERTIES(bemenu-renderer-curses PROPERTIES PREFIX "")
+TARGET_LINK_LIBRARIES(bemenu-renderer-curses ${BEMENU_LIBRARIES} ${CURSES_LIBRARY} m)
+INSTALL(TARGETS bemenu-renderer-curses DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")
diff --git a/lib/renderers/wayland/CMakeLists.txt b/lib/renderers/wayland/CMakeLists.txt
index 3aa66ac..8246908 100644
--- a/lib/renderers/wayland/CMakeLists.txt
+++ b/lib/renderers/wayland/CMakeLists.txt
@@ -1,15 +1,13 @@
-FIND_PACKAGE(Wayland)
-FIND_PACKAGE(Cairo)
-FIND_PACKAGE(Pango)
-FIND_PACKAGE(XKBCommon)
+FIND_PACKAGE(Wayland REQUIRED)
+FIND_PACKAGE(Cairo REQUIRED)
+FIND_PACKAGE(Pango REQUIRED)
+FIND_PACKAGE(XKBCommon REQUIRED)
-if (WAYLAND_FOUND AND CAIRO_FOUND AND PANGO_FOUND AND XKBCOMMON_FOUND)
- INCLUDE(Wayland)
- WAYLAND_ADD_PROTOCOL_CLIENT(proto-layer-shell "wlr-layer-shell-unstable-v1.xml" layer-shell)
- WAYLAND_ADD_PROTOCOL_CLIENT(proto-xdg-shell "xdg-shell.xml" xdg-shell)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${WAYLAND_CLIENT_INCLUDE_DIR} ${XKBCOMMON_INCLUDE_DIR} ${CAIRO_INCLUDE_DIRS} ${PANGO_INCLUDE_DIRS})
- ADD_LIBRARY(bemenu-renderer-wayland SHARED wayland.c registry.c window.c ${proto-layer-shell} ${proto-xdg-shell})
- SET_TARGET_PROPERTIES(bemenu-renderer-wayland PROPERTIES PREFIX "")
- TARGET_LINK_LIBRARIES(bemenu-renderer-wayland ${BEMENU_LIBRARIES} ${WAYLAND_CLIENT_LIBRARIES} ${XKBCOMMON_LIBRARIES} ${CAIRO_LIBRARIES} ${PANGO_LIBRARIES} m)
- INSTALL(TARGETS bemenu-renderer-wayland DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")
-endif ()
+INCLUDE(Wayland)
+WAYLAND_ADD_PROTOCOL_CLIENT(proto-layer-shell "wlr-layer-shell-unstable-v1.xml" layer-shell)
+WAYLAND_ADD_PROTOCOL_CLIENT(proto-xdg-shell "xdg-shell.xml" xdg-shell)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${WAYLAND_CLIENT_INCLUDE_DIR} ${XKBCOMMON_INCLUDE_DIR} ${CAIRO_INCLUDE_DIRS} ${PANGO_INCLUDE_DIRS})
+ADD_LIBRARY(bemenu-renderer-wayland SHARED wayland.c registry.c window.c ${proto-layer-shell} ${proto-xdg-shell})
+SET_TARGET_PROPERTIES(bemenu-renderer-wayland PROPERTIES PREFIX "")
+TARGET_LINK_LIBRARIES(bemenu-renderer-wayland ${BEMENU_LIBRARIES} ${WAYLAND_CLIENT_LIBRARIES} ${XKBCOMMON_LIBRARIES} ${CAIRO_LIBRARIES} ${PANGO_LIBRARIES} m)
+INSTALL(TARGETS bemenu-renderer-wayland DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")
diff --git a/lib/renderers/x11/CMakeLists.txt b/lib/renderers/x11/CMakeLists.txt
index 7081e25..7bebe01 100644
--- a/lib/renderers/x11/CMakeLists.txt
+++ b/lib/renderers/x11/CMakeLists.txt
@@ -1,10 +1,8 @@
-FIND_PACKAGE(X11)
-FIND_PACKAGE(Cairo)
+FIND_PACKAGE(X11 REQUIRED)
+FIND_PACKAGE(Cairo REQUIRED)
-if (X11_FOUND AND X11_Xinerama_FOUND AND CAIRO_FOUND AND PANGO_FOUND)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH} ${CAIRO_INCLUDE_DIRS} ${PANGO_INCLUDE_DIRS})
- ADD_LIBRARY(bemenu-renderer-x11 SHARED x11.c window.c xkb_unicode.c)
- SET_TARGET_PROPERTIES(bemenu-renderer-x11 PROPERTIES PREFIX "")
- TARGET_LINK_LIBRARIES(bemenu-renderer-x11 ${BEMENU_LIBRARIES} ${X11_LIBRARIES} ${X11_Xinerama_LIB} ${CAIRO_LIBRARIES} ${PANGO_LIBRARIES} m)
- INSTALL(TARGETS bemenu-renderer-x11 DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")
-endif ()
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH} ${CAIRO_INCLUDE_DIRS} ${PANGO_INCLUDE_DIRS})
+ADD_LIBRARY(bemenu-renderer-x11 SHARED x11.c window.c xkb_unicode.c)
+SET_TARGET_PROPERTIES(bemenu-renderer-x11 PROPERTIES PREFIX "")
+TARGET_LINK_LIBRARIES(bemenu-renderer-x11 ${BEMENU_LIBRARIES} ${X11_LIBRARIES} ${X11_Xinerama_LIB} ${CAIRO_LIBRARIES} ${PANGO_LIBRARIES} m)
+INSTALL(TARGETS bemenu-renderer-x11 DESTINATION "${CMAKE_INSTALL_LIBDIR}/bemenu")