Added detection of libintl.
authorJulien Schueller <julien.schueller@gmail.com>
Tue, 30 Apr 2013 08:51:22 +0000 (10:51 +0200)
committerThomas Jarosch <thomas.jarosch@intra2net.com>
Tue, 28 May 2013 08:29:53 +0000 (10:29 +0200)
cmake/FindLibintl.cmake [new file with mode: 0644]
ftdi_eeprom/CMakeLists.txt

diff --git a/cmake/FindLibintl.cmake b/cmake/FindLibintl.cmake
new file mode 100644 (file)
index 0000000..65ed91c
--- /dev/null
@@ -0,0 +1,47 @@
+# Try to find Libintl functionality
+# Once done this will define
+#
+#  LIBINTL_FOUND - system has Libintl
+#  LIBINTL_INCLUDE_DIR - Libintl include directory
+#  LIBINTL_LIBRARIES - Libraries needed to use Libintl
+#
+# TODO: This will enable translations only if Gettext functionality is
+# present in libc. Must have more robust system for release, where Gettext
+# functionality can also reside in standalone Gettext library, or the one
+# embedded within kdelibs (cf. gettext.m4 from Gettext source).
+# Copyright (c) 2006, Chusslove Illich, <caslav.ilic@gmx.net>
+# Copyright (c) 2007, Alexander Neundorf, <neundorf@kde.org>
+#
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+if(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)
+  set(Libintl_FIND_QUIETLY TRUE)
+endif(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)
+find_path(LIBINTL_INCLUDE_DIR libintl.h)
+set(LIBINTL_LIB_FOUND FALSE)
+if(LIBINTL_INCLUDE_DIR)
+  include(CheckFunctionExists)
+  check_function_exists(dgettext LIBINTL_LIBC_HAS_DGETTEXT)
+  if (LIBINTL_LIBC_HAS_DGETTEXT)
+    set(LIBINTL_LIBRARIES)
+    set(LIBINTL_LIB_FOUND TRUE)
+  else (LIBINTL_LIBC_HAS_DGETTEXT)
+    find_library(LIBINTL_LIBRARIES NAMES intl libintl )
+    if(LIBINTL_LIBRARIES)
+      set(LIBINTL_LIB_FOUND TRUE)
+    endif(LIBINTL_LIBRARIES)
+  endif (LIBINTL_LIBC_HAS_DGETTEXT)
+endif(LIBINTL_INCLUDE_DIR)
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(Libintl  DEFAULT_MSG  LIBINTL_INCLUDE_DIR  LIBINTL_LIB_FOUND)
+mark_as_advanced(LIBINTL_INCLUDE_DIR  LIBINTL_LIBRARIES  LIBINTL_LIBC_HAS_DGETTEXT  LIBINTL_LIB_FOUND)
+
index 573b8ec..816e937 100644 (file)
@@ -3,6 +3,7 @@ option(FTDI_EEPROM "Build ftdi_eeprom" ON)
 
 if ( FTDI_EEPROM )
   find_package ( Confuse )
+  find_package ( Libintl )
 else(FTDI_EEPROM)
   message(STATUS "ftdi_eeprom build is disabled")
 endif ()
@@ -11,7 +12,7 @@ endif ()
 if ( CONFUSE_FOUND )
   message(STATUS "Building ftdi_eeprom")
 
-  include_directories ( ${CONFUSE_INCLUDE_DIRS} )
+  include_directories ( ${CONFUSE_INCLUDE_DIRS} ${LIBINTL_INCLUDE_DIR} )
 
   list ( APPEND libs ${CONFUSE_LIBRARIES} )
 
@@ -30,8 +31,8 @@ if ( CONFUSE_FOUND )
 
   add_executable ( ftdi_eeprom main.c )
   target_link_libraries ( ftdi_eeprom ftdi1 )
-  target_link_libraries ( ftdi_eeprom ${CONFUSE_LIBRARIES} )
-
+  target_link_libraries ( ftdi_eeprom ${CONFUSE_LIBRARIES} ${LIBINTL_LIBRARIES} )
+  
   install ( TARGETS ftdi_eeprom DESTINATION bin )
 else ()
   message ( STATUS "libConfuse not found, won't build ftdi_eeprom" )