aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2009-10-06 20:29:06 +0000
committerDavid Robillard <d@drobilla.net>2009-10-06 20:29:06 +0000
commit31586bbff8588f8eab127bf57bc311d38ad8e1e0 (patch)
treefd2b38c0bc57a17559a78a98b8e9c3e8cda8bddb /Makefile
parentf55fa30ac2169357ca089a6a4c73c14480841e6e (diff)
downloadresp-31586bbff8588f8eab127bf57bc311d38ad8e1e0.tar.gz
resp-31586bbff8588f8eab127bf57bc311d38ad8e1e0.tar.bz2
resp-31586bbff8588f8eab127bf57bc311d38ad8e1e0.zip
Fully abstract backend interface.
git-svn-id: http://svn.drobilla.net/resp/tuplr@197 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile22
1 files changed, 14 insertions, 8 deletions
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