###################################################
#崦
###################################################
TOOLCHAIN_DIR = C:\Program Files (x86)\Chipsea\CSU-IDE V5.4.0\chipsea\tools\Compiler\C
ASM	   				= "$(TOOLCHAIN_DIR)\csasm.exe"
CC    				= "$(TOOLCHAIN_DIR)\cscc.exe"
LINKER 				= "$(TOOLCHAIN_DIR)\cslinker.exe"
LIBMAKER 			= "$(TOOLCHAIN_DIR)\CSLibMaker.exe"
RM	   				= del /F 1>NUL 2>NUL



###################################################
#ѡ崦
###################################################
OUTPUT_DIR            = D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\.\Release
INTERTMP_DIR          = D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\.\Release
PROJ_PATH			  = D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd
PROJ_NAME			  = csu32m10_lcd
BODY_NAME			  = CSU32M10
CFLAGS                = -cc1 -S  -debug-info-kind=limited -O0 -triple=cscc -fno-inline -chip=CSU32M10 -I ".\sample\inc" -I ".\include"
ASMFLAGS              = -filetype=obj -arch=cscc -fill=0xffff -chip=CSU32M10 -mattr=c16 -BankCount=1
LINKFLAGS             = -bt 16
LIBMAKERFLAGS         = -chiptype 16 -debuginfo RemoveDebugInfo -encodeinfo Encryption
CODE_OPTION			  = %%CodeOption%%
ASM_FILES			  = "$(INTERTMP_DIR)\csu32m10_lcd.asm" \
"$(INTERTMP_DIR)\csu32m10_timer.asm" \
"$(INTERTMP_DIR)\main.asm" \
"$(INTERTMP_DIR)\SysRegDefine.asm" \
"D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\cstartup.asm"

OBJ_FILES			  = "$(INTERTMP_DIR)\csu32m10_lcd.obj" \
"$(INTERTMP_DIR)\csu32m10_timer.obj" \
"$(INTERTMP_DIR)\main.obj" \
"$(INTERTMP_DIR)\SysRegDefine.obj" \
"$(INTERTMP_DIR)\cstartup.obj"

OUTPUT_FILE_TYPE	  = binfile
OUTPUT_FILE_EXTENSION = hex
OUTPUT_OTHER_FILES	  = "$(INTERTMP_DIR)\*.asm" \
						    "$(INTERTMP_DIR)\*.obj" \
                            "$(INTERTMP_DIR)\*.map"	\
							"$(INTERTMP_DIR)\*.txt"	\
						    "$(INTERTMP_DIR)\*.xml" \
							"$(INTERTMP_DIR)\*.sbms" \
							"$(INTERTMP_DIR)\*.cscc_bk"



###################################################
#.Cļ.ASMļ
###################################################
"$(INTERTMP_DIR)\csu32m10_lcd.asm" : "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\csu32m10_lcd.c" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\include\CSU32M10.h" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\inc\csu32m10_lcd.h" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\inc\csu32m10_timer.h"
	$(CC) $(CFLAGS)  "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\csu32m10_lcd.c" -o "$(INTERTMP_DIR)\csu32m10_lcd.asm" 
	$(ECHO)
"$(INTERTMP_DIR)\csu32m10_timer.asm" : "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\csu32m10_timer.c" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\include\CSU32M10.h" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\inc\csu32m10_timer.h"
	$(CC) $(CFLAGS)  "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\csu32m10_timer.c" -o "$(INTERTMP_DIR)\csu32m10_timer.asm" 
	$(ECHO)
"$(INTERTMP_DIR)\main.asm" : "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\main.c" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\include\CSU32M10.h" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\inc\csu32m10_lcd.h" \
 "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\inc\csu32m10_timer.h"
	$(CC) $(CFLAGS)  "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\main.c" -o "$(INTERTMP_DIR)\main.asm" 
	$(ECHO)
"$(INTERTMP_DIR)\SysRegDefine.asm" : "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\SysRegDefine.c"
	$(CC) $(CFLAGS)  "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\sample\src\SysRegDefine.c" -o "$(INTERTMP_DIR)\SysRegDefine.asm" 
	$(ECHO)

#main.asm :
#	$(CC) $(CFLAGS) "$(PROJ_PATH)\main.c" -o "$(PROJ_PATH)\main.asm"

###################################################
#.ASMļ.OBJļ
###################################################
"$(INTERTMP_DIR)\csu32m10_lcd.obj" : "$(INTERTMP_DIR)\csu32m10_lcd.asm"
	$(ASM) $(ASMFLAGS)  "$(INTERTMP_DIR)\csu32m10_lcd.asm" -o "$(INTERTMP_DIR)\csu32m10_lcd.obj" 
	$(ECHO)
"$(INTERTMP_DIR)\csu32m10_timer.obj" : "$(INTERTMP_DIR)\csu32m10_timer.asm"
	$(ASM) $(ASMFLAGS)  "$(INTERTMP_DIR)\csu32m10_timer.asm" -o "$(INTERTMP_DIR)\csu32m10_timer.obj" 
	$(ECHO)
"$(INTERTMP_DIR)\main.obj" : "$(INTERTMP_DIR)\main.asm"
	$(ASM) $(ASMFLAGS)  "$(INTERTMP_DIR)\main.asm" -o "$(INTERTMP_DIR)\main.obj" 
	$(ECHO)
"$(INTERTMP_DIR)\SysRegDefine.obj" : "$(INTERTMP_DIR)\SysRegDefine.asm"
	$(ASM) $(ASMFLAGS)  "$(INTERTMP_DIR)\SysRegDefine.asm" -o "$(INTERTMP_DIR)\SysRegDefine.obj" 
	$(ECHO)
"$(INTERTMP_DIR)\cstartup.obj" : "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\cstartup.asm"
	$(ASM) $(ASMFLAGS) -gstab "D:\оƬ\CSU32M10\CSU32M10_DEMO\CSU32MX10_C_Demo\csu32m10_lcd\source\csu32m10_lcd\cstartup.asm" -o "$(INTERTMP_DIR)\cstartup.obj" 
	$(ECHO)

#main.obj :
#	$(ASM) $(ASMFLAGS) "$(PROJ_PATH)\main.asm" -o "$(PROJ_PATH)\main.obj"

###################################################
#崦
###################################################
.PHONY : build
prepare : prebuild outputdir

re_prepare : prebuild outputdir clean_buildfile

build  : prebuild outputdir compiler_all_c_files compiler_all_asm_files $(OUTPUT_FILE_TYPE) postbuild

.PHONY : rebuild
rebuild: prebuild outputdir clean_buildfile build postbuild

output_file : $(OUTPUT_FILE_TYPE) postbuild

.PHONY : clean
clean :
	$(RM)  "$(INTERTMP_DIR)\dee"
	$(RM)  "$(INTERTMP_DIR)\*.lik"
	$(RM)  "$(INTERTMP_DIR)\*.lst"
	$(RM)  $(OUTPUT_OTHER_FILES)
	$(RM)  "$(OUTPUT_DIR)\$(PROJ_NAME).$(OUTPUT_FILE_EXTENSION)"
	$(RM)  "$(INTERTMP_DIR)\$(PROJ_NAME).dat"

clean_buildfile :
	$(RM)  $(OUTPUT_OTHER_FILES)
	$(RM)  "$(OUTPUT_DIR)\$(PROJ_NAME).$(OUTPUT_FILE_EXTENSION)"
    
outputdir:
	if not exist "$(OUTPUT_DIR)/$(NULL)" mkdir "$(OUTPUT_DIR)"
	if not exist "$(INTERTMP_DIR)/$(NULL)" mkdir "$(INTERTMP_DIR)"
	
binfile: 
	$(LINKER) $(LINKFLAGS) -s "$(INTERTMP_DIR)\Script.lik"
	
libfile: 
	$(LIBMAKER) $(LIBMAKERFLAGS) -o $(OBJ_FILES) -lib "$(OUTPUT_DIR)\$(PROJ_NAME).lib"
	
compiler_all_c_files : $(ASM_FILES)

compiler_all_asm_files: $(OBJ_FILES)

prebuild :
	

postbuild :
	

