forked from cnvogelg/amitools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
67 lines (44 loc) · 1.17 KB
/
Makefile
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
# Makefile for musashi
BUILD_DIR = build
GEN_DIR = gen
DIST_DIR = dist
CFLAGS = -O3
GEN_INPUT = musashi/m68k_in.c
GEN_SRC = m68kopdm.c m68kopnz.c m68kops.c
GEN_HDR = m68kops.h
GEN_FILES = $(GEN_SRC:%=$(GEN_DIR)/%) $(GEN_HDR:%=$(GEN_DIR)/%)
GEN_TOOL_SRC = musashi/m68kmake.c
GEN_TOOL = m68kmake
PYTHON = python
#PYTHON = python-dbg
.PHONY: all clean_gen clean_gen clean_all
.PHONY: do_gen do_build_inplace do_test do_dev do_install
do_build_inplace: do_gen
$(PYTHON) setup.py build_ext -i
do_test: do_gen
$(PYTHON) setup.py test
do_install: do_gen
$(PYTHON) setup.py install
do_dev: do_gen
$(PYTHON) setup.py develop --user
clean: clean_gen
rm -rf $(BUILD_DIR)
clean_all: clean
rm -rf $(DIST_DIR)
clean_git:
git clean -fxd
do_gen: $(BUILD_DIR)/$(GEN_TOOL) $(GEN_DIR) $(GEN_FILES)
sdist: do_gen
$(PYTHON) setup.py sdist --formats=zip
upload: sdist
twine upload dist/*
$(BUILD_DIR)/$(GEN_TOOL): $(BUILD_DIR) $(GEN_TOOL_SRC)
$(CC) $(CFLAGS) -o $@ $(GEN_TOOL_SRC)
$(BUILD_DIR):
mkdir $(BUILD_DIR)
$(GEN_DIR):
mkdir $(GEN_DIR)
$(GEN_FILES): $(BUILD_DIR)/$(GEN_TOOL) $(GEN_DIR) $(GEN_INPUT)
$(BUILD_DIR)/$(GEN_TOOL) gen $(GEN_INPUT)
clean_gen:
rm -rf $(GEN_DIR)