Mercurial > hg > orthanc
annotate Resources/ThirdParty/icu/CMakeLists.txt @ 3241:32596919d729
first compilation combining ICU and LSB
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 16 Feb 2019 00:31:35 +0100 |
parents | ed6dc4ecabcb |
children | 5d78df37c62f |
rev | line source |
---|---|
3241
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
1 # Legacy version using LSB: |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
2 # LSB_CC=gcc-4.8 LSB_CXX=g++-4.8 cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=../../../LinuxStandardBaseToolchain.cmake -DUSE_LEGACY_LIBICU=ON -G Ninja && ninja |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
3 |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
4 # Newest release of icu: |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
5 # cmake .. -DCMAKE_BUILD_TYPE=Debug -G Ninja && ninja |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
6 |
3237 | 7 cmake_minimum_required(VERSION 2.8) |
8 project(IcuCodeGeneration) | |
9 | |
3241
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
10 set(USE_LEGACY_LIBICU OFF CACHE BOOL "Use icu icu4c-58_2, latest version not requiring a C++11 compiler (for LSB and old versions of Visual Studio)") |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
11 |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
12 if (NOT USE_LEGACY_LIBICU) |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
13 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
14 endif() |
3237 | 15 |
16 include(${CMAKE_SOURCE_DIR}/../../CMake/Compiler.cmake) | |
17 include(${CMAKE_SOURCE_DIR}/../../CMake/DownloadPackage.cmake) | |
18 include(Version.cmake) | |
19 | |
20 set(ALLOW_DOWNLOADS ON) | |
21 DownloadPackage(${LIBICU_MD5} ${LIBICU_URL} "${LIBICU_SOURCES_DIR}") | |
22 | |
23 include_directories( | |
24 ${LIBICU_SOURCES_DIR}/source/common | |
25 ${LIBICU_SOURCES_DIR}/source/i18n | |
26 ${LIBICU_SOURCES_DIR}/source/tools/toolutil/ | |
27 ) | |
28 | |
29 aux_source_directory(${LIBICU_SOURCES_DIR}/source/common LIBICU_SOURCES) | |
30 aux_source_directory(${LIBICU_SOURCES_DIR}/source/i18n LIBICU_SOURCES) | |
31 aux_source_directory(${LIBICU_SOURCES_DIR}/source/tools/toolutil LIBICU_SOURCES) | |
32 | |
3241
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
33 if (USE_LEGACY_LIBICU) |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
34 list(APPEND LIBICU_SOURCES |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
35 ${LIBICU_SOURCES_DIR}/source/stubdata/stubdata.c |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
36 ) |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
37 else() |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
38 list(APPEND LIBICU_SOURCES |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
39 ${LIBICU_SOURCES_DIR}/source/stubdata/stubdata.cpp |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
40 ) |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
41 set_source_files_properties( |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
42 ${LIBICU_SOURCES_DIR}/source/tools/genccode/genccode.c |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
43 PROPERTIES COMPILE_DEFINITIONS "char16_t=uint16_t" |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
44 ) |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
45 endif() |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
46 |
32596919d729
first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
3237
diff
changeset
|
47 |
3237 | 48 |
49 add_executable(IcuCodeGeneration | |
50 ${LIBICU_SOURCES_DIR}/source/tools/genccode/genccode.c | |
51 ${LIBICU_SOURCES} | |
52 ) | |
53 | |
54 add_custom_command( | |
55 OUTPUT ${LIBICU_DATA} | |
56 COMMAND IcuCodeGeneration ${LIBICU_SOURCE_DATA} | |
57 DEPENDS IcuCodeGeneration | |
58 ) | |
59 | |
60 add_custom_command( | |
61 OUTPUT ${LIBICU_DATA}.gz | |
62 COMMAND gzip -f ${LIBICU_DATA} | |
63 DEPENDS ${LIBICU_DATA} | |
64 ) | |
65 | |
66 add_custom_target(Final ALL DEPENDS ${LIBICU_DATA}.gz) | |
67 | |
68 install( | |
69 FILES ${CMAKE_BINARY_DIR}/${LIBICU_DATA}.gz | |
70 DESTINATION ${CMAKE_SOURCE_DIR}/../../../ThirdPartyDownloads | |
71 ) | |
72 | |
73 add_definitions( | |
74 #-DU_COMBINED_IMPLEMENTATION | |
75 -DUCONFIG_NO_SERVICE=1 | |
76 -DU_COMMON_IMPLEMENTATION | |
77 -DU_ENABLE_DYLOAD=0 | |
78 -DU_HAVE_STD_STRING=1 | |
79 -DU_I18N_IMPLEMENTATION | |
80 -DU_IO_IMPLEMENTATION | |
81 -DU_STATIC_IMPLEMENTATION=1 | |
82 -DU_TOOLUTIL_IMPLEMENTATION | |
83 ) |