From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Wed, 9 May 2012 11:15:19 +0000 (+0200) Subject: go: update the build system X-Git-Tag: 0.13~11 X-Git-Url: https://git.cworth.org/git?p=obsolete%2Fnotmuch-old;a=commitdiff_plain;h=3113731713ac49142c86c934906d0f5a1e6f3eb8 go: update the build system The new "go" utility does not require any Makefiles to compile go packages and programs. Remove the old Makefiles and replace the top level Makefile with one defining some convenience targets for compiling the notmuch bindings and the notmuch-addrlookup utility. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de> --- diff --git a/bindings/go/Makefile b/bindings/go/Makefile index aba2d595..c38f2340 100644 --- a/bindings/go/Makefile +++ b/bindings/go/Makefile @@ -1,30 +1,40 @@ -# Copyright 2009 The Go Authors. All rights reserved. -# Use of this source code is governed by a BSD-style -# license that can be found in the LICENSE file. - -include ${GOROOT}/src/Make.inc - -all: install - -DIRS=\ - pkg\ - cmds\ - - -clean.dirs: $(addsuffix .clean, $(DIRS)) -install.dirs: $(addsuffix .install, $(DIRS)) -nuke.dirs: $(addsuffix .nuke, $(DIRS)) -test.dirs: $(addsuffix .test, $(TEST)) -bench.dirs: $(addsuffix .bench, $(BENCH)) - -%.clean: - +cd $* && $(QUOTED_GOBIN)/gomake clean - -%.install: - +cd $* && $(QUOTED_GOBIN)/gomake install - -clean: clean.dirs - -install: install.dirs - -#-include ${GOROOT}/src/Make.deps +# Makefile for the go bindings of notmuch + +export GOPATH ?= $(shell pwd) +export CGO_CFLAGS ?= -I../../../../lib +export CGO_LDFLAGS ?= -L../../../../lib + +GO ?= go +GOFMT ?= gofmt + +all: notmuch notmuch-addrlookup + +.PHONY: notmuch +notmuch: + $(GO) install notmuch + +.PHONY: goconfig +goconfig: + if [ ! -d src/github.com/kless/goconfig/config ]; then \ + $(GO) get github.com/kless/goconfig/config; \ + fi + +.PHONY: notmuch-addrlookup +notmuch-addrlookup: notmuch goconfig + $(GO) install notmuch-addrlookup + +.PHONY: format +format: + $(GOFMT) -w=true $(GOFMT_OPTS) src/notmuch + $(GOFMT) -w=true $(GOFMT_OPTS) src/notmuch-addrlookup + +.PHONY: check-format +check-format: + $(GOFMT) -d=true $(GOFMT_OPTS) src/notmuch + $(GOFMT) -d=true $(GOFMT_OPTS) src/notmuch-addrlookup + +.PHONY: clean +clean: + $(GO) clean notmuch + $(GO) clean notmuch-addrlookup + rm -rf pkg bin diff --git a/bindings/go/cmds/Makefile b/bindings/go/cmds/Makefile deleted file mode 100644 index afbc6d22..00000000 --- a/bindings/go/cmds/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# Copyright 2009 The Go Authors. All rights reserved. -# Use of this source code is governed by a BSD-style -# license that can be found in the LICENSE file. - -include ${GOROOT}/src/Make.inc - -TARG=notmuch-addrlookup -GOFILES=\ - notmuch-addrlookup.go - -include ${GOROOT}/src/Make.cmd diff --git a/bindings/go/pkg/Makefile b/bindings/go/pkg/Makefile deleted file mode 100644 index de89dbc9..00000000 --- a/bindings/go/pkg/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2009 The Go Authors. All rights reserved. -# Use of this source code is governed by a BSD-style -# license that can be found in the LICENSE file. - -include $(GOROOT)/src/Make.inc - -TARG=notmuch -CGOFILES=notmuch.go -CGO_LDFLAGS=-lnotmuch - -CLEANFILES+=notmuch_test - -include $(GOROOT)/src/Make.pkg - -%: install %.go - $(GC) $*.go - $(LD) -o $@ $*.$O