aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt49
-rw-r--r--README.md12
2 files changed, 48 insertions, 13 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2a9ffde9..31e79ca4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,16 +41,23 @@ add_definitions(-DSWAY_GIT_BRANCH=\"${GIT_BRANCH}\")
string(TIMESTAMP CURRENT_DATE "%Y-%m-%d" UTC)
add_definitions(-DSWAY_VERSION_DATE=\"${CURRENT_DATE}\")
-find_package(Cairo REQUIRED)
+option(enable-swaylock "Enables the swaylock utility" YES)
+option(enable-swaybg "Enables the wallpaper utility" YES)
+option(enable-swaybar "Enables the swaybar utility" YES)
+option(enable-swaygrab "Enables the swaygrab utility" YES)
+option(enable-swaymsg "Enables the swaymsg utility" YES)
+
find_package(JsonC REQUIRED)
find_package(PCRE REQUIRED)
-find_package(Pango REQUIRED)
find_package(WLC REQUIRED)
find_package(Wayland REQUIRED)
find_package(XKBCommon REQUIRED)
-find_package(GdkPixbuf REQUIRED)
-find_package(PAM REQUIRED)
+find_package(Cairo)
+find_package(Pango)
+find_package(GdkPixbuf)
+find_package(PAM)
+include(FeatureSummary)
include(Manpage)
include_directories(include)
@@ -60,14 +67,38 @@ add_subdirectory(common)
add_subdirectory(wayland)
add_subdirectory(sway)
-add_subdirectory(swaybg)
-add_subdirectory(swaymsg)
-add_subdirectory(swaygrab)
-add_subdirectory(swaybar)
-add_subdirectory(swaylock)
+if(enable-swaybg)
+ if(CAIRO_FOUND AND PANGO_FOUND AND GDK_PIXBUF_FOUND)
+ add_subdirectory(swaybg)
+ else()
+ message(WARNING "Not building swaybg - cairo, pango, and gdk-pixbuf are required.")
+ endif()
+endif()
+if(enable-swaymsg)
+ add_subdirectory(swaymsg)
+endif()
+if(enable-swaygrab)
+ add_subdirectory(swaygrab)
+endif()
+if(enable-swaybar)
+ if(CAIRO_FOUND AND PANGO_FOUND AND GDK_PIXBUF_FOUND)
+ add_subdirectory(swaybar)
+ else()
+ message(WARNING "Not building swaybar - cairo, pango, and gdk-pixbuf are required.")
+ endif()
+endif()
+if(enable-swaylock)
+ if(CAIRO_FOUND AND PANGO_FOUND AND GDK_PIXBUF_FOUND AND PAM_FOUND)
+ add_subdirectory(swaylock)
+ else()
+ message(WARNING "Not building swaylock - cairo, pango, gdk-pixbuf, and PAM are required.")
+ endif()
+endif()
install(
FILES ${CMAKE_CURRENT_SOURCE_DIR}/sway.desktop
DESTINATION share/wayland-sessions
COMPONENT data
)
+
+feature_summary(WHAT ALL)
diff --git a/README.md b/README.md
index 5bbf07a2..088a4f82 100644
--- a/README.md
+++ b/README.md
@@ -41,10 +41,14 @@ Install dependencies:
* asciidoc
* pcre
* json-c
-* pango
-* cairo
-* gdk-pixbuf2
-* pam
+* pango *
+* cairo *
+* gdk-pixbuf2 *
+* pam **
+
+_\*Only required for swaybar, swaybg, and swaylock_
+
+_\*\*Only required for swaylock_
Run these commands: