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

DVD

开发平台:

C/C++

  1. #
  2. # Makefile
  3. #
  4. # DVD
  5. #
  6. PATH := $(PATH) .
  7. VPATH = MIPS
  8. .SUFFIXES:
  9. .PHONY: force oldold
  10. sinclude Makefile.utl
  11. ENDIAN          := LITTLE
  12. #ENDIAN         := BIG
  13. ifeq "$(ENDIAN)" "LITTLE"
  14.   TARGET        = mipsel-elf
  15.   ENDIAN        = 
  16.   LIBDIR        = mipsel-elf
  17.   GOAL          = romL.obj
  18.   LDSCRIPT = dvdL.ld
  19.   CFLAGS_ENDIAN = -DLITTLE_ENDIAN
  20. else
  21.   TARGET        = mips-ecoff
  22.   ENDIAN        =
  23.   LIBDIR        = ECOFF
  24.   GOAL          = romB.obj
  25.   LDSCRIPT = dvdB.ld
  26.   CFLAGS_ENDIAN = -DBIG_ENDIAN
  27. endif
  28. CC = gcc
  29. AS = as
  30. LD = ld
  31. OBJDUMP = objdump
  32. #PREFIX = $(TARGET)-
  33. INIT0 = MIPS/init0.o
  34. ROMINIT0 = MIPS/rominit.o
  35. ROMFINIT0 = MIPS/romfinit.o
  36. CRT0 = MIPS/crt0.o
  37. XCC = $(PREFIX)gcc $(ENDIAN)
  38. XAS = $(PREFIX)as
  39. XLD = $(PREFIX)ld
  40. XAR = $(PREFIX)ar
  41. XOBJDUMP = $(PREFIX)objdump $(ENDIAN)
  42. INCLUDE_DIR = -I. -Iemu/ -Inav/ -Iauth/
  43. #BITSTREAM = AMGframe
  44. BITSTREAM = sonyct3
  45. CFLAGS_MACHINE = -mlx4080 -msoft-float -membedded-data
  46. CFLAGS_C = 
  47. -g 
  48. -Os 
  49. -fno-writable-strings 
  50. -fstrength-reduce 
  51. -fthread-jumps 
  52. -W -Wall 
  53. $(INCLUDE_DIR)
  54. # -fforce-mem 
  55. # -fforce-addr  
  56. CFLAGS_S = 
  57. -g1 
  58. -O2 
  59. $(INCLUDE_DIR)
  60. #
  61. # generic flags
  62. #
  63. #
  64. #  __EMU__ / __BORLANDC__
  65. #  used to define atapi interface
  66. #
  67. #  VIDEO_ONLY
  68. #  disable audio functionality
  69. #
  70. #  SIMULATION/EMULATION/FINALSYS
  71. #  setup environment according to debugging configuration
  72. #
  73. #  SIMULATION_FAST
  74. #  accelerate some parameter during SIMULATION (or testing)
  75. #
  76. CFLAGS_SUPPORT =
  77. CFLAGS_WORK = -D__EMU__ -DFINALSYS
  78. #CFLAGS_WORK = -D__EMU__ -DVIDEO_ONLY -DEMULATION
  79. CFLAGS_COMPILE = 
  80. -DBIT=$(BITSTREAM) 
  81. $(CFLAGS_SUPPORT) $(CFLAGS_WORK) $(CFLAGS_ENDIAN)
  82. CFLAGS_MIPS = $(CFLAGS_MACHINE) $(CFLAGS_C) $(CFLAGS_COMPILE)
  83. CFLAGS_MIPS_S = $(CFLAGS_MACHINE) $(CFLAGS_S) $(CFLAGS_COMPILE)
  84. LIBRARIES = libdrv.a libdsp3.a libmon.a libsrc.a
  85. LDFLAGS_LIB = -ldrv -ldsp3 -lmon -lbits -lnav -latapi -lauth -lkern -lm -lstd -lchinese -lsrc
  86. LDFLAGS = -nostartfiles -T $(LDSCRIPT) -L. -L$(LIBDIR) $(LDFLAGS_LIB) --cref 
  87. # -Wl,--sort-common
  88. #cyue: HDD ADDED
  89. SOURCES_HDD = 
  90. hdd_play.c
  91. SOURCES_AUD = 
  92. dsp3.c
  93. audif.c
  94. SOURCES_TV = 
  95. line21.c
  96. SOURCES_IOP = 
  97. gpio.c 
  98. iop.c 
  99. auddac.c 
  100. audctrl.c 
  101. SOURCES_NES = NESInit.c
  102. SOURCES_KERN = 
  103.         kinf.c 
  104.         kernel.c 
  105. avd.c 
  106. SOURCES = 
  107. sysmain.c 
  108. sysmain2.c
  109. flash.c 
  110. sup.c 
  111. title.c 
  112. databuf.c 
  113. mainproc.c 
  114. macro.c 
  115. reset.c 
  116. sleep.c 
  117. uart.c
  118. osd1.c 
  119. ir.c 
  120. emuio.c 
  121. util.c
  122. font_offset.c
  123. vfd.c
  124. sound.c
  125. read.c
  126. osdutil.c
  127. prog.c
  128. setup.c
  129. disp.c
  130. book.c
  131. search.c
  132. ircmd.c
  133. polling.c
  134. v11.c
  135. preview.c
  136. safe.c
  137. fsGUI.c
  138. fsGUI_util.c
  139. fsNAV.c
  140. fsTXT.c
  141. ThumbNav.c
  142. riscint1.c
  143. riscint2.c
  144. riscint3.c
  145. jpegtest.c
  146. score.c
  147. osdfont_decompress.c
  148. nav_util2.c 
  149.         ircode.c
  150.         radio.c
  151.         ampvol.c
  152. $(SOURCES_AUD) 
  153. $(SOURCES_IOP) 
  154. $(SOURCES_HDD)
  155. $(SOURCES_NES) 
  156. $(SOURCES_KERN)
  157. # $(SOURCES_TV)
  158. SOURCES_S =
  159. DEPENDS_C = 
  160. $(addprefix MIPS/,$(SOURCES:.c=.d))
  161. DEPENDS_S = 
  162. $(addprefix MIPS/,$(SOURCES_S:.S=.d))
  163. DEPENDS = $(DEPENDS_C) $(DEPENDS_S)
  164. OBJS = $(DEPENDS:.d=.o)
  165. ASMS = $(DEPENDS:.d=.s))
  166. DISASMS = $(DEPENDS:.d=.dis))
  167. .PHONY: all clean depends bak debug tar
  168. #
  169. # main target
  170. #
  171. all: $(GOAL)
  172. @$(ECHO) "all made"
  173. copy romL.bin rom.bin
  174. checksum
  175. clean:
  176. @$(ECHO) "remove all generated files"
  177. @-$(RM) -f core *.o *.d *.map *.dis *.obj romL.* MIPS/*
  178. @cd clib; make clean
  179. @cd kernel; make clean
  180. @cd emu; make clean
  181. @cd nav; make clean
  182. depends: $(DEPENDS)
  183. @$(ECHO) "dependency made"
  184. #
  185. # LIBRARY
  186. # libdrv.a
  187. #
  188. SOURCES_DRVLIB = 
  189. adv7176.c 
  190. sp711.c 
  191. # sp721.c 
  192. cs8403a.c
  193. DEPS_DRVLIB = $(addprefix MIPS/,$(SOURCES_DRVLIB:.c=.d))
  194. OBJS_DRVLIB = $(DEPS_DRVLIB:.d=.o)
  195. libdrv.a : $(OBJS_DRVLIB)
  196. $(XAR) -cr $@ $(OBJS_DRVLIB)
  197. sinclude $(DEPS_DRVLIB)
  198. #
  199. # LIBRARY
  200. # libmon.a
  201. #
  202. SOURCES_MONLIB = 
  203. monitor.c 
  204. DEPS_MONLIB = $(addprefix MIPS/,$(SOURCES_MONLIB:.c=.d))
  205. OBJS_MONLIB = $(DEPS_MONLIB:.d=.o)
  206. libmon.a : $(OBJS_MONLIB)
  207. $(XAR) -cr $@ $(OBJS_MONLIB)
  208. sinclude $(DEPS_MONLIB)
  209. #
  210. # LIBRARY
  211. # libdsp3.a
  212. #
  213. SOURCES_DSP3LIB = 
  214.         dsp3jpg.c 
  215.         dsp3nes.c 
  216. dsp3ac3.c 
  217. dsp3dts.c 
  218. dsp3cd.c 
  219. dsp3mp3.c 
  220. dsp3mp3p.c
  221. dsp3mp3d.c
  222. dsp3lpcm.c 
  223.         dsp3spdif.c 
  224.         dsp3dtscd.c 
  225. DEPS_DSP3LIB = $(addprefix MIPS/,$(SOURCES_DSP3LIB:.c=.d))
  226. OBJS_DSP3LIB = $(DEPS_DSP3LIB:.d=.o)
  227. libdsp3.a : $(OBJS_DSP3LIB)
  228. $(XAR) -cr $@ $(OBJS_DSP3LIB)
  229. sinclude $(DEPS_DSP3LIB)
  230. #
  231. #
  232. #
  233. $(GOAL): %.obj: $(LIBRARIES) $(OBJS) $(INIT0) $(CRT0) $(ROMINIT0) $(LDSCRIPT)
  234. @$(ECHO) "linking.."
  235. @$(XCC) $(CFLAGS_MIPS) -o $@ $(INIT0) $(OBJS) $(CRT0) $(ROMINIT0) $(LDFLAGS) -Wl,-Map,$*.map
  236. @$(ECHO) "dumping.."
  237. @$(XOBJDUMP) -j .rom1 -s $@ > $*.dump
  238. @$(XOBJDUMP) -j .ram1 -s $@ >> $*.dump
  239. @$(XOBJDUMP) -j .rom2 -s $@ >> $*.dump
  240. #=======================================================================
  241. # @$(XOBJDUMP) -j .ramflash -s $@ >> $*.dump
  242. # @$(ECHO) "packaging.."
  243. # @$(DUMP2BIN) $*.dump $*.bin
  244. #=======================================================================
  245. # @$(XOBJDUMP) -j .ramflash -s $@ > flash.dump
  246. @$(XOBJDUMP) -j .drv_dvd -s $@ > dvd.dump
  247. @$(XOBJDUMP) -j .ramdrv1 -s $@ > mpeg.dump
  248. @$(XOBJDUMP) -j .ramdrv2 -s $@ > jpeg.dump
  249. @$(XOBJDUMP) -j .drv_ap1 -s $@ > ap1.dump
  250. @$(XOBJDUMP) -j .drv_cdrom -s $@ > cdrom.dump
  251. #=======================================================================
  252. # @$(DUMP2BIN) flash.dump flash.bin
  253. # @$ fgzip -9 -c flash.bin > flash.bz
  254. # @$ rzip flash.bz flash.rz
  255. @$(DUMP2BIN) dvd.dump dvd.bin
  256. @$ fgzip -9 -c dvd.bin > dvd.bz
  257. @$ rzip dvd.bz dvd.rz
  258. @$(DUMP2BIN) mpeg.dump mpeg.bin
  259. @$ fgzip -9 -c mpeg.bin > mpeg.bz
  260. @$ rzip mpeg.bz mpeg.rz
  261. @$(DUMP2BIN) jpeg.dump jpeg.bin
  262. @$ fgzip -9 -c jpeg.bin > jpeg.bz
  263. @$ rzip jpeg.bz jpeg.rz
  264. @$(DUMP2BIN) ap1.dump ap1.bin
  265. @$ fgzip -9 -c ap1.bin > ap1.bz
  266. @$ rzip ap1.bz ap1.rz
  267. @$(DUMP2BIN) cdrom.dump cdrom.bin
  268. @$ fgzip -9 -c cdrom.bin > cdrom.bz
  269. @$ rzip cdrom.bz cdrom.rz
  270. #=======================================================================
  271. @$(ECHO) "packaging.."
  272. @$(DUMP2BIN) $*.dump $*.bin
  273. #=======================================================================
  274. @$ module $*.bin dvd.rz mpeg.rz jpeg.rz ap1.rz cdrom.rz
  275. %.dis : %.obj
  276. @$(ECHO) "disassembling.."
  277. @$(XOBJDUMP) --disassemble -j .rom1 --source $< > $@
  278. MIPS:
  279. mkdir MIPS
  280. MIPS/%.d : %.c
  281. @$(ECHO) "mkdep $<"
  282. @$(XCC) $(CFLAGS_MIPS) -M $< > depend.tmp
  283. @$(MAKEDEP) depend.tmp $@
  284. MIPS/%.o : MIPS/%.d
  285. MIPS/%.o : %.c
  286. @$(ECHO) "compile $<"
  287. @$(XCC) $(CFLAGS_MIPS) -c -o $@ $<
  288. MIPS/%.o : %.S
  289. @$(ECHO) "compile $<"
  290. @$(XCC) $(CFLAGS_MIPS_S) -c -o $@ $<
  291. MIPS/%.s : %.c
  292. @$(ECHO) "compile $<"
  293. @$(XCC) $(CFLAGS_MIPS) -S -fverbose-asm -o $@ $<
  294. MIPS/%.dis : %.o
  295. @$(XOBJDUMP) --source -d --syms $< > $@
  296. #
  297. # special commands.
  298. #
  299. MIPS/init0.o : user_init.h
  300. #ioprom.inc: ioprom.bin
  301. # binobj IOPcode ioprom.bin > ioprom.inc
  302. DSP3BIN = 
  303. dsp3dts.bin
  304. dsp3mp3.bin
  305. dsp3mp3p.bin 
  306. dsp3mp3d.bin 
  307. dsp3cd.bin
  308. dsp3lpcm.bin
  309. dsp3ac3.bin
  310. dsp3jpg.bin
  311. dsp3nes.bin
  312. dsp3spdif.bin
  313. dsp3dtscd.bin
  314. DSP3INC = $(DSP3BIN:.bin=.inc)
  315. DSP3_C = $(DSP3BIN:.bin=.c)
  316. $(DSP3_C) : %.c : %.inc
  317. $(DSP3INC) : %.inc : %.bin
  318. @fgzip -9 -f $<
  319. @rzip $<.gz MIPS/$*.rz
  320. @binobj DSPcode MIPS/$*.rz $@
  321. MIPS/dsp3ac3.bin: dsp3rom.d16.ac3
  322. makeim -b $< $@
  323. MIPS/dsp3dts.bin: dsp3rom.d16.dts
  324. makeim -b $< $@
  325. MIPS/dsp3mp3.bin: dsp3rom.d16.mp3
  326. makeim -b $< $@
  327. MIPS/dsp3cd.bin: dsp3rom.d16.cd
  328. makeim -b $< $@
  329. MIPS/dsp3lpcm.bin: dsp3rom.d16.lpcm
  330. makeim -b $< $@
  331. MIPS/dsp3jpg.bin: dsp3rom.d16.jp
  332. makeim -b $< $@
  333. MIPS/dsp3nes.bin: dsp3rom.d16.nes
  334. makeim -b $< $@
  335. MIPS/dsp3spdif.bin: dsp3rom.d16.spdif
  336. makeim -b $< $@
  337. MIPS/dsp3dtscd.bin: dsp3rom.d16.dtscd
  338. makeim -b $< $@
  339. MIPS/font_offset.d : osdfont.inc
  340. MIPS/font_offset.o : font_offset.c font.c osdfont.inc
  341. @$(ECHO) "compile $<"
  342. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  343. MIPS/osdfont_decompress.d : osdfont.inc
  344. MIPS/osdfont_decompress.o : osdfont_decompress.c font.c font_offset.c osdfont.inc
  345. @$(ECHO) "compile $<"
  346. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  347. osdfont.inc: osdfont.bin
  348. @fgzip -9 -f $<
  349. @rzip $<.gz MIPS/$*.rz
  350. @binobj OSDfontbin MIPS/$*.rz osdfont.inc
  351. osdfont.bin: user_init.h font_ori.c font_traditional.c font_konka.c
  352. font_parse
  353. dsp3pm.c: dsp3pm.d16
  354. makepm $< $@
  355. MIPS/dsp3ac3.d : dsp3ac3.inc
  356. MIPS/dsp3dts.d : dsp3dts.inc
  357. MIPS/dsp3mp3.d : dsp3mp3.inc
  358. MIPS/dsp3cd.d : dsp3cd.inc
  359. MIPS/dsp3lpcm.d : dsp3lpcm.inc
  360. MIPS/dsp3jpg.d : dsp3jpg.inc
  361. MIPS/dsp3nes.d : dsp3nes.inc
  362. MIPS/dsp3spdif.d : dsp3spdif.inc
  363. MIPS/dsp3ac3.o : dsp3ac3.c dsp3ac3.inc
  364. @$(ECHO) "compile $<"
  365. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  366. MIPS/dsp3dts.o : dsp3dts.c dsp3dts.inc
  367. @$(ECHO) "compile $<"
  368. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  369. MIPS/dsp3mp3.o : dsp3mp3.c dsp3mp3.inc
  370. @$(ECHO) "compile $<"
  371. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  372. MIPS/dsp3cd.o : dsp3cd.c dsp3cd.inc
  373. @$(ECHO) "compile $<"
  374. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  375. MIPS/dsp3lpcm.o : dsp3lpcm.c dsp3lpcm.inc
  376. @$(ECHO) "compile $<"
  377. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  378. MIPS/dsp3jpg.o : dsp3jpg.c dsp3jpg.inc
  379. @$(ECHO) "compile $<"
  380. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  381. MIPS/dsp3nes.o : dsp3nes.c dsp3nes.inc
  382. @$(ECHO) "compile $<"
  383. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  384. MIPS/dsp3spdif.o : dsp3spdif.c dsp3spdif.inc
  385. @$(ECHO) "compile $<"
  386. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  387. MIPS/dsp3dtscd.o : dsp3dtscd.c dsp3dtscd.inc
  388. @$(ECHO) "compile $<"
  389. @$(XCC) $(CFLAGS_MIPS) -O0 -g0 -c -o $@ $<
  390. ifneq ($(MAKECMDGOALS),clean)
  391. ifneq ($(MAKECMDGOALS),tar)
  392. ifneq ($(MAKECMDGOALS),bak)
  393. sinclude $(DEPENDS)
  394. endif
  395. endif
  396. endif