SKYNET_ROOT ?= ../../skynet include $(SKYNET_ROOT)/platform.mk LUALIB ?= $(SKYNET_ROOT)/3rd/lua/ LUAINC ?= $(SKYNET_ROOT)/3rd/lua/ GLM_INC = ../../3rd/glm ODIR = o OUTPUT= ../../luaclib/ CXX = g++ PLAT ?= none ifeq ($(PLAT), macosx) CFLAGS = -g -O2 -dynamiclib -Wl,-undefined,dynamic_lookup else ifeq ($(PLAT), linux) CFLAGS = -g -O2 -shared -fPIC endif endif all : $(OUTPUT)math3d.so $(ODIR)/linalg.o : linalg.c | $(ODIR) $(CC) -c $(CFLAGS) -o $@ $^ -I$(LUAINC) $(ODIR)/math3d.o : math3d.c | $(ODIR) $(CC) -c $(CFLAGS) -o $@ $^ -I$(LUAINC) $(ODIR)/mathfunc.o : mathfunc.cpp | $(ODIR) $(CXX) -c $(CFLAGS) -o $@ $^ -I$(GLM_INC) $(ODIR)/mathadapter.o : mathadapter.c | $(ODIR) $(CC) -c $(CFLAGS) -o $@ $^ -I$(LUAINC) $(ODIR)/testadapter.o : testadapter.c | $(ODIR) $(CC) -c $(CFLAGS) -o $@ $^ -I$(LUAINC) $(OUTPUT)math3d.so : $(ODIR)/linalg.o $(ODIR)/math3d.o $(ODIR)/mathfunc.o $(ODIR)/mathadapter.o $(ODIR)/testadapter.o $(CXX) $(CFLAGS) $(SHARED) -o $@ $^ $(ODIR) : mkdir -p $@ clean : rm -rf $(ODIR) *.so