aboutsummaryrefslogtreecommitdiffstats
path: root/build/conf/project_specific/maps/sproto.conf
blob: 1a62563fc110e73c84cc16287c604ab33cd9a4df (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
### @usage: EXPORT_YMAPS_PROTO() # maps-specific
###
### Maps-specific .proto handling: IMPORT_YMAPS_PROTO() + maps protobuf namespace.
macro EXPORT_YMAPS_PROTO() {
    PROTO_NAMESPACE(GLOBAL maps/doc/proto)
}

macro _YMAPS_GENERATE_SPROTO_HEADER(File) {
    .CMD=${cwd;rootdir;input:File} ${tool:"maps/libs/sproto/sprotoc"} -I=./$PROTO_NAMESPACE -I=$ARCADIA_ROOT/$PROTO_NAMESPACE -I=$ARCADIA_BUILD_ROOT -I=$PROTOBUF_PATH --sproto_out=$ARCADIA_BUILD_ROOT/$PROTO_NAMESPACE ${input;rootrel:File} ${output;hide;norel;nopath;noext:File.sproto.h} ${kv;hide:"p PB"} ${kv;hide:"pc yellow"}
    .PEERDIR=maps/libs/sproto
}

### @usage: YMAPS_SPROTO(ProtoFiles...) # maps-specific
###
### Maps-specific .proto handling: generate .sproto.h files using maps/libs/sproto/sprotoc.
macro YMAPS_SPROTO(FILES...) {
    SET(PROTO_HEADER_EXTS .pb.h .sproto.h)
    foreach (FILE : $FILES) {
        [.proto]=$_YMAPS_GENERATE_SPROTO_HEADER($FILE)
    }
}