mirror of
https://github.com/LNH-team/pico-launcher.git
synced 2025-12-05 13:16:06 +01:00
111 lines
2.1 KiB
Makefile
111 lines
2.1 KiB
Makefile
# SPDX-License-Identifier: CC0-1.0
|
|
#
|
|
# SPDX-FileContributor: Antonio Niño Díaz, 2023
|
|
|
|
BLOCKSDS ?= /opt/blocksds/core
|
|
BLOCKSDSEXT ?= /opt/blocksds/external
|
|
|
|
export LIBTWL ?= $(shell pwd)/libs/libtwl
|
|
|
|
# User config
|
|
# ===========
|
|
|
|
NAME := LAUNCHER
|
|
|
|
GAME_TITLE := Pico Launcher
|
|
GAME_AUTHOR := LNH team
|
|
GAME_ICON := icon.bmp
|
|
|
|
# DLDI and internal SD slot of DSi
|
|
# --------------------------------
|
|
|
|
# Root folder of the SD image
|
|
SDROOT := sdroot
|
|
# Name of the generated image it "DSi-1.sd" for no$gba in DSi mode
|
|
SDIMAGE := image.bin
|
|
|
|
# Source code paths
|
|
# -----------------
|
|
|
|
# A single directory that is the root of NitroFS:
|
|
NITROFSDIR :=
|
|
|
|
# Tools
|
|
# -----
|
|
|
|
MAKE := make
|
|
RM := rm -rf
|
|
|
|
# Verbose flag
|
|
# ------------
|
|
|
|
ifeq ($(VERBOSE),1)
|
|
V :=
|
|
else
|
|
V := @
|
|
endif
|
|
|
|
# Directories
|
|
# -----------
|
|
|
|
ARM9DIR := arm9
|
|
ARM7DIR := arm7
|
|
|
|
# Build artfacts
|
|
# --------------
|
|
|
|
ROM := $(NAME).nds
|
|
|
|
# Targets
|
|
# -------
|
|
|
|
.PHONY: all clean arm9 arm7 dldipatch sdimage checklibtwl
|
|
|
|
all: $(ROM)
|
|
|
|
clean:
|
|
@echo " CLEAN"
|
|
$(V)$(MAKE) -f Makefile.arm9 clean --no-print-directory
|
|
$(V)$(MAKE) -f Makefile.arm7 clean --no-print-directory
|
|
$(V)$(RM) $(ROM) build $(SDIMAGE)
|
|
|
|
arm9: checklibtwl
|
|
$(V)+$(MAKE) -f Makefile.arm9 --no-print-directory
|
|
|
|
arm7: checklibtwl
|
|
$(V)+$(MAKE) -f Makefile.arm7 --no-print-directory
|
|
|
|
checklibtwl:
|
|
$(MAKE) -C $(LIBTWL)
|
|
|
|
ifneq ($(strip $(NITROFSDIR)),)
|
|
# Additional arguments for ndstool
|
|
NDSTOOL_ARGS := -d $(NITROFSDIR)
|
|
|
|
# Make the NDS ROM depend on the filesystem only if it is needed
|
|
$(ROM): $(NITROFSDIR)
|
|
endif
|
|
|
|
# Combine the title strings
|
|
ifeq ($(strip $(GAME_SUBTITLE)),)
|
|
GAME_FULL_TITLE := $(GAME_TITLE);$(GAME_AUTHOR)
|
|
else
|
|
GAME_FULL_TITLE := $(GAME_TITLE);$(GAME_SUBTITLE);$(GAME_AUTHOR)
|
|
endif
|
|
|
|
$(ROM): arm9 arm7
|
|
@echo " NDSTOOL $@"
|
|
$(V)$(BLOCKSDS)/tools/ndstool/ndstool -c $@ \
|
|
-7 build/arm7.elf -9 build/arm9.elf \
|
|
-b $(GAME_ICON) "$(GAME_FULL_TITLE)" \
|
|
$(NDSTOOL_ARGS)
|
|
|
|
sdimage:
|
|
@echo " MKFATIMG $(SDIMAGE) $(SDROOT)"
|
|
$(V)$(BLOCKSDS)/tools/mkfatimg/mkfatimg -t $(SDROOT) $(SDIMAGE)
|
|
|
|
dldipatch: $(ROM)
|
|
@echo " DLDIPATCH $(ROM)"
|
|
$(V)$(BLOCKSDS)/tools/dldipatch/dldipatch patch \
|
|
$(BLOCKSDS)/sys/dldi_r4/r4tf.dldi $(ROM)
|