blob: ddf6ef6927a1cd968c4d7beb3b1118e7ceee4a4a (
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
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
134
135
136
137
138
139
140
|
default: all
.PHONEY: default all everything dist \
clean realclean distclean \
install install-bin install-doc install-abs \
tests
TESTDIR=../tests
HELPERSOURCES=z_zexy.c zexy.c winNT_portio.c
OBJECTSOURCES=$(sort $(filter-out $(HELPERSOURCES), $(filter %.c, $(wildcard *.c))))
SOURCES=$(OBJECTSOURCES) $(HELPERSOURCES)
zexyconf.h: zexyconf.h.in configure
./configure $(CONFIGUREFLAGS)
configure: configure.ac aclocal.m4
autoconf
aclocal.m4: acinclude.m4
aclocal
-include $(SOURCES:.c=.d)
Make.config: Make.config.in configure
./configure $(CONFIGUREFLAGS)
z_zexy.c z_zexy.h:
./makesource.sh
-include Make.config
## 2nd only generate depend-files when we have Make.config included
## and thus MAKEDEP_FLAGS defined
ifdef MAKEDEP_FLAGS
## dependencies: as proposed by the GNU-make documentation
## see http://www.gnu.org/software/make/manual/html_node/make_47.html#SEC51
%.d: %.c
@set -e; rm -f $@; \
$(CPP) $(MAKEDEP_FLAGS) $(Z_CPPFLAGS) $< > $@.$$$$; \
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
rm -f $@.$$$$
endif
.SUFFIXES: .$(EXT)
TARGETS = $(SOURCES:.c=.o)
OBJECTS = $(OBJECTSOURCES:.c=.$(EXT))
## if $(BUILDLIBRARY) is defined, we build everything as a single library
## else we build separate externals
ifneq "$(BUILDLIBRARY)" ""
all: $(LIBNAME)
cp $(LIBNAME).$(EXT) ..
else
all: $(OBJECTS)
endif
$(OBJECTS): %.$(EXT) : %.o
$(LD) $(LFLAGS) $(ARCH_FLAG) -o $@ $*.o $(LIBS)
$(STRIP) $(STRIPFLAGS) $@
$(LIBNAME): $(TARGETS) z_zexy.c z_zexy.h
$(LD) $(LFLAGS) $(ARCH_FLAG) -o $@.$(EXT) *.o $(LIBS)
$(STRIP) $(STRIPFLAGS) $@.$(EXT)
$(TARGETS): %.o : %.c
$(CC) $(Z_CFLAGS) $(ARCH_FLAG) -c -o $@ $*.c
externals: $(OBJECTS)
clean:
-rm -f *.$(EXT) *.o
realclean: clean alias-clean
-rm -f *~ _* config.*
-rm -f *.d *.d.*
distclean: realclean
-rm -f Make.config zexyconf.h ../*.$(EXT)
-rm -f zexy.exp zexy.lib zexy.ncb \
zexy.opt zexy.plg
-rm -rf autom4te.cache/
tests: all
make -C $(TESTDIR)
alias: alias-bin alias-abs
alias-bin: all
./makealias.sh ../src/alias ../src ../reference
alias-abs:
./makealias.sh ../abs/alias ../abs
alias-clean: alias-clean-bin alias-clean-abs
alias-clean-bin:
./makealias.sh -clean ../src/alias ../src ../reference
alias-clean-abs:
./makealias.sh -clean ../abs/alias ../abs
install: all alias install-abs install-bin install-doc
install-bin:
-install -d $(INSTALL_BIN)
-install -m 644 $(LIBNAME).$(EXT) $(INSTALL_BIN)
install-doc:
-install -d $(INSTALL_DOC)
-install -m 644 ../reference/*.pd $(INSTALL_DOC)
install-abs:
-install -d $(INSTALL_BIN)
-install -m 644 ../abs/*.pd $(INSTALL_BIN)
uninstall-bin:
-install -d $(INSTALL_BIN)
-install -m 644 $(LIBNAME).$(EXT) $(INSTALL_BIN)
uninstall-doc:
-install -d $(INSTALL_DOC)
-install -m 644 ../reference/*.pd $(INSTALL_DOC)
uninstall-abs:
-install -d $(INSTALL_BIN)
-install -m 644 ../abs/*.pd $(INSTALL_BIN)
dist: all realclean
(cd ../..;tar czvf $(TARNAME) $(LIBNAME))
everything: clean all install distclean
|