From 31586bbff8588f8eab127bf57bc311d38ad8e1e0 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 6 Oct 2009 20:29:06 +0000 Subject: Fully abstract backend interface. git-svn-id: http://svn.drobilla.net/resp/tuplr@197 ad02d1e2-f140-0410-9f75-f8b11f17cedd --- Makefile | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 66ae353..f25b489 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,14 @@ LLVM_CXXFLAGS=`llvm-config --cppflags core jit native` LLVM_LDFLAGS=`llvm-config --ldflags --libs core jit native` -COMMON_FLAGS=-Wextra -Wno-unused-parameter +COMMON_FLAGS=-fPIC +COMMON_FLAGS+=-Wextra -Wno-unused-parameter COMMON_FLAGS+=-O0 -g #COMMON_FLAGS+=-O2 -march=nocona -fomit-frame-pointer CFLAGS=$(COMMON_FLAGS) -std=c99 -CXXFLAGS=$(COMMON_FLAGS) $(LLVM_CXXFLAGS) -LDFLAGS=$(LLVM_LDFLAGS) -lm +CXXFLAGS=$(COMMON_FLAGS) -ansi +LDFLAGS=-rdynamic -lm -ldl all: builddir build/tuplr mkdir -p build @@ -20,18 +21,20 @@ OBJECTS = \ build/constrain.o \ build/cps.o \ build/gc.o \ - build/tuplr_gc.so \ build/lex.o \ - build/tuplr_llvm.so \ build/parse.o \ build/pprint.o \ build/repl.o \ build/tlsf.o \ build/tuplr.o \ + build/tuplr_llvm.o \ build/unify.o -build/tuplr: $(OBJECTS) - g++ -o $@ $^ $(LDFLAGS) +LIBS = \ + build/tuplr_gc.so + +build/tuplr: $(OBJECTS) $(LIBS) + g++ -o $@ $(OBJECTS) $(LDFLAGS) $(LLVM_LDFLAGS) build/%.o: src/%.cpp src/tuplr.hpp g++ $(CXXFLAGS) -o $@ -c $< @@ -39,8 +42,11 @@ build/%.o: src/%.cpp src/tuplr.hpp build/tlsf.o: src/tlsf.c src/tlsf.h gcc $(CFLAGS) -o $@ -c $< +build/tuplr_llvm.o: src/tuplr_llvm.cpp src/tuplr.hpp + g++ -c $(CXXFLAGS) $(LLVM_CXXFLAGS) -o $@ src/tuplr_llvm.cpp + build/%.so: src/%.cpp src/tuplr.hpp - g++ -fPIC -dPIC -shared $(CXXFLAGS) -o $@ $< + g++ -shared $(CXXFLAGS) -o $@ $^ clean: rm -rf build -- cgit v1.2.1