mirror of
https://github.com/davidgiven/fluxengine.git
synced 2025-10-31 11:17:01 -07:00
Update ab.
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
from build.c import cxxlibrary
|
from build.c import cxxlibrary
|
||||||
from build.protobuf import proto, protocc
|
from build.protobuf import proto, protocc, protolib
|
||||||
from os.path import *
|
from os.path import *
|
||||||
from glob import glob
|
from glob import glob
|
||||||
import sys
|
import sys
|
||||||
@@ -41,9 +41,9 @@ for a in archs:
|
|||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
proto(
|
protolib(
|
||||||
name="proto",
|
name="proto",
|
||||||
deps=ps + ["lib/config+common_proto"],
|
srcs=ps + ["lib/config+common_proto"],
|
||||||
)
|
)
|
||||||
|
|
||||||
cxxlibrary(name="proto_lib", deps=pls)
|
cxxlibrary(name="proto_lib", deps=pls)
|
||||||
|
|||||||
@@ -31,54 +31,53 @@ def proto(self, name, srcs: Targets = [], deps: Targets = []):
|
|||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|
||||||
if srcs:
|
dirs = sorted({"$[dir]/" + dirname(f) for f in filenamesof(srcs)})
|
||||||
dirs = sorted({"$[dir]/" + dirname(f) for f in filenamesof(srcs)})
|
simplerule(
|
||||||
simplerule(
|
replaces=self,
|
||||||
replaces=self,
|
ins=srcs,
|
||||||
ins=srcs,
|
outs=[f"={self.localname}.descriptor"],
|
||||||
outs=[f"={self.localname}.descriptor"],
|
deps=protodeps,
|
||||||
deps=protodeps,
|
commands=(
|
||||||
commands=(
|
["mkdir -p " + (" ".join(dirs))]
|
||||||
["mkdir -p " + (" ".join(dirs))]
|
+ [f"$(CP) {f} $[dir]/{f}" for f in filenamesof(srcs)]
|
||||||
+ [f"$(CP) {f} $[dir]/{f}" for f in filenamesof(srcs)]
|
+ [
|
||||||
+ [
|
"cd $[dir] && "
|
||||||
"cd $[dir] && "
|
+ (
|
||||||
+ (
|
" ".join(
|
||||||
" ".join(
|
[
|
||||||
[
|
"$(PROTOC)",
|
||||||
"$(PROTOC)",
|
"--proto_path=.",
|
||||||
"--proto_path=.",
|
"--include_source_info",
|
||||||
"--include_source_info",
|
f"--descriptor_set_out={self.localname}.descriptor",
|
||||||
f"--descriptor_set_out={self.localname}.descriptor",
|
]
|
||||||
]
|
+ (
|
||||||
+ (
|
[f"--descriptor_set_in={descriptorlist}"]
|
||||||
[f"--descriptor_set_in={descriptorlist}"]
|
if descriptorlist
|
||||||
if descriptorlist
|
else []
|
||||||
else []
|
|
||||||
)
|
|
||||||
+ ["$[ins]"]
|
|
||||||
)
|
)
|
||||||
|
+ ["$[ins]"]
|
||||||
)
|
)
|
||||||
]
|
)
|
||||||
),
|
]
|
||||||
label="PROTO",
|
),
|
||||||
args={
|
label="PROTO",
|
||||||
"protosrcs": filenamesof(srcs),
|
args={
|
||||||
"protodeps": set(protodeps) | {self},
|
"protosrcs": filenamesof(srcs),
|
||||||
},
|
"protodeps": set(protodeps) | {self},
|
||||||
)
|
},
|
||||||
else:
|
)
|
||||||
simplerule(
|
|
||||||
replaces=self,
|
|
||||||
ins=protodeps,
|
@Rule
|
||||||
outs=["=stamp"],
|
def protolib(self, name, srcs: Targets = []):
|
||||||
commands=["touch $[outs]"],
|
simplerule(
|
||||||
label="PROTO",
|
replaces=self,
|
||||||
args={
|
label="PROTOLIB",
|
||||||
"protosrcs": [],
|
args={
|
||||||
"protodeps": set(protodeps),
|
"protosrcs": collectattrs(targets=srcs, name="protosrcs"),
|
||||||
},
|
"protodeps": set(_getprotodeps(srcs)),
|
||||||
)
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@Rule
|
@Rule
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ def test(
|
|||||||
replaces=self,
|
replaces=self,
|
||||||
ins=[command],
|
ins=[command],
|
||||||
outs=["=sentinel"],
|
outs=["=sentinel"],
|
||||||
commands=["$[ins[0]]", "touch $[outs]"],
|
commands=["$[ins[0]]", "touch $[outs[0]]"],
|
||||||
deps=deps,
|
deps=deps,
|
||||||
label=label,
|
label=label,
|
||||||
)
|
)
|
||||||
@@ -87,7 +87,7 @@ def test(
|
|||||||
replaces=self,
|
replaces=self,
|
||||||
ins=ins,
|
ins=ins,
|
||||||
outs=["=sentinel"],
|
outs=["=sentinel"],
|
||||||
commands=commands + ["touch $[outs]"],
|
commands=commands + ["touch $[outs[0]]"],
|
||||||
deps=deps,
|
deps=deps,
|
||||||
label=label,
|
label=label,
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user