diff options
Diffstat (limited to 'cmd/anygone/Makefile')
-rw-r--r-- | cmd/anygone/Makefile | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/cmd/anygone/Makefile b/cmd/anygone/Makefile new file mode 100644 index 0000000..92cb899 --- /dev/null +++ b/cmd/anygone/Makefile @@ -0,0 +1,76 @@ +## +## Copyright (c) 2017 anygone contributors (see AUTHORS file) +## All rights reserved. +## +## Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are met: +## +## * Redistributions of source code must retain the above copyright notice, this +## list of conditions and the following disclaimer. +## +## * Redistributions in binary form must reproduce the above copyright notice, +## this list of conditions and the following disclaimer in the documentation +## and/or other materials provided with the distribution. +## +## * Neither the name of anygone nor the names of its +## contributors may be used to endorse or promote products derived from +## this software without specific prior written permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +## AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +## DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +## SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +## CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +## + +GOCMD := go +ifdef GOROOT +GOCMD = $(GOROOT)/bin/go +endif +EXECUTEABLE := anygone + +LIBS := "go.anytun.org/anygone/satp" \ + "github.com/lab11/go-tuntap/tuntap" \ + "github.com/spf13/pflag" + +all: build test +.PHONY: vet format getlibs updatelibs build build-static test bench cover clean distclean + +vet: + $(GOCMD) vet + +format: + $(GOCMD) fmt + +getlibs: + @$(foreach lib,$(LIBS), echo "fetching lib: $(lib)"; $(GOCMD) get $(lib);) + +updatelibs: + @$(foreach lib,$(LIBS), echo "updating lib: $(lib)"; $(GOCMD) get -u $(lib);) + +build: getlibs + $(GOCMD) build -o $(EXECUTEABLE) + +build-static: getlibs + $(GOCMD) build -tags netgo -o $(EXECUTEABLE) + +test: + $(GOCMD) test + +bench: + @$(GOCMD) test -bench=. + +cover: + @$(GOCMD) test -coverprofile=coverage.out + @$(GOCMD) tool cover -html=coverage.out + +distclean: clean + rm -f $(EXECUTEABLE).8 + +clean: + rm -f $(EXECUTEABLE) |