113 lines
2.7 KiB
Makefile
113 lines
2.7 KiB
Makefile
# Test App - Util/Makefile
|
|
# Makefile for Util, requires GNU "make"
|
|
.PHONY: release debug
|
|
|
|
#Required libraries
|
|
REQ_LIBS := libZUtil.a libsst-concurrency.a libsst-os.a libsst-atomic.a libsst-crypto.a libsst-random.a libsst-math.a
|
|
|
|
#Name of binary
|
|
BINNAME := ZTestSuite.bin
|
|
|
|
#In debug mode, use debug versions of libraries
|
|
ifeq ($(TARGET),debug)
|
|
REQ_LIBS := $(foreach lib,$(REQ_LIBS), $(subst .a,_d.a, $(lib)))
|
|
BINNAME := $(subst .bin,_d.bin, $(BINNAME))
|
|
endif
|
|
|
|
# Generate the lib names with the full dist name.
|
|
# This is only used for dependency checking
|
|
REQ_LIBS_DIST := $(foreach lib,$(REQ_LIBS), $(DIST)/$(lib))
|
|
|
|
#Generate LDFLAGS for $REQ_LIBS: "libfoo.a" becomes "-lfoo"
|
|
REQ_LIBS_LDFLAGS := $(foreach lib,$(REQ_LIBS), $(subst lib,-l,$(lib)))
|
|
REQ_LIBS_LDFLAGS := -L$(DIST) $(foreach lib,$(REQ_LIBS_LDFLAGS), $(subst .a,,$(lib)))
|
|
|
|
override LDFLAGS := $(subst noop,noop, -L.. $(REQ_LIBS_LDFLAGS) $(LDFLAGS)) $(ZENGINE_BASE_LIBS)
|
|
|
|
SRC = \
|
|
Test-SST_Atomic.cpp \
|
|
Test-SST_Endian.cpp \
|
|
Test-SST_SafeArithmetic.cpp \
|
|
Test-SST_FileSys.cpp \
|
|
Test-ZAlloc.cpp \
|
|
Test-ZAllocWindow.cpp \
|
|
Test-ZArrayAlgo.cpp \
|
|
Test-ZArray.cpp \
|
|
Test-ZAssert.cpp \
|
|
Test-ZBasicStringAlgo.cpp \
|
|
Test-ZBasicString.cpp \
|
|
Test-ZConcurrency.cpp \
|
|
Test-ZHashMap.cpp \
|
|
Test-ZIniReader.cpp \
|
|
Test-ZIniWriter.cpp \
|
|
Test-ZJSONReader.cpp \
|
|
Test-ZJSONWriter.cpp \
|
|
Test-ZKVTree.cpp \
|
|
Test-ZListAlgo.cpp \
|
|
Test-ZList.cpp \
|
|
Test-ZName.cpp \
|
|
Test-ZRandomGenerator.cpp \
|
|
Test-ZReferenceCounter.cpp \
|
|
Test-ZRegistry.cpp \
|
|
Test-ZRingBuffer.cpp \
|
|
Test-ZSimplexNoise.cpp \
|
|
Test-ZSlabAllocator.cpp \
|
|
Test-ZSmartPointer.cpp \
|
|
Test-ZTaskStream.cpp \
|
|
Test-ZWeakPointer.cpp \
|
|
Test-ZXMLReader.cpp \
|
|
Test-ZXMLWriter.cpp \
|
|
ZTestSuiteMain.cpp \
|
|
ZUnitTest.cpp
|
|
|
|
|
|
SRC+= \
|
|
Test-SST_Mat22d.cpp \
|
|
Test-SST_Mat22f.cpp \
|
|
Test-SST_Mat22i.cpp \
|
|
Test-SST_Mat22u.cpp \
|
|
Test-SST_Mat33d.cpp \
|
|
Test-SST_Mat33f.cpp \
|
|
Test-SST_Mat33i.cpp \
|
|
Test-SST_Mat33u.cpp \
|
|
Test-SST_Mat44d.cpp \
|
|
Test-SST_Mat44f.cpp \
|
|
Test-SST_Mat44i.cpp \
|
|
Test-SST_Mat44u.cpp \
|
|
Test-SST_Vec2d.cpp \
|
|
Test-SST_Vec2f.cpp \
|
|
Test-SST_Vec2i.cpp \
|
|
Test-SST_Vec2u.cpp \
|
|
Test-SST_Vec3d.cpp \
|
|
Test-SST_Vec3f.cpp \
|
|
Test-SST_Vec3i.cpp \
|
|
Test-SST_Vec3u.cpp \
|
|
Test-SST_Vec4d.cpp \
|
|
Test-SST_Vec4f.cpp \
|
|
Test-SST_Vec4i.cpp \
|
|
Test-SST_Vec4u.cpp \
|
|
Test-SST_Transform.cpp \
|
|
Test-SST_Geo.cpp
|
|
# Test-SST_Net.cpp
|
|
|
|
|
|
|
|
OBJ := $(addprefix obj/$(ARCH)/$(TARGET)/,$(subst .cpp,.o,$(SRC)) )
|
|
$(shell mkdir -p obj/$(ARCH)/$(TARGET))
|
|
|
|
all: $(BINNAME)
|
|
|
|
# CLEAN
|
|
clean:
|
|
@-rm -r -f obj ZTestSuite*.bin
|
|
|
|
$(BINNAME): $(OBJ) $(REQ_LIBS_DIST)
|
|
@echo LD $@
|
|
$(CXX) $+ $(LDFLAGS) -o $@
|
|
|
|
# *.cpp files to *.o files
|
|
obj/$(ARCH)/$(TARGET)/%.o: %.cpp
|
|
@echo CXX $@
|
|
@$(CXX) $(CXXFLAGS) -I../Include -I../Lib/Include -c $< -o $@
|
|
|