diff options
author | H. Peter Anvin <hpa@zytor.com> | 2002-04-30 21:01:08 +0000 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2002-04-30 21:01:08 +0000 |
commit | 734b188090539eddf08e61c317415f566446691b (patch) | |
tree | abc7516f5a80c8b0810f5018125eb5f95717ca76 /Mkfiles | |
parent | 1cd0e2d5bf50b2cc482cad7beb8f7dee6a81d57b (diff) | |
download | nasm-734b188090539eddf08e61c317415f566446691b.tar.gz nasm-734b188090539eddf08e61c317415f566446691b.tar.bz2 nasm-734b188090539eddf08e61c317415f566446691b.zip |
NASM 0.98.09
Diffstat (limited to 'Mkfiles')
-rw-r--r-- | Mkfiles/Makefile.b32 | 49 | ||||
-rw-r--r-- | Mkfiles/Makefile.dl | 46 |
2 files changed, 87 insertions, 8 deletions
diff --git a/Mkfiles/Makefile.b32 b/Mkfiles/Makefile.b32 index 2e642d0..d83e6e0 100644 --- a/Mkfiles/Makefile.b32 +++ b/Mkfiles/Makefile.b32 @@ -7,13 +7,19 @@ # # This Makefile is designed to build NASM with the latest # version of Borland C++Builder and has been tested with -# Borland C++ 5.3 (Borland C++Builder 3.0) and Borland C++ 5.4 -# (Borland C++Builder 4.0) in combination with -# Borland MAKE versions 5.1 and 5.2 +# Borland C++ 5.5 (Borland C++Builder 5.0) in combination +# Borland MAKE 5.2 +# +# Additionally, the free Borland C++ Compiler 5.5 is supported; +# see +# +# http://www.borland.com/bcppbuilder/freecompiler/ # # MAKEFILE is maintained by Stefan.Hoffmeister@Econos.de # +srcdir=. +BINDIR=e:\devel\bcb5\cbuilder5\bin # If "BINDIR=C:\...." has not been defined on the command line # assume that the binary files are in the same directory as the @@ -35,15 +41,19 @@ CC=$(BINDIR)\bcc32 -CCFLAGS=-tWC -c -O2 -A +CCFLAGS=-q -Q -tWC -c -O2 -A -w-8057 + # /q: Suppress compiler identification banner + # /Q: Extended compiler error information # /-tWC: Windows console mode application # /c: Compile, do not link # /O2: Optimize for speed # /A: ANSI compatible code only + # /-w-8057: Turn off "Parameter <param> never used in function <func>" warning LINK=$(BINDIR)\ilink32 -LINKFLAGS=/V4.0 /x /c /ap /L$(BINDIR)\..\LIB # /L -> default LIB directory +LINKFLAGS=/V4.0 /q /x /c /ap /L$(BINDIR)\..\LIB # /L -> default LIB directory # /V4.0: marked as Win95 / NT application in PE header + # /q: suppress command-line banner # /x: no map file # /c: case sensitive link # /ap: link for 32-bit console application @@ -131,7 +141,30 @@ parser.$(OBJ): parser.c nasm.h insnsi.h nasmlib.h parser.h float.h names.c insns preproc.$(OBJ): preproc.c macros.c preproc.h nasm.h insnsi.h nasmlib.h sync.$(OBJ): 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. + +insnsa.c: InstructionData +insnsd.c: InstructionData +insnsi.h: InstructionData +insnsn.c: InstructionData + +InstructionData: insns.dat insns.pl + perl $(srcdir)/insns.pl -a $(srcdir)/insns.dat + +# 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 + clean: - del *.obj - del nasm$(SUFFIX)$(EXE) - del ndisasm$(SUFFIX)$(EXE) + @-del /S *.obj 2> NUL 1>&2 + @-del /S *.il? 2> NUL 1>&2 + @-del /S *.tds 2> NUL 1>&2 + @-del /S *.~* 2> NUL 1>&2 + @-del /S nasm$(SUFFIX)$(EXE) 2> NUL 1>&2 + @-del /S ndisasm$(SUFFIX)$(EXE) 2> NUL 1>&2 diff --git a/Mkfiles/Makefile.dl b/Mkfiles/Makefile.dl new file mode 100644 index 0000000..db53e57 --- /dev/null +++ b/Mkfiles/Makefile.dl @@ -0,0 +1,46 @@ +# Makefile for the Netwide Assembler under 16-bit DOS +# +# The Netwide Assembler is copyright (C) 1996 Simon Tatham and +# Julian Hall. All rights reserved. The software is +# redistributable under the licence given in the file "Licence" +# distributed in the NASM archive. +# +# This Makefile is designed to build NASM using David Lindauer's +# cc386 + +CC = cc386 /C+N +LINK = valx -case -use32 -map +LINKFLAGS = +LIBRARIES = +OBJ = obj + +.c.obj: + $(CC) $& + &nasm -fobj $&.ASM + +NDISASMOBJS = ndisasm.$(OBJ) disasm.$(OBJ) sync.$(OBJ) nasmlib.$(OBJ) \ + insnsd.$(OBJ) + +NASMOBJS = nasm.$(OBJ) nasmlib.$(OBJ) eval.$(OBJ) float.$(OBJ) insnsa.$(OBJ) \ + assemble.$(OBJ) labels.$(OBJ) parser.$(OBJ) outform.$(OBJ) \ + outbin.$(OBJ) outaout.$(OBJ) outcoff.$(OBJ) outelf.$(OBJ) \ + outobj.$(OBJ) outas86.$(OBJ) outrdf.$(OBJ) outrdf2.$(OBJ) outdbg.$(OBJ) \ + preproc.$(OBJ) listing.$(OBJ) zoutieee.$(OBJ) + +all : nasm.exe ndisasm.exe + +# We have to have a horrible kludge here to get round the 128 character +# limit, as usual... +LINKOBJS = a*.obj e*.obj f*.obj insnsa.obj l*.obj na*.obj o*.obj p*.obj z*.obj +nasm.exe: $(NASMOBJS) + $(LINK) \cc386\lib\c0dos $(LINKOBJS:.obj=),nasm,nasm,\cc386\lib\cldos + +ndisasm.exe: $(NDISASMOBJS) + $(LINK) \cc386\lib\c0dos.obj $(NDISASMOBJS:.obj=),ndisasm,ndisasm,\cc386\lib\cldos + +clean : + del *.asm + del *.obj + del *.map + del *.exe + |