⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makerules.sysdepend

📁 T-kernel 的extension源代码
💻 SYSDEPEND
字号:
##	makerules#		for GNU make##	application standard rules (std_sh7751r)#.EXPORT_ALL_VARIABLES:#  command pathifeq ($(filter "$(origin GNUsh)", $(TOOL_ORIGIN)), )  GNUsh := $(GNU_BD)/sh-unknown-tkernelendififneq ($(filter "$(origin GNUsh)", $(TOOL_ORIGIN)), )  PATH := $(GNUsh)/bin:$(PATH)endifPATH := .:$(PATH)# ----- T-Engine/SH7751R(SH4) ------------------------------------------------# GCC environmentTARGET_ARCH =# target type_MACHINE_ = _STD_SH7751R__CPUTYPE_FLAGS = -m4 -mno-implicit-fp# default languageifndef LANGUAGE  LANGUAGE = JAPANESEendif### build option ###CFLAGS +=CPPFLAGS +=ASFLAGS +=LDFLAGS +=### C  ###CC := $(GNUsh)/bin/gccshOUTPUT_OPTION = -o $@ifeq ($(mode), debug)  CFLAGS = -g  CPPFLAGS = $(HEADER:%=-I%) -D$(_MACHINE_) -DDEBUGelse  CFLAGS = -O2  CPPFLAGS = $(HEADER:%=-I%) -D$(_MACHINE_)endifCFLAGS += $(_CPUTYPE_FLAGS)CFLAGS_WARNING      = -Wall -Wno-formatCFLAGS_WARNING_FULL = -pedantic -W -Wall -Wno-formatifneq ($(USE_CPP), 1)  CFLAGS	      += -ffreestanding  CFLAGS_WARNING      += -Wno-main  CFLAGS_WARNING_FULL += -Wno-mainendifCOMPILE.c = $(CC) $(TARGET_ARCH) $(CFLAGS) $(CPPFLAGS) -cLINK.c = $(CC) $(TARGET_ARCH) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)%.o: %.c; $(.o.c)  define .o.c	$(.@)$(CUTDEPS)	$(COMPILE.c) $< $(OUTPUT_OPTION)  endef%.s: %.c; $(.s.c)  define .s.c	$(.@)$(CUTDEPS)	$(CC) $(TARGET_ARCH) $(CFLAGS) $(CPPFLAGS) -S $<  endef%.i: %.c	$(CC) $(TARGET_ARCH) $(CFLAGS) $(CPPFLAGS) -E $< $(OUTPUT_OPTION)### C++ ###CXX := $(GNUsh)/bin/gccshCXXFLAGS = $(CFLAGS)COMPILE.cc = $(CXX) $(TARGET_ARCH) $(CXXFLAGS) $(CPPFLAGS) -cLINK.cc = $(CXX) $(TARGET_ARCH) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)%.o: %.cc; $(.o.cc)  define .o.cc	$(.@)$(CUTDEPS)	$(COMPILE.cc) $< $(OUTPUT_OPTION)  endef%.s: %.cc; $(.s.cc)  define .s.cc	$(.@)$(CUTDEPS)	$(CXX) $(TARGET_ARCH) $(CXXFLAGS) $(CPPFLAGS) -S $<  endef%.i: %.cc	$(CXX) $(TARGET_ARCH) $(CXXFLAGS) $(CPPFLAGS) -E $< $(OUTPUT_OPTION)### asm ###AS = $(GNUsh)/bin/asifeq ($(mode), debug)  ASFLAGS =else  ASFLAGS =endifASFLAGS += $(_CPUTYPE_FLAGS)ASFLAGS.s = -littleCOMPILE.S = $(CC) $(TARGET_ARCH) $(ASFLAGS) $(CPPFLAGS) -cCOMPILE.s = $(AS) $(ASFLAGS.s)%.o: %.S; $(.o.S)  define .o.S	$(.@)$(CUTDEPS)	$(COMPILE.S) $< $(OUTPUT_OPTION)  endef%.o: %.s; $(.o.s)  define .o.s	$(COMPILE.s) $< $(OUTPUT_OPTION)  endef%.i: %.S	$(CC) $(TARGET_ARCH) $(ASFLAGS) $(CPPFLAGS) -E $< $(OUTPUT_OPTION)### linker ###LD = $(GNUsh)/bin/ldifeq ($(mode), debug)  LDFLAGS = $(LIBDIR:%=-L%)else  LDFLAGS = $(LIBDIR:%=-L%)endifLDFLAGS += $(_CPUTYPE_FLAGS)LIBDIR = $(COMMONLIB)LOADLIBES =LDOBJS =LDLIBS =# default relocatable formatifndef REL_TYP  REL_TYP = rendif# additional linker optionLDFLAGS2 = -staticifneq ($(filter sl, $(options)), )  LDFLAGS2 = -staticendififneq ($(filter dl so, $(options)), )  LDFLAGS2 =endifLDFLAGS3 = -static -T $(COMMONLIB)/static.lnkSTART_ADR =# linker option for build the executablesLINK.o = $(CC) $(TARGET_ARCH) $(LDFLAGS) $(LDFLAGS2) $(START_ADR)# linker option for build the executables (lodspg : static address)LINK_TK.o = $(CC) $(TARGET_ARCH) -specs=specs-tk $(LDFLAGS) $(LDFLAGS3) $(START_ADR)# linker option for merge the objectsLINK_R.o = $(CC) $(TARGET_ARCH) $(LDFLAGS) -r -nostdlib# linker option for merge the objects with libraryLINK_A.o = $(CC) $(TARGET_ARCH) $(LDFLAGS) -r# build the executable (relocation only)LOCATE.o = $(CC) $(TARGET_ARCH) $(LDFLAGS) -nostdlib $(LDFLAGS3) $(START_ADR)%: %.o	$(LINK.o) $(LDOBJS) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION)%.out: %.o	$(LINK.o) $(LDOBJS) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION)%.abs: %.o	$(LINK_TK.o) $(LDOBJS) $^ $(LOADLIBES) $(LDLIBS) $(OUTPUT_OPTION)### library ###AR = $(GNUsh)/bin/arARFLAGS = rvRANLIB = $(GNUsh)/bin/ranlib(%): %	$(AR) $(ARFLAGS) $@ $%### name list ###NM = $(GNUsh)/bin/nmNMFLAGS = -C -n%.map: %	$(NM) $(NMFLAGS) $< > $@%.map: %.out	$(NM) $(NMFLAGS) $< > $@%.map: %.abs	$(NM) $(NMFLAGS) $< > $@%.map: %.dll	$(NM) $(NMFLAGS) $< > $@### databox ###DBCPPFLAGS = -D$(_MACHINE_)DB_CPP = $(CPP) -nostdinc -traditional -P $(DATABOX_HEADER:%=-I%) $(DBCPPFLAGS)DB = $(ETCBIN)/databoxDBFLAGS =DBSRCFLAGS = -sDATABOX = $(DB) $(DBFLAGS)%.dbx: %.d	$(DB_CPP) $< $@.tmp	$(DATABOX) $@.tmp $@	$(RM) $@.tmp%.fsn: %.f	$(DB_CPP) $< $@.tmp	$(DATABOX) -n $@.tmp $@	$(RM) $@.tmp%.c: %.d	$(DB_CPP) $< $@.tmp	$(DATABOX) -n $(DBSRCFLAGS) $@.tmp $@	$(RM) $@.tmp### other ###ifndef CPP  CPP = $(GNU_BD)/bin/sh-unknown-tkernel-cppendifSTRIP = $(GNUsh)/bin/strip --strip-unneededBZCOMP_FLAGS = -vOBJCOPY = $(GNU_BD)/bin/sh-unknown-tkernel-objcopyOUTPUT_SREC = -O srec --srec-forceS3 --srec-len 32### additional setting #### CPU type (SH4)CPU_TYPE = 0x0a75### application library ###LOADLIBES =LDOBJS =ifeq ($(USE_CPP), 1)  LDLIBS = -lsupc++ -lgcc -ltksesvc -lsvcelse  LDLIBS = -ltksesvc -lsvcendififneq ($(USE_LIBCPP), 0)  LDLIBS := $(USE_LIBCPP:%=-lcpp%) -ltf $(LDLIBS)endif###ifneq ($(USE_MT), 0)  # use multi task library  LDFLAGS2 += -Wl,--defsym,_usemt_=1else  LDFLAGS2 += -Wl,--defsym,_usemt_=0endififdef MAKE_DLL  ### make DLL options  CFLAGS += -fPIC  LDFLAGS2 += -shared -Wl,--no-undefinedelse  ifneq ($(filter dl, $(options)), )    ### create name list    %.map: %	$(NM) $(NMFLAGS) $< | $(BD)/etc/chkmain > $@  endifendif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -