github.com/cuberat/protoc-gen-docjson@v1.1.1-0.20230510142946-907a0bd92b78/Makefile (about)

     1  DOCKER ?= podman
     2  
     3  TOP_DIR = $(shell /bin/pwd)
     4  OUTFILE = protos.json
     5  READABLE_OUTFILE = protos_readable.json
     6  
     7  PROTOS = tester service-tester subdir/docstuff
     8  PROTO_DIR = $(TOP_DIR)/tests/data/proto1
     9  PROTO_FILES = $(foreach proto,$(PROTOS),$(PROTO_DIR)/$(proto).proto)
    10  
    11  
    12  OUT_DIR = $(TOP_DIR)
    13  BIN_DIR = $(TOP_DIR)/cmd/protoc-gen-docjson
    14  
    15  all: plugin
    16  
    17  check: plugin
    18  	/usr/bin/env PATH=$(BIN_DIR):$${PATH} protoc \
    19  		--docjson_out="$(OUT_DIR)" \
    20  		--docjson_opt=outfile=$(OUTFILE),proto=$(PROTO_DIR),pretty \
    21  		-I$(PROTO_DIR) \
    22  		$(PROTO_FILES)
    23  
    24  checkdebug: plugin
    25  	/usr/bin/env PATH=$(BIN_DIR):$${PATH} protoc \
    26  		--docjson_out="$(OUT_DIR)" \
    27  		--docjson_opt=outfile=$(OUTFILE),proto=$(PROTO_DIR),debug \
    28  		-I$(PROTO_DIR) \
    29  		$(PROTO_FILES)
    30  	cat $(TOP_DIR)/$(OUTFILE) | jq > $(TOP_DIR)/$(READABLE_OUTFILE)
    31  
    32  checkyaml: plugin
    33  	/usr/bin/env PATH=$(BIN_DIR):$${PATH} protoc \
    34  		--docjson_out="$(OUT_DIR)" \
    35  		--docjson_opt=proto=$(PROTO_DIR),outfmt=yaml \
    36  		-I$(PROTO_DIR) \
    37  		$(PROTO_FILES)
    38  
    39  plugin:
    40  	cd cmd/protoc-gen-docjson && go build -a
    41  
    42  test: plugin
    43  	cd tests && go test
    44  
    45  testv: plugin
    46  	cd tests && go test -v