Mercurial > gemma
view Makefile @ 5520:05db984d3db1
Improve performance of bottleneck area calculation
Avoid buffer calculations by replacing them with simple distance comparisons
and calculate the boundary of the result geometry only once per iteration.
In some edge cases with very large numbers of iterations, this reduced
the runtime of a bottleneck import by a factor of more than twenty.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 21 Oct 2021 19:50:39 +0200 |
parents | 983d6efc04e9 |
children | 02c2d0edeb2a |
line wrap: on
line source
# Simple Makefile to build all of Gemma # # Authors: Sascha Wilde <wilde@intevation.de> basedir := $(dir $(realpath $(firstword $(MAKEFILE_LIST)))) BUILDBASE := $(basedir).buildbase GOPATH := $(BUILDBASE)/go GOCACHE := $(BUILDBASE)/gocache ENVWARPPER := $(BUILDBASE)/run-with-env.sh BINDIR := /usr/local/bin export BUILDBASE .PHONY: all gemma client clean all: gemma client $(ENVWARPPER): @echo "Preparing go build environment:" mkdir -p "$(GOPATH)" mkdir -p "$(GOCACHE)" @echo "Creating wrapper script:" echo '#!/bin/sh' >"$(ENVWARPPER)" echo 'export GOPATH=$(GOPATH)' >>"$(ENVWARPPER)" echo 'export GOCACHE=$(GOCACHE)' >>"$(ENVWARPPER)" echo 'exec "$$@"' >>"$(ENVWARPPER)" chmod +x "$(ENVWARPPER)" gemma: $(ENVWARPPER) "$(ENVWARPPER)" go build -o ./cmd/gemma/gemma ./cmd/gemma client: $(MAKE) -f Makefile.build -C client install: gemma cp cmd/gemma/gemma $(BINDIR) tar: all v="gemma-$$(hg id -i)" ;\ tar --transform "s@^@$${v}/@" \ -cJf "../$${v}.tar.xz" \ cmd/gemma/gemma schema style-templates report-templates \ web misc example_conf.toml clean: $(MAKE) -f Makefile.build -C client $@ rm -f "$(gemma-bin)" chmod -R u+w "$(BUILDBASE)" # This is neccessary for deletion to work... rm -rf "$(BUILDBASE)"