Merge pull request #171 from haberman/master

Fixed amalgamation to not exclude upb/decode.c.
pull/13171/head
Joshua Haberman 6 years ago committed by GitHub
commit 1a77fbce39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      bazel/build_defs.bzl
  2. 2
      tools/amalgamate.py

@ -169,24 +169,22 @@ def generated_file_staleness_test(name, outs, generated_pattern):
SrcList = provider(
fields = {
"srcs": "list of srcs",
"hdrs": "list of hdrs",
},
)
def _file_list_aspect_impl(target, ctx):
if GeneratedSrcs in target:
srcs = target[GeneratedSrcs]
return [SrcList(srcs = srcs.srcs, hdrs = srcs.hdrs)]
return [SrcList(srcs = srcs.srcs + srcs.hdrs)]
srcs = []
hdrs = []
for src in ctx.rule.attr.srcs:
srcs += src.files.to_list()
for hdr in ctx.rule.attr.hdrs:
hdrs += hdr.files.to_list()
srcs += hdr.files.to_list()
for hdr in ctx.rule.attr.textual_hdrs:
hdrs += hdr.files.to_list()
return [SrcList(srcs = srcs, hdrs = hdrs)]
srcs += hdr.files.to_list()
return [SrcList(srcs = srcs)]
_file_list_aspect = aspect(
implementation = _file_list_aspect_impl,
@ -194,11 +192,9 @@ _file_list_aspect = aspect(
def _upb_amalgamation(ctx):
inputs = []
srcs = []
for lib in ctx.attr.libs:
inputs += lib[SrcList].srcs
inputs += lib[SrcList].hdrs
srcs += [src for src in lib[SrcList].srcs if src.path.endswith("c")]
srcs = [src for src in inputs if src.path.endswith("c")]
ctx.actions.run(
inputs = inputs,
outputs = ctx.outputs.outs,

@ -66,7 +66,7 @@ output_path = sys.argv[1]
amalgamator = Amalgamator(output_path)
files = []
for arg in sys.argv[3:]:
for arg in sys.argv[2:]:
arg = arg.strip()
if arg.startswith("-I"):
amalgamator.add_include_path(arg[2:])

Loading…
Cancel
Save