diff options
Diffstat (limited to 'packages/libndsfpc/examples/graphics/grit/256colorTilemap/Makefile.fpc')
-rw-r--r-- | packages/libndsfpc/examples/graphics/grit/256colorTilemap/Makefile.fpc | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/packages/libndsfpc/examples/graphics/grit/256colorTilemap/Makefile.fpc b/packages/libndsfpc/examples/graphics/grit/256colorTilemap/Makefile.fpc new file mode 100644 index 0000000000..ae434830c8 --- /dev/null +++ b/packages/libndsfpc/examples/graphics/grit/256colorTilemap/Makefile.fpc @@ -0,0 +1,124 @@ +# +# Makefile.fpc for Free Pascal libndsfpc 2.x.y Examples +# + +[target] +loaders= +programs=tilemap_256_color + +[require] +packages=libndsfpc +tools=bin2s mmutil grit_fpc rmdir mv ndstool +nortl=y + +[install] +fpcpackage=y + +[default] +cpu=arm +target=nds +fpcdir=../../../../../.. + +[compiler] +options=-Xm +targetdir=$(BIN) +unittargetdir=$(BUILD) + +[clean] +files=*.elf *.o *.s *.nds *.nef *.h *.bin *.map \ + $(BUILD)/* \ + $(INC)/* \ + $(BIN)/* +units=* + + +[prerules] +BIN = bin +BUILD = build +DATA = data +FILESYSTEM = filesystem +GFX = gfx +INC = inc +AUDIO_FILES = $(foreach dir, $(notdir $(wildcard audio/*.*)), $(CURDIR)/audio/$(dir)) +GFX_FILES = $(foreach dir, $(GFX), $(notdir $(wildcard $(dir)/*.bmp $(dir)/*.png))) +BIN_FILES = $(foreach dir, $(DATA), $(notdir $(wildcard $(dir)/*))) +GBFS_FILES = $(foreach dir, GBFS, $(notdir $(wildcard $(dir)/*))) + +[rules] +.NOTPARALLEL: +clean: dir_delete fpc_clean fpc_cleanall +all: dir_make $(BIN_FILES) $(GFX_FILES) fpc_all +filesystem: all make_filesystem + + + +# +# Delete temp directories +# +dir_delete: + @$(DELTREE) $(CURDIR)/$(BUILD) + @$(DELTREE) $(CURDIR)/$(INC) + @$(DELTREE) $(CURDIR)/$(BIN) + +# +# Create temp directories +# +dir_make: +ifneq ($(BUILD), $(CURDIR)) + @$(MKDIR) $(BUILD) +endif +ifneq ($(INC), $(CURDIR)) + @$(MKDIR) $(INC) +endif +ifneq ($(BIN), $(CURDIR)) + @$(MKDIR) $(BIN) +endif + +# +# Audio files processing rule +# +soundbank.bin.o : $(AUDIO_FILES) + @$(MMUTIL) $^ -d -o$(BUILD)/soundbank.bin -h$(BUILD)/soundbank.h + $(BIN2S) $(BUILD)/soundbank.bin > $(BUILD)/soundbank.bin.s + $(AS) -o $(BUILD)/soundbank.bin.o $(BUILD)/soundbank.bin.s + +# +# Png files processing rule +# +$(GFX_FILES): $(wildcard %.bmp %.png) + @echo 'Converting $(@) file to asm...' + $(GRIT_FPC) $(GFX)/$(@) -fp -fts -ff $(GFX)/$(basename $(@)).grit -o$(BUILD)/$(@) + @echo 'Assembling $(@).s file...' + $(AS) -o $(BUILD)/$(basename $(@)).o $(BUILD)/$(basename $(@)).s + $(MV) -f $(BUILD)/$(basename $(@)).inc $(INC)/$(basename $(@)).inc + @echo 'Done!' + +# +# Binary files processing rule +# +$(BIN_FILES): $(wildcard %.*) + @echo 'Converting $(@) file to asm...' + @$(BIN2S) $(DATA)/$(@) > $(BUILD)/$(@).s + @echo 'Creating $(@).inc include file...' + @echo "var" > `(echo "$(INC)/"$(@F) | tr . .)`.inc + @echo " " `(echo $(@F) | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`"_end: array [0..0] of cuint8; cvar; external;" >> `(echo "$(INC)/"$(@F) | tr . .)`.inc + @echo " " `(echo $(@F) | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`": array [0..0] of cuint8; cvar; external;" >> `(echo "$(INC)/"$(@F) | tr . .)`.inc + @echo " " `(echo $(@F) | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`_size": cuint32; cvar; external;" >> `(echo "$(INC)/"$(@F) | tr . .)`.inc + @echo 'Assembling $(@).s file...' + @$(AS) -o $(BUILD)/$(@).o $(BUILD)/$(@).s + @echo 'Done!' + + +# +# GBFS files processing rule +# +data.gbfs.o: + @cd GBFS && gbfs ../$(BUILD)/data.gbfs $(GBFS_FILES) + $(BIN2S) $(BUILD)/data.gbfs > $(BUILD)/data.gbfs.s + $(AS) -o $(BUILD)/data.gbfs.o $(BUILD)/data.gbfs.s + +# +# Nitro Filesystem processing rule +# +make_filesystem: + @$(NDSTOOL) -c $(BIN)/$(TARGET_PROGRAMS).fs.nds -9 $(BIN)/$(TARGET_PROGRAMS).nef.bin -d $(CURDIR)/$(FILESYSTEM)
\ No newline at end of file |