summaryrefslogtreecommitdiffstatshomepage
path: root/makefile
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2010-07-02 03:49:56 +0000
committer Aaron Giles <aaron@aarongiles.com>2010-07-02 03:49:56 +0000
commitb67fd48c9f12f9b61dce6dc2f6a8a497340ed134 (patch)
tree136c47f4242df5e73666741af8c82106a8d85f0a /makefile
parent2c6e27c547b6a2179b343935f2ecac9c4110cc44 (diff)
Winmain cleanup:
* created dynamic_bind<> template class to handle dynamically binding to optionally-supported functions * wrapped stack walking code in a class * wrapped symbol lookup code in a class * added support for parsing objdump-produced symbol dumps which include non-global functions for much better stack dumps and profiling in gcc builds Also: modified makefile for win32 targets to automatically run objdump and produce a .sym file if SYMBOLS is enabled.
Diffstat (limited to 'makefile')
-rw-r--r--makefile9
1 files changed, 9 insertions, 0 deletions
diff --git a/makefile b/makefile
index 837aa08682c..b79c0779771 100644
--- a/makefile
+++ b/makefile
@@ -215,6 +215,9 @@ BUILD_ZLIB = 1
# (default is SYMLEVEL = 2 normally; use 1 if you only need backtrace)
# SYMLEVEL = 2
+# uncomment next line to dump the symbols to a .sym file
+# DUMPSYM = 1
+
# uncomment next line to include profiling information from the compiler
# PROFILE = 1
@@ -296,6 +299,7 @@ CC = @gcc
LD = @g++
MD = -mkdir$(EXE)
RM = @rm -f
+OBJDUMP = @objdump
@@ -695,6 +699,11 @@ $(VERSIONOBJ): $(DRVLIBS) $(LIBOSD) $(LIBEMU) $(LIBCPU) $(LIBSOUND) $(LIBUTIL) $
$(EMULATOR): $(VERSIONOBJ) $(DRVLIBS) $(LIBOSD) $(LIBEMU) $(LIBCPU) $(LIBDASM) $(LIBSOUND) $(LIBUTIL) $(EXPAT) $(SOFTFLOAT) $(ZLIB) $(LIBOCORE) $(RESFILE)
@echo Linking $@...
$(LD) $(LDFLAGS) $(LDFLAGSEMULATOR) $^ $(LIBS) -o $@
+ifeq ($(TARGETOS),win32)
+ifdef SYMBOLS
+ $(OBJDUMP) --section=.text --line-numbers --syms --demangle $@ >$(FULLNAME).sym
+endif
+endif
endif