0
0
mirror of https://github.com/nodejs/node.git synced 2024-11-27 22:16:50 +01:00
nodejs/deps/uv/unofficial.gni
Cheng e90704cd9e
build: fix GN build for cares/uv deps
PR-URL: https://github.com/nodejs/node/pull/55477
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-10-23 03:48:59 +00:00

112 lines
2.7 KiB
Plaintext

# This file is used by GN for building, which is NOT the build system used for
# building official binaries.
# Please edit the gyp files if you are making changes to build system.
# The actual configurations are put inside a template in unofficial.gni to
# prevent accidental edits from contributors.
template("uv_gn_build") {
config("uv_external_config") {
include_dirs = [ "include" ]
}
config("uv_internal_config") {
include_dirs = [
"include",
"src",
]
defines = [ "BUILDING_UV_SHARED" ] # always export symbols
if (is_posix) {
defines += [
"_LARGEFILE_SOURCE",
"_FILE_OFFSET_BITS=64",
]
}
if (is_linux) {
defines += [
"_POSIX_C_SOURCE=200112",
"_GNU_SOURCE",
]
}
if (is_apple) {
defines += [
"_DARWIN_USE_64_BIT_INODE=1",
"_DARWIN_UNLIMITED_SELECT=1",
]
}
if (is_clang || !is_win) {
cflags_c = [
"-Wno-deprecated-declarations",
"-Wno-extra-semi",
"-Wno-implicit-fallthrough",
"-Wno-missing-braces",
"-Wno-sign-compare",
"-Wno-string-conversion",
"-Wno-shadow",
"-Wno-unreachable-code",
"-Wno-unreachable-code-return",
"-Wno-unused-but-set-parameter",
"-Wno-unused-but-set-variable",
"-Wno-unused-function",
"-Wno-unused-result",
"-Wno-unused-variable",
]
}
}
gypi_values = exec_script("../../tools/gypi_to_gn.py",
[ rebase_path("uv.gyp") ],
"scope",
[ "uv.gyp" ])
component(target_name) {
forward_variables_from(invoker, "*")
configs += [ ":uv_internal_config" ]
public_configs = [ ":uv_external_config" ]
if (is_posix) {
configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
configs += [ "//build/config/gcc:symbol_visibility_default" ]
}
if (is_win) {
libs = [
"advapi32.lib",
"iphlpapi.lib",
"psapi.lib",
"shell32.lib",
"user32.lib",
"userenv.lib",
"ws2_32.lib",
]
}
if (is_posix) {
libs = [ "m" ]
ldflags = [ "-pthread" ]
}
if (is_linux) {
libs += [
"dl",
"rt",
]
}
sources = gypi_values.uv_sources_common
if (is_win) {
sources += gypi_values.uv_sources_win
}
if (is_posix) {
sources += gypi_values.uv_sources_posix +
[ "src/unix/proctitle.c" ]
}
if (is_linux) {
sources += gypi_values.uv_sources_linux
}
if (is_apple) {
sources += gypi_values.uv_sources_apple +
gypi_values.uv_sources_bsd_common
}
}
}