From 2db4a872e0e17b7acbb6cc4d67a8dfbb48fec5ce Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Fri, 27 Feb 2015 17:33:52 +0100 Subject: [PATCH] Find GTK2 and libintl on Windows. --- cmake/FindIntl.cmake | 56 +++++++++++++++++++++++++++++++++++++++++++ gtk/CMakeLists.txt | 11 +++++++-- tester/CMakeLists.txt | 3 +++ 3 files changed, 68 insertions(+), 2 deletions(-) create mode 100644 cmake/FindIntl.cmake diff --git a/cmake/FindIntl.cmake b/cmake/FindIntl.cmake new file mode 100644 index 000000000..3d0e56992 --- /dev/null +++ b/cmake/FindIntl.cmake @@ -0,0 +1,56 @@ +############################################################################ +# FindIntl.cmake +# Copyright (C) 2014 Belledonne Communications, Grenoble France +# +############################################################################ +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################ +# +# - Find the libintl include file and library +# +# INTL_FOUND - system has libintl +# INTL_INCLUDE_DIRS - the libintl include directory +# INTL_LIBRARIES - The libraries needed to use libintl + +set(_INTL_ROOT_PATHS + ${WITH_INTL} + ${CMAKE_INSTALL_PREFIX} +) + +find_path(INTL_INCLUDE_DIRS + NAMES libintl.h + HINTS _INTL_ROOT_PATHS + PATH_SUFFIXES include +) + +if(INTL_INCLUDE_DIRS) + set(HAVE_LIBINTL_H 1) +endif() + +find_library(INTL_LIBRARIES + NAMES intl + HINTS ${_INTL_ROOT_PATHS} + PATH_SUFFIXES bin lib +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Intl + DEFAULT_MSG + INTL_INCLUDE_DIRS INTL_LIBRARIES HAVE_LIBINTL_H +) + +mark_as_advanced(INTL_INCLUDE_DIRS INTL_LIBRARIES HAVE_LIBINTL_H) diff --git a/gtk/CMakeLists.txt b/gtk/CMakeLists.txt index 7af375971..ce64bb628 100644 --- a/gtk/CMakeLists.txt +++ b/gtk/CMakeLists.txt @@ -20,7 +20,11 @@ # ############################################################################ +if(WIN32) + set(GTK2_ADDITIONAL_SUFFIXES "../lib/glib-2.0/include" "../lib/gtk-2.0/include") +endif() find_package(GTK2 2.18 REQUIRED gtk) +find_package(Intl REQUIRED) set(UI_FILES about.ui @@ -75,8 +79,11 @@ endif() add_executable(linphone-gtk ${SOURCE_FILES}) set_target_properties(linphone-gtk PROPERTIES OUTPUT_NAME linphone) -target_include_directories(linphone-gtk PUBLIC ${GTK2_INCLUDE_DIRS}) -target_link_libraries(linphone-gtk linphone ${GTK2_LIBRARIES}) +target_include_directories(linphone-gtk PUBLIC ${GTK2_INCLUDE_DIRS} ${INTL_INCLUDE_DIRS}) +target_link_libraries(linphone-gtk linphone ${GTK2_LIBRARIES} ${INTL_LIBRARIES}) +if(WIN32) + target_link_libraries(linphone-gtk Wininet) +endif() if(ENABLE_NOTIFY) target_include_directories(linphone-gtk PUBLIC ${NOTIFY_INCLUDE_DIRS}) target_link_libraries(linphone-gtk ${NOTIFY_LIBRARIES}) diff --git a/tester/CMakeLists.txt b/tester/CMakeLists.txt index 3dfe85142..f218c8a72 100644 --- a/tester/CMakeLists.txt +++ b/tester/CMakeLists.txt @@ -20,6 +20,9 @@ # ############################################################################ +if(WIN32) + set(GTK2_ADDITIONAL_SUFFIXES "../lib/glib-2.0/include" "../lib/gtk-2.0/include") +endif() find_package(GTK2 2.18 COMPONENTS gtk) set(SOURCE_FILES