Makefile 522 B

123456789101112131415161718192021222324252627282930
  1. CC = g++
  2. DEBUG = -g
  3. CFLAGS = -Iinclude -Wall $(DEBUG)
  4. LFLAGS = -Llibs -Lbin -ltinyxml $(DEBUG)
  5. SRC = $(wildcard src/*.cpp)
  6. INCLUDES = $(wildcard include/*.h)
  7. BIN = $(wildcard bin/*.o)
  8. OBJ = $(SRC:.cpp=.o)
  9. LIB = libs/libutility.so
  10. all: $(LIB) post-build
  11. pre-build:
  12. -@echo 'pre build commands'
  13. $(LIB): $(OBJ)
  14. $(CC) -o $(LIB) src/*.o $(LFLAGS) -shared
  15. src/%.o: src/%.cpp
  16. $(CC) -o $@ -c $< $(CFLAGS) -fPIC
  17. post-build:
  18. cp $(LIB) ../op_simu/libs/
  19. .PHONY: clean
  20. clean:
  21. rm -rf src/*.o *.o libs/libutility.so