Skip to content

Commit 3cdc566

Browse files
committed
Add pashe for finding V8 dependencies.
1 parent 6d88ccd commit 3cdc566

File tree

1 file changed

+91
-50
lines changed

1 file changed

+91
-50
lines changed

FindV8.cmake

Lines changed: 91 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ set(V8_PATHS
5454
~/Library/Frameworks
5555
/Library/Frameworks
5656
/usr/local
57-
/usr/lib
5857
/usr
5958
/sw # Fink
6059
/opt/local # DarwinPorts
@@ -109,12 +108,12 @@ set(V8_PLATFORM_NAMES_DEBUG v8_libplatformD v8_libplatformD.a v8_libplatformD.li
109108
set(V8_PLATFORM_NAMES_RELEASE v8_libplatform v8_libplatform.a v8_libplatform.lib)
110109
set(V8_SNAPSHOT_NAMES_DEBUG v8_snapshotD libv8_snapshotD v8_snapshotD.lib)
111110
set(V8_SNAPSHOT_NAMES_RELEASE v8_snapshot libv8_snapshot v8_snapshot.lib)
112-
#set(V8_ICU_NAMES_DEBUG icudataD icudataD.a icudataD.lib)
113-
#set(V8_ICU_NAMES_RELEASE icudata icudata.a icudata.lib)
114-
#set(V8_ICUUC_NAMES_DEBUG icuucD libicuucD)
115-
#set(V8_ICUUC_NAMES_RELEASE icuuc libicuuc)
116-
#set(V8_ICUI18N_NAMES_DEBUG icui18nD libicui18nD)
117-
#set(V8_ICUI18N_NAMES_RELEASE icui18n libicui18n)
111+
set(V8_ICU_NAMES_DEBUG icudataD icudataD.a icudataD.lib)
112+
set(V8_ICU_NAMES_RELEASE icudata icudata.a icudata.lib)
113+
set(V8_ICUUC_NAMES_DEBUG icuucD libicuucD)
114+
set(V8_ICUUC_NAMES_RELEASE icuuc libicuuc)
115+
set(V8_ICUI18N_NAMES_DEBUG icui18nD libicui18nD)
116+
set(V8_ICUI18N_NAMES_RELEASE icui18n libicui18n)
118117

119118
# Find V8 base library debug
120119
find_library(V8_LIBRARY_DEBUG
@@ -165,52 +164,52 @@ find_library(V8_SNAPSHOT_LIBRARY_RELEASE
165164
)
166165

167166
# Find V8 icu library debug
168-
#find_library(V8_ICU_LIBRARY_DEBUG
169-
# NAMES ${V8_ICU_NAMES_DEBUG}
170-
# PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
171-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
172-
# DOC "Google V8 JavaScript Engine Library ICU (Debug)"
173-
#)
167+
find_library(V8_ICU_LIBRARY_DEBUG
168+
NAMES ${V8_ICU_NAMES_DEBUG}
169+
PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
170+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
171+
DOC "Google V8 JavaScript Engine Library ICU (Debug)"
172+
)
174173

175174
# Find V8 icu library release
176-
#find_library(V8_ICU_LIBRARY_RELEASE
177-
# NAMES ${V8_ICU_NAMES_RELEASE}
178-
# PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
179-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
180-
# DOC "Google V8 JavaScript Engine Library ICU (Release)"
181-
#)
175+
find_library(V8_ICU_LIBRARY_RELEASE
176+
NAMES ${V8_ICU_NAMES_RELEASE}
177+
PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
178+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
179+
DOC "Google V8 JavaScript Engine Library ICU (Release)"
180+
)
182181

183182
# Find V8 icuuc library debug
184-
#find_library(V8_ICUUC_LIBRARY_DEBUG
185-
# NAMES ${V8_ICUUC_NAMES_DEBUG}
186-
# PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
187-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
188-
# DOC "Google V8 JavaScript Engine Library ICUUC (Debug)"
189-
#)
183+
find_library(V8_ICUUC_LIBRARY_DEBUG
184+
NAMES ${V8_ICUUC_NAMES_DEBUG}
185+
PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
186+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
187+
DOC "Google V8 JavaScript Engine Library ICUUC (Debug)"
188+
)
190189

191190
# Find V8 icuuc library release
192-
#find_library(V8_ICUUC_LIBRARY_RELEASE
193-
# NAMES ${V8_ICUUC_NAMES_RELEASE}
194-
# PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
195-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
196-
# DOC "Google V8 JavaScript Engine Library ICUUC (Release)"
197-
#)
191+
find_library(V8_ICUUC_LIBRARY_RELEASE
192+
NAMES ${V8_ICUUC_NAMES_RELEASE}
193+
PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
194+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
195+
DOC "Google V8 JavaScript Engine Library ICUUC (Release)"
196+
)
198197

199198
# Find V8 icui18n library debug
200-
#find_library(V8_ICUI18N_LIBRARY_DEBUG
201-
# NAMES ${V8_ICUI18N_NAMES_DEBUG}
202-
# PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
203-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
204-
# DOC "Google V8 JavaScript Engine Library ICUI18N (Debug)"
205-
#)
199+
find_library(V8_ICUI18N_LIBRARY_DEBUG
200+
NAMES ${V8_ICUI18N_NAMES_DEBUG}
201+
PATHS ${V8_PATHS} ${V8_PATHS_DEBUG}
202+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
203+
DOC "Google V8 JavaScript Engine Library ICUI18N (Debug)"
204+
)
206205

207206
# Find V8 icui18n library release
208-
#find_library(V8_ICUI18N_LIBRARY_RELEASE
209-
# NAMES ${V8_ICUI18N_NAMES_RELEASE}
210-
# PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
211-
# PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
212-
# DOC "Google V8 JavaScript Engine Library ICUI18N (Release)"
213-
#)
207+
find_library(V8_ICUI18N_LIBRARY_RELEASE
208+
NAMES ${V8_ICUI18N_NAMES_RELEASE}
209+
PATHS ${V8_PATHS} ${V8_PATHS_RELEASE}
210+
PATH_SUFFIXES ${V8_LIBRARY_PATH_SUFFIXES}
211+
DOC "Google V8 JavaScript Engine Library ICUI18N (Release)"
212+
)
214213

215214
# Base build with snapshot
216215
if(MSVC)
@@ -242,23 +241,65 @@ else()
242241
set(V8_LIBRARIES ${V8_LIBRARY})
243242
endif()
244243

245-
set(V8_LIBRARIES_VERSION)
246-
247244
# Set version libraries
245+
set(V8_LIBRARIES_DEPENDS)
246+
248247
if (V8_LIBRARY_DEBUG)
249-
set(V8_LIBRARIES_VERSION
250-
${V8_LIBRARIES_VERSION}
248+
set(V8_LIBRARIES_DEPENDS
249+
${V8_LIBRARIES_DEPENDS}
251250
${V8_LIBRARY_DEBUG}.${V8_FIND_VERSION}
252251
)
253252
endif()
254253

255254
if (V8_LIBRARY_RELEASE)
256-
set(V8_LIBRARIES_VERSION
257-
${V8_LIBRARIES_VERSION}
255+
set(V8_LIBRARIES_DEPENDS
256+
${V8_LIBRARIES_DEPENDS}
258257
${V8_LIBRARY_RELEASE}.${V8_FIND_VERSION}
259258
)
260259
endif()
261260

261+
if(V8_ICU_LIBRARY_DEBUG)
262+
set(V8_LIBRARIES_DEPENDS
263+
${V8_LIBRARIES_DEPENDS}
264+
${V8_ICU_LIBRARY_DEBUG}.${ICU_FIND_VERSION}
265+
)
266+
endif()
267+
268+
if(V8_ICU_LIBRARY_RELEASE)
269+
set(V8_LIBRARIES_DEPENDS
270+
${V8_LIBRARIES_DEPENDS}
271+
${V8_ICU_LIBRARY_RELEASE}.${ICU_FIND_VERSION}
272+
)
273+
endif()
274+
275+
if(V8_ICUUC_LIBRARY_DEBUG)
276+
set(V8_LIBRARIES_DEPENDS
277+
${V8_LIBRARIES_DEPENDS}
278+
${V8_ICUUC_LIBRARY_DEBUG}.${ICU_FIND_VERSION}
279+
)
280+
endif()
281+
282+
if(V8_ICUUC_LIBRARY_RELEASE)
283+
set(V8_LIBRARIES_DEPENDS
284+
${V8_LIBRARIES_DEPENDS}
285+
${V8_ICUUC_LIBRARY_RELEASE}.${ICU_FIND_VERSION}
286+
)
287+
endif()
288+
289+
if(V8_ICUI18N_LIBRARY_DEBUG)
290+
set(V8_LIBRARIES_DEPENDS
291+
${V8_LIBRARIES_DEPENDS}
292+
${V8_ICUI18N_LIBRARY_DEBUG}.${ICU_FIND_VERSION}
293+
)
294+
endif()
295+
296+
if(V8_ICUI18N_LIBRARY_RELEASE)
297+
set(V8_LIBRARIES_DEPENDS
298+
${V8_LIBRARIES_DEPENDS}
299+
${V8_ICUI18N_LIBRARY_RELEASE}.${ICU_FIND_VERSION}
300+
)
301+
endif()
302+
262303
find_package_handle_standard_args(V8 DEFAULT_MSG V8_LIBRARY V8_INCLUDE_DIR)
263304

264305
# Base build
@@ -364,7 +405,7 @@ endif()
364405
if(_V8_CMAKE_DEBUG)
365406
message(STATUS "V8_INCLUDE_DIR: ${V8_INCLUDE_DIR}")
366407
message(STATUS "V8_LIBRARIES: ${V8_LIBRARIES}")
367-
message(STATUS "V8_LIBRARIES_VERSION: ${V8_LIBRARIES_VERSION}")
408+
message(STATUS "V8_LIBRARIES_DEPENDS: ${V8_LIBRARIES_DEPENDS}")
368409
message(STATUS "V8_VERSION: ${V8_VERSION}")
369410
message(STATUS "V8_VERSION_HEX: ${V8_VERSION_HEX}")
370411
message(STATUS "V8_EXECUTABLE: ${V8_EXECUTABLE}")

0 commit comments

Comments
 (0)