summaryrefslogtreecommitdiff
path: root/Mkfiles
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2002-05-04 03:57:52 +0000
committerH. Peter Anvin <hpa@zytor.com>2002-05-04 03:57:52 +0000
commite87613b14e9ab6f71936c0aa032f508af78d835e (patch)
treecda54955c913b5edbeebfd0d0fa620c810d1de2f /Mkfiles
parent788abaf55a2c308425da56f6080cfe85070f509f (diff)
downloadnasm-e87613b14e9ab6f71936c0aa032f508af78d835e.tar.gz
nasm-e87613b14e9ab6f71936c0aa032f508af78d835e.tar.bz2
nasm-e87613b14e9ab6f71936c0aa032f508af78d835e.zip
Make all version information come from the single file "version".
Introduce new standard __NASM_SUBMINOR__ and __NASM_VER__ macros.
Diffstat (limited to 'Mkfiles')
-rw-r--r--Mkfiles/Makefile.b3258
-rw-r--r--Mkfiles/Makefile.bc248
-rw-r--r--Mkfiles/Makefile.bor46
-rw-r--r--Mkfiles/Makefile.dj68
-rw-r--r--Mkfiles/Makefile.djo154
-rw-r--r--Mkfiles/Makefile.dos46
-rw-r--r--Mkfiles/Makefile.emx58
-rw-r--r--Mkfiles/Makefile.lcc58
-rw-r--r--Mkfiles/Makefile.os244
-rw-r--r--Mkfiles/Makefile.sc46
-rw-r--r--Mkfiles/Makefile.scw46
-rw-r--r--Mkfiles/Makefile.unx70
-rw-r--r--Mkfiles/Makefile.vc46
-rw-r--r--Mkfiles/Makefile.wc44
-rw-r--r--Mkfiles/Makefile.wcw44
15 files changed, 463 insertions, 413 deletions
diff --git a/Mkfiles/Makefile.b32 b/Mkfiles/Makefile.b32
index 98dc6f8..908f48e 100644
--- a/Mkfiles/Makefile.b32
+++ b/Mkfiles/Makefile.b32
@@ -114,30 +114,30 @@ ndisasm$(SUFFIX)$(EXE): $(NDISASMOBJS)
# OBJs with dependencies
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
# These source files are automagically generated from a single
@@ -157,8 +157,16 @@ InstructionData: insns.dat insns.pl
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl $(srcdir)/macros.pl $(srcdir)/standard.mac
+macros.c: macros.pl standard.mac version.mac
+ perl $(srcdir)/macros.pl $(srcdir)/standard.mac version.mac
+
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl $(srcdir)/version.pl h < $(srcdir)/version > version.h
+
+version.mac: version version.pl
+ perl $(srcdir)/version.pl mac < $(srcdir)/version > version.mac
clean:
@-del /S *.obj 2> NUL 1>&2
diff --git a/Mkfiles/Makefile.bc2 b/Mkfiles/Makefile.bc2
index 49f10d3..f45457e 100644
--- a/Mkfiles/Makefile.bc2
+++ b/Mkfiles/Makefile.bc2
@@ -139,50 +139,50 @@ ndisasm$(EXE): $(NDISASMOBJS)
################################################################
# Dependencies for all of NASM's obj files
-$(OBJD)assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
+$(OBJD)assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
$(NASM_ASM)
-$(OBJD)float.$(OBJ): float.c nasm.h insnsi.h
+$(OBJD)float.$(OBJ): float.c nasm.h version.h insnsi.h
$(NASM_ASM)
-$(OBJD)labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
+$(OBJD)labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
+$(OBJD)listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
$(NASM_ASM)
-$(OBJD)eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
+$(OBJD)eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
$(NASM_ASM)
-$(OBJD)nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+$(OBJD)nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
$(NASM_ASM)
-$(OBJD)nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
+$(OBJD)nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
$(NASM_ASM)
-$(OBJD)parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+$(OBJD)parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
$(NASM_ASM)
-$(OBJD)preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+$(OBJD)preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
+$(OBJD)insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
$(NASM_ASM)
################################################################
# Dependencies for all of NDISASM's obj files
-$(OBJD)disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+$(OBJD)disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
$(DASM_ASM)
-$(OBJD)ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
+$(OBJD)ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
$(DASM_ASM)
$(OBJD)sync.$(OBJ): sync.c sync.h
$(DASM_ASM)
-$(OBJD)insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
+$(OBJD)insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
$(DASM_ASM)
# This is a kludge from the word go, as we can't use the nasmlib.obj compiled
@@ -195,40 +195,40 @@ $(OBJD)insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
# the -o... switch tells it the name to compile the obj file to, right here
# $(OBJD)nasmlibd.obj
-$(OBJD)nasmlibd.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h
+$(OBJD)nasmlibd.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h
$(CC) $(DCCFLAGS) -o$(OBJD)nasmlibd.obj nasmlib.c
################################################################
# Dependencies for all of the output format's OBJ files
-$(OBJD)outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
+$(OBJD)outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
+$(OBJD)outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
$(NASM_ASM)
################################################################
diff --git a/Mkfiles/Makefile.bor b/Mkfiles/Makefile.bor
index 49d3355..afd1f9b 100644
--- a/Mkfiles/Makefile.bor
+++ b/Mkfiles/Makefile.bor
@@ -53,30 +53,30 @@ ndisasm$(EXE): $(NDISASMOBJS)
# $(LINK) /Fendisasm.exe $(NDISASMOBJS)
$(LINK) /Tde $(NDISASMOBJS),ndisasm.exe,,cl.lib,
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
clean :
diff --git a/Mkfiles/Makefile.dj b/Mkfiles/Makefile.dj
index afa3d03..40a5bc8 100644
--- a/Mkfiles/Makefile.dj
+++ b/Mkfiles/Makefile.dj
@@ -36,30 +36,30 @@ nasm.exe: $(NASM)
ndisasm.exe: $(NDISASM)
$(CC) -o $@ $(NDISASM)
-assemble.o: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.o: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.o: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.o: float.c nasm.h insnsi.h
-insnsa.o: insnsa.c nasm.h insnsi.h insns.h
-insnsd.o: insnsd.c nasm.h insnsi.h insns.h
-labels.o: labels.c nasm.h insnsi.h nasmlib.h
-listing.o: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.o: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+assemble.o: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.o: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.o: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.o: float.c nasm.h version.h insnsi.h
+insnsa.o: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.o: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.o: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.o: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.o: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.o: nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.o: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.o: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.o: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.o: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.o: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.o: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.o: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.o: outform.c outform.h nasm.h insnsi.h
-output/outobj.o: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.o: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-output/outieee.o: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
-parser.o: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.o: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.o: nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.o: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.o: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.o: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.o: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.o: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.o: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.o: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.o: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.o: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.o: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outieee.o: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.o: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.o: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.o: sync.c sync.h
# These source files are automagically generated from a single
@@ -67,15 +67,29 @@ sync.o: sync.c sync.h
# though, so it isn't necessary to have Perl just to recompile NASM
# from the distribution.
-insnsa.c insnsd.c insnsi.h insnsn.c: insns.dat insns.pl
- perl insns.pl insns.dat
+insnsa.c: insns.dat insns.pl
+ perl insns.pl -a insns.dat
+insnsd.c: insns.dat insns.pl
+ perl insns.pl -d insns.dat
+insnsi.h: insns.dat insns.pl
+ perl insns.pl -i insns.dat
+insnsn.c: insns.dat insns.pl
+ perl insns.pl -n insns.dat
+
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl version.pl h < version > version.h
+
+version.mac: version version.pl
+ perl version.pl mac < version > version.mac
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl macros.pl standard.mac
+macros.c: macros.pl standard.mac version.mac
+ perl macros.pl standard.mac version.mac
clean:
rm -f *.o nasm ndisasm
diff --git a/Mkfiles/Makefile.djo b/Mkfiles/Makefile.djo
index 5206f1a..e33e01c 100644
--- a/Mkfiles/Makefile.djo
+++ b/Mkfiles/Makefile.djo
@@ -87,83 +87,83 @@ nasmd.exe: $(NASM)
-g -o $@ $(NASM)
<<
-assemble.o: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.o: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.o: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.o: float.c nasm.h insnsi.h
-insnsa.o: insnsa.c nasm.h insnsi.h insns.h
-insnsd.o: insnsd.c nasm.h insnsi.h insns.h
-labels.o: labels.c nasm.h insnsi.h nasmlib.h
-listing.o: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.o: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+assemble.o: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.o: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.o: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.o: float.c nasm.h version.h insnsi.h
+insnsa.o: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.o: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.o: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.o: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.o: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.o: nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.o: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.o: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.o: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.o: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.o: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.o: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.o: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.o: outform.c outform.h nasm.h insnsi.h
-output/outobj.o: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.o: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-parser.o: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.o: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.o: nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.o: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.o: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.o: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.o: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.o: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.o: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.o: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.o: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.o: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.o: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.o: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.o: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.o: sync.c sync.h
-output/outieee.o: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
-
-assemble.ol: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.ol: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.ol: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.ol: float.c nasm.h insnsi.h
-insnsa.ol: insnsa.c nasm.h insnsi.h insns.h
-insnsd.ol: insnsd.c nasm.h insnsi.h insns.h
-labels.ol: labels.c nasm.h insnsi.h nasmlib.h
-listing.ol: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.ol: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+output/outieee.o: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
+
+assemble.ol: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.ol: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.ol: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.ol: float.c nasm.h version.h insnsi.h
+insnsa.ol: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.ol: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.ol: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.ol: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.ol: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.ol: nasmlib.c nasm.h insnsi.h nasmlib.h
-ndisasm.ol: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.ol: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.ol: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.ol: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.ol: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.ol: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.ol: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.ol: outform.c outform.h nasm.h insnsi.h
-output/outobj.ol: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.ol: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-parser.ol: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.ol: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.ol: nasmlib.c nasm.h version.h insnsi.h nasmlib.h
+ndisasm.ol: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.ol: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.ol: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.ol: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.ol: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.ol: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.ol: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.ol: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.ol: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.ol: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.ol: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.ol: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.ol: sync.c sync.h
-output/outieee.ol: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
-
-assemble.obj: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.obj: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.obj: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.obj: float.c nasm.h insnsi.h
-insnsa.obj: insnsa.c nasm.h insnsi.h insns.h
-insnsd.obj: insnsd.c nasm.h insnsi.h insns.h
-labels.obj: labels.c nasm.h insnsi.h nasmlib.h
-listing.obj: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.obj: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+output/outieee.ol: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
+
+assemble.obj: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.obj: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.obj: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.obj: float.c nasm.h version.h insnsi.h
+insnsa.obj: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.obj: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.obj: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.obj: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.obj: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.obj: nasmlib.c nasm.h insnsi.h nasmlib.h
-ndisasm.obj: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.obj: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.obj: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.obj: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.obj: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.obj: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.obj: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.obj: outform.c outform.h nasm.h insnsi.h
-output/outobj.obj: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.obj: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-parser.obj: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.obj: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.obj: nasmlib.c nasm.h version.h insnsi.h nasmlib.h
+ndisasm.obj: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.obj: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.obj: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.obj: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.obj: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.obj: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.obj: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.obj: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.obj: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.obj: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.obj: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.obj: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.obj: sync.c sync.h
-output/outieee.obj: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
+output/outieee.obj: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
# These four source files are automagically generated from a single
# instruction-table file by a Perl script. They're distributed,
@@ -173,12 +173,20 @@ output/outieee.obj: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
insnsa.c insnsd.c insnsi.h insnsn.c: insns.dat insns.pl
perl insns.pl insns.dat
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl $(srcdir)/version.pl h < $(srcdir)/version > version.h
+
+version.mac: version version.pl
+ perl $(srcdir)/version.pl mac < $(srcdir)/version > version.mac
+
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl macros.pl standard.mac
+macros.c: standard.mac macros.pl version.mac
+ perl macros.pl standard.mac version.mac
clean:
rm -f *.o nasm ndisasm
diff --git a/Mkfiles/Makefile.dos b/Mkfiles/Makefile.dos
index b6574f8..02e2180 100644
--- a/Mkfiles/Makefile.dos
+++ b/Mkfiles/Makefile.dos
@@ -42,36 +42,36 @@ nasm$(EXE): $(NASMOBJS)
ndisasm$(EXE): $(NDISASMOBJS)
cl /Fendisasm.exe $(NDISASMOBJS)
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.$(OBJ): float.c nasm.h insnsi.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
# Another grotty hack: QC is less likely to run out of memory than
# CL proper; and we don't need any optimisation in these modules
# since they're just data.
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
$(QCL) insnsa.c
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
$(QCL) insnsd.c
clean :
diff --git a/Mkfiles/Makefile.emx b/Mkfiles/Makefile.emx
index 26264a9..89e9f76 100644
--- a/Mkfiles/Makefile.emx
+++ b/Mkfiles/Makefile.emx
@@ -59,31 +59,31 @@ nasm: $(NASM)
ndisasm: $(NDISASM)
$(CC) $(LDFLAGS) -o ndisasm $(NDISASM) $(LIBS)
-assemble.o: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.o: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.o: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.o: float.c nasm.h insnsi.h
-insnsa.o: insnsa.c nasm.h insnsi.h insns.h
-insnsd.o: insnsd.c nasm.h insnsi.h insns.h
-labels.o: labels.c nasm.h insnsi.h nasmlib.h
-listing.o: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.o: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+assemble.o: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.o: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.o: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.o: float.c nasm.h version.h insnsi.h
+insnsa.o: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.o: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.o: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.o: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.o: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.o: nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.o: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.o: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.o: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.o: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.o: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.o: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.o: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.o: outform.c outform.h nasm.h insnsi.h
-output/outobj.o: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.o: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-parser.o: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.o: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.o: nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.o: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.o: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.o: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.o: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.o: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.o: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.o: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.o: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.o: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.o: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.o: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.o: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.o: sync.c sync.h
-output/outieee.o: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
+output/outieee.o: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
# These source files are automagically generated from a single
# instruction-table file by a Perl script. They're distributed,
@@ -99,12 +99,20 @@ insnsi.h: insns.dat insns.pl
insnsn.c: insns.dat insns.pl
perl $(srcdir)/insns.pl -n $(srcdir)/insns.dat
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl $(srcdir)/version.pl h < $(srcdir)/version > version.h
+
+version.mac: version version.pl
+ perl $(srcdir)/version.pl mac < $(srcdir)/version > version.mac
+
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl $(srcdir)/macros.pl $(srcdir)/standard.mac
+macros.c: standard.mac macros.pl version.mac
+ perl $(srcdir)/macros.pl $(srcdir)/standard.mac version.mac
install: nasm ndisasm
$(INSTALL_PROGRAM) nasm $(INSTALLROOT)$(bindir)/nasm
diff --git a/Mkfiles/Makefile.lcc b/Mkfiles/Makefile.lcc
index 9c6a937..460bf86 100644
--- a/Mkfiles/Makefile.lcc
+++ b/Mkfiles/Makefile.lcc
@@ -68,30 +68,30 @@ nasm: $(NASM) nasm.lnk
ndisasm: $(NDISASM) ndisasm.lnk
$(LD) -o ndisasm.exe @ndisasm.lnk
-assemble.${OBJ}: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insns.h
-disasm.${OBJ}: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.${OBJ}: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.${OBJ}: float.c nasm.h insnsi.h
-insnsa.${OBJ}: insnsa.c nasm.h insnsi.h insns.h
-insnsd.${OBJ}: insnsd.c nasm.h insnsi.h insns.h
-labels.${OBJ}: labels.c nasm.h insnsi.h nasmlib.h
-listing.${OBJ}: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.${OBJ}: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+assemble.${OBJ}: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insns.h
+disasm.${OBJ}: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.${OBJ}: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.${OBJ}: float.c nasm.h version.h insnsi.h
+insnsa.${OBJ}: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.${OBJ}: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.${OBJ}: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.${OBJ}: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.${OBJ}: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.${OBJ}: nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.${OBJ}: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.${OBJ}: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.${OBJ}: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.${OBJ}: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.${OBJ}: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.${OBJ}: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.${OBJ}: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.${OBJ}: outform.c outform.h nasm.h insnsi.h
-output/outobj.${OBJ}: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.${OBJ}: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-output/outieee.${OBJ}: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
-parser.${OBJ}: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.${OBJ}: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.${OBJ}: nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.${OBJ}: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.${OBJ}: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.${OBJ}: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.${OBJ}: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.${OBJ}: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.${OBJ}: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.${OBJ}: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.${OBJ}: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.${OBJ}: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.${OBJ}: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outieee.${OBJ}: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.${OBJ}: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.${OBJ}: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.${OBJ}: sync.c sync.h
# These source files are automagically generated from a single
@@ -102,12 +102,20 @@ sync.${OBJ}: sync.c sync.h
insnsa.c insnsd.c insnsi.h insnsn.c: insns.dat insns.pl
perl insns.pl insns.dat
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl version.pl h < version > version.h
+
+version.mac: version version.pl
+ perl version.pl mac < version > version.mac
+
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl macros.pl standard.mac
+macros.c: standard.mac macros.pl version.mac
+ perl macros.pl standard.mac version.mac
clean:
rm -f *.${OBJ} nasm.exe ndisasm.exe
diff --git a/Mkfiles/Makefile.os2 b/Mkfiles/Makefile.os2
index de4bad3..4c9dc07 100644
--- a/Mkfiles/Makefile.os2
+++ b/Mkfiles/Makefile.os2
@@ -106,50 +106,50 @@ ndisasm2$(EXE): $(NDISASMOBJS)
################################################################
# Dependencies for all of NASM's obj files
-$(OBJD)assemble.$(OBJ): assemble.c nasm.h assemble.h insns.h
+$(OBJD)assemble.$(OBJ): assemble.c nasm.h version.h assemble.h insns.h
$(NASM_ASM)
-$(OBJD)float.$(OBJ): float.c nasm.h
+$(OBJD)float.$(OBJ): float.c nasm.h version.h
$(NASM_ASM)
-$(OBJD)labels.$(OBJ): labels.c nasm.h nasmlib.h
+$(OBJD)labels.$(OBJ): labels.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)listing.$(OBJ): listing.c nasm.h nasmlib.h listing.h
+$(OBJD)listing.$(OBJ): listing.c nasm.h version.h nasmlib.h listing.h
$(NASM_ASM)
-$(OBJD)eval.$(OBJ): eval.c nasm.h nasmlib.h eval.h
+$(OBJD)eval.$(OBJ): eval.c nasm.h version.h nasmlib.h eval.h
$(NASM_ASM)
-$(OBJD)nasm.$(OBJ): nasm.c nasm.h nasmlib.h parser.h assemble.h labels.h \
+$(OBJD)nasm.$(OBJ): nasm.c nasm.h version.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
$(NASM_ASM)
-$(OBJD)nasmlib.$(OBJ): nasmlib.c nasm.h nasmlib.h names.c insnsn.c
+$(OBJD)nasmlib.$(OBJ): nasmlib.c nasm.h version.h nasmlib.h names.c insnsn.c
$(NASM_ASM)
-$(OBJD)parser.$(OBJ): parser.c nasm.h nasmlib.h parser.h float.h names.c
+$(OBJD)parser.$(OBJ): parser.c nasm.h version.h nasmlib.h parser.h float.h names.c
$(NASM_ASM)
-$(OBJD)preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h nasmlib.h
+$(OBJD)preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)insnsa.$(OBJ): insnsa.c nasm.h insns.h
+$(OBJD)insnsa.$(OBJ): insnsa.c nasm.h version.h insns.h
$(NASM_ASM)
################################################################
# Dependencies for all of NDISASM's obj files
-$(OBJD)disasm.$(OBJ): disasm.c nasm.h disasm.h sync.h insns.h names.c
+$(OBJD)disasm.$(OBJ): disasm.c nasm.h version.h disasm.h sync.h insns.h names.c
$(DASM_ASM)
-$(OBJD)ndisasm.$(OBJ): ndisasm.c nasm.h sync.h disasm.h
+$(OBJD)ndisasm.$(OBJ): ndisasm.c nasm.h version.h sync.h disasm.h
$(DASM_ASM)
$(OBJD)sync.$(OBJ): sync.c sync.h
$(DASM_ASM)
-$(OBJD)insnsd.$(OBJ): insnsd.c nasm.h insns.h
+$(OBJD)insnsd.$(OBJ): insnsd.c nasm.h version.h insns.h
$(DASM_ASM)
# This is a kludge from the word go, as we can't use the nasmlib.obj compiled
@@ -162,34 +162,34 @@ $(OBJD)insnsd.$(OBJ): insnsd.c nasm.h insns.h
# the -o... switch tells it the name to compile the obj file to, right here
# $(OBJD)nasmlibd.obj
-$(OBJD)nasmlibd.$(OBJ): nasmlib.c nasm.h nasmlib.h
+$(OBJD)nasmlibd.$(OBJ): nasmlib.c nasm.h version.h nasmlib.h
$(CC) $(DCCFLAGS) -o$(OBJD)nasmlibd.obj nasmlib.c
################################################################
# Dependencies for all of the output format's OBJ files
-$(OBJD)outas86.$(OBJ): output/outas86.c nasm.h nasmlib.h
+$(OBJD)outas86.$(OBJ): output/outas86.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outaout.$(OBJ): output/outaout.c nasm.h nasmlib.h
+$(OBJD)outaout.$(OBJ): output/outaout.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outbin.$(OBJ): output/outbin.c nasm.h nasmlib.h
+$(OBJD)outbin.$(OBJ): output/outbin.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outcoff.$(OBJ): output/outcoff.c nasm.h nasmlib.h
+$(OBJD)outcoff.$(OBJ): output/outcoff.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outdbg.$(OBJ): output/outdbg.c nasm.h nasmlib.h
+$(OBJD)outdbg.$(OBJ): output/outdbg.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outelf.$(OBJ): output/outelf.c nasm.h nasmlib.h
+$(OBJD)outelf.$(OBJ): output/outelf.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outobj.$(OBJ): output/outobj.c nasm.h nasmlib.h
+$(OBJD)outobj.$(OBJ): output/outobj.c nasm.h version.h nasmlib.h
$(NASM_ASM)
-$(OBJD)outform.$(OBJ): outform.c outform.h nasm.h
+$(OBJD)outform.$(OBJ): outform.c outform.h nasm.h version.h
$(NASM_ASM)
################################################################
diff --git a/Mkfiles/Makefile.sc b/Mkfiles/Makefile.sc
index aa932b1..429d7a6 100644
--- a/Mkfiles/Makefile.sc
+++ b/Mkfiles/Makefile.sc
@@ -82,31 +82,31 @@ ndisasm.exe
# modules for programs
#
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
diff --git a/Mkfiles/Makefile.scw b/Mkfiles/Makefile.scw
index 5cd0674..8922df3 100644
--- a/Mkfiles/Makefile.scw
+++ b/Mkfiles/Makefile.scw
@@ -82,31 +82,31 @@ ndisasmw.exe;
# modules for programs
#
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
diff --git a/Mkfiles/Makefile.unx b/Mkfiles/Makefile.unx
index b568849..859cae9 100644
--- a/Mkfiles/Makefile.unx
+++ b/Mkfiles/Makefile.unx
@@ -1,8 +1,8 @@
# Unix fall-back makefile for the Netwide Assembler. For use if
# `configure' fails to generate a workable Makefile.
#
-# If `configure' doesn't work for you, *please* inform <hpa@zytor.com>
-# and <nasm-bugs@lists.sourceforge.net>
+# If `configure' doesn't work for you, *please* inform
+# <nasm-bugs@lists.sourceforge.net>
#
# The Netwide Assembler is copyright (C) 1996 Simon Tatham and
# Julian Hall. All rights reserved. The software is
@@ -42,46 +42,50 @@ nasm: $(NASM)
ndisasm: $(NDISASM)
$(CC) -o ndisasm $(NDISASM)
-assemble.o: assemble.c nasm.h insnsi.h nasmlib.h assemble.h insnsn.c
-disasm.o: disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.o: eval.c eval.h nasm.h insnsi.h nasmlib.h
-float.o: float.c nasm.h insnsi.h
-insnsa.o: insnsa.c nasm.h insnsi.h insns.h
-insnsd.o: insnsd.c nasm.h insnsi.h insns.h
-labels.o: labels.c nasm.h insnsi.h nasmlib.h
-listing.o: listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.o: nasm.c nasm.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
+assemble.o: assemble.c nasm.h version.h insnsi.h nasmlib.h assemble.h insnsn.c
+disasm.o: disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.o: eval.c eval.h nasm.h version.h insnsi.h nasmlib.h
+float.o: float.c nasm.h version.h insnsi.h
+insnsa.o: insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.o: insnsd.c nasm.h version.h insnsi.h insns.h
+labels.o: labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.o: listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.o: nasm.c nasm.h version.h insnsi.h nasmlib.h preproc.h parser.h assemble.h labels.h \
outform.h listing.h
-nasmlib.o: nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.o: ndisasm.c nasm.h insnsi.h nasmlib.h sync.h disasm.h
-output/outaout.o: output/outaout.c nasm.h insnsi.h nasmlib.h outform.h
-output/outas86.o: output/outas86.c nasm.h insnsi.h nasmlib.h outform.h
-output/outbin.o: output/outbin.c nasm.h insnsi.h nasmlib.h outform.h
-output/outcoff.o: output/outcoff.c nasm.h insnsi.h nasmlib.h outform.h
-output/outdbg.o: output/outdbg.c nasm.h insnsi.h nasmlib.h outform.h
-output/outelf.o: output/outelf.c nasm.h insnsi.h nasmlib.h outform.h
-outform.o: outform.c outform.h nasm.h insnsi.h
-output/outobj.o: output/outobj.c nasm.h insnsi.h nasmlib.h outform.h
-output/outrdf2.o: output/outrdf2.c nasm.h insnsi.h nasmlib.h outform.h
-output/outieee.o: output/outieee.c nasm.h insnsi.h nasmlib.h outform.h
-parser.o: parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.o: preproc.c nasm.h insnsi.h nasmlib.h macros.c
+nasmlib.o: nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.o: ndisasm.c nasm.h version.h insnsi.h nasmlib.h sync.h disasm.h
+output/outaout.o: output/outaout.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outas86.o: output/outas86.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outbin.o: output/outbin.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outcoff.o: output/outcoff.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outdbg.o: output/outdbg.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outelf.o: output/outelf.c nasm.h version.h insnsi.h nasmlib.h outform.h
+outform.o: outform.c outform.h nasm.h version.h insnsi.h
+output/outobj.o: output/outobj.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outrdf2.o: output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h outform.h
+output/outieee.o: output/outieee.c nasm.h version.h insnsi.h nasmlib.h outform.h
+parser.o: parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.o: preproc.c nasm.h version.h insnsi.h nasmlib.h macros.c
sync.o: sync.c sync.h
-# These source files are automagically generated from a single
-# instruction-table file by a Perl script. They're distributed,
-# though, so it isn't necessary to have Perl just to recompile NASM
-# from the distribution.
+# These files contains all the standard macros that are derived from
+# the version number.
+version.h: version version.pl
+ perl version.pl h < version > version.h
-insnsa.c insnsd.c insnsi.h insnsn.c: insns.dat insns.pl
- perl insns.pl insns.dat
+version.mac: version version.pl
+ perl version.pl mac < version > version.mac
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
# standard distribution.
-macros.c: standard.mac macros.pl
- perl macros.pl standard.mac
+macros.c: macros.pl standard.mac version.mac
+ perl macros.pl standard.mac version.mac
+
+# This target generates all files that require perl.
+# This allows easier generation of distribution (see dist target).
+perlreq: macros.c insnsa.c insnsd.c insnsi.h insnsn.c version.h version.mac
install: nasm ndisasm
$(INSTALL_PROGRAM) nasm $(bindir)/nasm
diff --git a/Mkfiles/Makefile.vc b/Mkfiles/Makefile.vc
index da6ecfc..6669abf 100644
--- a/Mkfiles/Makefile.vc
+++ b/Mkfiles/Makefile.vc
@@ -41,36 +41,36 @@ nasm$(SUFFIX)$(EXE): $(NASMOBJS)
ndisasm$(SUFFIX)$(EXE): $(NDISASMOBJS)
cl /Fendisasm$(SUFFIX).exe $(NDISASMOBJS)
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outdbg.$(OBJ): output/outdbg.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outdbg.$(OBJ): output/outdbg.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
# Another grotty hack: QC is less likely to run out of memory than
# CL proper; and we don't need any optimisation in these modules
# since they're just data.
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
$(QCL) insnsa.c
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
$(QCL) insnsd.c
clean :
diff --git a/Mkfiles/Makefile.wc b/Mkfiles/Makefile.wc
index 6dbbd53..4820f31 100644
--- a/Mkfiles/Makefile.wc
+++ b/Mkfiles/Makefile.wc
@@ -91,29 +91,29 @@ NDISASM.LNK: makefile.wc
echo F nasmlib.$(OBJ) >> NDISASM.LNK
echo F insnsd.$(OBJ) >> NDISASM.LNK
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
clean :
diff --git a/Mkfiles/Makefile.wcw b/Mkfiles/Makefile.wcw
index 256096c..9e92311 100644
--- a/Mkfiles/Makefile.wcw
+++ b/Mkfiles/Makefile.wcw
@@ -91,29 +91,29 @@ NDISASM.LNK: makefile.wcw
echo F nasmlib.$(OBJ) >> NDISASM.LNK
echo F insnsd.$(OBJ) >> NDISASM.LNK
-assemble.$(OBJ): assemble.c nasm.h insnsi.h assemble.h insns.h
-disasm.$(OBJ): disasm.c nasm.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
-eval.$(OBJ): eval.c nasm.h insnsi.h nasmlib.h eval.h
-float.$(OBJ): float.c nasm.h insnsi.h
-insnsa.$(OBJ): insnsa.c nasm.h insnsi.h insns.h
-insnsd.$(OBJ): insnsd.c nasm.h insnsi.h insns.h
-labels.$(OBJ): labels.c nasm.h insnsi.h nasmlib.h
-listing.$(OBJ): listing.c nasm.h insnsi.h nasmlib.h listing.h
-nasm.$(OBJ): nasm.c nasm.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
+assemble.$(OBJ): assemble.c nasm.h version.h insnsi.h assemble.h insns.h
+disasm.$(OBJ): disasm.c nasm.h version.h insnsi.h disasm.h sync.h insns.h names.c insnsn.c
+eval.$(OBJ): eval.c nasm.h version.h insnsi.h nasmlib.h eval.h
+float.$(OBJ): float.c nasm.h version.h insnsi.h
+insnsa.$(OBJ): insnsa.c nasm.h version.h insnsi.h insns.h
+insnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h
+labels.$(OBJ): labels.c nasm.h version.h insnsi.h nasmlib.h
+listing.$(OBJ): listing.c nasm.h version.h insnsi.h nasmlib.h listing.h
+nasm.$(OBJ): nasm.c nasm.h version.h insnsi.h nasmlib.h parser.h assemble.h labels.h \
listing.h outform.h
-nasmlib.$(OBJ): nasmlib.c nasm.h insnsi.h nasmlib.h names.c insnsn.c
-ndisasm.$(OBJ): ndisasm.c nasm.h insnsi.h sync.h disasm.h
-output/outas86.$(OBJ): output/outas86.c nasm.h insnsi.h nasmlib.h
-output/outaout.$(OBJ): output/outaout.c nasm.h insnsi.h nasmlib.h
-output/outbin.$(OBJ): output/outbin.c nasm.h insnsi.h nasmlib.h
-output/outcoff.$(OBJ): output/outcoff.c nasm.h insnsi.h nasmlib.h
-output/outelf.$(OBJ): output/outelf.c nasm.h insnsi.h nasmlib.h
-output/outobj.$(OBJ): output/outobj.c nasm.h insnsi.h nasmlib.h
-output/outrdf2.$(OBJ): output/outrdf2.c nasm.h insnsi.h nasmlib.h
-output/outieee.$(OBJ): output/outieee.c nasm.h insnsi.h nasmlib.h
-outform.$(OBJ): outform.c outform.h nasm.h insnsi.h
-parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
-preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h
+nasmlib.$(OBJ): nasmlib.c nasm.h version.h insnsi.h nasmlib.h names.c insnsn.c
+ndisasm.$(OBJ): ndisasm.c nasm.h version.h insnsi.h sync.h disasm.h
+output/outas86.$(OBJ): output/outas86.c nasm.h version.h insnsi.h nasmlib.h
+output/outaout.$(OBJ): output/outaout.c nasm.h version.h insnsi.h nasmlib.h
+output/outbin.$(OBJ): output/outbin.c nasm.h version.h insnsi.h nasmlib.h
+output/outcoff.$(OBJ): output/outcoff.c nasm.h version.h insnsi.h nasmlib.h
+output/outelf.$(OBJ): output/outelf.c nasm.h version.h insnsi.h nasmlib.h
+output/outobj.$(OBJ): output/outobj.c nasm.h version.h insnsi.h nasmlib.h
+output/outrdf2.$(OBJ): output/outrdf2.c nasm.h version.h insnsi.h nasmlib.h
+output/outieee.$(OBJ): output/outieee.c nasm.h version.h insnsi.h nasmlib.h
+outform.$(OBJ): outform.c outform.h nasm.h version.h insnsi.h
+parser.$(OBJ): parser.c nasm.h version.h insnsi.h nasmlib.h parser.h float.h names.c insnsn.c
+preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h version.h insnsi.h nasmlib.h
sync.$(OBJ): sync.c sync.h
clean :