makefile 969 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. SHELL = /bin/bash
  2. TARGET = bin/rfspostgres
  3. GCCVER = $(shell gcc -dumpversion)
  4. ISOS64BIT = $(shell uname -a | egrep -c "x86_64 GNU/Linux")
  5. OSBITS_0 = 32
  6. OSBITS_1 = 64
  7. OSBITS = $(OSBITS_$(ISOS64BIT))
  8. CCFLAGS = -D_PTHREADS -g -D_LARGEFILE64_SOURCE
  9. CC = g++
  10. DEFINES =
  11. INCFLAGS = -I. -I.. -I/usr/local/include -I../include -I./include
  12. LIBFLAGS = -L/usr/local/lib -L./lib/linux$(OSBITS)_gcc$(GCCVER) -lpq
  13. SRC = rfspostgres.cpp ../rfs.cpp
  14. OBJDIR = ./obj
  15. OBJ = $(OBJDIR)/rfspg.o $(OBJDIR)/rfs.o
  16. $(TARGET): $(OBJ)
  17. @mkdir -p bin
  18. ${CC} ${DEFINES} $(CCFLAGS) $(INCFLAGS) $(LIBFLAGS) $(OBJ) -o $@
  19. $(OBJDIR)/%.o: %.cpp
  20. @mkdir -p obj
  21. ${CC} ${DEFINES} $(CCFLAGS) $(INCFLAGS) -c $< -o $@
  22. $(OBJDIR)/rfs.o: ../rfs.cpp
  23. @mkdir -p obj
  24. ${CC} ${DEFINES} $(CCFLAGS) $(INCFLAGS) -c $< -o $@
  25. clean:
  26. -rm -f $(OBJDIR)/*.o $(TARGET)