10
10
########### project ###############
12
12
project ("cairo-dock-plugins")
13
set (VERSION "2.4.0~0beta2")
13
set (VERSION "2.4.0~2")
15
add_definitions (-std=c99 -Wstrict-prototypes -Wextra -Wwrite-strings -Wuninitialized -Werror-implicit-function-declaration) #-Wunreachable-code -Wno-unused-parameter -Wall
15
add_definitions (-std=c99 -Wextra -Wwrite-strings -Wuninitialized -Werror-implicit-function-declaration) # removed for stable versions: -Wstrict-prototypes #-Wunreachable-code -Wno-unused-parameter -Wall
16
16
if (NOT ${CMAKE_BUILD_TYPE})
17
17
add_definitions (-O3)
130
130
set (MODULES_MISSING "${MODULES_MISSING} alsa")
132
132
set (GETTEXT_ALSA_MIXER ${GETTEXT_PLUGINS})
133
set (VERSION_ALSA_MIXER "1.0.13")
133
set (VERSION_ALSA_MIXER "1.1.1")
134
134
set (PACKAGE_ALSA_MIXER "cd-AlsaMixer")
135
135
set (with_alsa "yes")
136
136
set (alsa_mixerdatadir "${pluginsdatadir}/AlsaMixer")
178
178
set (MODULES_MISSING "${MODULES_MISSING} libical")
180
180
set (GETTEXT_CLOCK ${GETTEXT_PLUGINS})
181
set (VERSION_CLOCK "2.1.3")
181
set (VERSION_CLOCK "2.1.4")
182
182
set (PACKAGE_CLOCK "cd-clock")
183
183
set (clockuserdirname "clock")
184
184
set (clockdatadir "${pluginsdatadir}/clock")
186
186
add_subdirectory (clock)
188
188
############# COMPOSITE_MANAGER #################
189
message (STATUS "> Coposite Manager:")
189
message (STATUS "> Composite Manager:")
190
190
set (GETTEXT_COMPOSITE_MANAGER ${GETTEXT_PLUGINS})
191
191
set (VERSION_COMPOSITE_MANAGER "1.0.0")
192
192
set (PACKAGE_COMPOSITE_MANAGER "cd-Composite-Manager")
197
197
############# DBUS #################
198
198
message (STATUS "> DBus:")
199
message (STATUS "* Python:")
199
message (STATUS " * Python:")
200
200
find_program (PYTHON_EXECUTABLE python)
201
201
EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "import sys; print sys.version" OUTPUT_VARIABLE PYTHON_VERSION)
202
202
if ("${PYTHON_VERSION}" STREQUAL "")
206
206
set (with_python "no")
208
208
STRING (REGEX REPLACE "\n" "" PYTHON_VERSION ${PYTHON_VERSION})
209
message (STATUS "Python Version: ${PYTHON_VERSION}")
209
message (STATUS " Python Version: ${PYTHON_VERSION}")
210
210
GET_FILENAME_COMPONENT(DEBIAN_VERSION /etc/debian_version ABSOLUTE)
211
211
if (EXISTS ${DEBIAN_VERSION})
212
message (STATUS " will use '--install-layout deb' with 'python setup.py install'")
212
message (STATUS " will use '--install-layout deb' with 'python setup.py install'")
213
213
set (DEBIAN_INSTALL_LAYOUT "--install-layout deb")
215
215
set (PYTHON_FOUND "TRUE")
216
216
set (with_python "yes")
219
message (STATUS "* Ruby:")
219
message (STATUS " * Ruby:")
220
220
# find_package(Ruby) found libs of ruby-dev but we only need a directory where we can install ruby libs.
221
221
find_program (RUBY_EXECUTABLE ruby)
222
222
EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['rubylibdir']"
223
223
OUTPUT_VARIABLE RUBY_LIB_DIR)
224
message (STATUS "RUBY_LIBRARY: ${RUBY_LIB_DIR}")
224
message (STATUS " Ruby library dir: ${RUBY_LIB_DIR}")
225
225
if ("${RUBY_LIB_DIR}" STREQUAL "" OR "${RUBY_LIB_DIR}" STREQUAL "nil")
226
226
message (STATUS "Could not find ruby libs, won't install Ruby interface.")
227
227
message (WARNING "This program is required to compile DBus applet with Ruby interface: ruby")
231
231
string (REGEX REPLACE "lib/ruby/[0-9].[0-9]" "" RUBY_LIB_DIR_INSTALL "${RUBY_LIB_DIR}")
232
232
string (REGEX REPLACE "${RUBY_LIB_DIR_INSTALL}" "" RUBY_LIB_DIR_INSTALL "${RUBY_LIB_DIR}")
233
233
set (RUBY_LIB_DIR "${CMAKE_INSTALL_PREFIX}/${RUBY_LIB_DIR_INSTALL}")
234
message (STATUS " will be installed in: ${RUBY_LIB_DIR}")
234
message (STATUS " will be installed in: ${RUBY_LIB_DIR}")
235
235
set (RUBY_FOUND "TRUE")
236
236
set (with_ruby "yes")
239
message (STATUS "* Mono:")
239
message (STATUS " * Mono:")
240
240
#find_package (Mono)
241
241
find_program (GMCS_EXECUTABLE gmcs)
242
242
if ("${GMCS_EXECUTABLE}" STREQUAL "" OR NOT EXISTS ${GMCS_EXECUTABLE})
258
message (STATUS "* Vala:")
258
message (STATUS " * Vala:")
259
259
# Valac is only riquired to convert vala files to C files.
260
260
# So we can directly use produced files (c, h, vapi) without using valac.
261
261
set (with_vala "yes")
262
262
set (with_valac "no")
263
263
find_program (VALAC_EXE valac)
264
message (STATUS "VALAC_EXE: ${VALAC_EXE}")
264
message (STATUS " Path to valac: ${VALAC_EXE}")
266
266
if ("${WITH_VALA}" STREQUAL "no")
267
267
set (with_vala "no")
273
273
OUTPUT_VARIABLE "VALA_VERSION")
274
274
string(REPLACE "Vala" "" "VALA_VERSION" ${VALA_VERSION})
275
275
string(STRIP ${VALA_VERSION} "VALA_VERSION")
276
message (STATUS "VALA_VERSION: ${VALA_VERSION}")
276
message (STATUS " Vala version: ${VALA_VERSION}")
278
278
STRING (REGEX REPLACE "\\..*" "" VALA_MAJOR "${VALA_VERSION}")
279
279
# message (STATUS "VALA_MAJOR : ${VALA_MAJOR}")
289
289
if (${VALA_MAJOR} GREATER 0 OR ${VALA_MINOR} GREATER 9) # vala >= 0.10
290
290
# AND (${VALA_MAJOR} LESS 1 AND ${VALA_MINOR} LESS 13)) # and <= 0.12
291
message (STATUS " Vala compiler OK (>= 0.10).")# and <= 0.12).")
291
message (STATUS " Vala compiler OK (>= 0.10).")# and <= 0.12).")
292
292
set (VALAC_FOUND "TRUE")
293
293
set (with_valac "yes")
295
message (STATUS "Vala compiler is too old (0.10 required) or too new (> 0.12), won't build Vala interface.")
295
message (STATUS " Vala compiler is too old (0.10 required) or too new (> 0.12), won't build Vala interface.")
298
298
message (STATUS "Could not find ValaC, won't build Vala interface with the version of your distribution.")
472
472
############# IMPULSE #################
473
473
set (with_impulse "no")
474
if ("${enable-impulse}" STREQUAL "yes")
475
message (STATUS "> Impulse:")
476
pkg_check_modules (IMPULSE_PACKAGES libpulse fftw3)
477
if ("${IMPULSE_PACKAGES_FOUND}" STREQUAL "")
478
message (STATUS "Could not find libpulse; Cairo-Dock won't be built with Impulse applet.")
479
message (WARNING "These modules are required to compile Impulse applet: libpulse fftw3")
480
set (MODULES_MISSING "${MODULES_MISSING} libpulse fftw3")
482
set (GETTEXT_IMPULSE ${GETTEXT_PLUGINS})
483
set (VERSION_IMPULSE "0.0.3")
484
set (PACKAGE_IMPULSE "cd-Impulse")
485
set (with_impulse "yes")
486
set (impulsedatadir "${pluginsdatadir}/Impulse")
487
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Impulse/data/Impulse.conf.in ${CMAKE_CURRENT_BINARY_DIR}/Impulse/data/Impulse.conf)
488
add_subdirectory (Impulse)
474
message (STATUS "> Impulse:")
475
pkg_check_modules (IMPULSE_PACKAGES libpulse fftw3)
476
if ("${IMPULSE_PACKAGES_FOUND}" STREQUAL "")
477
message (STATUS "Could not find libpulse; Cairo-Dock won't be built with Impulse applet.")
478
message (WARNING "These modules are required to compile Impulse applet: libpulse fftw3")
479
set (MODULES_MISSING "${MODULES_MISSING} libpulse fftw3")
481
set (GETTEXT_IMPULSE ${GETTEXT_PLUGINS})
482
set (VERSION_IMPULSE "0.0.3")
483
set (PACKAGE_IMPULSE "cd-Impulse")
484
set (with_impulse "yes")
485
set (impulsedatadir "${pluginsdatadir}/Impulse")
486
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Impulse/data/Impulse.conf.in ${CMAKE_CURRENT_BINARY_DIR}/Impulse/data/Impulse.conf)
487
add_subdirectory (Impulse)
492
490
############# INDICATOR-APPLET #################
508
506
if ("${INDICATOR_04_FOUND}" STREQUAL "1")
509
507
pkg_check_modules (INDICATOR_APPLET indicator-0.4 libido-0.1)
508
set (INDICATOR_APPLICATIONADDED_HAS_HINT 1) # now the ApplicationAdded signal (Status-Notifier) has a new parameter (hint) => https://code.launchpad.net/~ted/indicator-application/name-hints/+merge/67213
511
510
pkg_check_modules (INDICATOR_APPLET indicator libido-0.1)
511
set (INDICATOR_APPLICATIONADDED_HAS_HINT 0)
514
514
if ("${INDICATOR_APPLET_FOUND}" STREQUAL "1" AND "${DBUSMENU_FOUND}" STREQUAL "1" AND "${DBUSMENU_GTK_FOUND}" STREQUAL "1")
601
601
AND KIO_INCLUDE_DIR
603
603
AND KDE_INCLUDE_DIR)
604
message (STATUS "KDE: OK")
604
message (STATUS " KDE: OK")
605
605
set (VERSION_KDE_INTEGRATION "0.0.3")
606
606
set (PACKAGE_KDE_INTEGRATION "cd_kde-integration")
607
607
set (with_kde_integration2 "yes")
615
615
elseif (NOT "${enable-kde-integration}" STREQUAL "no")
616
616
pkg_check_modules (KDE_INTEGRATION gio-2.0)
617
message (STATUS "KDE_INTEGRATION_FOUND: ${KDE_INTEGRATION_FOUND}")
617
message (STATUS " KDE_INTEGRATION_FOUND: ${KDE_INTEGRATION_FOUND}")
618
618
if (NOT KDE_INTEGRATION_FOUND)
619
619
message (STATUS "Could not find gio; Cairo-Dock won't be built with KDE support.")
620
620
message (STATUS "This module is required to compile KDE-Integration applet: gio-2.0")
698
698
message (WARNING "This module is required to compile Mail applet: libetpan")
699
699
set (PROGRAMS_MISSING "${PROGRAMS_MISSING} libetpan-config")
701
message (STATUS "libetpan found. Using the following options:")
702
message (STATUS " Include directories: ${MAIL_PACKAGE_INCLUDE_DIRS}")
703
message (STATUS " Link directories: ${MAIL_PACKAGE_LIBRARY_DIRS}")
704
message (STATUS " Link libraries: ${MAIL_PACKAGE_LIBRARIES}")
701
message (STATUS " libetpan found. Using the following options:")
702
message (STATUS " Include directories: ${MAIL_PACKAGE_INCLUDE_DIRS}")
703
message (STATUS " Link directories: ${MAIL_PACKAGE_LIBRARY_DIRS}")
704
message (STATUS " Link libraries: ${MAIL_PACKAGE_LIBRARIES}")
705
705
set (GETTEXT_MAIL ${GETTEXT_PLUGINS})
706
706
set (VERSION_MAIL "1.0.9")
707
707
set (PACKAGE_MAIL "cd-mail")
753
753
if (NOT "${DISTRO_ID}" STREQUAL "")
754
message (STATUS "DISTRO_ID: ${DISTRO_ID}, DISTRO_RELEASE: ${DISTRO_RELEASE}")
754
message (STATUS " DISTRO_ID: ${DISTRO_ID}, DISTRO_RELEASE: ${DISTRO_RELEASE}")
757
757
############# INDICATOR_NAME #################
759
759
set (INDICATOR_OLD_NAMES 0)
760
760
if ("${force_old_indicator_names}" STREQUAL "yes")
761
761
set (INDICATOR_OLD_NAMES 1)
762
message (STATUS "Indicators: use old Ayatana Dbus names (forced)")
762
message (STATUS " Indicators: use old Ayatana Dbus names (forced)")
763
763
elseif ("${DISTRO_ID}" STREQUAL "Ubuntu")
764
764
STRING (REGEX REPLACE "\\..*" "" DISTRO_RELEASE_MAJOR ${DISTRO_RELEASE})
765
765
# message (STATUS "DISTRO_RELEASE_MAJOR: ${DISTRO_RELEASE_MAJOR}")
766
766
if (${DISTRO_RELEASE_MAJOR} LESS 11) # from 11.04, new names are used.
767
767
set (INDICATOR_OLD_NAMES 1)
768
message (STATUS "Indicators: use old Ayatana Dbus names")
768
message (STATUS " Indicators: use old Ayatana Dbus names")
772
772
############# MEMENU #################
773
773
set (with_me_menu "no")
774
if ("${with_indicator}" STREQUAL "yes")
774
if ("${INDICATOR_04_FOUND}" STREQUAL "1")
775
message (STATUS "> MeMenu: this applet has been automatically merged with Messaging-Menu")
776
elseif ("${with_indicator}" STREQUAL "yes")
775
777
message (STATUS "> MeMenu:")
776
778
set (GETTEXT_MEMENU ${GETTEXT_PLUGINS})
777
779
set (VERSION_MEMENU "1.0.2")
785
787
############# MESSAGING_MENU #################
786
788
set (with_messaging_menu "no")
787
if ("${with_indicator}" STREQUAL "yes")
789
if ("${with_indicator}" STREQUAL "yes")
788
790
message (STATUS "> Messaging-Menu:")
789
791
set (GETTEXT_MESSAGING_MENU ${GETTEXT_PLUGINS})
790
792
set (VERSION_MESSAGING_MENU "1.0.2")
807
809
############# MUSICPLAYER #################
808
810
message (STATUS "> MusicPlayer:")
809
811
set (GETTEXT_MUSICPLAYER ${GETTEXT_PLUGINS})
810
set (VERSION_MUSICPLAYER "1.0.8")
812
set (VERSION_MUSICPLAYER "1.1.0")
811
813
set (PACKAGE_MUSICPLAYER "cd-musicPlayer")
812
814
set (musicplayerdatadir "${pluginsdatadir}/musicPlayer")
813
815
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/musicPlayer/data/musicPlayer.conf.in ${CMAKE_CURRENT_BINARY_DIR}/musicPlayer/data/musicPlayer.conf)
816
818
############# NETSPEED #################
817
819
message (STATUS "> NetSpeed:")
818
820
set (GETTEXT_NETSPEED ${GETTEXT_PLUGINS})
819
set (VERSION_NETSPEED "1.2.6")
821
set (VERSION_NETSPEED "1.2.7")
820
822
set (PACKAGE_NETSPEED "cd-netspeed")
821
823
set (netspeeddatadir "${pluginsdatadir}/netspeed")
822
824
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/netspeed/data/netspeed.conf.in ${CMAKE_CURRENT_BINARY_DIR}/netspeed/data/netspeed.conf)
827
829
if ("${enable-network-monitor}" STREQUAL "yes")
828
830
message (STATUS "> Network Monitor:")
829
831
set (GETTEXT_NETWORK_MONITOR ${GETTEXT_PLUGINS})
830
set (VERSION_NETWORK_MONITOR "0.2.4")
832
set (VERSION_NETWORK_MONITOR "0.2.5")
831
833
set (PACKAGE_NETWORK_MONITOR "cd-network-monitor")
832
834
set (with_network_monitor "yes")
833
835
set (network_monitordatadir "${pluginsdatadir}/Network-Monitor")
838
840
############# POWERMANAGER #################
839
841
message (STATUS "> PowerManager:")
840
842
set (GETTEXT_POWERMANAGER ${GETTEXT_PLUGINS})
841
set (VERSION_POWERMANAGER "1.3.5")
843
set (VERSION_POWERMANAGER "1.3.7")
842
844
set (PACKAGE_POWERMANAGER "cd-powermanager")
843
845
set (powermanagerdatadir "${pluginsdatadir}/powermanager")
844
846
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/powermanager/data/powermanager.conf.in ${CMAKE_CURRENT_BINARY_DIR}/powermanager/data/powermanager.conf)
952
954
set (with_exif "no")
954
956
set (GETTEXT_SLIDER ${GETTEXT_PLUGINS})
955
set (VERSION_SLIDER "2.0.9")
957
set (VERSION_SLIDER "2.0.10")
956
958
set (PACKAGE_SLIDER "cd-slider")
957
959
set (sliderdatadir "${pluginsdatadir}/slider")
958
960
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/slider/data/slider.conf.in ${CMAKE_CURRENT_BINARY_DIR}/slider/data/slider.conf)
975
977
# set (MODULES_MISSING "${MODULES_MISSING} dbusmenu-gtk(-0.4)") # it should already be in the list.
976
978
set (with_status_notifier "no")
980
if ("${force_indicator_applicationadded_have_hint}" STREQUAL "yes")
981
set (INDICATOR_APPLICATIONADDED_HAS_HINT 1)
982
elseif ("${force_indicator_applicationadded_have_hint}" STREQUAL "no")
983
set (INDICATOR_APPLICATIONADDED_HAS_HINT 0)
985
message (STATUS " ApplicationAdded signal has 'Hint' = ${INDICATOR_APPLICATIONADDED_HAS_HINT}")
978
986
set (GETTEXT_STATUS_NOTIFIER ${GETTEXT_PLUGINS})
979
987
set (VERSION_STATUS_NOTIFIER "0.1.4")
980
988
set (PACKAGE_STATUS_NOTIFIER "cd-status-notifier")
1004
1012
set (with_sensors "no")
1006
1014
set (GETTEXT_SYSTEM_MONITOR ${GETTEXT_PLUGINS})
1007
set (VERSION_SYSTEM_MONITOR "1.0.7")
1015
set (VERSION_SYSTEM_MONITOR "1.0.9")
1008
1016
set (PACKAGE_SYSTEM_MONITOR "cd-system-monitor")
1009
1017
set (system_monitordatadir "${pluginsdatadir}/System-monitor")
1010
1018
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/System-Monitor/data/System-Monitor.conf.in ${CMAKE_CURRENT_BINARY_DIR}/System-Monitor/data/System-Monitor.conf)
1049
1057
############# TOONS #################
1050
1058
message (STATUS "> Toons:")
1051
1059
set (GETTEXT_TOONS ${GETTEXT_PLUGINS})
1052
set (VERSION_TOONS "1.0.9")
1060
set (VERSION_TOONS "1.0.10")
1053
1061
set (PACKAGE_TOONS "cd-Toons")
1054
1062
set (toonsdatadir "${pluginsdatadir}/Toons")
1055
1063
set (toonsuserdirname "Toons")
1089
1097
############# WIFI #################
1090
1098
message (STATUS "> WiFi:")
1091
1099
set (GETTEXT_WIFI ${GETTEXT_PLUGINS})
1092
set (VERSION_WIFI "1.2.7")
1100
set (VERSION_WIFI "1.2.9")
1093
1101
set (PACKAGE_WIFI "cd-wifi")
1094
1102
set (wifidatadir "${pluginsdatadir}/wifi")
1095
1103
configure_file (${CMAKE_CURRENT_SOURCE_DIR}/wifi/data/wifi.conf.in ${CMAKE_CURRENT_BINARY_DIR}/wifi/data/wifi.conf)
1145
1153
message (STATUS "===============")
1147
1155
message (STATUS "Stable:")
1156
message (STATUS " Integration plug-ins:")
1157
message (STATUS " - with Gnome support: ${with_gnome_integration}")
1158
message (STATUS " - with KDE support: ${with_kde_integration}")
1159
message (STATUS " - with XFCE support: ${with_xfce_integration}")
1160
message (STATUS " Plug-ins:")
1148
1161
message (STATUS " - with Alsa-Mixer applet: ${with_alsa}")
1149
1162
message (STATUS " - with iCal support: ${with_ical}")
1150
1163
message (STATUS " - with GMenu applet: ${with_gmenu}")
1151
message (STATUS " - with Gnome support: ${with_gnome_integration}")
1152
message (STATUS " - with KDE support: ${with_kde_integration}")
1153
message (STATUS " - with XFCE support: ${with_xfce_integration}")
1164
message (STATUS " - with Impulse applet: ${with_impulse}")
1154
1165
message (STATUS " - with Keyboard-indicator applet: ${with_keyboard_indicator}")
1155
1166
message (STATUS " - with Mail applet: ${with_mail}")
1167
if (NOT "${INDICATOR_04_FOUND}" STREQUAL "1")
1156
1168
message (STATUS " - with Me-Menu applet: ${with_me_menu}")
1157
1170
message (STATUS " - with Messaging-Menu: ${with_messaging_menu}")
1158
1171
message (STATUS " - with Screen Resolution support: ${with_xrandr}")
1159
1172
message (STATUS " - with Status-Notifier applet: ${with_status_notifier}")
1171
1184
message (STATUS "Unstable:")
1172
1185
message (STATUS " - with Disks applet: ${with_disks}")
1173
1186
message (STATUS " - with Doncky applet: ${with_doncky}")
1174
message (STATUS " - with Impulse applet: ${with_impulse}")
1175
1187
message (STATUS " - with KDE experimental support: ${with_kde_integration2}")
1176
1188
message (STATUS " - with Network-Monitor applet: ${with_network_monitor}")
1177
1189
message (STATUS " - with Scooby-Do applet: ${with_scooby_do}")