1 # -*- makefile-gmake -*-
5 # CONFIGURE_ARGS :: arguments to be passed to ./Setup configure
6 # default: --disable-optimization
8 # RUN_COMMAND :: command to be run for "make run"
17 CONFIGURE_ARGS ?= --disable-optimization
19 SETUP_FILE := $(wildcard Setup.*hs)
20 CABAL_FILE := $(wildcard *.cabal)
22 ifeq ($(shell ls configure.ac 2>/dev/null),configure.ac)
23 AUTOCONF_AC_FILE := configure.ac
24 AUTOCONF_FILE := configure
26 ifeq ($(shell ls configure.in 2>/dev/null),configure.in)
27 AUTOCONF_AC_FILE := configure.in
28 AUTOCONF_FILE := configure
35 BUILDINFO_IN_FILE := $(wildcard *.buildinfo.in)
36 BUILDINFO_FILE := $(BUILDINFO_IN_FILE:.in=)
40 build: setup-config build-hook
45 ifeq ($(RUN_COMMAND),)
47 @echo "cabal-package.mk: No command to run."
48 @echo "cabal-package.mk: If you want to run something, define RUN_COMMAND variable."
51 @echo ".:.:. Let's go .:.:."
55 setup-config: dist/setup-config setup-config-hook $(BUILDINFO_FILE)
59 dist/setup-config: $(CABAL_FILE) Setup $(AUTOCONF_FILE)
60 ./Setup configure $(CONFIGURE_ARGS)
62 $(AUTOCONF_FILE): $(AUTOCONF_AC_FILE)
65 $(BUILDINFO_FILE): $(BUILDINFO_IN_FILE) configure
66 ./Setup configure $(CONFIGURE_ARGS)
72 $(RM_RF) dist Setup *.o *.hi .setup-config *.buildinfo
73 $(FIND) . -name '*~' -exec rm -f {} \;
81 $(SUDO) ./Setup install
89 .PHONY: build build-hook setup-config setup-config-hook run clean clean-hook install doc sdist test