1 # SPDX-FileCopyrightText: 2022 Frank Doepper
3 # SPDX-License-Identifier: GPL-3.0-only
7 flavour = $(shell if stack --version >/dev/null 2>&1; then echo stack; elif cabal --version >/dev/null 2>&1; then echo cabal; else echo simple; fi)
8 parallel = $(filter -j%, $(MAKEFLAGS))
9 nix = $(if $(findstring nix,$(shell realpath `which stack`)),--nix,)
11 build: build-$(flavour)
12 install: install-$(flavour) install-common
18 install-stack: build-stack
19 install -d -m755 $(DESTDIR)$(pfx)/bin
20 stack $(nix) --local-bin-path $(DESTDIR)$(pfx)/bin/ install
23 install -d -m755 $(DESTDIR)$(pfx)/lib/haskell-amqp-utils
24 install -m755 callback $(DESTDIR)$(pfx)/lib/haskell-amqp-utils/
25 install -m644 callback.config.sh $(DESTDIR)$(pfx)/lib/haskell-amqp-utils/
29 cabal install --only-dependencies $(CONSTRAINTS)
31 cabal build $(parallel)
34 install-cabal: build-cabal
35 cabal install --prefix=$(DESTDIR)$(pfx)
38 ./Setup configure --prefix=$(pfx)
39 ./Setup build $(parallel)
41 install-simple: build-simple
42 ./Setup copy --destdir=$(DESTDIR)
44 all: $(subst .hs,,$(wildcard *.hs))
51 rm -f Network/AMQP/Utils/*.hi Network/AMQP/Utils/*.o *.hi *.o $(subst .hs,,$(wildcard *.hs))
55 rm -f $(DESTDIR)$(pfx)/lib/haskell-amqp-utils/callback
56 rm -f $(DESTDIR)$(pfx)/lib/haskell-amqp-utils/callback.config.sh
57 rm -f $(DESTDIR)$(pfx)/bin/konsum
58 rm -f $(DESTDIR)$(pfx)/bin/agitprop
59 rm -f $(DESTDIR)$(pfx)/bin/arbeite
60 rm -f $(DESTDIR)$(pfx)/bin/plane
61 -rmdir $(DESTDIR)$(pfx)/lib/haskell-amqp-utils