root/trunk/cmake/FindIcu.cmake

Revision 7, 2.6 kB (checked in by whispercastorg, 2 years ago)

version 0.2.0

Line 
1 # Copyright (c) 2009, Whispersoft s.r.l.
2 # All rights reserved.
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are
6 # met:
7 #
8 # * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer.
10 # * Redistributions in binary form must reproduce the above
11 # copyright notice, this list of conditions and the following disclaimer
12 # in the documentation and/or other materials provided with the
13 # distribution.
14 # * Neither the name of Whispersoft s.r.l. nor the names of its
15 # contributors may be used to endorse or promote products derived from
16 # this software without specific prior written permission.
17 #
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 #
30 # Finds ICU library
31
32 find_program (Icu_CONFIG_EXECUTABLE icu-config)
33 if (NOT Icu_CONFIG_EXECUTABLE)
34   set (Icu_FOUND FALSE)
35 else ()
36   message ( STATUS "Found ICU" )
37   exec_program (${Icu_CONFIG_EXECUTABLE}
38     ARGS --ldflags-libsonly
39     OUTPUT_VARIABLE Icu_LIBRARY
40     RETURN_VALUE ERROR_CODE
41     )
42
43   if (ERROR_CODE)
44     message (FATAL_ERROR "Cannot find ICU libraries: '${Icu_CONFIG_EXECUTABLE} --ldflags-libsonly' gave errors")
45   endif (ERROR_CODE)
46
47   separate_arguments(Icu_LIBRARY)
48
49   exec_program (${Icu_CONFIG_EXECUTABLE}
50     ARGS --cppflags-searchpath|sed s/^-I//
51     OUTPUT_VARIABLE Icu_INCLUDE
52     RETURN_VALUE ERROR_CODE
53     )
54   separate_arguments(Icu_INCLUDE)
55
56   if (Icu_LIBRARY)
57     set (Icu_FOUND TRUE)
58   endif (Icu_LIBRARY)
59
60 endif (NOT Icu_CONFIG_EXECUTABLE)
61
62 if (Icu_FOUND)
63    if (NOT Icu_FIND_QUIETLY)
64       message(STATUS "Found Icu: ${Icu_LIBRARY}")
65    endif (NOT Icu_FIND_QUIETLY)
66 else (Icu_FOUND)
67    if (Icu_FIND_REQUIRED)
68       message(STATUS "Looked for ICU libraries.")
69       message(FATAL_ERROR "==========> Could NOT find Icu library")
70    endif (Icu_FIND_REQUIRED)
71 endif (Icu_FOUND)
Note: See TracBrowser for help on using the browser.