⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.vc

📁 开源的nasm编译器源码,研究编译器原理很有帮且
💻 VC
字号:
# Makefile for the Netwide Assembler under Win32## 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 as a Win32 command-# line executable. It's been tested with Visual C++ 1.10.CC = cl /c /Ox /GF /I.QCL = cl /cLINK = clLINKFLAGS =LIBRARIES =EXE = .exe#OBJ = obj#SUFFIX = w#  # by default, this makefile produces nasmw.exe and ndisasmw.exe.c.$(OBJ):	$(CC) $*.cNASMOBJS = nasm.$(OBJ) nasmlib.$(OBJ) float.$(OBJ) insnsa.$(OBJ) \           assemble.$(OBJ) labels.$(OBJ) parser.$(OBJ) outform.$(OBJ) \	   output/outbin.$(OBJ) output/outaout.$(OBJ) output/outcoff.$(OBJ) output/outelf.$(OBJ) \	   output/outobj.$(OBJ) output/outas86.$(OBJ) output/outrdf.$(OBJ) output/outdbg.$(OBJ) \	   preproc.$(OBJ) listing.$(OBJ) eval.$(OBJ) output/outrdf2.$(OBJ) \	   output/outieee.$(OBJ)NDISASMOBJS = ndisasm.$(OBJ) disasm.$(OBJ) sync.$(OBJ) nasmlib.$(OBJ) \              insnsd.$(OBJ)all : nasm$(SUFFIX)$(EXE) ndisasm$(SUFFIX)$(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*.objnasm$(SUFFIX)$(EXE): $(NASMOBJS)	cl /Fenasm$(SUFFIX).exe $(LINKOBJS)ndisasm$(SUFFIX)$(EXE): $(NDISASMOBJS)	cl /Fendisasm$(SUFFIX).exe $(NDISASMOBJS)# 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 version.h insnsi.h insns.h	$(QCL) insnsa.cinsnsd.$(OBJ): insnsd.c nasm.h version.h insnsi.h insns.h	$(QCL) insnsd.c# 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: insns.dat insns.pl	perl insns.pl -a insns.datinsnsd.c: insns.dat insns.pl	perl insns.pl -d insns.datinsnsi.h: insns.dat insns.pl	perl insns.pl -i insns.datinsnsn.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.hversion.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: macros.pl standard.mac version.mac	perl macros.pl standard.mac version.mac# These source files are generated from regs.dat by yet another# perl script.regs.c: regs.dat regs.pl	perl regs.pl c regs.dat > regs.cregflags.c: regs.dat regs.pl	perl regs.pl fc regs.dat > regflags.cregdis.c: regs.dat regs.pl	perl regs.pl dc regs.dat > regdis.cregvals.c: regs.dat regs.pl	perl regs.pl vc regs.dat > regvals.cregs.h: regs.dat regs.pl	perl regs.pl h regs.dat > regs.hclean :	del *.obj	del nasm$(SUFFIX)$(EXE)	del ndisasm$(SUFFIX)$(EXE)#-- Magic hints to mkdep.pl --## @object-ending: ".$(OBJ)"# @path-separator: "/"#-- Everything below is generated by mkdep.pl - do not edit --#assemble.$(OBJ): assemble.c insns.h assemble.h regvals.c nasm.h regs.h \ insnsi.h nasmlib.h version.hdisasm.$(OBJ): disasm.c insns.h regs.c sync.h names.c nasm.h disasm.h regs.h \ insnsn.c insnsi.h version.h regdis.ceval.$(OBJ): eval.c nasm.h regs.h labels.h nasmlib.h version.h eval.hfloat.$(OBJ): float.c nasm.h regs.h version.hinsnsa.$(OBJ): insnsa.c insns.h nasm.h regs.h insnsi.h version.hinsnsd.$(OBJ): insnsd.c insns.h nasm.h regs.h insnsi.h version.hinsnsn.$(OBJ): insnsn.clabels.$(OBJ): labels.c nasm.h regs.h nasmlib.h version.hlisting.$(OBJ): listing.c listing.h nasm.h regs.h nasmlib.h version.hmacros.$(OBJ): macros.cnames.$(OBJ): names.c regs.c insnsn.cnasm.$(OBJ): nasm.c listing.h preproc.h insns.h outform.h assemble.h \ parser.h nasm.h regs.h labels.h insnsi.h nasmlib.h version.h eval.hnasmlib.$(OBJ): nasmlib.c insns.h regs.c names.c nasm.h regs.h insnsn.c \ insnsi.h nasmlib.h version.hndisasm.$(OBJ): ndisasm.c insns.h sync.h nasm.h disasm.h regs.h insnsi.h \ nasmlib.h version.houtform.$(OBJ): outform.c outform.h nasm.h regs.h version.houtput/outaout.$(OBJ): output/outaout.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outas86.$(OBJ): output/outas86.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outbin.$(OBJ): output/outbin.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outcoff.$(OBJ): output/outcoff.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outdbg.$(OBJ): output/outdbg.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outelf.$(OBJ): output/outelf.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outieee.$(OBJ): output/outieee.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outobj.$(OBJ): output/outobj.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outrdf.$(OBJ): output/outrdf.c outform.h nasm.h regs.h nasmlib.h \ version.houtput/outrdf2.$(OBJ): output/outrdf2.c outform.h nasm.h regs.h nasmlib.h \ version.hparser.$(OBJ): parser.c insns.h parser.h nasm.h regs.h insnsi.h regflags.c \ float.h nasmlib.h version.hpreproc.$(OBJ): preproc.c nasm.h macros.c regs.h nasmlib.h version.hregdis.$(OBJ): regdis.cregflags.$(OBJ): regflags.cregs.$(OBJ): regs.cregvals.$(OBJ): regvals.csync.$(OBJ): sync.c sync.h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -