Makefile.utl
上传用户:caisangzi8
上传日期:2013-10-25
资源大小:15756k
文件大小:3k
源码类别:

DVD

开发平台:

C/C++

  1. #
  2. # Makefile.utl
  3. #
  4. .SUFFIXES:
  5. .PHONY: all clean depends bak debug tar force
  6. #
  7. #
  8. #
  9. PREFIX          = package/
  10. PREFIX1         = 
  11. PERLPATH = pl/
  12. #
  13. #
  14. #
  15. CC              = gcc
  16. CPP             = cpp -P -traditional
  17. AS              = as
  18. LD              = ld
  19. AR              = ar
  20. OBJDUMP         = objdump
  21. OBJCOPY         = objcopy
  22. OBJDUMP2BIN     = dump2bin
  23. WECHO           = wecho
  24. #
  25. # cross-compiling tools
  26. #
  27. DSP3            = dsp3/
  28. XCC             = $(CC)
  29. XAS             = $(AS)
  30. XLD             = $(LD)
  31. XAR             = $(AR)
  32. XRANLIB         = $(RANLIB)
  33. XOBJDUMP = $(PREFIX1)$(OBJDUMP)
  34. #
  35. # CFLAGS
  36. #
  37. CFLAGS_MACHINE = -m728 -membedded-data
  38. CFLAGS_ENDIAN = -DLITTLE_ENDIAN
  39. CFLAGS_COPT = 
  40. -O2 -Os 
  41. -fno-writable-strings 
  42. -fstrength-reduce 
  43. -fthread-jumps 
  44. -ffixed-22 
  45. # -fforce-mem 
  46. # -fforce-addr  
  47. CFLAGS_C = 
  48. -g 
  49. -W -Wall 
  50. $(CFLAGS_COPT) 
  51. $(CFLAGS_MACHINE) $(CFLAGS_ENDIAN)
  52. CFLAGS_S = 
  53. -g1 -O2 
  54. $(CFLAGS_MACHINE) $(CFLAGS_ENDIAN)
  55. INCLUDE_DIR = 
  56.        -I. -I./h
  57. CFLAGS_MIPS = $(CFLAGS_C) $(CFLAGS_COMPILE) $(INCLUDE_DIR)
  58. CFLAGS_MIPS_S = $(CFLAGS_S) $(CFLAGS_COMPILE) $(INCLUDE_DIR)
  59. #
  60. #
  61. #
  62. PERL            = $(PREFIX1)perl 
  63. RM              = rm 
  64. CP              = cp 
  65. DUMP2BIN        = $(PREFIX1)$(OBJDUMP2BIN)
  66. ECHO            = $(PREFIX1)$(WECHO)
  67. MAKEIM          = $(PREFIX)makeim
  68. MAKEPM          = $(PREFIX)makepm
  69. FGZIP           = $(PREFIX1)fgzip
  70. FGZIP2          = $(PREFIX1)fgzip2
  71. RZIP            = $(PREFIX1)rzip
  72. BINOBJ          = $(PREFIX1)binobj
  73. FONT_PARSER     = $(PREFIX1)font_parse
  74. MODUAL          = $(PREFIX1)module
  75. XB2         = $(PREFIX1)xb2
  76. CHKSUM         = $(PREFIX1)checksum8200
  77. SRTFONTPARSE = $(PREFIX1)SrtFontParse
  78. #
  79. # perl tools
  80. #
  81. DUMP2HEX        = $(PERL) $(PERLPATH)/dump2hex.pl
  82. HEX2BIN         = $(PERL) $(PERLPATH)/hex2bin.pl --byte
  83. MAKEDEP = $(PERL) $(PERLPATH)/makedep.pl
  84. #DATE            := $(shell $(PERL) pl/date.pl)
  85. #
  86. # default rules
  87. #
  88. all:
  89. clean:
  90. @$(ECHO) "remove all generated files"
  91. @-$(RM) -f core *.o *.d *.s *.map *.dis *.obj MIPS/*.d MIPS/*.o
  92. depends: $(DEPENDS)
  93. @$(ECHO) "dependency made"
  94. #
  95. # sub-rules
  96. #
  97. MIPS:
  98. mkdir MIPS
  99. MIPS/%.o : MIPS/%.d
  100. MIPS/%.d : %.c
  101. @$(ECHO) "mkdep $*.c"
  102. @$(XCC) $(CFLAGS_MIPS) -M $< > depend.tmp
  103. @$(MAKEDEP) depend.tmp $@
  104. MIPS/%.o : %.c
  105. @$(ECHO) "compile $<"
  106. @$(XCC) $(CFLAGS_MIPS) -c -o $@ $<
  107. MIPS/%.o : %.S
  108. @$(ECHO) "assemble $<"
  109. @$(XCC) $(CFLAGS_MIPS_S) -c -o $@ $<
  110. MIPS/%.s : %.c
  111. @$(ECHO) "compile $<"
  112. @$(XCC) $(CFLAGS_MIPS) -S -fverbose-asm -o $@ $<
  113. %.dis : MIPS/%.o
  114. @$(XOBJDUMP) --source -d --syms $< > $@