AR = ar
CXX = g++
INCS = -Iinclude -Isrc/abstraction -Isrc/ld
CXXFLAGS = $(INCS)
LDFLAGS = 

all: machocheck rebase unwinddump dyldinfo ObjectDump ld

libprunetrie.a: src/other/PruneTrie.o src/other/prune_trie.h
	$(AR) -r -c libprunetrie.a src/other/PruneTrie.o

ld: libprunetrie.a src/ld/ld.o src/ld/Options.o src/ld/debugline.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^

rebase: src/other/rebase.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^

dyldinfo: src/other/dyldinfo.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^

unwinddump: src/other/unwinddump.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^

ObjectDump: src/other/ObjectDump.o src/ld/debugline.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^

machocheck: src/other/machochecker.o
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^