Skip to content

Commit

Permalink
[gn build] Add build file for llvm-objcopy
Browse files Browse the repository at this point in the history
Needed by check-lld.

This should've been part of r349486 but I messed up.

Differential Revision: https://reviews.llvm.org/D55831

llvm-svn: 349598
  • Loading branch information
nico committed Dec 19, 2018
1 parent 405810c commit 5dcd709
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 0 deletions.
6 changes: 6 additions & 0 deletions llvm/utils/gn/secondary/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ group("default") {
"//llvm/tools/llvm-dwarfdump",
"//llvm/tools/llvm-mc",
"//llvm/tools/llvm-nm:symlinks",
"//llvm/tools/llvm-objcopy:symlinks",
"//llvm/tools/llvm-objdump:symlinks",
"//llvm/tools/llvm-pdbutil",
"//llvm/tools/llvm-readobj:symlinks",
Expand Down Expand Up @@ -59,6 +60,11 @@ group("llvm-nm") {
"//llvm/tools/llvm-nm:symlinks",
]
}
group("llvm-objcopy") {
deps = [
"//llvm/tools/llvm-objcopy:symlinks",
]
}
group("llvm-objdump") {
deps = [
"//llvm/tools/llvm-objdump:symlinks",
Expand Down
57 changes: 57 additions & 0 deletions llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import("//llvm/tools/binutils_symlinks.gni")
import("//llvm/utils/TableGen/tablegen.gni")
import("//llvm/utils/gn/build/symlink_or_copy.gni")

tablegen("ObjcopyOpts") {
visibility = [ ":llvm-objcopy" ]
args = [ "-gen-opt-parser-defs" ]
}

tablegen("StripOpts") {
visibility = [ ":llvm-objcopy" ]
args = [ "-gen-opt-parser-defs" ]
}

symlinks = [ "llvm-strip" ]
if (llvm_install_binutils_symlinks) {
symlinks += [
"objcopy",
"strip",
]
}
foreach(target, symlinks) {
symlink_or_copy(target) {
deps = [
":llvm-objcopy",
]
source = "llvm-objcopy"
output = "$root_out_dir/bin/$target"
}
}

# //:llvm-objcopy depends on this symlink target, see comment in //BUILD.gn.
group("symlinks") {
deps = []
foreach(target, symlinks) {
deps += [ ":$target" ]
}
}

executable("llvm-objcopy") {
deps = [
":ObjcopyOpts",
":StripOpts",
"//llvm/lib/MC",
"//llvm/lib/Object",
"//llvm/lib/Option",
"//llvm/lib/Support",
]
include_dirs = [ "." ]
sources = [
"Buffer.cpp",
"CopyConfig.cpp",
"ELF/ELFObjcopy.cpp",
"ELF/Object.cpp",
"llvm-objcopy.cpp",
]
}

0 comments on commit 5dcd709

Please sign in to comment.