make.mk 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613
  1. ################################################################################
  2. # Automatically-generated file. Do not edit!
  3. ################################################################################
  4. -include ./objects.mk
  5. -include ./sources.mk
  6. -include ./v_makefile.mk
  7. -include $(CURRENT_BUILD_PATH)/preandpost.mk
  8. ifneq ($(strip $(SUBDIRS)),)
  9. -include $(SUBDIRS:%=%/subdir.mk)
  10. endif
  11. export LANG=en_US.UTF-8
  12. #输出所有变量
  13. .EXPORT_ALL_VARIABLES:
  14. #工具定义
  15. TEMP = C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
  16. WIND_HOME = $(PLATFORM)
  17. WIND_BASE = $(PLATFORM)/target
  18. HOST_DIR = x86-win32
  19. #工具定义
  20. HOSTPUB_PATH:=$(PLATFORM)/host/pub
  21. #如果是8548配置,且为硬浮点调用4.1.2工具链
  22. ifeq ($(CONFIG_SUB_ARCH),8548)
  23. ifeq ($(CONFIG_CPU_FLOAT),hard)
  24. TOOLS_VERSION := gcc-4.1.2
  25. LIBS_PATH := -L$(RTOS_PATH)/lib/$(TOOLS_VERSION)/ppc/$(CONFIG_SUB_ARCH)/$(CONFIG_CPU_ENDIAN)
  26. endif
  27. endif
  28. ifeq ($(TOOLS_VERSION),gcc-4.1.2)
  29. AS =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)as
  30. LD =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)ld
  31. CC =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)gcc
  32. CPP =$(CC) -E
  33. AR =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)ar
  34. NM =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)nm
  35. STRIP =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)strip
  36. OBJDUMP =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)objdump
  37. OBJCOPY =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)objcopy
  38. RANLIB =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)ranlib
  39. READELF =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)readelf
  40. STRINGS =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)strings
  41. SIZE =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)size
  42. ADDR2LINE =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/x86-win32/bin/$(CROSS_COMPILE)addr2line
  43. else
  44. AS =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)as
  45. LD =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)ld
  46. ifeq ($(IS_TEAMCC),YES)
  47. CC = $(HOSTPUB_PATH)/teamcc (TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)gcc
  48. else
  49. CC =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)gcc
  50. endif
  51. CPP =$(CC) -E
  52. AR =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)ar
  53. NM =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)nm
  54. STRIP =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)strip
  55. OBJDUMP =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)objdump
  56. OBJCOPY =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)objcopy
  57. RANLIB =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)ranlib
  58. READELF =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)readelf
  59. STRINGS =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)strings
  60. SIZE =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)size
  61. ADDR2LINE =$(TOOLS_CHAIN_PATH)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/bin/$(CROSS_COMPILE)addr2line
  62. endif
  63. MAKE=$(BIN_PATH)/make
  64. RM:=$(BIN_PATH)/rm -rf
  65. # 启动代码路径
  66. CRT0 := $(PLATFORM)/target/common/lib/$(CONFIG_CPU_TYPE)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/$(CONFIG_SUB_ARCH)/osStart.o
  67. ifneq ($(CONFIG_ARCH),arm)
  68. CRTBEGIN := $(PLATFORM)/target/common/lib/$(CONFIG_CPU_TYPE)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/$(CONFIG_SUB_ARCH)/crtbegin.o
  69. CRTEND := $(PLATFORM)/target/common/lib/$(CONFIG_CPU_TYPE)/$(TOOLS_VERSION)/$(CONFIG_ARCH)/$(CONFIG_SUB_ARCH)/crtend.o
  70. endif
  71. # linkcmds文件所在路径
  72. LINKCMDS_PATH := $(CURRENT_BUILD_PATH)
  73. IMAGEINFO_OBJ := $(CURRENT_BUILD_PATH)/imageInfo.o
  74. # default link flags setting
  75. FLAGS += -N -T $(LINKCMDS_PATH)/catlinkcmds -Map map.txt
  76. PREFLAGS += -N -T $(LINKCMDS_PATH)/preLinkCmds
  77. ifneq ($(MAKECMDGOALS),clean)
  78. ifneq ($(strip $(C_DEPS)),)
  79. -include $(C_DEPS)
  80. endif
  81. endif
  82. -include $(CURRENT_BUILD_PATH)/config_os.mk
  83. # Add inputs and outputs from these tool invocations to the build variables
  84. LIBS += -lgcc -ldconsole -lutils -lcomarch -lmoiclb -lum2oclb -lo2msym -luo2msym -lo2asym -leu2asym -lffs -lvbuild -lexptsk
  85. ifeq ($(CONFIG_MOS_CERT),Y)
  86. LIBS += -ldconsolecert
  87. else
  88. LIBS += -ldconsole
  89. endif #CONFIG_MOS_CERT
  90. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  91. LIBS += -lcoretr -lcheap -lnce2asym
  92. else
  93. ifeq ($(CONFIG_SVA_ENABLE),Y)
  94. LIBS += -lcoresv -lnce2asym
  95. else
  96. ifeq ($(CONFIG_MOS_CERT),Y)
  97. LIBS += -lcorecert
  98. else
  99. LIBS += -lcore -lnce2asym
  100. endif #CONFIG_MOS_CERT
  101. endif #CONFIG_SVA_ENABLE
  102. LIBS += -lcheap
  103. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  104. ifeq ($(CONFIG_DEADLOCK_CHECK_ENABLE),Y)
  105. LIBS += -ldeadlock
  106. endif #CONFIG_DEADLOCK_CHECK_ENABLE
  107. ifeq ($(CONFIG_POSIX_ENABLE),Y)
  108. LIBS += -lposix -lpx2asym
  109. ifeq ($(CONFIG_CORE_CFG),Y)
  110. LIBS += -lmpx2asym
  111. endif #CONFIG_CORE_CFG
  112. endif #CONFIG_POSIX_ENABLE
  113. ifeq ($(CONFIG_VXWORKS_ENABLE),Y)
  114. LIBS += -lvxworks -lvxComm -lvxAtomic -lvxhal -lvxarch -lv2asym -lcache -llinktbl -ltimer
  115. ifeq ($(CONFIG_CORE_CFG),Y)
  116. LIBS += -lvxSmp -lmv2asym
  117. endif #CONFIG_CORE_CFG
  118. ifeq ($(CONFIG_EOS_FUNC_CELR),Y)
  119. LIBS += -lvedr2asym
  120. endif #CONFIG_EOS_FUNC_CELR
  121. ifeq ($(CONFIG_RTP),Y)
  122. LIBS += -lvxRtp -lvrtp2asym
  123. endif #CONFIG_RTP
  124. endif #CONFIG_VXWORKS_ENABLE
  125. ifeq ($(CONFIG_RTP),Y)
  126. LIBS += -lruposarch -lddltbl
  127. else
  128. LIBS += -losarch
  129. endif #CONFIG_RTP
  130. ifeq ($(CONFIG_EOS_FUNCS_FLAGSET),Y)
  131. LIBS += -lflagset -lf2asym
  132. endif #CONFIG_EOS_FUNCS_FLAGSET
  133. ifeq ($(CONFIG_COM_TLSLIB),Y)
  134. LIBS += -ltls
  135. endif #CONFIG_COM_TLSLIB
  136. ifeq ($(CONFIG_EOS_FUNC_PERIOD),Y)
  137. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  138. LIBS += -lperiodtr -lpt2asym
  139. else
  140. LIBS += -lperiod -lpt2asym
  141. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  142. endif #CONFIG_EOS_FUNC_PERIOD
  143. ifeq ($(CONFIG_EOS_FUNC_CELR),Y)
  144. LIBS += -lcelr -le2asym
  145. endif #CONFIG_EOS_FUNC_CELR
  146. ifeq ($(CONFIG_AMP_MODE), Y)
  147. LIBS += -lmpipi -lschedprivate -lcamp -lmmoiclb -lmo2msym -lmo2asym -lffs
  148. else
  149. ifeq ($(CONFIG_CORE_CFG),Y)
  150. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  151. ifeq ($(CONFIG_SMT_ENABLED),Y)
  152. LIBS += -lcsmpsmttr
  153. else
  154. LIBS += -lcsmptr
  155. endif #CONFIG_SMT_ENABLED
  156. LIBS += -lmpipitr
  157. ifeq ($(CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE),Y)
  158. LIBS += -lschedprivatetr
  159. else
  160. ifeq ($(CONFIG_MP_SCHED_POLICY_GLOBAL_GPNR),Y)
  161. LIBS += -lschedglbnrtr
  162. else
  163. ifeq ($(CONFIG_SMP_SCHED_POLICY_GLOBAL_GPBP),Y)
  164. LIBS += -lschedpriglbtr
  165. else #CONFIG_MP_SCHED_POLICY_GLOBAL_GPR
  166. LIBS += -lschedglobaltr
  167. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE
  168. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_NREADY
  169. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE
  170. else
  171. ifeq ($(CONFIG_SMT_ENABLED),Y)
  172. ifeq ($(CONFIG_KKLOCKOPT_ENABLE),Y)
  173. LIBS += -lcsmpsmtopt
  174. else
  175. LIBS += -lcsmpsmt
  176. endif #CONFIG_KKLOCKOPT_ENABLE
  177. else
  178. ifeq ($(CONFIG_KKLOCKOPT_ENABLE),Y)
  179. LIBS += -lcsmpopt
  180. else
  181. ifeq ($(CONFIG_DEADLOCK_CHECK_ENABLE),Y)
  182. LIBS += -lcsmpdlock
  183. else
  184. LIBS += -lcsmp
  185. endif #CONFIG_DEADLOCK_CHECK_ENABLE
  186. endif #CONFIG_KKLOCKOPT_ENABLE
  187. endif #CONFIG_SMT_ENABLED
  188. LIBS += -lmpipi
  189. ifeq ($(CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE),Y)
  190. LIBS += -lschedprivate
  191. else
  192. ifeq ($(CONFIG_MP_SCHED_POLICY_GLOBAL_GPNR),Y)
  193. LIBS += -lschedglbnr
  194. else
  195. ifeq ($(CONFIG_SMP_SCHED_POLICY_GLOBAL_GPBP),Y)
  196. LIBS += -lschedpriglb
  197. else #CONFIG_MP_SCHED_POLICY_GLOBAL_GPR
  198. LIBS += -lschedglobal
  199. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE
  200. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_NREADY
  201. endif #CONFIG_SMP_SCHED_POLICY_GLOBAL_PRIVATE
  202. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  203. LIBS += -lmmoiclb -lmo2msym -lmo2asym -lffs
  204. endif #CONFIG_CORE_CFG
  205. endif #CONFIG_AMP_MODE
  206. ifeq ($(CONFIG_APP_ROM_BURN),Y)
  207. LIBS += -lappromstart
  208. endif #CONFIG_APP_ROM_BURN
  209. #测试支持配置
  210. ifeq ($(CONFIG_OS_TEST_SUP),Y)
  211. LIBS += -ltsup
  212. endif #CONFIG_OS_TEST_SUP
  213. ifeq ($(CONFIG_TA_ENABLE),Y)
  214. LIBS += -lmdoiclb -lmmdoiclb
  215. endif #CONFIG_TA_ENABLE
  216. ifeq ($(CONFIG_TA_ENABLE),Y)
  217. LIBS += -ltca -ltpkt
  218. ifeq ($(CONFIG_RFA_ENABLE),Y)
  219. LIBS += -lrfa
  220. endif #CONFIG_RFA_ENABLE
  221. ifeq ($(CONFIG_TSFS_ENABLE),Y)
  222. LIBS += -ltsfs
  223. endif #CONFIG_TSFS_ENABLE
  224. ifeq ($(CONFIG_VIO_ENABLE),Y)
  225. ifeq ($(CONFIG_SMT_ENABLED),Y)
  226. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  227. LIBS += -lviosmttr
  228. else
  229. LIBS += -lviosmt
  230. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  231. else
  232. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  233. LIBS += -lviotr
  234. else
  235. LIBS += -lvio
  236. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  237. endif #CONFIG_SMT_ENABLED
  238. endif #CONFIG_VIO_ENABLE
  239. ifeq ($(CONFIG_RIA_ENABLE),Y)
  240. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  241. LIBS += -lriatr
  242. else
  243. LIBS += -lria
  244. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  245. endif #CONFIG_RIA_ENABLE
  246. ifeq ($(CONFIG_LA_ENABLE),Y)
  247. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  248. LIBS += -llatr
  249. ifeq ($(CONFIG_RTP),Y)
  250. LIBS += -lrlatr
  251. endif #CONFIG_RTP
  252. else
  253. LIBS += -lla
  254. ifeq ($(CONFIG_RTP),Y)
  255. LIBS += -lrla
  256. endif #CONFIG_RTP
  257. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  258. endif #CONFIG_LA_ENABLE
  259. ifeq ($(CONFIG_HOST_SHELL_ENABLE),Y)
  260. LIBS += -lsa -lsaarch
  261. endif #CONFIG_HOST_SHELL_ENABLE
  262. ifeq ($(CONFIG_TARGETSHELL_ENABLE),Y)
  263. LIBS += -ltsh -ltsharch -ltsh2asym
  264. endif #CONFIG_TARGETSHELL_ENABLE
  265. ifeq ($(CONFIG_SVA_ENABLE),Y)
  266. ifeq ($(CONFIG_SMT_ENABLED),Y)
  267. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  268. LIBS += -lsvasmttr
  269. else
  270. LIBS += -lsvasmt
  271. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  272. else
  273. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  274. LIBS += -lsvatr
  275. else
  276. LIBS += -lsva
  277. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  278. endif #CONFIG_SMT_ENABLED
  279. LIBS += -lsvakp
  280. endif #CONFIG_SVA_ENABLE
  281. ifeq ($(CONFIG_DEBUG_AGENT),Y)
  282. LIBS += -lda -ldaarch -ltda
  283. ifeq ($(CONFIG_RTP),Y)
  284. LIBS += -lrda
  285. endif #CONFIG_RTP
  286. endif #CONFIG_DEBUG_AGENT
  287. ifeq ($(CONFIG_TIMESCOPE_ENABLE),Y)
  288. ifeq ($(CONFIG_RTP),Y)
  289. LIBS += -lrtpscope
  290. else
  291. LIBS += -lsscope
  292. endif #CONFIG_RTP
  293. LIBS += -ls2asym
  294. endif #CONFIG_TIMESCOPE_ENABLE
  295. ifeq ($(CONFIG_MA_ENABLE),Y)
  296. LIBS += -lmsa
  297. ifeq ($(CONFIG_RTP),Y)
  298. LIBS += -lrtpamsa
  299. endif #CONFIG_RTP
  300. endif #CONFIG_MA_ENABLE
  301. endif #CONFIG_TA_ENABLE
  302. ifeq ($(CONFIG_FAT_TABLE),Y)
  303. LIBS += -lfatfs
  304. endif #CONFIG_FAT_TABLE
  305. ifeq ($(CONFIG_REL_TABLE),Y)
  306. LIBS += -lrelfs -lflashdm
  307. endif #CONFIG_REL_TABLE
  308. ifeq ($(CONFIG_DEVICE_MANAGMENT),Y)
  309. LIBS += -ldm -ldm2asym
  310. endif #CONFIG_DEVICE_MANAGMENT
  311. ifeq ($(CONFIG_KLOG_ENABLE),Y)
  312. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  313. LIBS += -llogtr -llog2asym
  314. else
  315. LIBS += -llog -llog2asym
  316. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  317. endif #CONFIG_KLOG_ENABLE
  318. ifeq ($(CONFIG_TIMER_ENABLE),Y)
  319. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  320. LIBS += -ltimertr
  321. else
  322. ifeq ($(CONFIG_SVA_ENABLE),Y)
  323. LIBS += -ltimersv
  324. else
  325. LIBS += -ltimer
  326. endif #CONFIG_SVA_ENABLE
  327. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  328. LIBS += -ltimer2asym
  329. endif #CONFIG_TIMER_ENABLE
  330. ifeq ($(CONFIG_TASKVAR_ENABLE),Y)
  331. LIBS += -ltvars -ltvar2asym
  332. endif #CONFIG_TASKVAR_ENABLE
  333. ifeq ($(CONFIG_CACHE_ENABLE),Y)
  334. LIBS += -lcache -lcache2asym
  335. endif #CONFIG_CACHE_ENABLE
  336. ifeq ($(CONFIG_KSIGNAL_ENABLE),Y)
  337. ifeq ($(CONFIG_RTP),Y)
  338. LIBS += -lsignalrup -lsig
  339. else
  340. LIBS += -lsignal
  341. endif #CONFIG_RTP
  342. LIBS += -lsig2asym
  343. endif #CONFIG_KSIGNAL_ENABLE
  344. ifeq ($(CONFIG_HEAPINFO_ENABLE),Y)
  345. LIBS += -lminfo -lminfo2asym
  346. endif #CONFIG_HEAPINFO_ENABLE
  347. ifeq ($(CONFIG_KINFO_ENABLE),Y)
  348. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  349. LIBS += -lkinfotr
  350. else
  351. LIBS += -lkinfo
  352. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  353. LIBS += -lkinfo2asym
  354. endif #CONFIG_KINFO_ENABLE
  355. ifeq ($(CONFIG_KACIF_ENABLE),Y)
  356. LIBS += -lacapi -lac2asym
  357. endif #CONFIG_KACIF_ENABLE
  358. ifeq ($(CONFIG_VRMEM_ENABLE),Y)
  359. LIBS += -lpgpm -lvmm2asym
  360. endif #CONFIG_VRMEM_ENABLE
  361. ifeq ($(CONFIG_MPART_ENABLE),Y)
  362. LIBS += -lmpart -lmpart2asym
  363. endif #CONFIG_MPART_ENABLE
  364. ifeq ($(CONFIG_KRWSEM_ENABLE),Y)
  365. LIBS += -lrwsem -lrwsem2asym
  366. endif #CONFIG_KRWSEM_ENABLE
  367. ifeq ($(CONFIG_DKM_ENABLE),Y)
  368. LIBS += -ldkm -ldkmarch -ldkm2asym
  369. endif #CONFIG_DKM_ENABLE
  370. ifeq ($(CONFIG_KCORE_DBG_SUP_ENABLE),Y)
  371. ifeq ($(CONFIG_KCORE_DBG_PRINTBANDCORE),Y)
  372. LIBS += -ldsio
  373. endif #CONFIG_KCORE_DBG_PRINTBANDCORE
  374. endif #CONFIG_KCORE_DBG_SUP_ENABLE
  375. ifeq ($(CONFIG_C_LIB),Y)
  376. LIBS += -lclib -lm -lmatharch
  377. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  378. LIBS += -lccsuptr
  379. else
  380. LIBS += -lccsup
  381. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  382. ifeq ($(CONFIG_MOS_CERT),Y)
  383. LIBS += -lrtlsupcert
  384. else
  385. LIBS += -lrtlsup
  386. endif #CONFIG_MOS_CERT
  387. else
  388. LIBS += -lutilscsup
  389. endif #CONFIG_C_LIB
  390. ifeq ($(CONFIG_RTP),Y)
  391. ifeq ($(CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE),Y)
  392. LIBS += -lrtptr -lmriclb -lelf -lrtp2asym
  393. else
  394. LIBS += -lrtp -lmriclb -lelf -lrtp2asym
  395. endif #CONFIG_KDBG_MCORE_LOCKTRACE_ENABLE
  396. endif #CONFIG_RTP
  397. ifeq ($(CONFIG_FFSB_ENABLE),Y)
  398. LIBS += -lffs
  399. endif #CONFIG_FFSB_ENABLE
  400. ifeq ($(CONFIG_RNGBUF_ENABLE),Y)
  401. LIBS += -lrngbuf
  402. endif #CONFIG_RNGBUF_ENABLE
  403. ifeq ($(CONFIG_DDLINK_ENABLE),Y)
  404. LIBS += -lddltbl
  405. endif #CONFIG_DDLINK_ENABLE
  406. ifeq ($(CONFIG_DLLINK_ENABLE),Y)
  407. LIBS += -llinktbl
  408. endif #CONFIG_DLLINK_ENABLE
  409. ifeq ($(CONFIG_SDLINK_ENABLE),Y)
  410. LIBS += -lsdltbl
  411. endif #CONFIG_SDLINK_ENABLE
  412. ifeq ($(CONFIG_DRIVERS_STORAGE_RAMDISK_TABLE),Y)
  413. LIBS += -lramdisk
  414. endif #CONFIG_DRIVERS_STORAGE_RAMDISK_TABLE
  415. ifeq ($(CONFIG_SELECT_ENABLE),Y)
  416. LIBS += -lselect -lselect2asym
  417. endif #CONFIG_SELECT_ENABLE
  418. ifeq ($(CONFIG_PSTY_ENABLE),Y)
  419. LIBS += -lpsty
  420. endif #CONFIG_PTY_ENABLE
  421. ifeq ($(CONFIG_TIMEMONIROT_ENABLE),Y)
  422. LIBS += -lmostm
  423. endif #CONFIG_TIMEMONIROT_ENABLE
  424. ifeq ($(CONFIG_IPNET_ENABLE),Y)
  425. LIBS += -lipnet -liport -lipnet2asym
  426. ifeq ($(CONFIG_TELNETD),Y)
  427. LIBS += -ltelnet
  428. endif #CONFIG_TELNETD
  429. ifeq ($(CONFIG_RTP),Y)
  430. LIBS += -lnetsyscall
  431. endif #CONFIG_RTP
  432. endif #CONFIG_IPNET_ENABLE
  433. ifeq ($(CONFIG_MIPC_ENABLE),Y)
  434. LIBS += -lmipc
  435. endif #CONFIG_MIPC_ENABLE
  436. ifeq ($(CONFIG_COM_VSIP),Y)
  437. LIBS += -ljvsip
  438. endif #CONFIG_COM_VSIP
  439. ifeq ($(CONFIG_COREDUMP_ENABLE),Y)
  440. LIBS += -lcdump
  441. endif #CONFIG_COREDUMP_ENABLE
  442. #设备配置
  443. ifeq ($(CONFIG_DRIVERS_PCI),Y)
  444. LIBS += -lpciCfgLib -lpci2asym
  445. endif #CONFIG_DRIVERS_PCI
  446. # All Target
  447. all: app
  448. app: $(EXECUTABLES).$(TARGET_EXT)
  449. clean:
  450. -${RM} ImgAttr.info
  451. -${RM} linkcmds
  452. -${RM} catlinkcmds
  453. -${RM} map.txt
  454. -${RM} presize.txt
  455. -${RM} checkname.o
  456. -${RM} $(EXECUTABLES).bin
  457. -$(RM) $(OBJS) $(ARCHIVES) $(C_DEPS) $(EXECUTABLES).$(TARGET_EXT)
  458. -@$(BIN_PATH)/echo ' '
  459. ${IMAGEINFO_OBJ}:$(CURRENT_BUILD_PATH)/imageInfo.c
  460. ${CC} -I$(PLATFORM)/target/common/include -D${CONFIG_ARCH} -O0 -g -Wall -c -fno-builtin -mhard-float -mfpu=vfpv3 -fno-short-enums -o $@ $<
  461. # Tool invocations
  462. $(EXECUTABLES).elf : $(ARCHIVES) ${IMAGEINFO_OBJ}
  463. @$(BIN_PATH)/echo 'Building target: $@'
  464. @$(BIN_PATH)/echo 'Invoking: GCC C Linker'
  465. $(LD) $(LIBS_PATH) -L$(LIB_PATH) $(PREFLAGS) $(CRT0) ${IMAGEINFO_OBJ} $(CRTBEGIN) $(USER_OBJS) --start-group $< $(LIBS) --end-group $(CRTEND) -o $@
  466. $(SIZE) -A -x $@ 1>presize.txt
  467. $(TRACE_FLAG)${BIN_PATH}/gawk -f ${PLATFORM}/host/${RTOS}/script/parse.awk presize.txt > linkcmds
  468. $(RM) -rf presize.txt catlinkcmds $@
  469. $(TRACE_FLAG)${BIN_PATH}/cat linkcmds _linkcmds>catlinkcmds
  470. $(LD) $(LIBS_PATH) -L$(LIB_PATH) $(FLAGS) $(CRT0) ${IMAGEINFO_OBJ} $(CRTBEGIN) $(USER_OBJS) --start-group $< $(LIBS) --end-group $(CRTEND) -o $@
  471. $(JAVA) -jar $(PLATFORM)/host/java/ElfSectionCheck.jar $@
  472. $(OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .stab -R .stabstr -R .pbss $(EXECUTABLES).elf $(EXECUTABLES).bin
  473. @$(BIN_PATH)/echo 'Finished building target: $@'
  474. @$(BIN_PATH)/echo ' '
  475. $(EXECUTABLES).bin : $(EXECUTABLES).elf
  476. @$(BIN_PATH)/echo 'Building target: $@'
  477. $(OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .stab -R .stabstr $< $@
  478. @$(BIN_PATH)/echo 'Finished building target: $@'
  479. @$(BIN_PATH)/echo ' '
  480. $(EXECUTABLES).hex : $(EXECUTABLES).elf
  481. @$(BIN_PATH)/echo 'Building target: $@'
  482. $(OBJCOPY) -O ihex --strip-unneeded -R .note -R .comment -R .stab -R .stabstr $< $@
  483. @$(BIN_PATH)/echo 'Finished building target: $@'
  484. @$(BIN_PATH)/echo ' '
  485. $(EXECUTABLES).exe : $(EXECUTABLES).elf
  486. $(BIN_PATH)/echo 'Building target: $@'
  487. $(OBJCOPY) -O a.out-i386 --strip-debug -R .note -R .comment -R .stab -R .stabstr -R .jcr -R .rodata.str1.4 -R .rodata.str1.1 $< $@
  488. @$(BIN_PATH)/echo 'Finished building target: $@'
  489. @$(BIN_PATH)/echo ' '
  490. $(EXECUTABLES).srec : $(EXECUTABLES).elf
  491. @$(BIN_PATH)/echo 'Building target: $@'
  492. $(OBJCOPY) -O srec --strip-unneeded -R .note -R .comment -R .stab -R .stabstr $< $@
  493. @$(BIN_PATH)/echo 'Finished building target: $@'
  494. @$(BIN_PATH)/echo ' '
  495. $(ARCHIVES): $(OBJS)
  496. @$(BIN_PATH)/echo 'Invoking: GCC Archiver'
  497. @$(RM) -rf $@
  498. $(AR) -rc $(ARCHIVES) @prjObjs.lst
  499. $(BIN_PATH)/echo 'Finished building: $@'
  500. @$(BIN_PATH)/echo ' '
  501. compile_source:$(OBJS)
  502. clean_source:
  503. unexport C_UPPER_SRCS
  504. unexport C_SRCS
  505. unexport S_UPPER_SRCS
  506. unexport CPP_SRCS
  507. unexport O_SRCS
  508. unexport ASM_SRCS
  509. unexport S_SRCS
  510. unexport CXX_SRCS
  511. unexport CC_SRCS
  512. unexport OBJ_SRCS
  513. unexport OBJS
  514. unexport ARCHIVES
  515. unexport C_DEPS
  516. unexport EXECUTABLES
  517. unexport MAKEFILE_LIST
  518. .PHONY: all clean dependents
  519. .SECONDARY: