Hermes executor migration to CMake
Summary: Adds CMake files to configure hermes-executor build, with the same setup as we have in Android.mk Changelog: [Internal] - CMake build config for hermes executor Reviewed By: cortinico Differential Revision: D34811909 fbshipit-source-id: 2df6dbaf46131db87a25e26c83b38ba44f29d1d3
This commit is contained in:
Родитель
a6095d43cd
Коммит
6c5bd6d790
|
@ -0,0 +1,41 @@
|
|||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
#
|
||||
# This source code is licensed under the MIT license found in the
|
||||
# LICENSE file in the root directory of this source tree.
|
||||
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
set(CMAKE_VERBOSE_MAKEFILE on)
|
||||
|
||||
file(GLOB_RECURSE hermes_executor_SRC CONFIGURE_DEPENDS *.cpp)
|
||||
|
||||
if(${CMAKE_BUILD_TYPE} MATCHES Debug)
|
||||
set(HERMES_TARGET_SUFFIX debug)
|
||||
else()
|
||||
set(HERMES_TARGET_SUFFIX release)
|
||||
endif()
|
||||
|
||||
set(HERMES_TARGET_NAME hermes-executor-${HERMES_TARGET_SUFFIX})
|
||||
|
||||
add_library(
|
||||
${HERMES_TARGET_NAME}
|
||||
SHARED
|
||||
${hermes_executor_SRC}
|
||||
)
|
||||
target_compile_options(
|
||||
${HERMES_TARGET_NAME}
|
||||
PRIVATE
|
||||
$<$<CONFIG:Debug>:-DHERMES_ENABLE_DEBUGGER=1>
|
||||
-fexceptions
|
||||
)
|
||||
target_include_directories(${HERMES_TARGET_NAME} PRIVATE .)
|
||||
target_link_libraries(
|
||||
${HERMES_TARGET_NAME}
|
||||
hermes-executor-common
|
||||
jsireact
|
||||
fb
|
||||
fbjni
|
||||
folly_json
|
||||
hermes-engine::libhermes
|
||||
jsi
|
||||
reactnativejni
|
||||
)
|
|
@ -10,6 +10,6 @@ add_compile_options(-fexceptions -fno-omit-frame-pointer)
|
|||
|
||||
add_library(glog_init SHARED glog_init.cpp)
|
||||
|
||||
target_include_directories(yoga PUBLIC .)
|
||||
target_include_directories(glog_init PUBLIC .)
|
||||
|
||||
target_link_libraries(glog_init log glog)
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
#
|
||||
# This source code is licensed under the MIT license found in the
|
||||
# LICENSE file in the root directory of this source tree.
|
||||
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
set(CMAKE_VERBOSE_MAKEFILE on)
|
||||
|
||||
file(GLOB_RECURSE hermes_executor_SRC CONFIGURE_DEPENDS *.cpp)
|
||||
add_library(
|
||||
hermes-executor-common
|
||||
STATIC
|
||||
${hermes_executor_SRC}
|
||||
)
|
||||
target_include_directories(hermes-executor-common PUBLIC .)
|
||||
target_link_libraries(hermes-executor-common
|
||||
jsireact
|
||||
hermes-engine::libhermes
|
||||
jsi
|
||||
debug hermes-inspector
|
||||
)
|
||||
|
||||
if(${CMAKE_BUILD_TYPE} MATCHES Debug)
|
||||
target_compile_options(
|
||||
hermes-executor-common
|
||||
PRIVATE
|
||||
-DHERMES_ENABLE_DEBUGGER=1
|
||||
)
|
||||
endif()
|
|
@ -0,0 +1,32 @@
|
|||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
#
|
||||
# This source code is licensed under the MIT license found in the
|
||||
# LICENSE file in the root directory of this source tree.
|
||||
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
set(CMAKE_VERBOSE_MAKEFILE on)
|
||||
|
||||
file(GLOB hermesinspector_SRC CONFIGURE_DEPENDS *.cpp detail/*.cpp chrome/*.cpp)
|
||||
|
||||
add_library(hermes-inspector
|
||||
STATIC
|
||||
${hermesinspector_SRC})
|
||||
|
||||
target_compile_options(
|
||||
hermes-inspector
|
||||
PRIVATE
|
||||
-DHERMES_ENABLE_DEBUGGER=1
|
||||
-DHERMES_INSPECTOR_FOLLY_KLUDGE=1
|
||||
-fexceptions
|
||||
)
|
||||
|
||||
target_include_directories(hermes-inspector PUBLIC ${REACT_COMMON_DIR})
|
||||
target_link_libraries(hermes-inspector
|
||||
jsinspector
|
||||
fb
|
||||
fbjni
|
||||
folly_futures
|
||||
folly_json
|
||||
glog
|
||||
hermes-engine::libhermes
|
||||
jsi)
|
|
@ -17,7 +17,6 @@ add_compile_options(
|
|||
file(GLOB react_debug_SRC CONFIGURE_DEPENDS *.cpp)
|
||||
add_library(react_debug SHARED ${react_debug_SRC})
|
||||
|
||||
# TODO This should not be ../../.. but a proper variable
|
||||
target_include_directories(react_debug PUBLIC ../../..)
|
||||
target_include_directories(react_debug PUBLIC ${REACT_COMMON_DIR})
|
||||
|
||||
target_link_libraries(react_debug log folly_json)
|
||||
|
|
Загрузка…
Ссылка в новой задаче