MS_makefile_template
上传用户:qdkongtiao
上传日期:2022-06-29
资源大小:356k
文件大小:2k
源码类别:

书籍源码

开发平台:

Visual C++

  1. #MS compiler: options
  2. # -c compile but do not link
  3. # -GX Enable exception handling
  4. # -nologo suppresses copyright notice
  5. # -o name the output file
  6. # -Za disables language extensions
  7. CPP = cl
  8. CPPFLAGS = -GX -O -Za -nologo $(LOCFLAGS)
  9. # Some programs include headers defined in earlier chapters
  10. # LOCFLAGS used to set tell the compiler where to find a
  11. # header that is not in the same directory as the source file itself
  12. # LOCFLAGS will be set in directory level makefiles as needed
  13. LOCFLAGS =
  14. # An additional option is required to compile code using 
  15. # runtime type information (covered in chapter 18).
  16. # See the makefile in directory 18
  17. ####### To compile without using a makefile
  18. # To compile an object file from a source file you could execute
  19. # cl -GX -O -Za -nologo -c filename.cpp  # produces filename.obj
  20. # To compile an executable file from an object file, you would execute
  21. # cl -GX -O -Za -nologo filename.obj     # produces filename.exe
  22. # To compile an executable file from a source file, you would execute
  23. # cl -GX -O -Za -nologo filename.cpp     # produces filename.exe
  24. #######
  25. # each subdirectory contains a Makefile that lists the executable
  26. # files that can be made in that directory.  That list is assigned
  27. # to the make macro named $OBJECTS
  28. # This rule says that the make target named "all" depends on those
  29. # files.  Executing "nmake all" in a subdirectory will cause make
  30. # to build each .exe file listed in that subdirectory's makefile
  31. all: $(OBJECTS) 
  32. # rule that says how to make a .obj object file from a .cpp source file
  33. # for a given source file in a given directory you could compile it
  34. # into an object file by executing "nmake filename.obj"
  35. # $< and $@ are macros defined by make 
  36. #     $< refers to the file being processed (i.e., compiled or linked)
  37. #     $@ refers to the generated file 
  38. .cpp.obj: 
  39. $(CPP) $(CPPFLAGS) -c $< -o $@
  40. # rule that says how to make a .exe executable file from a .obj object file
  41. .obj.exe:
  42. $(CPP) $(CPPFLAGS) $< -o $@
  43. # target to clean up the object files and any core files
  44. # executing "nmake clean" in a subdirectory will remove all
  45. # files named core or any file ending in .obj, or .stackdump
  46. clean:
  47. del *.obj core *.stackdump
  48. # target to remove executable files as well as object and core files
  49. clobber: clean
  50. del *.exe