summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Kukunas <james.t.kukunas@linux.intel.com>2014-11-20 16:39:16 -0800
committerJim Kukunas <james.t.kukunas@linux.intel.com>2014-11-25 09:43:11 -0800
commit46d606e1242c4b1bf0de75727d58cf05d61d2f05 (patch)
treee1ccbe32b769a724cafc217fdcf7bd17249390fa
parenta45febd767642dafc017a3210f357c7a2139e475 (diff)
downloadnasm-46d606e1242c4b1bf0de75727d58cf05d61d2f05.tar.gz
msvc.mak: Add support for generating PDBs for debugging
Adds a new Makefile variable DEBUG that controls whether a symbol file (.PDB) is created for the executables, e. g., nmake -f Mkfiles\msvc.mak DEBUG=1 Signed-off-by: Jim Kukunas <james.t.kukunas@linux.intel.com>
-rw-r--r--Mkfiles/msvc.mak16
1 files changed, 12 insertions, 4 deletions
diff --git a/Mkfiles/msvc.mak b/Mkfiles/msvc.mak
index f1839a28..30c950c5 100644
--- a/Mkfiles/msvc.mak
+++ b/Mkfiles/msvc.mak
@@ -14,12 +14,20 @@ exec_prefix = $(prefix)
bindir = $(prefix)/bin
mandir = $(prefix)/man
+!IF "$(DEBUG)" == "1"
+CFLAGS = /Od /Zi
+LDFLAGS = /DEBUG
+!ELSE
+CFLAGS = /O2 /Ox /Oy
+!ENDIF
+
CC = cl
-CFLAGS = /O2 /Ox /Oy /W2
+LD = link
+CFLAGS = $(CFLAGS) /W2
BUILD_CFLAGS = $(CFLAGS) /I$(srcdir)/inttypes
INTERNAL_CFLAGS = /I$(srcdir) /I. /DHAVE__SNPRINTF /DHAVE__VSNPRINTF
ALL_CFLAGS = $(BUILD_CFLAGS) $(INTERNAL_CFLAGS)
-LDFLAGS =
+LDFLAGS = $(LDFLAGS) /SUBSYSTEM:CONSOLE
LIBS =
PERL = perl -I$(srcdir)/perllib
@@ -64,10 +72,10 @@ all: nasm$(X) ndisasm$(X)
rem cd rdoff && $(MAKE) all
nasm$(X): $(NASM)
- $(CC) $(LDFLAGS) /Fenasm$(X) $(NASM) $(LIBS)
+ $(LD) $(LDFLAGS) /OUT:nasm$(X) $(NASM) $(LIBS)
ndisasm$(X): $(NDISASM)
- $(CC) $(LDFLAGS) /Fendisasm$(X) $(NDISASM) $(LIBS)
+ $(LD) $(LDFLAGS) /OUT:ndisasm$(X) $(NDISASM) $(LIBS)
# These source files are automagically generated from a single
# instruction-table file by a Perl script. They're distributed,