diff --git a/CMakeLists.txt b/CMakeLists.txt index beff6c3..31d5a13 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.0.2) project(Miraclecast) diff --git a/demo/CMakeLists.txt b/demo/CMakeLists.txt index eac2023..4deb642 100644 --- a/demo/CMakeLists.txt +++ b/demo/CMakeLists.txt @@ -17,10 +17,18 @@ find_library(READLINE REQUIRED) pkg_check_modules(GIO2 REQUIRED gio-2.0) pkg_check_modules(GDK3 REQUIRED gdk-3.0) +execute_process(COMMAND ${VALAC} --version + OUTPUT_VARIABLE VALAC_VERSION + OUTPUT_STRIP_TRAILING_WHITESPACE) +string(REPLACE "Vala " "" VALAC_VERSION "${VALAC_VERSION}") +if(VALAC_VERSION VERSION_GREATER 0.34.0) + list(APPEND VALA_EXTRA_OPTIONS -D VALA_VERSION_NEWER_THEN_0_34) +endif() + execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --atleast-version 3.22 gdk-3.0 RESULT_VARIABLE GDK_VERSION_NEWER_THEN_3_22) if(NOT GDK_VERSION_NEWER_THEN_3_22) - set(VALA_EXTRA_OPTIONS -D GDK_VERSION_NEWER_THEN_3_22) + list(APPEND VALA_EXTRA_OPTIONS -D GDK_VERSION_NEWER_THEN_3_22) endif() set(RES_DIR ${CMAKE_CURRENT_SOURCE_DIR}/res) diff --git a/demo/wfdctl.vala b/demo/wfdctl.vala index 86baeda..79e15ba 100644 --- a/demo/wfdctl.vala +++ b/demo/wfdctl.vala @@ -330,7 +330,7 @@ private class WfdCtl : GLib.Application info("P2P group formed"); } -#if GDK_VERSION_NEWER_THEN_3_22 +#if GDK_VERSION_NEWER_THEN_3_22 && VALA_VERSION_NEWER_THEN_0_34 private void get_monitor_geometry(out Gdk.Rectangle g) throws Error { Gdk.Monitor m; @@ -441,7 +441,7 @@ private class WfdCtl : GLib.Application } int n_monitors; -#if GDK_VERSION_NEWER_THEN_3_22 +#if GDK_VERSION_NEWER_THEN_3_22 && VALA_VERSION_NEWER_THEN_0_34 n_monitors = display.get_n_monitors(); #else n_monitors = display.get_default_screen().get_n_monitors();