56 lines
1.1 KiB
Makefile
56 lines
1.1 KiB
Makefile
CXX = g++
|
|
INCLUDES = -Iinclude
|
|
CPPFLAGS = -Wall
|
|
BINDIR = build/bin
|
|
OBJDIR = build/obj
|
|
|
|
SOURCES = \
|
|
src/attitude.cpp \
|
|
src/compositedata.cpp \
|
|
src/conversions.cpp \
|
|
src/criticalsection.cpp \
|
|
src/dllvalidator.cpp \
|
|
src/error_detection.cpp \
|
|
src/event.cpp \
|
|
src/ezasyncdata.cpp \
|
|
src/memoryport.cpp \
|
|
src/packet.cpp \
|
|
src/packetfinder.cpp \
|
|
src/port.cpp \
|
|
src/position.cpp \
|
|
src/rtcmlistener.cpp \
|
|
src/rtcmmessage.cpp \
|
|
src/searcher.cpp \
|
|
src/sensors.cpp \
|
|
src/serialport.cpp \
|
|
src/thread.cpp \
|
|
src/types.cpp \
|
|
src/util.cpp \
|
|
src/utilities.cpp \
|
|
src/vntime.cpp
|
|
|
|
# Set the object file names, with the source directory stripped
|
|
# from the path, and the build path prepended in its place
|
|
OBJECTS = $(SOURCES:src/%.cpp=$(OBJDIR)/%.o)
|
|
|
|
all: dirs lib
|
|
|
|
lib: libvncxx.a
|
|
|
|
libvncxx.a: $(OBJECTS)
|
|
ar -cvq $(BINDIR)/libvncxx.a $(OBJECTS)
|
|
|
|
# Create the directories used in the build
|
|
.PHONY: dirs
|
|
dirs:
|
|
@mkdir -p $(BINDIR)
|
|
@mkdir -p $(OBJDIR)
|
|
@mkdir -p $(dir $(OBJECTS))
|
|
|
|
$(OBJDIR)/%.o: src/%.cpp
|
|
$(CXX) $(CPPFLAGS) $(INCLUDES) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(BINDIR)/libvncxx.a
|
|
rm -f $(OBJECTS)
|