diff options
author | Brad King <brad.king@kitware.com> | 2014-11-13 15:08:34 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2014-11-13 15:08:34 (GMT) |
commit | 307570aee1fec8c7b3374571eb7b4de9d2be11b3 (patch) | |
tree | df37ec6b50d4b8aadf81f6b25e1aaf9e1ce7d595 | |
parent | cddb5002b5c28c0cc5fe9c1e41a5e0f556b3e3a8 (diff) | |
parent | c5e797dbb8b2b507431c665e924a41ed0def879e (diff) | |
download | CMake-307570aee1fec8c7b3374571eb7b4de9d2be11b3.zip CMake-307570aee1fec8c7b3374571eb7b4de9d2be11b3.tar.gz CMake-307570aee1fec8c7b3374571eb7b4de9d2be11b3.tar.bz2 |
Merge topic 'add-FindIntl'
c5e797db FindIntl: New module to find Gettext libintl
-rw-r--r-- | Help/manual/cmake-modules.7.rst | 1 | ||||
-rw-r--r-- | Help/module/FindIntl.rst | 1 | ||||
-rw-r--r-- | Modules/FindGettext.cmake | 3 | ||||
-rw-r--r-- | Modules/FindIntl.cmake | 69 |
4 files changed, 74 insertions, 0 deletions
diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index f5a35b3..083ed7a 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -118,6 +118,7 @@ All Modules /module/FindIce /module/FindIcotool /module/FindImageMagick + /module/FindIntl /module/FindITK /module/FindJasper /module/FindJava diff --git a/Help/module/FindIntl.rst b/Help/module/FindIntl.rst new file mode 100644 index 0000000..813e2df --- /dev/null +++ b/Help/module/FindIntl.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/FindIntl.cmake diff --git a/Modules/FindGettext.cmake b/Modules/FindGettext.cmake index f972ad0..ac53c3f 100644 --- a/Modules/FindGettext.cmake +++ b/Modules/FindGettext.cmake @@ -50,6 +50,9 @@ # (by default use share/locale/). # If ALL is specified, the po files are processed when building the all traget. # It creates a custom target "pofiles". +# +# .. note:: +# If you wish to use the Gettext library (libintl), use :module:`FindIntl`. #============================================================================= # Copyright 2007-2009 Kitware, Inc. diff --git a/Modules/FindIntl.cmake b/Modules/FindIntl.cmake new file mode 100644 index 0000000..cd2ec63 --- /dev/null +++ b/Modules/FindIntl.cmake @@ -0,0 +1,69 @@ +#.rst: +# FindIntl +# -------- +# +# Find the Gettext libintl headers and libraries. +# +# This module reports information about the Gettext libintl +# installation in several variables. General variables:: +# +# Intl_FOUND - true if the libintl headers and libraries were found +# Intl_INCLUDE_DIRS - the directory containing the libintl headers +# Intl_LIBRARIES - libintl libraries to be linked +# +# The following cache variables may also be set:: +# +# Intl_INCLUDE_DIR - the directory containing the libintl headers +# Intl_LIBRARY - the libintl library (if any) +# +# .. note:: +# On some platforms, such as Linux with GNU libc, the gettext +# functions are present in the C standard library and libintl +# is not required. ``Intl_LIBRARIES`` will be empty in this +# case. +# +# .. note:: +# If you wish to use the Gettext tools (``msgmerge``, +# ``msgfmt``, etc.), use :module:`FindGettext`. + + +# Written by Roger Leigh <rleigh@codelibre.net> + +#============================================================================= +# Copyright 2014 Roger Leigh <rleigh@codelibre.net> +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +# Find include directory +find_path(Intl_INCLUDE_DIR + NAMES "libintl.h" + DOC "libintl include directory") +mark_as_advanced(Intl_INCLUDE_DIR) + +# Find all Intl libraries +find_library(Intl_LIBRARY "intl" + DOC "libintl libraries (if not in the C library)") +mark_as_advanced(Intl_LIBRARY) + +include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(Intl + FOUND_VAR Intl_FOUND + REQUIRED_VARS Intl_INCLUDE_DIR + FAIL_MESSAGE "Failed to find Gettext libintl") + +if(Intl_FOUND) + set(Intl_INCLUDE_DIRS "${Intl_INCLUDE_DIR}") + if(Intl_LIBRARY) + set(Intl_LIBRARIES "${Intl_LIBRARY}") + else() + unset(Intl_LIBRARIES) + endif() +endif() |