disasm: alpha version
[calu.git] / 3c_disasm / instr / Makefile
1 -include ../Makefile.flags
2
3 libs := $(wildcard *.cpp)
4
5 .PHONY:all
6 all: $(libs:.cpp=.so)
7
8 -include $(libs:.cpp=.d)
9
10
11 $(libs:.cpp=.so): ${@:.so=.d}
12         $(CC) -fPIC -I../ -c  -o ${@:.so=.o} ${@:.so=.cpp}
13         $(CC) $(CPPLIBOPT) -Wl,-soname,${@} -o ${@} ${@:.so=.o}
14
15 .PHONY:clean
16 clean:
17         rm -rf $(libs:.cpp=.so) $(libs:.cpp=.o) $(libs:.cpp=.d)
18
19 %.d: %.cpp
20         @set -e; rm -f $@; \
21         $(CC) -I.. -MM $(CPPFLAGS) $< > $@.$$$$; \
22         sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
23         rm -f $@.$$$$
24