blob: 0c22bfabe4863ed34c73e56a430cade135901001 (
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
66
67
68
69
70
|
################################################################################
## CONFIG ######################################################################
################################################################################
NUMBER_OF_CHAR_TYPES ?= 16
SRC_DIR ?= ${CURDIR}/src/
TEMPLATE_DIR ?= ${CURDIR}/template
CSS_DIR ?= ${CURDIR}/www/
GENERATE_N_COLORS_SCRIPT ?= $(SRC_DIR)/generate_n_colors.py
GENERATE_N_ENTITIES ?= $(SRC_DIR)/generate_n_entities.py
CHAR_STYLE_TEMPLATE ?= $(TEMPLATE_DIR)/character_icon_entry.css
# outputs
CHAR_STYLE_CSS ?= $(CSS_DIR)/characters.css
################################################################################
## MAKEFILE MAGIC ##############################################################
################################################################################
TOTAL_NUMBER_OF_COLORS = $(NUMBER_OF_CHAR_TYPES)
#$(shell expr $(NUMBER_OF_TILE_TYPES) + $(NUMBER_OF_CHAR_TYPES))
SENSITIVITY_LIST = \
Makefile \
$(GENERATE_N_COLORS_SCRIPT)\
$(GENERATE_N_ENTITIES)
################################################################################
## SANITY CHECKS ###############################################################
################################################################################
ifeq ($(wildcard $(GENERATE_N_COLORS_SCRIPT)),)
$(error\
"Could not find script to generate N colors (GENERATE_N_COLORS_SCRIPT="\
"$(GENERATE_N_COLORS_SCRIPT))."\
)
endif
ifeq ($(wildcard $(GENERATE_N_ENTITIES)),)
$(error\
"Could not find script to generate N colors (GENERATE_N_ENTITIES="\
"$(GENERATE_N_ENTITIES))."\
)
endif
ifeq ($(wildcard $(CHAR_STYLE_TEMPLATE)),)
$(error\
"Could not find template for character styles (CHAR_STYLE_TEMPLATE="\
"$(CHAR_STYLE_TEMPLATE))."\
)
endif
################################################################################
## TARGET RULES ################################################################
################################################################################
build: $(CHAR_STYLE_CSS)
clean:
rm -f $(CHAR_STYLE_CSS)
reset: clean
################################################################################
## INTERNAL RULES ##############################################################
################################################################################
$(CHAR_STYLE_CSS): $(SENSITIVITY_LIST) $(CHAR_STYLE_TEMPLATE)
$(GENERATE_N_COLORS_SCRIPT) $(TOTAL_NUMBER_OF_COLORS) \
0 | \
$(GENERATE_N_ENTITIES) $(NUMBER_OF_CHAR_TYPES) $(CHAR_STYLE_TEMPLATE) > \
$(CHAR_STYLE_CSS)
|