1aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
2aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# Fill in the source files to build
3aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
4aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# Uncomment line below for debugging shell commands
5aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# SHELL = /bin/sh -x
6aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
7aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
8aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# Change any build/tool options needed
9aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
101dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg ClaytonARCH ?= x86_64
111dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg ClaytonCFLAGS ?=-arch $(ARCH) -gdwarf-2 -O0
121dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg ClaytonCXX ?= $(shell xcrun -find clang++)
131dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg ClaytonEXE ?= libheap.dylib
141dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg ClaytonDSYM ?= $(EXE).dSYM
15aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
16aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
17aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# Compile the executable from all the objects (default rule) with no
18aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# dsym file.
19aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
201dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg Clayton$(EXE) : heap_find.cpp
21aaf7fad2bb839010596e6d8e673e9635f4ddf372Greg Clayton	$(CXX) $(CFLAGS) -install_name "@executable_path/libheap.dylib" -dynamiclib -lobjc heap_find.cpp -o "$(EXE)"
22aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
23aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
24aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# Include all of the makefiles for each source file so we don't have
25aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton# to manually track all of the prerequisites for each source file.
26aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton#----------------------------------------------------------------------
27aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton.PHONY: clean
281dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg Claytonall:	$(EXE)
29aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Claytonclean:
301dae6f39248e38ac84fc20c8b4c26e11bfcc19b7Greg Clayton	rm -rf "$(EXE)" "$(DSYM)"
31aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
32aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
33aa0489cd2d3d980dd8c1087a6cdc9f3bad3ba306Greg Clayton
34