project : pin { specific (prop:windows) { link_options += /EXPORT:main } verbatim (make, top) { no_hidden_visibility = 1 } verbatim (gnuace, top) { no_hidden_visibility = 1 } verbatim (make, macros) { ifeq ($(shell uname -s), Darwin) CPPFLAGS += -DTARGET_MAC LDFLAGS += -nostdlib -lpin3dwarf -Wl,-exported_symbols_list -Wl,$(PIN_ROOT)/source/include/pin/pintool.exp LDFLAGS -= -lpthread else CPPFLAGS += -DTARGET_LINUX -fno-rtti -Wl,--hash-style=sysv LDLIBS += -nostdlib -ldl-dynamic -lpindwarf LDFLAGS += -Wl,-Bsymbolic -Wl,$(PIN_ROOT)/intel64/runtime/pincrt/crtbeginS.o $(PIN_ROOT)/intel64/runtime/pincrt/crtendS.o endif } verbatim (gnuace, macros) { ifeq ($(shell uname -s), Darwin) CPPFLAGS += -DTARGET_MAC LDFLAGS += -lpinpthread -Wl,-exported_symbols_list -Wl,$(PIN_ROOT)/source/include/pin/pintool.exp LDFLAGS -= -lpthread else CPPFLAGS += -DTARGET_LINUX -Wl,--hash-style=sysv LIBS += -lpindwarf LDFLAGS += -Wl,-Bsymbolic -Wl,--version-script=$(PIN_ROOT)/source/include/pin/pintool.ver endif } } feature (ia32) { specific (vc9) { link_options += /ENTRY:Ptrace_DllMainCRTStartup@12 } specific (prop:microsoft) { EntryPointSymbol = Ptrace_DllMainCRTStartup@12 } } feature (intel64) { specific (vc9) { link_options += /ENTRY:Ptrace_DllMainCRTStartup } specific (prop:microsoft) { EntryPointSymbol = Ptrace_DllMainCRTStartup } }