forked from z88dk/z88dk
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
133 lines (104 loc) · 3.49 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#
#
# The impromptu compilation makefile for z88dk
#
# $Id: Makefile,v 1.57 2016-09-09 09:06:07 dom Exp $
#
# ---> Configurable parameters are below his point
prefix = /usr/local
prefix_share = $(prefix)/share
git_rev = $(shell git rev-parse --short HEAD)
version := $(shell date +%Y%m%d)
INSTALL ?= install
CFLAGS ?= -O2
CC ?= gcc
EXEC_PREFIX ?=
# --> End of Configurable Options
export CC INSTALL CFLAGS EXEC_PREFIX
all: setup appmake copt zcpp sccz80 z80asm zcc zpragma zx7 z80nm ticks z80svg testsuite
setup:
echo '#define PREFIX "${prefix_share}$"/z88dk"' > src/config.h
echo '#define UNIX 1' >> src/config.h
echo '#define EXEC_PREFIX "${EXEC_PREFIX}"' >> src/config.h
echo '#define Z88DK_VERSION "${version}-${git_rev}"' >> src/config.h
@mkdir -p bin
appmake:
$(MAKE) -C src/appmake
$(MAKE) -C src/appmake PREFIX=`pwd` install
copt:
$(MAKE) -C src/copt
$(MAKE) -C src/copt PREFIX=`pwd` install
zcpp:
$(MAKE) -C src/cpp
$(MAKE) -C src/cpp PREFIX=`pwd` install
sccz80:
$(MAKE) -C src/sccz80
$(MAKE) -C src/sccz80 PREFIX=`pwd` install
z80asm:
$(MAKE) -C src/z80asm
$(MAKE) -C src/z80asm PREFIX=`pwd` install
zcc:
$(MAKE) -C src/zcc
$(MAKE) -C src/zcc PREFIX=`pwd` install
zpragma:
$(MAKE) -C src/zpragma
$(MAKE) -C src/zpragma PREFIX=`pwd` install
zx7:
$(MAKE) -C src/zx7
$(MAKE) -C src/zx7 PREFIX=`pwd` install
z80nm:
$(MAKE) -C src/z80nm
$(MAKE) -C src/z80nm PREFIX=`pwd` install
z80svg:
$(MAKE) -C support/graphics
$(MAKE) -C support/graphics PREFIX=`pwd` install
ticks:
$(MAKE) -C src/ticks
$(MAKE) -C src/ticks PREFIX=`pwd` install
libs:
cd libsrc ; $(MAKE)
cd libsrc ; $(MAKE) install
install: install-clean
cd src/appmake ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/copt ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/cpp ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/sccz80 ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/z80asm ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/zcc ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/zpragma ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/zx7 ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/z80nm ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd src/ticks ; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
cd support/graphics; $(MAKE) PREFIX=$(DESTDIR)/$(prefix) install
find include -type d -exec $(INSTALL) -d -m 755 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
find include -type f -exec $(INSTALL) -m 664 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
find lib -type d -exec $(INSTALL) -d -m 755 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
find lib -type f -exec $(INSTALL) -m 664 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
find libsrc -type d -exec $(INSTALL) -d -m 755 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
find libsrc -type f -exec $(INSTALL) -m 664 {,$(DESTDIR)/$(prefix_share)/z88dk/}{} \;
# Needs libs to have been installed, no dependency yet since rebuilding libsrc
# still does too many cleans
test:
$(MAKE) -C test
testsuite:
$(MAKE) -C testsuite
install-clean:
$(MAKE) -C libsrc install-clean
clean: clean-bins
$(MAKE) -C libsrc clean
$(RM) lib/clibs/*.lib
clean-bins:
$(MAKE) -C src/appmake clean
$(MAKE) -C src/copt clean
$(MAKE) -C src/cpp clean
$(MAKE) -C src/sccz80 clean
$(MAKE) -C src/z80asm clean
$(MAKE) -C src/z80nm clean
$(MAKE) -C src/zcc clean
$(MAKE) -C src/zpragma clean
$(MAKE) -C src/ticks clean
$(MAKE) -C src/zx7 clean
$(MAKE) -C test clean
$(MAKE) -C testsuite clean
#if [ -d bin ]; then find bin -type f -exec rm -f {} ';' ; fi
.PHONY: test testsuite