~cairo-dock-team/ubuntu/oneiric/cairo-dock/2.3.0-3

« back to all changes in this revision

Viewing changes to CMakeLists.txt

  • Committer: Bazaar Package Importer
  • Author(s): Matthieu Baerts (matttbe)
  • Date: 2010-08-09 23:26:12 UTC
  • mfrom: (1.1.10 upstream)
  • Revision ID: james.westby@ubuntu.com-20100809232612-yp4c6ig3jt1bzpdv
Tags: 2.2.0~0beta4-0ubuntu1
* New Upstream Version (LP: #614624)
* Fixed a few bugs on LP:
 - LP: #518453: Dock appears under all windows
                 (Compiz - fullscreen window)
 - LP: #521369: Separator are not removed when closing
                 grouped windows
 - LP: #521762: Some sentences are not correct
 - LP: #526466: Icons of apps with same class shouldn't
                 be stacked by default
 - LP: #535083: Dialogues looks ugly when a lot of them
                 appears at the same time
 - More details on the 'ChangeLog' file
* debian/rules:
 - Autotools has been replaced by CMake
 - Man pages are now included in the source code
* debian/copyright:
 - Updated with the new pathes and new files
* debian/control:
 - Autotools has been replaced by CMake
 - Added libcurl4-gnutls-dev as Build-deps
 - Bump Standard-Version to 3.9.1
* debian/cairo-dock-core.install:
 - Man pages are now included in the source code
 - All sonames are now installed into lib32 or lib64
* debian/cairo-dock-dev.install:
 - pkgconfig is now installed into lib32 or lib64

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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")
 
13
set (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
 
 
54
if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND "${LIB_SUFFIX}" STREQUAL "" AND "${FORCE_NOT_LIB64}" STREQUAL "" )
 
55
        set (libdir ${prefix}/lib64)
 
56
elseif( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT "${FORCE_NOT_LIB64}" STREQUAL "" )
 
57
        set (libdir ${prefix}/lib${LIB_SUFFIX})
 
58
else()
 
59
        set (libdir ${prefix}/lib${LIB_SUFFIX})
 
60
endif()
 
61
 
 
62
set (includedir ${prefix}/include)
 
63
set (bindir ${prefix}/bin)
 
64
 
 
65
########### dependencies ###############
 
66
 
 
67
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")
 
68
 
 
69
pkg_check_modules ("XEXTEND" "xtst" "xcomposite" "xinerama")
 
70
if (${XEXTEND_FOUND})
 
71
        set (HAVE_XEXTEND 1)
 
72
        set (xextend_required "xtst xcomposite xinerama")  # pour le .pc
 
73
endif()
 
74
 
 
75
# We use crypt(3) which may be in libc, or in libcrypt (eg FreeBSD)
 
76
check_library_exists (crypt encrypt "" HAVE_LIBCRYPT)
 
77
if (${HAVE_LIBCRYPT})
 
78
        set (LIBCRYPT_LIBS "-lcrypt")
 
79
endif()
 
80
 
 
81
check_include_files ("math.h" HAVE_MATH_H)
 
82
check_symbol_exists (LC_MESSAGES "locale.h" HAVE_LC_MESSAGES)
 
83
CHECK_LIBRARY_EXISTS (m sin "" HAVE_LIBM)
 
84
 
 
85
MESSAGE (STATUS)
 
86
MESSAGE (STATUS "Cairo-Dock will be compiled with the following options :")
 
87
if (${XEXTEND_FOUND})
 
88
        MESSAGE (STATUS " * Use X Extensions : yes")
 
89
else()
 
90
        MESSAGE (STATUS " * Use X Extensions : no")
 
91
endif()
 
92
if (${HAVE_LIBCRYPT})
 
93
        MESSAGE (STATUS " * crypt passwords : yes")
 
94
else()
 
95
        MESSAGE (STATUS " * crypt passwords : no")
 
96
endif()
 
97
MESSAGE (STATUS)
 
98
 
 
99
########### next steps ###############
 
100
 
 
101
add_subdirectory (src)
 
102
add_subdirectory (data)
 
103
add_subdirectory (po)
 
104
 
 
105
########### variables defined at compil time ###############
 
106
 
 
107
set (CAIRO_DOCK_SHARE_DATA_DIR ${pkgdatadir})
 
108
set (CAIRO_DOCK_SHARE_THEMES_DIR ${pkgdatadir}/themes)
 
109
set (CAIRO_DOCK_MODULES_DIR ${libdir}/cairo-dock)
 
110
set (CAIRO_DOCK_LOCALE_DIR ${datadir}/locale)
 
111
set (CAIRO_DOCK_THEMES_DIR "themes")
 
112
set (CAIRO_DOCK_GETTEXT_PACKAGE ${GETTEXT_PACKAGE})
 
113
 
 
114
set (GLDI_SHARE_DATA_DIR ${pkgdatadir})
 
115
 
 
116
########### file generation ###############
 
117
 
 
118
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake.in ${CMAKE_CURRENT_SOURCE_DIR}/src/config.h)
 
119
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/cairo-dock.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/cairo-dock.conf)
 
120
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/cairo-dock-simple.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/cairo-dock-simple.conf)
 
121
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/main-dock.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/main-dock.conf)
 
122
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/themes.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/themes.conf)
 
123
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/data/help.conf.in ${CMAKE_CURRENT_BINARY_DIR}/data/help.conf)
 
124
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/cairo-dock.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cairo-dock.pc)
 
125
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake IMMEDIATE @ONLY)
 
126
 
 
127
########### install files ###############
 
128
 
 
129
install (FILES cairo-dock-package-theme launch-cairo-dock-with-delay
 
130
        DESTINATION ${bindir}
 
131
        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
 
132
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/cairo-dock.pc DESTINATION ${libdir}/pkgconfig)
 
133
 
 
134
###########     misc      ###############
 
135
#set (CPACK_SOURCE_GENERATOR "TGZ")
 
136
#set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}")
 
137
#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}")
 
138
#include (CPack)  # a inclure apres les set.
 
139
#add_custom_target( dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)  # pour pouvoir l'appeler avec "make dist"