9f33b387 |
1 | # freetype |
2 | |
3321f684 |
3 | if (NOT DEFINED INSTALL_FREETYPE AND BUILD_SHARED_LIBS) |
316d77d9 |
4 | set (INSTALL_FREETYPE OFF CACHE BOOL "${INSTALL_FREETYPE_DESCR}") |
9f33b387 |
5 | endif() |
6 | |
7 | if (NOT DEFINED 3RDPARTY_FREETYPE_DIR) |
8 | set (3RDPARTY_FREETYPE_DIR "" CACHE PATH "The directory containing freetype") |
9 | endif() |
10 | |
fa0cbe55 |
11 | # include occt macros. compiler_bitness, os_wiht_bit, compiler |
19286d7c |
12 | OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros") |
9f33b387 |
13 | |
14 | OCCT_MAKE_COMPILER_SHORT_NAME() |
15 | OCCT_MAKE_COMPILER_BITNESS() |
16 | |
e713baee |
17 | # specify freetype folder in connectin with 3RDPARTY_DIR |
18 | if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}") |
19 | #CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_DIR 3RDPARTY_FREETYPE_DIR PATH "The directory containing freetype") |
20 | |
21 | if (NOT 3RDPARTY_FREETYPE_DIR OR NOT EXISTS "${3RDPARTY_FREETYPE_DIR}") |
22 | FIND_PRODUCT_DIR ("${3RDPARTY_DIR}" FREETYPE FREETYPE_DIR_NAME) |
9f33b387 |
23 | if (FREETYPE_DIR_NAME) |
24 | set (3RDPARTY_FREETYPE_DIR "${3RDPARTY_DIR}/${FREETYPE_DIR_NAME}" CACHE PATH "The directory containing freetype" FORCE) |
25 | endif() |
26 | endif() |
e713baee |
27 | else() |
28 | #set (3RDPARTY_FREETYPE_DIR "" CACHE PATH "The directory containing freetype" FORCE) |
9f33b387 |
29 | endif() |
30 | |
e713baee |
31 | # define required freetype variables |
9f33b387 |
32 | if (NOT DEFINED 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build) |
33 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build "" CACHE FILEPATH "the path of ft2build.h") |
34 | endif() |
35 | |
36 | if (NOT DEFINED 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2) |
37 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 "" CACHE FILEPATH "the path of freetype2") |
38 | endif() |
39 | |
3321f684 |
40 | if (BUILD_SHARED_LIBS) |
41 | if (NOT DEFINED 3RDPARTY_FREETYPE_LIBRARY OR NOT 3RDPARTY_FREETYPE_LIBRARY_DIR OR NOT EXISTS "${3RDPARTY_FREETYPE_LIBRARY_DIR}") |
42 | set (3RDPARTY_FREETYPE_LIBRARY "" CACHE FILEPATH "freetype library" FORCE) |
43 | endif() |
9f33b387 |
44 | |
3321f684 |
45 | if (NOT DEFINED 3RDPARTY_FREETYPE_LIBRARY_DIR) |
46 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "" CACHE PATH "The directory containing freetype library") |
47 | endif() |
9f33b387 |
48 | |
3321f684 |
49 | if (WIN32) |
50 | if (NOT DEFINED 3RDPARTY_FREETYPE_DLL OR NOT 3RDPARTY_FREETYPE_DLL_DIR OR NOT EXISTS "${3RDPARTY_FREETYPE_DLL_DIR}") |
51 | set (3RDPARTY_FREETYPE_DLL "" CACHE FILEPATH "freetype shared library" FORCE) |
52 | endif() |
9f33b387 |
53 | endif() |
9f33b387 |
54 | |
3321f684 |
55 | if (WIN32) |
56 | if (NOT DEFINED 3RDPARTY_FREETYPE_DLL_DIR) |
57 | set (3RDPARTY_FREETYPE_DLL_DIR "" CACHE PATH "The directory containing freetype shared library") |
58 | endif() |
9f33b387 |
59 | endif() |
60 | endif() |
61 | |
e713baee |
62 | # check 3RDPARTY_FREETYPE_ paths for consistency with specified 3RDPARTY_FREETYPE_DIR |
63 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
112139f0 |
64 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build FILEPATH "The directory containing ft2build.h header") |
65 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 FILEPATH "The directory containing ftheader.h header") |
3321f684 |
66 | if (BUILD_SHARED_LIBS) |
67 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_LIBRARY FILEPATH "the path to freetype library") |
9f33b387 |
68 | |
3321f684 |
69 | if (3RDPARTY_FREETYPE_LIBRARY AND EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
70 | get_filename_component (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY}" PATH) |
71 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY_DIR}" CACHE PATH "The directory containing freetype library" FORCE) |
72 | else() |
73 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_LIBRARY_DIR PATH "The directory containing freetype library") |
74 | endif() |
9f33b387 |
75 | |
3321f684 |
76 | if (WIN32) |
77 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_DLL FILEPATH "the path to freetype shared library") |
e713baee |
78 | |
3321f684 |
79 | if (3RDPARTY_FREETYPE_DLL AND EXISTS "${3RDPARTY_FREETYPE_DLL}") |
80 | get_filename_component (3RDPARTY_FREETYPE_DLL_DIR "${3RDPARTY_FREETYPE_DLL}" PATH) |
81 | set (3RDPARTY_FREETYPE_DLL_DIR "${3RDPARTY_FREETYPE_DLL_DIR}" CACHE PATH "The directory containing freetype shared library" FORCE) |
82 | else() |
83 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR 3RDPARTY_FREETYPE_DLL_DIR PATH "The directory containing freetype shared library") |
84 | endif() |
9f33b387 |
85 | endif() |
86 | endif() |
87 | endif() |
88 | |
e713baee |
89 | # the FIRST step in search for freetype library and header folders (built-in search engine) |
90 | |
91 | # execute built-in search engine to seek freetype |
92 | set (IS_BUILTIN_SEARCH_REQUIRED OFF) |
93 | if (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build}") |
94 | set (IS_BUILTIN_SEARCH_REQUIRED ON) |
95 | elseif (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2}") |
96 | set (IS_BUILTIN_SEARCH_REQUIRED ON) |
97 | elseif (NOT 3RDPARTY_FREETYPE_LIBRARY OR NOT EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
98 | set (IS_BUILTIN_SEARCH_REQUIRED ON) |
99 | #elseif (WIN32) |
100 | #if (NOT 3RDPARTY_FREETYPE_DLL OR NOT EXISTS "${3RDPARTY_FREETYPE_DLL}") |
101 | # set (IS_BUILTIN_SEARCH_REQUIRED ON) |
102 | #endif() |
9f33b387 |
103 | endif() |
104 | |
e713baee |
105 | if (IS_BUILTIN_SEARCH_REQUIRED) |
9f33b387 |
106 | |
e713baee |
107 | # use 3RDPARTY_FREETYPE_DIR if it is specified for freetype search |
108 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
109 | set (CACHED_FREETYPE_DIR $ENV{FREETYPE_DIR}) |
110 | set (ENV{FREETYPE_DIR} "${3RDPARTY_FREETYPE_DIR}") |
9f33b387 |
111 | endif() |
9f33b387 |
112 | |
e713baee |
113 | find_package(Freetype) |
19286d7c |
114 | |
e713baee |
115 | # restore ENV{FREETYPE_DIR} |
116 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
117 | set (ENV{FREETYPE_DIR} ${CACHED_FREETYPE_DIR}) |
9f33b387 |
118 | endif() |
119 | |
e713baee |
120 | # check the found paths for consistency with specified 3RDPARTY_FREETYPE_DIR |
121 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
112139f0 |
122 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR FREETYPE_INCLUDE_DIR_ft2build FILEPATH "The directory containing ft2build.h header") |
123 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR FREETYPE_INCLUDE_DIR_freetype2 FILEPATH "The directory containing ftheader.h header") |
3321f684 |
124 | if (BUILD_SHARED_LIBS) |
125 | CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_FREETYPE_DIR FREETYPE_LIBRARY FILEPATH "freetype library") |
126 | endif() |
e713baee |
127 | endif() |
9f33b387 |
128 | |
e713baee |
129 | # assign the found paths to corresponding 3RDPARTY_FREETYPE_ variables |
130 | if (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build}") |
131 | if (FREETYPE_INCLUDE_DIR_ft2build AND EXISTS "${FREETYPE_INCLUDE_DIR_ft2build}") |
112139f0 |
132 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build "${FREETYPE_INCLUDE_DIR_ft2build}" CACHE FILEPATH "The directory containing ft2build.h header" FORCE) |
e713baee |
133 | endif() |
134 | endif() |
9f33b387 |
135 | |
e713baee |
136 | if (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2}") |
137 | if (FREETYPE_INCLUDE_DIR_freetype2 AND EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}") |
112139f0 |
138 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 "${FREETYPE_INCLUDE_DIR_freetype2}" CACHE FILEPATH "The directory containing ftheader.h header" FORCE) |
9f33b387 |
139 | endif() |
e713baee |
140 | endif() |
19286d7c |
141 | |
3321f684 |
142 | if (BUILD_SHARED_LIBS) |
143 | if (NOT 3RDPARTY_FREETYPE_LIBRARY OR NOT EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
144 | if (FREETYPE_LIBRARY AND EXISTS "${FREETYPE_LIBRARY}") |
145 | set (3RDPARTY_FREETYPE_LIBRARY "${FREETYPE_LIBRARY}" CACHE FILEPATH "The path to freetype library" FORCE) |
146 | endif() |
9f33b387 |
147 | endif() |
e713baee |
148 | |
3321f684 |
149 | if (3RDPARTY_FREETYPE_LIBRARY AND EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
150 | get_filename_component (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY}" PATH) |
151 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY_DIR}" CACHE PATH "The directory containing freetype library" FORCE) |
152 | else() |
153 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "" CACHE PATH "The directory containing freetype library" FORCE) |
154 | endif() |
e713baee |
155 | endif() |
9f33b387 |
156 | endif() |
157 | |
e713baee |
158 | # the SECOND step in search for freetype library and header folders (additional search algorithms) |
9f33b387 |
159 | |
e713baee |
160 | # ft2build.h |
161 | if (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build}") |
162 | set (FT2BUILD_NAMES ft2build.h config/ft2build.h freetype/config/ft2build.h) |
9f33b387 |
163 | |
e713baee |
164 | # set 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build as notfound, otherwise find_library can't assign a new value to 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build |
112139f0 |
165 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build "3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build-NOTFOUND" CACHE FILEPATH "The directory containing ft2build.h header" FORCE) |
e713baee |
166 | |
167 | # cmake (version < 3.0) doesn't find ft2build.h of freetype (version is >= 2.5.1) |
168 | # do search taking into account freetype structure of 2.5.1 version |
169 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
170 | find_path (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build NAMES ${FT2BUILD_NAMES} |
171 | PATHS ${3RDPARTY_FREETYPE_DIR} |
172 | PATH_SUFFIXES include freetype2 include/freetype2 |
173 | CMAKE_FIND_ROOT_PATH_BOTH |
174 | NO_DEFAULT_PATH) |
175 | else() |
176 | find_path (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build NAMES ${FT2BUILD_NAMES} |
177 | PATHS /usr/X11R6 /usr/local/X11R6 /usr/local/X11 /usr/freeware |
178 | PATH_SUFFIXES include/freetype2 include freetype2 |
179 | CMAKE_FIND_ROOT_PATH_BOTH) |
9f33b387 |
180 | endif() |
181 | endif() |
182 | |
e713baee |
183 | if (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build AND EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build}") |
9f33b387 |
184 | list (APPEND 3RDPARTY_INCLUDE_DIRS "${3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build}") |
185 | else() |
186 | list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build) |
e713baee |
187 | |
112139f0 |
188 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build "" CACHE FILEPATH "The directory containing ft2build.h header" FORCE) |
e713baee |
189 | endif() |
190 | |
191 | # ftheader.h |
192 | if (NOT 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 OR NOT EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2}") |
193 | set (FTHEADER_NAMES ftheader.h config/ftheader.h freetype/config/ftheader.h) |
194 | |
195 | # set 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 as notfound, otherwise find_library can't assign a new value to 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 |
112139f0 |
196 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 "3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2-NOTFOUND" CACHE FILEPATH "The directory containing ftheader.h header" FORCE) |
e713baee |
197 | |
198 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
199 | find_path (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 NAMES ${FTHEADER_NAMES} |
200 | HINTS ${3RDPARTY_FREETYPE_DIR} |
201 | PATH_SUFFIXES include/freetype2 include freetype2 |
202 | CMAKE_FIND_ROOT_PATH_BOTH |
203 | NO_DEFAULT_PATH) |
204 | else() |
205 | find_path (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 NAMES ${FTHEADER_NAMES} |
206 | PATHS /usr/X11R6 /usr/local/X11R6 /usr/local/X11 /usr/freeware |
207 | PATH_SUFFIXES include/freetype2 include freetype2 |
208 | CMAKE_FIND_ROOT_PATH_BOTH) |
209 | endif() |
9f33b387 |
210 | endif() |
211 | |
e713baee |
212 | if (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 AND EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2}") |
9f33b387 |
213 | list (APPEND 3RDPARTY_INCLUDE_DIRS "${3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2}") |
214 | else() |
215 | list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2) |
e713baee |
216 | |
112139f0 |
217 | set (3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2 "" CACHE FILEPATH "The directory containing ftheader.h header" FORCE) |
9f33b387 |
218 | endif() |
219 | |
e713baee |
220 | # freetype library |
0553a8ea |
221 | #if (BUILD_SHARED_LIBS) |
3321f684 |
222 | if (NOT 3RDPARTY_FREETYPE_LIBRARY OR NOT EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
eaffb01e |
223 | set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .so .dylib .a) |
9f33b387 |
224 | |
3321f684 |
225 | set (FREETYPE_PATH_SUFFIXES lib) |
226 | if (ANDROID) |
227 | set (FREETYPE_PATH_SUFFIXES ${FREETYPE_PATH_SUFFIXES} libs/${ANDROID_ABI}) |
228 | endif() |
e713baee |
229 | |
3321f684 |
230 | # set 3RDPARTY_FREETYPE_LIBRARY as notfound, otherwise find_library can't assign a new value to 3RDPARTY_FREETYPE_LIBRARY |
231 | set (3RDPARTY_FREETYPE_LIBRARY "3RDPARTY_FREETYPE_LIBRARY-NOTFOUND" CACHE FILEPATH "The path to freetype library" FORCE) |
e713baee |
232 | |
233 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
4fecc365 |
234 | find_library (3RDPARTY_FREETYPE_LIBRARY ${CSF_FREETYPE} |
3321f684 |
235 | PATHS "${3RDPARTY_FREETYPE_LIBRARY_DIR}" "${3RDPARTY_FREETYPE_DIR}" |
236 | PATH_SUFFIXES ${FREETYPE_PATH_SUFFIXES} |
237 | CMAKE_FIND_ROOT_PATH_BOTH |
238 | NO_DEFAULT_PATH) |
e713baee |
239 | else() |
4fecc365 |
240 | find_library (3RDPARTY_FREETYPE_LIBRARY ${CSF_FREETYPE} |
3321f684 |
241 | PATH_SUFFIXES ${FREETYPE_PATH_SUFFIXES} |
242 | CMAKE_FIND_ROOT_PATH_BOTH) |
e713baee |
243 | endif() |
244 | |
3321f684 |
245 | if (3RDPARTY_FREETYPE_LIBRARY AND EXISTS "${3RDPARTY_FREETYPE_LIBRARY}") |
246 | get_filename_component (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY}" PATH) |
247 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "${3RDPARTY_FREETYPE_LIBRARY_DIR}" CACHE PATH "The directory containing freetype library" FORCE) |
e713baee |
248 | else() |
3321f684 |
249 | set (3RDPARTY_FREETYPE_LIBRARY_DIR "" CACHE PATH "The directory containing freetype library" FORCE) |
e713baee |
250 | endif() |
251 | endif() |
252 | |
3321f684 |
253 | if (3RDPARTY_FREETYPE_LIBRARY_DIR AND EXISTS "${3RDPARTY_FREETYPE_LIBRARY_DIR}") |
254 | list (APPEND 3RDPARTY_LIBRARY_DIRS "${3RDPARTY_FREETYPE_LIBRARY_DIR}") |
94829f84 |
255 | else() |
0553a8ea |
256 | list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_FREETYPE_LIBRARY_DIR) |
3321f684 |
257 | |
258 | set (3RDPARTY_FREETYPE_LIBRARY "" CACHE FILEPATH "The path to freetype library" FORCE) |
9f33b387 |
259 | endif() |
9f33b387 |
260 | |
3321f684 |
261 | # freetype shared library |
262 | if (WIN32) |
263 | if (NOT 3RDPARTY_FREETYPE_DLL OR NOT EXISTS "${3RDPARTY_FREETYPE_DLL}") |
264 | |
265 | set (CMAKE_FIND_LIBRARY_SUFFIXES .dll) |
e713baee |
266 | |
3321f684 |
267 | # set 3RDPARTY_FREETYPE_DLL as notfound, otherwise find_library can't assign a new value to 3RDPARTY_FREETYPE_DLL |
268 | set (3RDPARTY_FREETYPE_DLL "3RDPARTY_FREETYPE_DLL-NOTFOUND" CACHE FILEPATH "The path to freetype shared library" FORCE) |
096ef695 |
269 | |
3321f684 |
270 | if (3RDPARTY_FREETYPE_DIR AND EXISTS "${3RDPARTY_FREETYPE_DIR}") |
4fecc365 |
271 | find_library (3RDPARTY_FREETYPE_DLL ${CSF_FREETYPE} |
3321f684 |
272 | PATHS "${3RDPARTY_FREETYPE_DIR}" |
273 | PATH_SUFFIXES bin |
274 | NO_DEFAULT_PATH) |
275 | else() |
4fecc365 |
276 | find_library (3RDPARTY_FREETYPE_DLL ${CSF_FREETYPE} |
3321f684 |
277 | PATH_SUFFIXES bin) |
278 | endif() |
279 | |
280 | if (3RDPARTY_FREETYPE_DLL AND EXISTS "${3RDPARTY_FREETYPE_DLL}") |
281 | get_filename_component (3RDPARTY_FREETYPE_DLL_DIR "${3RDPARTY_FREETYPE_DLL}" PATH) |
282 | set (3RDPARTY_FREETYPE_DLL_DIR "${3RDPARTY_FREETYPE_DLL_DIR}" CACHE PATH "The directory containing freetype library" FORCE) |
283 | else() |
284 | set (3RDPARTY_FREETYPE_DLL_DIR "" CACHE PATH "The directory containing freetype shared library" FORCE) |
285 | |
286 | set (3RDPARTY_FREETYPE_DLL "" CACHE FILEPATH "freetype shared library" FORCE) |
287 | endif() |
096ef695 |
288 | endif() |
fa0cbe55 |
289 | |
3321f684 |
290 | if (3RDPARTY_FREETYPE_DLL_DIR OR EXISTS "${3RDPARTY_FREETYPE_DLL_DIR}") |
291 | list (APPEND 3RDPARTY_DLL_DIRS "${3RDPARTY_FREETYPE_DLL_DIR}") |
096ef695 |
292 | else() |
0553a8ea |
293 | list (APPEND 3RDPARTY_NO_DLLS 3RDPARTY_FREETYPE_DLL_DIR) |
096ef695 |
294 | endif() |
9f33b387 |
295 | endif() |
0a66e59d |
296 | |
3321f684 |
297 | # install instructions |
298 | if (INSTALL_FREETYPE) |
299 | OCCT_MAKE_OS_WITH_BITNESS() |
300 | |
301 | if (WIN32) |
302 | if (SINGLE_GENERATOR) |
d26375e2 |
303 | install (FILES "${3RDPARTY_FREETYPE_DLL}" DESTINATION "${INSTALL_DIR_BIN}") |
3321f684 |
304 | else() |
305 | install (FILES "${3RDPARTY_FREETYPE_DLL}" |
306 | CONFIGURATIONS Release |
d26375e2 |
307 | DESTINATION "${INSTALL_DIR_BIN}") |
3321f684 |
308 | install (FILES "${3RDPARTY_FREETYPE_DLL}" |
309 | CONFIGURATIONS RelWithDebInfo |
d26375e2 |
310 | DESTINATION "${INSTALL_DIR_BIN}i") |
3321f684 |
311 | install (FILES "${3RDPARTY_FREETYPE_DLL}" |
312 | CONFIGURATIONS Debug |
d26375e2 |
313 | DESTINATION "${INSTALL_DIR_BIN}d") |
3321f684 |
314 | endif() |
315 | else() |
316 | get_filename_component(3RDPARTY_FREETYPE_LIBRARY_ABS ${3RDPARTY_FREETYPE_LIBRARY} REALPATH) |
317 | get_filename_component(3RDPARTY_FREETYPE_LIBRARY_NAME ${3RDPARTY_FREETYPE_LIBRARY} NAME) |
318 | |
319 | if (SINGLE_GENERATOR) |
320 | install (FILES "${3RDPARTY_FREETYPE_LIBRARY_ABS}" |
d26375e2 |
321 | DESTINATION "${INSTALL_DIR_LIB}" |
3321f684 |
322 | RENAME ${3RDPARTY_FREETYPE_LIBRARY_NAME}.6) |
323 | else() |
324 | install (FILES "${3RDPARTY_FREETYPE_LIBRARY_ABS}" |
325 | CONFIGURATIONS Release |
d26375e2 |
326 | DESTINATION "${INSTALL_DIR_LIB}" |
3321f684 |
327 | RENAME ${3RDPARTY_FREETYPE_LIBRARY_NAME}.6) |
328 | install (FILES "${3RDPARTY_FREETYPE_LIBRARY_ABS}" |
329 | CONFIGURATIONS RelWithDebInfo |
d26375e2 |
330 | DESTINATION "${INSTALL_DIR_LIB}i" |
3321f684 |
331 | RENAME ${3RDPARTY_FREETYPE_LIBRARY_NAME}.6) |
332 | install (FILES "${3RDPARTY_FREETYPE_LIBRARY_ABS}" |
333 | CONFIGURATIONS Debug |
d26375e2 |
334 | DESTINATION "${INSTALL_DIR_LIB}d" |
3321f684 |
335 | RENAME ${3RDPARTY_FREETYPE_LIBRARY_NAME}.6) |
336 | endif() |
337 | endif() |
338 | |
339 | set (USED_3RDPARTY_FREETYPE_DIR "") |
0a66e59d |
340 | else() |
3321f684 |
341 | # the library directory for using by the executable |
342 | if (WIN32) |
343 | set (USED_3RDPARTY_FREETYPE_DIR ${3RDPARTY_FREETYPE_DLL_DIR}) |
344 | else() |
345 | set (USED_3RDPARTY_FREETYPE_DIR ${3RDPARTY_FREETYPE_LIBRARY_DIR}) |
346 | endif() |
0a66e59d |
347 | endif() |
0553a8ea |
348 | #endif() |
9f33b387 |
349 | |
350 | # unset all redundant variables |
351 | OCCT_CHECK_AND_UNSET(FREETYPE_INCLUDE_DIR_ft2build) |
352 | OCCT_CHECK_AND_UNSET(FREETYPE_INCLUDE_DIR_freetype2) |
353 | OCCT_CHECK_AND_UNSET(FREETYPE_LIBRARY) |
354 | |
3321f684 |
355 | if (BUILD_SHARED_LIBS) |
356 | mark_as_advanced (3RDPARTY_FREETYPE_LIBRARY 3RDPARTY_FREETYPE_DLL) |
357 | else() |
358 | OCCT_CHECK_AND_UNSET(3RDPARTY_FREETYPE_DLL) |
359 | OCCT_CHECK_AND_UNSET(3RDPARTY_FREETYPE_DLL_DIR) |
360 | OCCT_CHECK_AND_UNSET(3RDPARTY_FREETYPE_LIBRARY) |
361 | OCCT_CHECK_AND_UNSET(3RDPARTY_FREETYPE_LIBRARY_DIR) |
362 | OCCT_CHECK_AND_UNSET(INSTALL_FREETYPE) |
363 | endif() |