summaryrefslogtreecommitdiff
path: root/Mkfiles/openwcom.mak
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2018-12-26 00:17:23 -0800
committerH. Peter Anvin <hpa@zytor.com>2018-12-26 00:17:23 -0800
commit1d9da6043b0176e31daff32ef2503eb7120ab24e (patch)
tree1da285a6d28f0dede982ff35e889e24b4932c73e /Mkfiles/openwcom.mak
parent11599f49da963a0cf71970ad69fe66de981d35ee (diff)
downloadnasm-1d9da6043b0176e31daff32ef2503eb7120ab24e.tar.gz
evalstr: add helper functions to compute expressions from a stringevalstr
In far too many places, especially in directives, we don't accept an actual expression because, realistically, there have been way too many hoops to jump through to do so. Add helper functions to make that far easier. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'Mkfiles/openwcom.mak')
-rw-r--r--Mkfiles/openwcom.mak23
1 files changed, 21 insertions, 2 deletions
diff --git a/Mkfiles/openwcom.mak b/Mkfiles/openwcom.mak
index 2babe5dc..23a8dbf6 100644
--- a/Mkfiles/openwcom.mak
+++ b/Mkfiles/openwcom.mak
@@ -75,14 +75,15 @@ LIBOBJ = stdlib\snprintf.$(O) stdlib\vsnprintf.$(O) stdlib\strlcpy.$(O) &
x86\regs.$(O) x86\regvals.$(O) x86\regflags.$(O) x86\regdis.$(O) &
x86\disp8.$(O) x86\iflag.$(O) &
&
- asm\error.$(O) &
+ asm\error.$(O) asm\warnings.$(O) &
asm\float.$(O) &
asm\directiv.$(O) asm\directbl.$(O) &
asm\pragma.$(O) &
asm\assemble.$(O) asm\labels.$(O) asm\parser.$(O) &
asm\preproc.$(O) asm\quote.$(O) asm\pptok.$(O) &
- asm\listing.$(O) asm\eval.$(O) asm\exprlib.$(O) asm\exprdump.$(O) &
+ asm\listing.$(O) &
asm\stdscan.$(O) &
+ asm\eval.$(O) asm\exprlib.$(O) asm\evalstr.$(O) asm\exprdump.$(O) &
asm\strfunc.$(O) asm\tokhash.$(O) &
asm\segalloc.$(O) &
asm\preproc-nop.$(O) &
@@ -156,6 +157,7 @@ PERLREQ = x86\insnsb.c x86\insnsa.c x86\insnsd.c x86\insnsi.h x86\insnsn.c &
x86\iflag.c x86\iflaggen.h &
macros\macros.c &
asm\pptok.ph asm\directbl.c asm\directiv.h &
+ asm\warnings.c include\warnings.h &
version.h version.mac version.mak nsis\version.nsh
INSDEP = x86\insns.dat x86\insns.pl x86\insns-iflags.ph
@@ -224,6 +226,23 @@ x86\regs.h: x86\regs.dat x86\regs.pl
$(RUNPERL) $(srcdir)\x86\regs.pl h &
$(srcdir)\x86\regs.dat > x86\regs.h
+# Extract warnings from source code. Since this depends on
+# ALL the source files, this is only done on demand.
+WARNFILES = asm\warnings.c include\warnings.h doc\warnings.src
+
+warnings:
+ rm -f $(WARNFILES)
+ $(MAKE) $(WARNFILES)
+
+asm\warnings.c: asm\warnings.pl
+ $(RUNPERL) $(srcdir)\asm\warnings.pl c asm\warnings.c $(srcdir)
+
+include\warnings.h: asm\warnings.pl
+ $(RUNPERL) $(srcdir)\asm\warnings.pl h include\warnings.h $(srcdir)
+
+doc\warnings.src: asm\warnings.pl
+ $(RUNPERL) $(srcdir)\asm\warnings.pl doc doc\warnings.src $(srcdir)
+
# Assembler token hash
asm\tokhash.c: x86\insns.dat x86\regs.dat asm\tokens.dat asm\tokhash.pl &
perllib\phash.ph