loader, pm, sm: build kip as only taget (thanks @fincs !)

This commit is contained in:
TuxSH 2018-05-15 02:28:41 +02:00
parent d9c2a54464
commit 4e12d55993
4 changed files with 31 additions and 126 deletions

1
.gitignore vendored
View File

@ -41,6 +41,7 @@
*.nro *.nro
*.nacp *.nacp
*.pfs0 *.pfs0
*.kip
# Debug files # Debug files
*.dSYM/ *.dSYM/

View File

@ -16,18 +16,6 @@ include $(DEVKITPRO)/libnx/switch_rules
# DATA is a list of directories containing data files # DATA is a list of directories containing data files
# INCLUDES is a list of directories containing header files # INCLUDES is a list of directories containing header files
# EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm". # EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm".
#
# NO_ICON: if set to anything, do not use icon.
# NO_NACP: if set to anything, no .nacp file is generated.
# APP_TITLE is the name of the app stored in the .nacp file (Optional)
# APP_AUTHOR is the author of the app stored in the .nacp file (Optional)
# APP_VERSION is the version of the app stored in the .nacp file (Optional)
# APP_TITLEID is the titleID of the app stored in the .nacp file (Optional)
# ICON is the filename of the icon (.jpg), relative to the project folder.
# If not set, it attempts to use one of the following (in this order):
# - <Project name>.jpg
# - icon.jpg
# - <libnx folder>/default_icon.jpg
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
TARGET := $(notdir $(CURDIR)) TARGET := $(notdir $(CURDIR))
BUILD := build BUILD := build
@ -107,29 +95,17 @@ export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC) export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC)
ifeq ($(strip $(ICON)),) ifeq ($(strip $(CONFIG_JSON)),)
icons := $(wildcard *.jpg) jsons := $(wildcard *.json)
ifneq (,$(findstring $(TARGET).jpg,$(icons))) ifneq (,$(findstring $(TARGET).json,$(jsons)))
export APP_ICON := $(TOPDIR)/$(TARGET).jpg export APP_JSON := $(TOPDIR)/$(TARGET).json
else else
ifneq (,$(findstring icon.jpg,$(icons))) ifneq (,$(findstring config.json,$(jsons)))
export APP_ICON := $(TOPDIR)/icon.jpg export APP_JSON := $(TOPDIR)/config.json
endif endif
endif endif
else else
export APP_ICON := $(TOPDIR)/$(ICON) export APP_JSON := $(TOPDIR)/$(CONFIG_JSON)
endif
ifeq ($(strip $(NO_ICON)),)
export NROFLAGS += --icon=$(APP_ICON)
endif
ifeq ($(strip $(NO_NACP)),)
export NROFLAGS += --nacp=$(CURDIR)/$(TARGET).nacp
endif
ifneq ($(APP_TITLEID),)
export NACPFLAGS += --titleid=$(APP_TITLEID)
endif endif
.PHONY: $(BUILD) clean all .PHONY: $(BUILD) clean all
@ -144,7 +120,7 @@ $(BUILD):
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
clean: clean:
@echo clean ... @echo clean ...
@rm -fr $(BUILD) $(TARGET).pfs0 $(TARGET).nso $(TARGET).nro $(TARGET).nacp $(TARGET).elf @rm -fr $(BUILD) $(TARGET).kip $(TARGET).elf
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@ -156,17 +132,9 @@ DEPENDS := $(OFILES:.o=.d)
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# main targets # main targets
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
all : $(OUTPUT).pfs0 $(OUTPUT).nro all : $(OUTPUT).kip
$(OUTPUT).pfs0 : $(OUTPUT).nso $(OUTPUT).kip : $(OUTPUT).elf
$(OUTPUT).nso : $(OUTPUT).elf
ifeq ($(strip $(NO_NACP)),)
$(OUTPUT).nro : $(OUTPUT).elf $(OUTPUT).nacp
else
$(OUTPUT).nro : $(OUTPUT).elf
endif
$(OUTPUT).elf : $(OFILES) $(OUTPUT).elf : $(OFILES)

View File

@ -16,18 +16,6 @@ include $(DEVKITPRO)/libnx/switch_rules
# DATA is a list of directories containing data files # DATA is a list of directories containing data files
# INCLUDES is a list of directories containing header files # INCLUDES is a list of directories containing header files
# EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm". # EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm".
#
# NO_ICON: if set to anything, do not use icon.
# NO_NACP: if set to anything, no .nacp file is generated.
# APP_TITLE is the name of the app stored in the .nacp file (Optional)
# APP_AUTHOR is the author of the app stored in the .nacp file (Optional)
# APP_VERSION is the version of the app stored in the .nacp file (Optional)
# APP_TITLEID is the titleID of the app stored in the .nacp file (Optional)
# ICON is the filename of the icon (.jpg), relative to the project folder.
# If not set, it attempts to use one of the following (in this order):
# - <Project name>.jpg
# - icon.jpg
# - <libnx folder>/default_icon.jpg
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
TARGET := $(notdir $(CURDIR)) TARGET := $(notdir $(CURDIR))
BUILD := build BUILD := build
@ -107,29 +95,17 @@ export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC) export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC)
ifeq ($(strip $(ICON)),) ifeq ($(strip $(CONFIG_JSON)),)
icons := $(wildcard *.jpg) jsons := $(wildcard *.json)
ifneq (,$(findstring $(TARGET).jpg,$(icons))) ifneq (,$(findstring $(TARGET).json,$(jsons)))
export APP_ICON := $(TOPDIR)/$(TARGET).jpg export APP_JSON := $(TOPDIR)/$(TARGET).json
else else
ifneq (,$(findstring icon.jpg,$(icons))) ifneq (,$(findstring config.json,$(jsons)))
export APP_ICON := $(TOPDIR)/icon.jpg export APP_JSON := $(TOPDIR)/config.json
endif endif
endif endif
else else
export APP_ICON := $(TOPDIR)/$(ICON) export APP_JSON := $(TOPDIR)/$(CONFIG_JSON)
endif
ifeq ($(strip $(NO_ICON)),)
export NROFLAGS += --icon=$(APP_ICON)
endif
ifeq ($(strip $(NO_NACP)),)
export NROFLAGS += --nacp=$(CURDIR)/$(TARGET).nacp
endif
ifneq ($(APP_TITLEID),)
export NACPFLAGS += --titleid=$(APP_TITLEID)
endif endif
.PHONY: $(BUILD) clean all .PHONY: $(BUILD) clean all
@ -144,7 +120,7 @@ $(BUILD):
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
clean: clean:
@echo clean ... @echo clean ...
@rm -fr $(BUILD) $(TARGET).pfs0 $(TARGET).nso $(TARGET).nro $(TARGET).nacp $(TARGET).elf @rm -fr $(BUILD) $(TARGET).kip $(TARGET).elf
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@ -156,17 +132,9 @@ DEPENDS := $(OFILES:.o=.d)
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# main targets # main targets
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
all : $(OUTPUT).pfs0 $(OUTPUT).nro all : $(OUTPUT).kip
$(OUTPUT).pfs0 : $(OUTPUT).nso $(OUTPUT).kip : $(OUTPUT).elf
$(OUTPUT).nso : $(OUTPUT).elf
ifeq ($(strip $(NO_NACP)),)
$(OUTPUT).nro : $(OUTPUT).elf $(OUTPUT).nacp
else
$(OUTPUT).nro : $(OUTPUT).elf
endif
$(OUTPUT).elf : $(OFILES) $(OUTPUT).elf : $(OFILES)

View File

@ -16,18 +16,6 @@ include $(DEVKITPRO)/libnx/switch_rules
# DATA is a list of directories containing data files # DATA is a list of directories containing data files
# INCLUDES is a list of directories containing header files # INCLUDES is a list of directories containing header files
# EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm". # EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm".
#
# NO_ICON: if set to anything, do not use icon.
# NO_NACP: if set to anything, no .nacp file is generated.
# APP_TITLE is the name of the app stored in the .nacp file (Optional)
# APP_AUTHOR is the author of the app stored in the .nacp file (Optional)
# APP_VERSION is the version of the app stored in the .nacp file (Optional)
# APP_TITLEID is the titleID of the app stored in the .nacp file (Optional)
# ICON is the filename of the icon (.jpg), relative to the project folder.
# If not set, it attempts to use one of the following (in this order):
# - <Project name>.jpg
# - icon.jpg
# - <libnx folder>/default_icon.jpg
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
TARGET := $(notdir $(CURDIR)) TARGET := $(notdir $(CURDIR))
BUILD := build BUILD := build
@ -107,29 +95,17 @@ export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC) export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC)
ifeq ($(strip $(ICON)),) ifeq ($(strip $(CONFIG_JSON)),)
icons := $(wildcard *.jpg) jsons := $(wildcard *.json)
ifneq (,$(findstring $(TARGET).jpg,$(icons))) ifneq (,$(findstring $(TARGET).json,$(jsons)))
export APP_ICON := $(TOPDIR)/$(TARGET).jpg export APP_JSON := $(TOPDIR)/$(TARGET).json
else else
ifneq (,$(findstring icon.jpg,$(icons))) ifneq (,$(findstring config.json,$(jsons)))
export APP_ICON := $(TOPDIR)/icon.jpg export APP_JSON := $(TOPDIR)/config.json
endif endif
endif endif
else else
export APP_ICON := $(TOPDIR)/$(ICON) export APP_JSON := $(TOPDIR)/$(CONFIG_JSON)
endif
ifeq ($(strip $(NO_ICON)),)
export NROFLAGS += --icon=$(APP_ICON)
endif
ifeq ($(strip $(NO_NACP)),)
export NROFLAGS += --nacp=$(CURDIR)/$(TARGET).nacp
endif
ifneq ($(APP_TITLEID),)
export NACPFLAGS += --titleid=$(APP_TITLEID)
endif endif
.PHONY: $(BUILD) clean all .PHONY: $(BUILD) clean all
@ -144,7 +120,7 @@ $(BUILD):
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
clean: clean:
@echo clean ... @echo clean ...
@rm -fr $(BUILD) $(TARGET).pfs0 $(TARGET).nso $(TARGET).nro $(TARGET).nacp $(TARGET).elf @rm -fr $(BUILD) $(TARGET).kip $(TARGET).elf
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
@ -156,17 +132,9 @@ DEPENDS := $(OFILES:.o=.d)
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# main targets # main targets
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
all : $(OUTPUT).pfs0 $(OUTPUT).nro all : $(OUTPUT).kip
$(OUTPUT).pfs0 : $(OUTPUT).nso $(OUTPUT).kip : $(OUTPUT).elf
$(OUTPUT).nso : $(OUTPUT).elf
ifeq ($(strip $(NO_NACP)),)
$(OUTPUT).nro : $(OUTPUT).elf $(OUTPUT).nacp
else
$(OUTPUT).nro : $(OUTPUT).elf
endif
$(OUTPUT).elf : $(OFILES) $(OUTPUT).elf : $(OFILES)