diff --git a/assembler/BUILD.gn b/assembler/BUILD.gn index ecf04b5de7c7e241fcce94cab6f041a2863b6470..e4ee56e6359a49b9338a92ca011af2766a225eab 100644 --- a/assembler/BUILD.gn +++ b/assembler/BUILD.gn @@ -47,10 +47,10 @@ libarkassembler_configs = [ "$ark_root/libpandafile:arkfile_public_config", ] -ohos_shared_library("libarkassembler") { +source_set("libarkassembler_static") { sources = libarkassembler_sources - configs = libarkassembler_configs + public_configs = libarkassembler_configs deps = [ ":ark_asm_ecmascript_meta_gen_h", @@ -65,6 +65,11 @@ ohos_shared_library("libarkassembler") { "$ark_root/libpandafile:libarkfile", sdk_libc_secshared_dep, ] +} + +ohos_shared_library("libarkassembler") { + deps = [ ":libarkassembler_static" ] + if (!is_standard_system) { relative_install_dir = "ark" } @@ -72,10 +77,10 @@ ohos_shared_library("libarkassembler") { subsystem_name = "ark" } -ohos_static_library("libarkassembler_frontend_static") { +source_set("libarkassembler_frontend_set") { sources = libarkassembler_sources - configs = libarkassembler_configs + public_configs = libarkassembler_configs deps = [ ":ark_asm_ecmascript_meta_gen_h", @@ -92,12 +97,16 @@ ohos_static_library("libarkassembler_frontend_static") { ] } -ohos_executable("ark_asm") { +ohos_static_library("libarkassembler_frontend_static") { + deps = [ ":libarkassembler_frontend_set" ] +} + +source_set("ark_asm_static") { sources = [ "pandasm.cpp" ] include_dirs = [ "$target_gen_dir" ] - configs = [ + public_configs = [ sdk_libc_secshared_config, ":arkassembler_public_config", "$ark_root:ark_config", @@ -111,6 +120,10 @@ ohos_executable("ark_asm") { "$ark_root/libpandabase:libarkbase_frontend_static", "$ark_root/libpandafile:libarkfile_frontend_static", ] +} + +ohos_executable("ark_asm") { + deps = [ ":ark_asm_static" ] if (!is_mac && !is_mingw && !ark_standalone_build) { ldflags = [ "-static-libstdc++" ] diff --git a/disassembler/BUILD.gn b/disassembler/BUILD.gn index fa244bc2038f52911abd3cc0c1a1183557c678ed..5b4b505e4b118a97edc174750271a5dfd094a20b 100644 --- a/disassembler/BUILD.gn +++ b/disassembler/BUILD.gn @@ -35,12 +35,12 @@ arkdisassembler_configs = [ "$ark_root/libpandafile:arkfile_public_config", ] -ohos_shared_library("arkdisassembler") { +source_set("arkdisassembler_static") { sources = arkdisassembler_sources include_dirs = [ "$ark_root/disassembler" ] - configs = arkdisassembler_configs + public_configs = arkdisassembler_configs deps = [ ":isa_gen_ark_disam_bc_ins_to_pandasm_ins_cpp", @@ -52,6 +52,11 @@ ohos_shared_library("arkdisassembler") { "$ark_root/libpandafile:libarkfile", sdk_libc_secshared_dep, ] +} + +ohos_shared_library("arkdisassembler") { + deps = [ ":arkdisassembler_static" ] + if (!is_standard_system) { relative_install_dir = "ark" } @@ -59,12 +64,12 @@ ohos_shared_library("arkdisassembler") { subsystem_name = "ark" } -ohos_static_library("arkdisassembler_frontend_static") { +source_set("arkdisassembler_frontend_set") { sources = arkdisassembler_sources include_dirs = [ "$ark_root/disassembler" ] - configs = arkdisassembler_configs + public_configs = arkdisassembler_configs deps = [ ":isa_gen_ark_disam_bc_ins_to_pandasm_ins_cpp", @@ -78,12 +83,16 @@ ohos_static_library("arkdisassembler_frontend_static") { ] } -ohos_executable("ark_disasm") { +ohos_static_library("arkdisassembler_frontend_static") { + deps = [ ":arkdisassembler_frontend_set" ] +} + +source_set("ark_disasm_static") { sources = [ "disasm.cpp" ] include_dirs = [ "$target_gen_dir" ] - configs = [ + public_configs = [ sdk_libc_secshared_config, "$ark_root:ark_config", "$ark_root/assembler:arkassembler_public_config", @@ -97,6 +106,10 @@ ohos_executable("ark_disasm") { "$ark_root/libpandabase:libarkbase_frontend_static", "$ark_root/libpandafile:libarkfile_frontend_static", ] +} + +ohos_executable("ark_disasm") { + deps = [ ":ark_disasm_static" ] if (!is_mac && !is_mingw && !ark_standalone_build) { ldflags = [ "-static-libstdc++" ] diff --git a/dprof/BUILD.gn b/dprof/BUILD.gn index 6496e70f843bcf3e663edf42b5220e3287e8c206..df615124475761991dffea85af20bc2cc6fe1338 100644 --- a/dprof/BUILD.gn +++ b/dprof/BUILD.gn @@ -22,14 +22,14 @@ config("libdprof_config") { ] } -ohos_static_library("libdprof") { +source_set("libdprof_static") { sources = [ "libdprof/dprof/ipc/ipc_message.cpp", "libdprof/dprof/ipc/ipc_unix_socket.cpp", "libdprof/dprof/profiling_data.cpp", ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/libpandabase:arkbase_public_config", sdk_libc_secshared_config, @@ -38,3 +38,7 @@ ohos_static_library("libdprof") { deps = [ "$ark_root/libpandabase:libarkbase" ] } + +ohos_static_library("libdprof") { + deps = [ ":libdprof_static" ] +} diff --git a/gn/ark-third-party/miniz/BUILD.gn b/gn/ark-third-party/miniz/BUILD.gn index 21b93609288c33aebe5141deed285ce35a914bd0..bd87948034da33e396e2b10d10fbd930759ab90f 100644 --- a/gn/ark-third-party/miniz/BUILD.gn +++ b/gn/ark-third-party/miniz/BUILD.gn @@ -19,13 +19,17 @@ config("miniz_config") { cflags_c = [ "-Wno-unused-parameter" ] } -ohos_static_library("libminiz") { +source_set("libminiz_static") { sources = [ "miniz.c" ] - configs = [ + public_configs = [ ":miniz_config", "$ark_root:ark_config", ] +} + +ohos_static_library("libminiz") { + deps = [ ":libminiz_static" ] subsystem_name = "ark" } diff --git a/gn/ark-third-party/securec/BUILD.gn b/gn/ark-third-party/securec/BUILD.gn index 8479aad074e214f8624c6ef2feae8562163f4d82..c424389c1f8944e086792e04c7ce9116d8d83e45 100644 --- a/gn/ark-third-party/securec/BUILD.gn +++ b/gn/ark-third-party/securec/BUILD.gn @@ -60,7 +60,7 @@ libsec_sources = [ "$ark_third_party_root/securec/src/wscanf_s.c", ] -ohos_static_library("libc_secstatic") { +source_set("libc_secstatic_static") { sources = libsec_sources public_configs = [ ":libsec_public_config" ] cflags = [ @@ -74,7 +74,11 @@ ohos_static_library("libc_secstatic") { ] } -ohos_shared_library("libc_secshared") { +ohos_static_library("libc_secstatic") { + deps = [ ":libc_secstatic_static" ] +} + +source_set("libc_secshared_static") { sources = libsec_sources public_configs = [ ":libsec_public_config" ] cflags = [ @@ -86,6 +90,10 @@ ohos_shared_library("libc_secshared") { "-D_INC_STDLIB_S", "-D_INC_MEMORY_S", ] +} + +ohos_shared_library("libc_secshared") { + deps = [ ":libc_secshared_static" ] output_extension = "so" } diff --git a/libpandabase/BUILD.gn b/libpandabase/BUILD.gn index 7ed37053a3e75bc02e22effdb641ae7404434eca..660e4f321c7a5db806aa2401c8e292cf67bd725f 100644 --- a/libpandabase/BUILD.gn +++ b/libpandabase/BUILD.gn @@ -114,12 +114,16 @@ libarkbase_deps = [ sdk_libc_secshared_dep, ] -ohos_shared_library("libarkbase") { +source_set("libarkbase_static") { sources = libarkbase_sources - configs = libarkbase_configs + public_configs = libarkbase_configs deps = libarkbase_deps +} + +ohos_shared_library("libarkbase") { + deps = [ ":libarkbase_static" ] output_extension = "so" if (!is_standard_system) { @@ -128,10 +132,14 @@ ohos_shared_library("libarkbase") { subsystem_name = "ark" } -ohos_static_library("libarkbase_frontend_static") { +source_set("libarkbase_frontend_set") { sources = libarkbase_sources - configs = libarkbase_configs + public_configs = libarkbase_configs deps = libarkbase_deps } + +ohos_static_library("libarkbase_frontend_static") { + deps = [ ":libarkbase_frontend_set" ] +} diff --git a/libpandafile/BUILD.gn b/libpandafile/BUILD.gn index ee9080e488c6f115c947d8cd7198167a5a25e69a..29d4faae3360e0b068428f94fa8766ba71648946 100644 --- a/libpandafile/BUILD.gn +++ b/libpandafile/BUILD.gn @@ -54,10 +54,10 @@ libarkfile_configs = [ ":arkfile_public_config", ] -ohos_shared_library("libarkfile") { +source_set("libarkfile_static") { sources = libarkfile_sources - configs = libarkfile_configs + public_configs = libarkfile_configs deps = [ ":isa_gen_libarkfile_bytecode_emitter_def_gen_h", @@ -71,6 +71,10 @@ ohos_shared_library("libarkfile") { "$ark_root/libziparchive:libarkziparchive", sdk_libc_secshared_dep, ] +} + +ohos_shared_library("libarkfile") { + deps = [ ":libarkfile_static" ] if (!is_standard_system) { relative_install_dir = "ark" @@ -79,10 +83,10 @@ ohos_shared_library("libarkfile") { subsystem_name = "ark" } -ohos_static_library("libarkfile_frontend_static") { +source_set("libarkfile_frontend_set") { sources = libarkfile_sources - configs = libarkfile_configs + public_configs = libarkfile_configs deps = [ ":isa_gen_libarkfile_bytecode_emitter_def_gen_h", @@ -98,6 +102,10 @@ ohos_static_library("libarkfile_frontend_static") { ] } +ohos_static_library("libarkfile_frontend_static") { + deps = [ ":libarkfile_frontend_set" ] +} + ark_gen_file("libarkfile_type_gen_h") { template_file = "templates/type.h.erb" data_file = "types.yaml" diff --git a/libpandafile/external/BUILD.gn b/libpandafile/external/BUILD.gn index 8ef779789d653bec0a04ae003551de583c3c6c5d..6103588402b7e9b65e3290b440eb631885e34bed 100644 --- a/libpandafile/external/BUILD.gn +++ b/libpandafile/external/BUILD.gn @@ -21,10 +21,10 @@ config("libarkfileExt_config") { ] } -ohos_shared_library("libarkfileExt") { +source_set("libarkfileExt_static") { sources = [ "file_ext.cpp" ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/libpandabase:arkbase_public_config", "$ark_root/libpandafile:arkfile_public_config", @@ -36,6 +36,11 @@ ohos_shared_library("libarkfileExt") { "$ark_root/libpandabase:libarkbase", "$ark_root/libpandafile:libarkfile", ] +} + +ohos_shared_library("libarkfileExt") { + deps = [ ":libarkfileExt_static" ] + if (!is_standard_system) { relative_install_dir = "ark" } @@ -50,10 +55,10 @@ config("libarksupport_config") { ] } -ohos_shared_library("libarksupport") { +source_set("libarksupport_static") { sources = [ "panda_file_support.cpp" ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/libpandabase:arkbase_public_config", "$ark_root/libpandafile:arkfile_public_config", @@ -65,6 +70,11 @@ ohos_shared_library("libarksupport") { "$ark_root/libpandabase:libarkbase", "$ark_root/libpandafile:libarkfile", ] +} + +ohos_shared_library("libarksupport") { + deps = [ ":libarksupport_static" ] + if (!is_standard_system) { relative_install_dir = "ark" } diff --git a/libziparchive/BUILD.gn b/libziparchive/BUILD.gn index b5108d0062cb233758ba3ae2aa961e8f7168a987..74a04407f0988eaf289767887b35ed139930327a 100644 --- a/libziparchive/BUILD.gn +++ b/libziparchive/BUILD.gn @@ -27,10 +27,10 @@ config("arkziparchive_config") { } } -ohos_shared_library("libarkziparchive") { +source_set("libarkziparchive_static") { sources = [ "zip_archive.cpp" ] - configs = [ + public_configs = [ ":arkziparchive_config", "$ark_root:ark_config", sdk_libc_secshared_config, @@ -46,6 +46,11 @@ ohos_shared_library("libarkziparchive") { } else { deps += [ "$ark_third_party_root/miniz:libminiz" ] } +} + +ohos_shared_library("libarkziparchive") { + deps = [ ":libarkziparchive_static" ] + if (!is_standard_system) { relative_install_dir = "ark" } @@ -53,10 +58,10 @@ ohos_shared_library("libarkziparchive") { subsystem_name = "ark" } -ohos_static_library("libarkziparchive_frontend_static") { +source_set("libarkziparchive_frontend_set") { sources = [ "zip_archive.cpp" ] - configs = [ + public_configs = [ ":arkziparchive_config", "$ark_root:ark_config", sdk_libc_secshared_config, @@ -66,10 +71,13 @@ ohos_static_library("libarkziparchive_frontend_static") { "$ark_root/libpandabase:libarkbase_frontend_static", sdk_libc_secshared_dep, ] - if (!ark_standalone_build) { deps += [ "//third_party/miniz/amalgamation:libminiz" ] } else { deps += [ "$ark_third_party_root/miniz:libminiz" ] } } + +ohos_static_library("libarkziparchive_frontend_static") { + deps = [ ":libarkziparchive_frontend_set" ] +} diff --git a/panda/BUILD.gn b/panda/BUILD.gn index e4456c9def2ea26fff0e5d04ade94644afdaecaf..15485a6c315d7bc6c8f8714b327a5591f23082cf 100644 --- a/panda/BUILD.gn +++ b/panda/BUILD.gn @@ -14,10 +14,10 @@ import("//ark/runtime_core/ark_config.gni") import("//build/ohos.gni") -ohos_executable("ark_bin") { +source_set("ark_bin_static") { sources = [ "panda.cpp" ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/runtime:arkruntime_public_config", "$ark_root/libpandabase:arkbase_public_config", @@ -35,6 +35,10 @@ ohos_executable("ark_bin") { deps += [ "//ark/js_runtime:libark_jsruntime" ] configs += [ "//ark/js_runtime:ark_jsruntime_public_config" ] } +} + +ohos_executable("ark_bin") { + deps = [ ":ark_bin_static" ] output_name = "ark" install_enable = true diff --git a/runtime/BUILD.gn b/runtime/BUILD.gn index 9f090f11e929f4465ad667b7724c98ebba32efdc..3d7e2ec6f43c15666d8f3471707cfe22b3b79e63 100644 --- a/runtime/BUILD.gn +++ b/runtime/BUILD.gn @@ -61,7 +61,7 @@ group("arkruntime_header_deps") { ] } -ohos_static_library("libarkruntime_static") { +source_set("libarkruntime_set") { sources = [ "arch/asm_support.cpp", "assert_gc_scope.cpp", @@ -199,7 +199,7 @@ ohos_static_library("libarkruntime_static") { sources += core_vm_sources sources += verifier_sources - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/libpandabase:arkbase_public_config", "$ark_root/libpandafile:arkfile_public_config", @@ -243,6 +243,10 @@ ohos_static_library("libarkruntime_static") { ":bridge_dispatch_dyn_amd64", ] } +} + +ohos_static_library("libarkruntime_static") { + deps = [ ":libarkruntime_set" ] if (current_cpu == "amd64" || current_cpu == "x64" || current_cpu == "x86_64") { @@ -299,10 +303,10 @@ config("arkruntime_interpreter_impl_config") { } } -ohos_static_library("arkruntime_interpreter_impl") { +source_set("arkruntime_interpreter_impl_static") { sources = [ "interpreter/interpreter_impl.cpp" ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/libpandabase:arkbase_public_config", "$ark_root/libpandafile:arkfile_public_config", @@ -318,6 +322,10 @@ ohos_static_library("arkruntime_interpreter_impl") { ] } +ohos_static_library("arkruntime_interpreter_impl") { + deps = [ ":arkruntime_interpreter_impl_static" ] +} + template("gen_intrinsics_yaml") { assert(defined(invoker.data_files), "data_files required!") assert(defined(invoker.output_file), "output_file required!") diff --git a/verification/verifier/BUILD.gn b/verification/verifier/BUILD.gn index d8d2ef3e270312e78144d82a7d0fba34928f68b9..2a255fdd9976bac8a25bb3d283e37ca13e984090 100644 --- a/verification/verifier/BUILD.gn +++ b/verification/verifier/BUILD.gn @@ -14,10 +14,10 @@ import("//ark/runtime/ark_config.gni") import("//build/ohos.gni") -ohos_executable("verifier_bin") { +source_set("verifier_bin_static") { sources = [ "verifier.cpp" ] - configs = [ + public_configs = [ "$ark_root:ark_config", "$ark_root/runtime:arkruntime_public_config", "$ark_root/libpandabase:arkbase_public_config", @@ -31,6 +31,10 @@ ohos_executable("verifier_bin") { "$ark_root/libpandafile:libarkfile", "$ark_root/runtime:libarkruntime", ] +} + +ohos_executable("verifier_bin") { + deps = [ ":verifier_bin_static" ] output_name = "verifier" install_enable = true