Ignore:
Timestamp:
Jun 26, 2017, 5:33:59 PM (7 years ago)
Author:
ertl-honda
Message:

コンフィギュレータをruby版に変更

File:
1 edited

Legend:

Unmodified
Added
Removed
  • asp3_wo_tecs/trunk/sample/Makefile

    r302 r304  
    192192#  ターゲットファイル(複数を同時に選択してはならない)
    193193#
    194 all: $(OBJFILE)
    195 #all: $(OBJNAME).bin
    196 #all: $(OBJNAME).srec
     194.PHONY: all
     195all: check
     196#all: check $(OBJNAME).bin
     197#all: check $(OBJNAME).srec
    197198
    198199##### 以下は編集しないこと #####
     
    201202#  コンフィギュレータに関する定義
    202203#
    203 CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.csv \
    204                         --cfg1-def-table $(SRCDIR)/kernel/kernel_def.csv $(CFG_TABS)
     204CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
     205                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
    205206CFG_ASMOBJS := $(CFG_ASMOBJS)
    206207CFG_COBJS := kernel_cfg.o $(CFG_COBJS)
     
    243244        OFFSET_H = offset.h
    244245endif
    245 ifndef OFFSET_TF
    246         OFFSET_TF := $(TARGETDIR)/target_offset.tf
    247 endif
    248 ifndef TARGET_TF
    249         TARGET_TF := $(TARGETDIR)/target.tf
    250 endif
    251 ifndef TARGET_CHECK_TF
    252         TARGET_CHECK_TF := $(TARGETDIR)/target_check.tf
     246ifndef TARGET_OFFSET_TRB
     247        TARGET_OFFSET_TRB := $(TARGETDIR)/target_offset.trb
     248endif
     249ifndef TARGET_KERNEL_TRB
     250        TARGET_KERNEL_TRB := $(TARGETDIR)/target_kernel.trb
     251endif
     252ifndef TARGET_CHECK_TRB
     253        TARGET_CHECK_TRB := $(TARGETDIR)/target_check.trb
     254endif
     255ifndef TARGET_KERNEL_CFG
     256        TARGET_KERNEL_CFG := $(TARGETDIR)/target_kernel.cfg
    253257endif
    254258
     
    291295#  カーネルのコンフィギュレーションファイルの生成
    292296#
    293 cfg1_out.c: $(APPL_CFG)
    294         $(CFG) --pass 1 --kernel asp $(INCLUDES) $(CFG_TABS) $<
    295         $(CFG) -M cfg1_out.c $(INCLUDES) $< > $(DEPDIR)/cfg1_out_c.d
    296 
    297 $(CFG1_OUT) cfg1_out.syms cfg1_out.srec: \
    298                                         $(START_OBJS) cfg1_out.o $(END_OBJS) $(HIDDEN_OBJS)
     297cfg1_out.c cfg1_out.db: cfg1_out.timestamp ;
     298cfg1_out.timestamp: $(APPL_CFG) $(TECSGEN_TIMESTAMP)
     299        $(CFG) --pass 1 --kernel asp $(INCLUDES) $(CFG_TABS) \
     300                                                -M $(DEPDIR)/cfg1_out_c.d $(TARGET_KERNEL_CFG) $<
     301
     302$(CFG1_OUT): $(START_OBJS) cfg1_out.o $(END_OBJS) $(HIDDEN_OBJS)
    299303        $(LINK) $(CFLAGS) $(LDFLAGS) $(CFG1_OUT_LDFLAGS) -o $(CFG1_OUT) \
    300304                                                $(START_OBJS) cfg1_out.o $(END_OBJS)
     305
     306cfg1_out.syms: $(CFG1_OUT)
    301307        $(NM) -n $(CFG1_OUT) > cfg1_out.syms
     308
     309cfg1_out.srec: $(CFG1_OUT)
    302310        $(OBJCOPY) -O srec -S $(CFG1_OUT) cfg1_out.srec
    303311
    304 $(CFG2_OUT_SRCS): kernel_cfg.timestamp
    305 kernel_cfg.timestamp: $(APPL_CFG) cfg1_out.syms cfg1_out.srec
    306         $(CFG) --pass 2 --kernel asp $(INCLUDES) -T $(TARGET_TF) $(CFG_TABS) $<
    307         $(SRCDIR)/utils/move-if-change kernel_cfg.h.new kernel_cfg.h
     312$(CFG2_OUT_SRCS) cfg2_out.db: kernel_cfg.timestamp ;
     313kernel_cfg.timestamp: cfg1_out.db cfg1_out.syms cfg1_out.srec
     314        $(CFG) --pass 2 --kernel asp $(INCLUDES) -T $(TARGET_KERNEL_TRB)
    308315
    309316#
    310317#  オフセットファイル(offset.h)の生成規則
    311318#
    312 $(OFFSET_H): offset.timestamp
    313 offset.timestamp: $(APPL_CFG) cfg1_out.syms cfg1_out.srec
    314         $(CFG) --pass 3 --kernel asp $(INCLUDES) \
    315                                 --rom-image cfg1_out.srec --symbol-table cfg1_out.syms \
    316                                 -T $(OFFSET_TF) $(CFG_TABS) $<
    317         $(SRCDIR)/utils/move-if-change offset.h.new offset.h
     319$(OFFSET_H): offset.timestamp ;
     320offset.timestamp: cfg1_out.db cfg1_out.syms cfg1_out.srec
     321        $(CFG) --pass 2 -O --kernel asp $(INCLUDES) -T $(TARGET_OFFSET_TRB) \
     322                                --rom-symbol cfg1_out.syms --rom-image cfg1_out.srec
    318323
    319324#
     
    334339¨ä½“のリンク
    335340#
    336 $(OBJFILE): $(APPL_CFG) kernel_cfg.h $(ALL_OBJS) $(LIBS_DEP)
     341$(OBJFILE): $(ALL_OBJS) $(LIBS_DEP)
    337342        $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) \
    338343                        $(START_OBJS) $(APPL_OBJS) $(SYSSVC_OBJS) $(CFG_OBJS) \
    339344                        $(ALL_LIBS) $(END_OBJS)
     345
     346#
     347#  シンボルファイルの生成
     348#
     349$(OBJNAME).syms: $(OBJFILE)
    340350        $(NM) -n $(OBJFILE) > $(OBJNAME).syms
    341         $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).srec
    342         $(CFG) --pass 3 --kernel asp $(INCLUDES) \
    343                                 --rom-image $(OBJNAME).srec --symbol-table $(OBJNAME).syms \
    344                                 -T $(TARGET_CHECK_TF) $(CFG_TABS) $<
    345351
    346352#
     
    356362        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).srec
    357363
     364.PHONY: check
     365check: check.timestamp ;
     366check.timestamp: cfg2_out.db $(OBJNAME).syms $(OBJNAME).srec
     367        $(CFG) --pass 3 --kernel asp $(INCLUDES) -T $(TARGET_CHECK_TRB) \
     368                                --rom-symbol $(OBJNAME).syms --rom-image $(OBJNAME).srec
     369        @echo "configuration check passed"
     370
    358371#
    359372#  コンパイル結果の消去
     
    361374.PHONY: clean
    362375clean:
    363         rm -f \#* *~ *.o $(CLEAN_FILES) offset.timestamp $(OFFSET_H)
     376        rm -f \#* *~ *.o $(DEPDIR)/*.d $(CLEAN_FILES) check.timestamp
    364377        rm -f $(OBJFILE) $(OBJNAME).syms $(OBJNAME).srec $(OBJNAME).bin
    365         rm -f kernel_cfg.timestamp $(CFG2_OUT_SRCS)
    366         rm -f cfg1_out.c $(CFG1_OUT) cfg1_out.syms cfg1_out.srec
    367         rm -f $(DEPDIR)/*.d
     378        rm -f kernel_cfg.timestamp $(CFG2_OUT_SRCS) cfg2_out.db
     379        rm -f offset.timestamp $(OFFSET_H)
     380        rm -f cfg1_out.syms cfg1_out.srec $(CFG1_OUT)
     381        rm -f cfg1_out.timestamp cfg1_out.c cfg1_out.db
    368382ifndef KERNEL_LIB
    369383        rm -f libkernel.a
Note: See TracChangeset for help on using the changeset viewer.