1.1.10
by Matthieu Baerts (matttbe)
Import upstream version 2.2.0~0beta4 |
1 |
########### requirements ###############
|
2 |
||
3 |
cmake_minimum_required (VERSION 2.6) |
|
4 |
find_package (PkgConfig) |
|
5 |
include (CheckLibraryExists) |
|
6 |
include (CheckIncludeFiles) |
|
7 |
include (CheckFunctionExists) |
|
8 |
include (CheckSymbolExists) |
|
9 |
||
10 |
########### project ###############
|
|
11 |
||
12 |
project ("cairo-dock") |
|
1.1.11
by Matthieu Baerts (matttbe)
Import upstream version 2.2.0~0rc1 |
13 |
set (VERSION "2.2.0-0rc1") |
1.1.10
by Matthieu Baerts (matttbe)
Import upstream version 2.2.0~0beta4 |
14 |
|
15 |
add_definitions (-std=c99 -Wstrict-prototypes -Wextra -Wwrite-strings -Wuninitialized -Werror-implicit-function-declaration) #-Wunreachable-code -Wno-unused-parameter -Wall |
|
16 |
if (NOT ${CMAKE_BUILD_TYPE}) |
|
17 |
add_definitions (-O3) |
|
18 |
endif() |
|
19 |
add_definitions (-DGL_GLEXT_PROTOTYPES="1") |
|
20 |
add_definitions (-DCAIRO_DOCK_DEFAULT_ICON_NAME="default-icon.svg") |
|
21 |
add_definitions (-DCAIRO_DOCK_ICON="cairo-dock.svg") |
|
22 |
add_definitions (-DCAIRO_DOCK_LOGO="cairo-dock-logo.png") |
|
23 |
add_definitions (-DCAIRO_DOCK_DATA_DIR="cairo-dock") |
|
24 |
add_custom_target (uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") |
|
25 |
||
26 |
############ sources tarball ############
|
|
27 |
||
28 |
set (CPACK_SOURCE_GENERATOR "TGZ") |
|
29 |
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}") |
|
30 |
set (CPACK_SOURCE_IGNORE_FILES |
|
31 |
"/build/;/.bzr/;bzrignore$;/config.h$;/scripts/;/doc/;/misc/;/en_GB.po$;~$;${CPACK_SOURCE_IGNORE_FILES}") |
|
32 |
include (CPack) |
|
33 |
||
34 |
add_custom_target( dist |
|
35 |
COMMAND ${CMAKE_MAKE_PROGRAM} package_source) |
|
36 |
add_custom_target(dist-bzr |
|
37 |
COMMAND bzr export ${CMAKE_PROJECT_NAME}-${VERSION}.tar.gz |
|
38 |
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}) |
|
39 |
||
40 |
########### global variables ###############
|
|
41 |
||
42 |
if( WIN32 ) |
|
43 |
message(FATAL_ERROR "Cairo-Dock requires an air-conditioned room. Please close Windows!") |
|
44 |
endif( WIN32 ) |
|
45 |
||
46 |
set (PACKAGE ${CMAKE_PROJECT_NAME}) |
|
47 |
set (GETTEXT_PACKAGE ${PACKAGE}) |
|
48 |
set (prefix ${CMAKE_INSTALL_PREFIX}) |
|
49 |
set (exec_prefix ${prefix}) |
|
50 |
set (datadir ${prefix}/share) |
|
51 |
set (pkgdatadir ${datadir}/cairo-dock) |
|
52 |
set (mandir ${datadir}/man) |
|
53 |
||
14
by Matthieu Baerts (matttbe)
* New Upstream Version (LP: #632055) |
54 |
if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT "${FORCE_LIB64}" STREQUAL "") # 64bits and force install in lib64 |
1.1.10
by Matthieu Baerts (matttbe)
Import upstream version 2.2.0~0beta4 |
55 |
set (libdir ${prefix}/lib64) |
56 |
else() |
|
57 |
set (libdir ${prefix}/lib${LIB_SUFFIX}) |
|
58 |
endif() |
|
59 |
||
60 |
set (includedir ${prefix}/include) |
|
61 |
set (bindir ${prefix}/bin) |
|
62 |
||
63 |
########### dependencies ###############
|
|
64 |
||
65 |
pkg_check_modules ("PACKAGE" REQUIRED "gtk+-2.0" "gthread-2.0" "cairo" "librsvg-2.0" "dbus-1" "dbus-glib-1" "libxml-2.0" "gtkglext-1.0" "xrender" "libcurl") |
|
66 |
||
67 |
pkg_check_modules ("XEXTEND" "xtst" "xcomposite" "xinerama") |
|
68 |
if (${XEXTEND_FOUND}) |
|
69 |
set (HAVE_XEXTEND 1) |
|
70 |
set (xextend_required "xtst xcomposite xinerama") # pour le .pc |
|
71 |
endif() |
|
72 |
||
73 |
# We use crypt(3) which may be in libc, or in libcrypt (eg FreeBSD)
|
|
74 |
check_library_exists (crypt encrypt "" HAVE_LIBCRYPT) |
|
75 |
if (${HAVE_LIBCRYPT}) |
|
76 |
set (LIBCRYPT_LIBS "-lcrypt") |
|
77 |
endif() |
|
78 |
||
79 |
check_include_files ("math.h" HAVE_MATH_H) |
|
80 |
check_symbol_exists (LC_MESSAGES "locale.h" HAVE_LC_MESSAGES) |
|
81 |
CHECK_LIBRARY_EXISTS (m sin "" HAVE_LIBM) |
|
82 |
||
83 |
MESSAGE (STATUS) |
|
84 |
MESSAGE (STATUS "Cairo-Dock will be compiled with the following options :") |
|
85 |
if (${XEXTEND_FOUND}) |
|
86 |
MESSAGE (STATUS " * Use X Extensions : yes") |
|
87 |
else() |
|
88 |
MESSAGE (STATUS " * Use X Extensions : no") |
|
89 |
endif() |
|
90 |
if (${HAVE_LIBCRYPT}) |
|
91 |
MESSAGE (STATUS " * crypt passwords : yes") |
|
92 |
else() |
|
93 |
MESSAGE (STATUS " * crypt passwords : no") |
|
94 |
endif() |
|
95 |
MESSAGE (STATUS) |
|
96 |
||
97 |
########### next steps ###############
|
|
98 |
||
99 |
add_subdirectory (src) |
|
100 |
add_subdirectory (data) |
|
101 |
add_subdirectory (po) |
|
102 |
||
103 |
########### variables defined at compil time ###############
|
|
104 |
||
105 |
set (CAIRO_DOCK_SHARE_DATA_DIR ${pkgdatadir}) |
|
106 |
set (CAIRO_DOCK_SHARE_THEMES_DIR ${pkgdatadir}/themes) |
|
107 |
set (CAIRO_DOCK_MODULES_DIR ${libdir}/cairo-dock) |
|
108 |
set (CAIRO_DOCK_LOCALE_DIR ${datadir}/locale) |
|
109 |
set (CAIRO_DOCK_THEMES_DIR "themes") |
|
110 |
set (CAIRO_DOCK_GETTEXT_PACKAGE ${GETTEXT_PACKAGE}) |
|
111 |
||
112 |
set (GLDI_SHARE_DATA_DIR ${pkgdatadir}) |
|
113 |
||
114 |
########### file generation ###############
|
|
115 |
||
116 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake.in ${CMAKE_CURRENT_SOURCE_DIR}/src/config.h) |
|
117 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/cairo-dock.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/cairo-dock.conf) |
|
118 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/cairo-dock-simple.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/cairo-dock-simple.conf) |
|
119 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/main-dock.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/main-dock.conf) |
|
120 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/themes.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/themes.conf) |
|
121 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/help.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/help.conf) |
|
122 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/cairo-dock.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cairo-dock.pc) |
|
123 |
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake IMMEDIATE @ONLY) |
|
124 |
||
125 |
########### install files ###############
|
|
126 |
||
127 |
install (FILES cairo-dock-package-theme launch-cairo-dock-with-delay |
|
128 |
DESTINATION ${bindir} |
|
129 |
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) |
|
130 |
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/cairo-dock.pc DESTINATION ${libdir}/pkgconfig) |
|
131 |
||
132 |
########### misc ###############
|
|
133 |
#set (CPACK_SOURCE_GENERATOR "TGZ")
|
|
134 |
#set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}")
|
|
135 |
#set (CPACK_SOURCE_IGNORE_FILES "/build/;/.bzr/;/.deps/;Makefile$;Makefile.in;.gmo$;/.libs/;.lo$;.la$;POTFILES;stamp-it;aclocal.m4;config.guess$;/config.h$;/config.h.in$;/config.log$;/config.status$;/config.sub$;/configure$;/depcomp$;/install-sh$;/libtool$;/ltmain.sh$;/missing$;/stamp-h1$;/compile;/CMakeFiles/;/_CPack_Packages/;/autom4te.cache/;/install_manifest.txt$;.tar.gz$;/CMakeCache.txt$;/cairo-dock$;/scripts/;/doc/;/data/themes.conf$;/data/cairo-dock.conf$;/data/main-dock.conf$;/data/cairo-dock-simple.conf$;/cairo-dock.pc$;.cmake$;~$;${CPACK_SOURCE_IGNORE_FILES}")
|
|
136 |
#include (CPack) # a inclure apres les set.
|
|
137 |
#add_custom_target( dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source) # pour pouvoir l'appeler avec "make dist"
|