blob: 4eca95aee49730d6110b400f3003e182f3c23986 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
################################################################################
## CONFIG ######################################################################
################################################################################
YAWS_CONF ?= $(CONF_DIR)/yaws.conf
YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl
DIALYZER_PLT_FILE ?= tacticians-server.plt
## Main Directories
SRC_DIR ?= src
CONF_DIR ?= conf
#### Optional Dirs
BIN_DIR ?= ebin
INCLUDE_DIR ?= include
## Binaries
YAWS ?= yaws
ERLC ?= erlc
ERLC_OPTS ?=
DIALYZER ?= dialyzer
################################################################################
## MAKEFILE MAGIC ##############################################################
################################################################################
OPTIONAL_DIRS = $(BIN_DIR) $(INCLUDE_DIR)
REQUIRED_HEADERS = $(INCLUDE_DIR)/yaws_api.hrl
################################################################################
## SANITY CHECKS ###############################################################
################################################################################
YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl
DIALYZER_PLT_FILE ?= tacticians-server.plt
## Main Directories
SRC_DIR ?= src
CONF_DIR ?= conf
################################################################################
## INCLUDES ####################################################################
################################################################################
main_target: all
include ${CURDIR}/mk/debug.mk
include ${CURDIR}/mk/erlang.mk
include ${CURDIR}/mk/preprocessor.mk
include ${CURDIR}/mk/yaws.mk
################################################################################
## TARGET RULES ################################################################
################################################################################
all: build
debug: debug_run
build: $(PREPROCESSOR_RESULT) $(ERLANG_RESULT)
run: yaws_run
clean:
rm -rf $(BIN_DIR)/*
################################################################################
## INTERNAL RULES ##############################################################
################################################################################
$(OPTIONAL_DIRS): %:
mkdir -p $@
|