blob: 7e7e3f506fa5d7434425e4409b346d7aa2e48bdd [file] [log] [blame]
# Copyright 2019 The Fuchsia Authors
#
# Use of this source code is governed by a MIT-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/MIT
import("//build/cpp/library_headers.gni")
source_set("code-patching") {
sources = [ "code-patching.cc" ]
public_deps = [ ":headers" ]
}
library_headers("headers") {
headers = [
"lib/code-patching/asm.h",
"lib/code-patching/code-patches.h",
"lib/code-patching/code-patching.h",
]
public_deps = [
"//zircon/kernel/lib/ktl:headers",
# code-patches.h includes <lib/arch/cache.h>
# code-patching.h includes <lib/arch/nop.h>.
"//zircon/kernel/lib/arch:headers",
# code-patches.h includes <lib/zbitl/items/bootfs.h>
"//zircon/system/ulib/zbitl:headers",
# code-patches.h includes <lib/fitx/result.h>
"//zircon/system/ulib/zxc:headers",
]
}
config("hermetic-leaf.config") {
inputs = [ "hermetic-leaf.ld" ]
# Use a custom linker script rather than the default PIE layout.
ldflags = [ "-Wl,-T," + rebase_path(inputs[0], root_build_dir) ]
# lld defaults to PIE, while the GNU linkers do not.
if (!is_gcc) {
ldflags += [ "-Wl,--no-pie" ]
}
ldflags += [
# Don't add any additional sections or dependencies.
"-nostdlib",
"-Wl,--build-id=none",
"-Wl,--no-dynamic-linker",
]
}