-include ../Makefile.flags libs := $(wildcard *.cpp) .PHONY:all all: $(libs:.cpp=.so) $(libs:.cpp=.so): ${@:.so=.d} $(CC) $(CPPFLAGS) -fPIC -I../ -c -o ${@:.so=.o} ${@:.so=.cpp} $(CC) $(CPPLIBOPT) -Wl,-soname,${@} -o ${@} ${@:.so=.o} .PHONY:clean clean: rm -rf $(libs:.cpp=.so) $(libs:.cpp=.o) $(libs:.cpp=.d) %.d: %.cpp @set -e; rm -f $@; \ $(CC) -I.. -MM $(CPPFLAGS) $< > $@.$$$$; \ sed 's,\($*\)\.o[ :]*,\1.so $@ : ,g' < $@.$$$$ > $@; \ rm -f $@.$$$$ -include $(libs:.cpp=.d)