📄 makefile
字号:
#*****************************************************************************## MAKEFILE - Rules for building the Internet Audio Player.## Copyright (c) 2001 Cirrus Logic, Inc.##*****************************************************************************## The location of the root directory relative to this directory.#ROOT = ..## Include the automatically generated make.inc.#-include $(ROOT)/make.inc## The name of the image that we are building.#TARGET = player## The set of subdirectories to be built in addition to the current directory.#DIRS = adpcm \ buffer \ support## The set of object files that comprise the player.#OBJS = codec.o \ dai.o \ fatfs.o \ fs.o \ init.o \ irq.o \ main.o \ mmcfs.o \ mmcsupp.o \ mmu.o \ nand.o \ nandsupp.o \ output.o \ play.o \ power.o \ smartmed.o \ time.o \ usb.o \ vectors.o## The set of library files required to build the player.#LIBS = buffer/$(CROSSTOOLS)/buffer.a \ fat/$(CROSSTOOLS)/fat.a \ ftl/$(CROSSTOOLS)/ftl.a \ src/$(CROSSTOOLS)/src.a \ support/$(CROSSTOOLS)/support.a## If AAC support is required, add the AAC interface code and object library to# the build.#ifdef SUPPORT_AACOBJS += aac.oLIBS += aac/$(CROSSTOOLS)/aaclib.aendif## If ACELP.net support is required, add the ACELP.net interface code and object# library to the build.#ifdef SUPPORT_ACELPNETOBJS += acelpnet.oLIBS += acelpnet/$(CROSSTOOLS)/common.a \ acelpnet/$(CROSSTOOLS)/lib5k.a \ acelpnet/$(CROSSTOOLS)/lib85k.a \ acelpnet/$(CROSSTOOLS)/lib16k.aendif## If Audible support is required, add the Audible code to the build.#ifdef SUPPORT_AUDIBLEOBJS += audible.oendif## If G.721 support is required, add the G.721 interface code and object library# to the build.#ifdef SUPPORT_G721OBJS += g721.oLIBS += adpcm/$(CROSSTOOLS)/adpcm.aendif## If ADC to DAC loopback test support is required, add the loopback code to the# build.#ifdef REQUIRE_LOOPBACKOBJS += loop.oendif## If MP3 support is required, add the MP3 interface code and object library to# the build.#ifdef SUPPORT_MP3OBJS += id3.o \ mp3.oLIBS += mp3/$(CROSSTOOLS)/mpeg3lib.aendif## If MS ADPCM support is required, add the MS ADPCM code to the build.#ifdef SUPPORT_MSADPCMOBJS += msadpcm.oendif## If QSound support is required, add the QSound interface code and object# library to the build.#ifdef SUPPORT_QSOUNDOBJS += qsound.oLIBS += qsound/$(CROSSTOOLS)/q2x.aendif## If voice record support is required, add the voice record object to the# build.#ifdef REQUIRE_RECORDOBJS += input.o \ record.oendif## If Rights/PD support is required, add the Rights/PD interface code and object# library to the build.#ifdef SUPPORT_RIGHTS_PDOBJS += itrust.oLIBS += itrust/$(CROSSTOOLS)/DFReader.a \ itrust/$(CROSSTOOLS)/NoHeapReader.oendif## If Spatializer support is required, add the Spatializer interface code and# object library to the build.#ifdef SUPPORT_SPATIALIZEROBJS += spatial.oLIBS += spatial/$(CROSSTOOLS)/vibe.aendif## If the spectral analyzer is required, add the spectral analyzer code to the# build.#ifdef SUPPORT_SPECTRUM_ANALYZEROBJS += spectrum.oendif## If SRS support is required, add the SRS interface code and object library to# the build.#ifdef SUPPORT_SRSOBJS += srs.oLIBS += srs/$(CROSSTOOLS)/srs_eda.aendif## If the software tone control is required, add the software tone control# object library to the build.#ifdef SOFTWARE_TONE_CONTROLLIBS += tonectrl/$(CROSSTOOLS)/tonectrl.aendif## If the two-wire interface is used, add the two-wire object library to the# build.#ifdef HwPortABCD_ClockLIBS += twowire/$(CROSSTOOLS)/twowire.aendif## If the user interface is the LCD, then add the LCD user interface code to the# build.#ifdef UI_IS_LCDOBJS += uilcd.oendif## If the user interface is the serial port, then add the serial port user# interface code to the build.#ifdef UI_IS_SERIAL_PORTOBJS += uiser.oendif## If the software volume control is required, add the software volume control# code to the build.#ifdef SOFTWARE_VOLUME_CONTROLOBJS += volume.oendif## If WMA support is required, add the WMA interface code and object library to# the build.#ifdef SUPPORT_WMAOBJS += wma.oLIBS += wma/$(CROSSTOOLS)/WMA_Dec_Emb_ARM_full_low.a \ wma/$(CROSSTOOLS)/drmd_eval.aifndef SUPPORT_ACELPNETLIBS += wma/$(CROSSTOOLS)/acelp_dummy.aendifendif## The read-only and read-write base for the image, and the area that should be# placed first in the image.#ROBASE = $(HwPlayerAddress)RWBASE = 0x00100000FIRST = vectors.o(Text)## The set of defines that should be include on the command line of the compiler# and assembler.#DEFINES = $(BOARD) $(CROSSTOOLS)## Include the common makefile definitions.#include $(ROOT)/makedefs## The default target. We will build everything in the subdirectories, as well# as the player itself.#.PHONY: defaultdefault: $(TARGET).pkg## This rule will take the player ROM and place it into a upgrade package.#$(TARGET).pkg: $(TARGET).rom ../tools/package $(TARGET).rom $(TARGET).pkg## Clean out the source tree.#clean:: @rm -f $(TARGET).pkg
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -