Files
INS-VN-200/vnproglib/cpp/Makefile
r.koeppe 2d22ccd2d6 initial
2024-05-14 02:14:13 +02:00

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)