[go: up one dir, main page]

File: CMakeLists.txt

package info (click to toggle)
appmenu-gtk-module 0.7.1-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 560 kB
  • sloc: ansic: 5,714; python: 227; xml: 20; makefile: 10; sh: 4
file content (65 lines) | stat: -rw-r--r-- 2,556 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
cmake_minimum_required (VERSION 3.4)
cmake_policy (VERSION 3.4)
project (appmenu-gtk-module C)
list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
enable_testing ()
include(GNUInstallDirs)
include(CMakeDependentOption)
include(FeatureSummary)
find_package (PkgConfig QUIET)
find_package(GLIB2 REQUIRED QUIET COMPONENTS GLIB GOBJECT GIO GIO_UNIX COMPILE_SCHEMAS)
include(GLibProgramHandlers)
find_package(GTK 3.22 QUIET COMPONENTS GDK GTK X11 WAYLAND)
find_package(GTK 2.24 COMPONENTS GDK GTK X11)
set(GTK2_FOUND ${GTK_FOUND})

find_path(WAYLAND_INCLUDE
    NAMES wayland-client.h
    HINTS ${CMAKE_FULL_INCLUDE_DIR}
    PATH_SUFFIXES wayland
)

cmake_dependent_option(STANDALONE "Build appmenu-gtk-module STANDALONE" ON
        "NOT CORE_FOUND" OFF)
option(ENABLE_APPMENU_GTK_MODULE "Build appmenu-gtk-module" ON)

set(APPMENU_GTK2_MODULE ${GTK2_FOUND} AND ${ENABLE_APPMENU_GTK_MODULE})
add_feature_info(Gtk3Module ENABLE_APPMENU_GTK_MODULE "Gtk+ module for AppMenu - Gtk3 version")
add_feature_info(GtkModuleDemos ENABLE_GTK_MODULE_DEMOS "Gtk+ module for AppMenu - demos")
add_feature_info(Gtk2Module APPMENU_GTK2_MODULE "Gtk+ module for AppMenu - Gtk2 version")

if(STANDALONE)
        find_package(VCM NO_MODULE)
        if(VCM_FOUND)
            list(APPEND CMAKE_MODULE_PATH ${VCM_MODULE_PATH})
            include(GitVersion)
            determine_fallback_version_for_subproject(${CMAKE_SOURCE_DIR}/cmake ${CMAKE_SOURCE_DIR}/../../)
            include(${CMAKE_SOURCE_DIR}/cmake/FallbackVersion.cmake)
            set (CPACK_PACKAGE_VERSION ${VERSION})
            set (CPACK_PACKAGE_RELEASE "1")
        else()
            set (CPACK_PACKAGE_VERSION "unknown")
            set (CPACK_PACKAGE_RELEASE "1")
        endif()
        set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION}")
        set (CPACK_SOURCE_IGNORE_FILES "/build/;/.gitmodules;/.git;/.gitignore;~$;${CPACK_SOURCE_IGNORE_FILES}")
        set (CPACK_SOURCE_GENERATOR "TXZ")
        include (CPack)
        add_custom_target (dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
endif()

if(ENABLE_APPMENU_GTK_MODULE OR STANDALONE)
	add_subdirectory(data)
	add_subdirectory(lib)
	add_subdirectory(src)
	add_subdirectory(tests)
endif()

if(ENABLE_GTK_MODULE_DEMOS)
        find_package(GtkDoc CONFIG PATH_SUFFIXES GtkDoc)
        if(GtkDoc_FOUND)
                add_subdirectory(docs)
        endif()
endif()
cmake_dependent_option(ENABLE_GTK_MODULE_DEMOS "Enable demo programs and docs for gtk module" OFF
        "ENABLE_APPMENU_GTK_MODULE" OFF)