1# Go support for Protocol Buffers - Google's data interchange format
2#
3# Copyright 2010 The Go Authors.  All rights reserved.
4# https://github.com/golang/protobuf
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions are
8# met:
9#
10#     * Redistributions of source code must retain the above copyright
11# notice, this list of conditions and the following disclaimer.
12#     * Redistributions in binary form must reproduce the above
13# copyright notice, this list of conditions and the following disclaimer
14# in the documentation and/or other materials provided with the
15# distribution.
16#     * Neither the name of Google Inc. nor the names of its
17# contributors may be used to endorse or promote products derived from
18# this software without specific prior written permission.
19#
20# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
32all:
33	@echo run make test
34
35test:	regenerate testbuild
36
37#test:	regenerate testbuild extension_test
38#	./extension_test
39#	@echo PASS
40
41my_test/test.pb.go: my_test/test.proto
42	protoc --gogo_out=Mmulti/multi1.proto=github.com/gogo/protobuf/protoc-gen-gogo/testdata/multi:. $<
43
44regenerate: my_test/test.pb.go
45	go install github.com/gogo/protobuf/protoc-min-version
46	protoc-min-version --version="3.0.0" --gogo_out=. ./my_test/test.proto
47
48nuke:	clean
49
50testbuild:	buildprotos
51	go test
52
53buildprotos:
54	# Invoke protoc once to generate three independent .pb.go files in the same package.
55	protoc --gogo_out=. multi/multi1.proto multi/multi2.proto multi/multi3.proto
56
57#extension_test:	extension_test.$O
58#	$(LD) -L. -o $@ $<
59
60#multi.a: multi3.pb.$O multi2.pb.$O multi1.pb.$O
61#	rm -f multi.a
62#	$(QUOTED_GOBIN)/gopack grc $@ $<
63
64#test.pb.go:	imp.pb.go
65#multi1.pb.go:	multi2.pb.go multi3.pb.go
66#main.$O: imp.pb.$O test.pb.$O multi.a
67#extension_test.$O: extension_base.pb.$O extension_extra.pb.$O extension_user.pb.$O
68