PLUGIN=micropython_checks.so SOURCES=micropython_checks.cc PLUGINDIR=$(shell $(CC) -print-file-name=plugin) CXXFLAGS=-std=gnu++11 -fPIC -Wall -Og -g -fno-rtti -I$(PLUGINDIR)/include OBJECTS=$(patsubst %.cc,%.o,$(SOURCES)) all: $(PLUGIN) $(PLUGIN): $(OBJECTS) $(CXX) $(LDFLAGS) -o $@ -shared $+ $(LDADD) %.o: %.cc $(CXX) -c -o $@ $(CXXFLAGS) $< PLUGINFLAG=-fplugin=./$(PLUGIN) CCPLUGIN=$(CC) $(PLUGINFLAG) CXXPLUGIN=$(CXX) $(PLUGINFLAG) .PHONY: all clean test clean: rm -f $(OBJECTS) $(PLUGIN) .PHONY: test test: $(PLUGIN) test.cc $(CXXPLUGIN) -Wformat -std=c++11 -c -o /dev/null test.cc