mirror of https://github.com/nodejs/node.git
111 lines
2.7 KiB
Plaintext
111 lines
2.7 KiB
Plaintext
|
# Copyright (c) 2013-2019 GitHub Inc.
|
||
|
# Copyright 2019 the V8 project authors. All rights reserved.
|
||
|
# Copyright 2023 Microsoft Inc.
|
||
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
# found in the LICENSE file.
|
||
|
|
||
|
# 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-string-conversion",
|
||
|
"-Wno-shadow",
|
||
|
"-Wno-unreachable-code",
|
||
|
"-Wno-unreachable-code-return",
|
||
|
"-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_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
|
||
|
}
|
||
|
}
|
||
|
}
|