| [2] | 1 | ################################################################ |
|---|
| 2 | # DST HAL Makefile |
|---|
| 3 | # |
|---|
| 4 | ################################################################/ |
|---|
| 5 | |
|---|
| 6 | |
|---|
| 7 | # set TOP_DIR variable at the head of each makefile. |
|---|
| 8 | # this is "ROOT" of source tree. |
|---|
| 9 | # |
|---|
| 10 | TOP_DIR = ../.. |
|---|
| 11 | CUR_DIR = . |
|---|
| 12 | #$(warning TOP_DIR is '$(TOP_DIR)') |
|---|
| 13 | |
|---|
| 14 | |
|---|
| 15 | DST_PLATFORM_DEFINES += \ |
|---|
| 16 | CA_TYPE=NONE \ |
|---|
| 17 | NDS_LIB=NONE \ |
|---|
| 18 | XRPC_MODULES_SERVER \ |
|---|
| 19 | QC_svpldi \ |
|---|
| 20 | QC_reset \ |
|---|
| 21 | QC_qc_tests \ |
|---|
| 22 | QC_nskldi \ |
|---|
| 23 | QC_nskhal \ |
|---|
| 24 | QC_harm_tests \ |
|---|
| 25 | QC_cahdiver \ |
|---|
| 26 | SOCKET_GLUE_SERVER \ |
|---|
| 27 | MS_C_STDLIB \ |
|---|
| 28 | MS_BOARD_TYPE_SEL=BD_MST124A_D01A_S \ |
|---|
| 29 | MS_DVB_TYPE_SEL=INTERNAL_DVBT \ |
|---|
| 30 | ENABLE_DEBUG=1 \ |
|---|
| 31 | STB_ENABLE=1 \ |
|---|
| 32 | FBL_ENABLE=0 \ |
|---|
| 33 | MBOOT_LOGO_ENABLE=0 \ |
|---|
| 34 | MSOS_TYPE_ECOS \ |
|---|
| 35 | ENABLE_AESDMA \ |
|---|
| 36 | MS_DEBUG |
|---|
| 37 | |
|---|
| 38 | |
|---|
| 39 | DHL_DIR = $(TOP_DIR)/dhl |
|---|
| 40 | DLIB_DIR = $(TOP_DIR)/dlib |
|---|
| 41 | DMW_DIR = $(TOP_DIR)/dmw |
|---|
| 42 | OBJ_DIR = $(CUR_DIR)/../obj |
|---|
| 43 | #$(warning OBJ_DIR is '$(OBJ_DIR)') |
|---|
| 44 | |
|---|
| 45 | |
|---|
| 46 | TARGET = $(TOP_DIR)/obj/libdstdlib.a |
|---|
| 47 | |
|---|
| 48 | |
|---|
| 49 | # include cross-compiler definitions |
|---|
| 50 | # cafrii 090715, use our own tools.mak for easy customization. |
|---|
| 51 | include $(TOP_DIR)/build/tools.mak |
|---|
| 52 | |
|---|
| 53 | |
|---|
| 54 | CFLAGS += $(foreach i,$(DST_PLATFORM_DEFINES),-D$(i)) |
|---|
| 55 | |
|---|
| 56 | |
|---|
| 57 | # |
|---|
| 58 | # Source files |
|---|
| 59 | # |
|---|
| 60 | DLIB_SRC := # just to emphasize in source insight's syntax-highliting |
|---|
| 61 | DLIB_SRC += \ |
|---|
| 62 | $(DLIB_DIR)/src/si/DLIB_BitOp.c \ |
|---|
| 63 | $(DLIB_DIR)/src/si/DLIB_PSI_Debug.c \ |
|---|
| 64 | $(DLIB_DIR)/src/si/DLIB_PSI_Parser.c \ |
|---|
| 65 | $(DLIB_DIR)/src/si/DLIB_PSI_Monitor.c \ |
|---|
| 66 | $(DLIB_DIR)/src/si/DLIB_PSIP_Parser.c \ |
|---|
| 67 | $(DLIB_DIR)/src/si/DLIB_PSIP_Monitor.c \ |
|---|
| 68 | $(DLIB_DIR)/src/si/DLIB_PSI_Utils.c \ |
|---|
| 69 | $(DLIB_DIR)/src/si/DLIB_SDDS_Monitor.c \ |
|---|
| 70 | $(DLIB_DIR)/src/si/DLIB_SDDS_Parser.c \ |
|---|
| 71 | $(DLIB_DIR)/src/osx/OSX_Task.c \ |
|---|
| 72 | $(DLIB_DIR)/src/uiofilter/UioFilter.c \ |
|---|
| 73 | $(DLIB_DIR)/src/PNG/png.c \ |
|---|
| 74 | $(DLIB_DIR)/src/PNG/pngerror.c \ |
|---|
| 75 | $(DLIB_DIR)/src/PNG/pngget.c \ |
|---|
| 76 | $(DLIB_DIR)/src/PNG/pngmem.c \ |
|---|
| 77 | $(DLIB_DIR)/src/PNG/pngpread.c \ |
|---|
| 78 | $(DLIB_DIR)/src/PNG/pngread.c \ |
|---|
| 79 | $(DLIB_DIR)/src/PNG/pngrio.c \ |
|---|
| 80 | $(DLIB_DIR)/src/PNG/pngrtran.c \ |
|---|
| 81 | $(DLIB_DIR)/src/PNG/pngrutil.c \ |
|---|
| 82 | $(DLIB_DIR)/src/PNG/pngset.c \ |
|---|
| 83 | $(DLIB_DIR)/src/PNG/pngtrans.c \ |
|---|
| 84 | $(DLIB_DIR)/src/PNG/pngwio.c \ |
|---|
| 85 | $(DLIB_DIR)/src/PNG/pngwrite.c \ |
|---|
| 86 | $(DLIB_DIR)/src/PNG/pngwtran.c \ |
|---|
| 87 | $(DLIB_DIR)/src/PNG/pngwutil.c \ |
|---|
| 88 | $(DLIB_DIR)/src/ZLIB/adler32.c \ |
|---|
| 89 | $(DLIB_DIR)/src/ZLIB/compress.c \ |
|---|
| 90 | $(DLIB_DIR)/src/ZLIB/crc32.c \ |
|---|
| 91 | $(DLIB_DIR)/src/ZLIB/deflate.c \ |
|---|
| 92 | $(DLIB_DIR)/src/ZLIB/gzio.c \ |
|---|
| 93 | $(DLIB_DIR)/src/ZLIB/infblock.c \ |
|---|
| 94 | $(DLIB_DIR)/src/ZLIB/infcodes.c \ |
|---|
| 95 | $(DLIB_DIR)/src/ZLIB/inffast.c \ |
|---|
| 96 | $(DLIB_DIR)/src/ZLIB/inflate.c \ |
|---|
| 97 | $(DLIB_DIR)/src/ZLIB/inftrees.c \ |
|---|
| 98 | $(DLIB_DIR)/src/ZLIB/infutil.c \ |
|---|
| 99 | $(DLIB_DIR)/src/ZLIB/trees.c \ |
|---|
| 100 | $(DLIB_DIR)/src/ZLIB/uncompr.c \ |
|---|
| 101 | $(DLIB_DIR)/src/ZLIB/zutil.c |
|---|
| 102 | |
|---|
| 103 | |
|---|
| 104 | # cafrii bugfix. relative path should be based on source code. so, use absolute path. |
|---|
| 105 | SRC_DIR += \ |
|---|
| 106 | $(DLIB_DIR)/src/si \ |
|---|
| 107 | $(DLIB_DIR)/src/osx \ |
|---|
| 108 | $(DLIB_DIR)/src/uiofilter \ |
|---|
| 109 | $(DLIB_DIR)/src/PNG \ |
|---|
| 110 | $(DLIB_DIR)/src/ZLIB |
|---|
| 111 | |
|---|
| 112 | |
|---|
| 113 | INC_DIRS += \ |
|---|
| 114 | $(DHL_DIR)/src \ |
|---|
| 115 | $(DHL_DIR)/api/include \ |
|---|
| 116 | $(DMW_DIR)/src/include |
|---|
| 117 | |
|---|
| 118 | |
|---|
| 119 | # SRC_DIR °ú INC_DIRS¸¦ ±¸ºÐÇØ¼ »ç¿ëÇÑ´Ù. |
|---|
| 120 | # SRC_DIRÀº VPATH ¿¡ Ãß°¡µÇ°í, INC_DIRS´Â CFLAGS ¿¡ -Ixx ¿Í °°Àº ÇüÅ·ΠÃß°¡µÈ´Ù. |
|---|
| 121 | # |
|---|
| 122 | |
|---|
| 123 | VPATH = $(SRC_DIR) |
|---|
| 124 | |
|---|
| 125 | #vpath %.h $(VPATH) |
|---|
| 126 | #vpath %.c $(VPATH) |
|---|
| 127 | #vpath %.S $(VPATH) |
|---|
| 128 | |
|---|
| 129 | |
|---|
| 130 | CFLAGS += $(addprefix -I,$(SRC_DIR)) $(addprefix -I,$(INC_DIRS)) |
|---|
| 131 | |
|---|
| 132 | DLIB_OBJS = $(foreach DLIB_SRC, $(DLIB_SRC), $(OBJ_DIR)/$(notdir $(DLIB_SRC:.c=.o))) |
|---|
| 133 | |
|---|
| 134 | |
|---|
| 135 | # |
|---|
| 136 | # The targets |
|---|
| 137 | # |
|---|
| 138 | .PHONY : all dlib clean clean-dlib |
|---|
| 139 | |
|---|
| 140 | |
|---|
| 141 | all : dlib |
|---|
| 142 | |
|---|
| 143 | |
|---|
| 144 | |
|---|
| 145 | # skip showing cflags for simple output. |
|---|
| 146 | dlib : checkobjdir $(DLIB_OBJS) #show_cflags |
|---|
| 147 | $(Q_)$(ECHO) "++++++++ Archiving \"$(notdir $(TARGET))\" Library" |
|---|
| 148 | $(Q_)rm -f $(TARGET) |
|---|
| 149 | $(Q_)$(AR) crus $(TARGET) $(DLIB_OBJS) |
|---|
| 150 | |
|---|
| 151 | show_cflags : |
|---|
| 152 | $(Q_)$(ECHO) CFLAGS = $(filter-out -I% -D%, $(CFLAGS)) |
|---|
| 153 | |
|---|
| 154 | $(OBJ_DIR)/%.o: %.c |
|---|
| 155 | $(CC) $(CFLAGS) -c $< -o $@ |
|---|
| 156 | # $(Q_)$(CCDV) $(CC) $(CFLAGS) -c $< -o $@ |
|---|
| 157 | # dependency¸¦ Çѹø¿¡ ¸¸µé¾îÁÖÁö ¸øÇϹǷÎ, º°µµÀÇ cc ÀÛ¾÷À» ÅëÇØ .d ÆÄÀÏ »ý¼ºÇÑ´Ù. |
|---|
| 158 | # armcc °¡ »ý¼ºÇÑ rule¿¡´Â ¸ðµÎ backslash°¡ »ç¿ëµÇ¾î¼ À̸¦ slash·Î Ä¡È¯ÇØÁà¾ß ÇÔ. |
|---|
| 159 | # ccdv°¡ °É·¯Áá´ø ¸Þ½ÃÁö°¡ ¿©±â¼´Â º¸ÀÏ ¼ö ÀÖÀ½. stderr Ãâ·ÂÀº º¸ÀÌÁö ¾Êµµ·Ï ¸·ÀÚ. |
|---|
| 160 | # $(Q_)$(CC) -M $(CFLAGS) -c $< -o $@ 2> /dev/null | sed 's,\\,/,g' > $(patsubst %.o,%.d,$@) |
|---|
| 161 | |
|---|
| 162 | clean clean-dlib: |
|---|
| 163 | $(Q_)$(RM) -f $(TARGET) $(OBJ_DIR)/*.o $(OBJ_DIR)/*.d $(OBJ_DIR)/*.map $(OBJ_DIR)/*~ core $(OBJ_DIR)/*.elf $(OBJ_DIR)/*.bin $(OBJ_DIR)/*.dis $(OBJ_DIR)/*.lst |
|---|
| 164 | $(Q_)$(RM) -f $(CONFIG_TMP) |
|---|
| 165 | |
|---|
| 166 | checkobjdir: |
|---|
| 167 | $(Q_)test -d $(OBJ_DIR) || (echo "mkdir $(OBJ_DIR)"; mkdir -p $(OBJ_DIR)) |
|---|
| 168 | $(Q_)test -d $(TOP_DIR)/obj || (echo "mkdir $(TOP_DIR)/obj"; mkdir -p $(TOP_DIR)/obj) |
|---|
| 169 | |
|---|
| 170 | |
|---|
| 171 | # |
|---|
| 172 | # Include all the depends |
|---|
| 173 | # |
|---|
| 174 | -include $(OBJ_DIR)/*.d |
|---|
| 175 | |
|---|
| 176 | |
|---|