2019-12-09 11:57:37 +00:00
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
# pull in common atmosphere configuration
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
include $(dir $(abspath $(lastword $(MAKEFILE_LIST))))/../common.mk
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
# pull in switch rules
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
ifeq ($(strip $(DEVKITPRO)),)
|
|
|
|
$(error "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to>/devkitpro")
|
|
|
|
endif
|
|
|
|
|
|
|
|
include $(DEVKITPRO)/libnx/switch_rules
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
# options for code generation
|
|
|
|
#---------------------------------------------------------------------------------
|
2020-03-29 22:43:16 +01:00
|
|
|
export DEFINES = $(ATMOSPHERE_DEFINES) -DATMOSPHERE_IS_STRATOSPHERE -D_GNU_SOURCE
|
2020-03-08 09:39:16 +00:00
|
|
|
export SETTINGS = $(ATMOSPHERE_SETTINGS) -O2
|
|
|
|
export CFLAGS = $(ATMOSPHERE_CFLAGS) $(SETTINGS) $(DEFINES) $(INCLUDE)
|
|
|
|
export CXXFLAGS = $(CFLAGS) $(ATMOSPHERE_CXXFLAGS)
|
|
|
|
export ASFLAGS = $(ATMOSPHERE_ASFLAGS) $(SETTINGS) $(DEFINES)
|
2019-12-09 11:57:37 +00:00
|
|
|
|
|
|
|
export CXXWRAPS := -Wl,--wrap,__cxa_pure_virtual \
|
|
|
|
-Wl,--wrap,__cxa_throw \
|
|
|
|
-Wl,--wrap,__cxa_rethrow \
|
|
|
|
-Wl,--wrap,__cxa_allocate_exception \
|
|
|
|
-Wl,--wrap,__cxa_free_exception \
|
|
|
|
-Wl,--wrap,__cxa_begin_catch \
|
|
|
|
-Wl,--wrap,__cxa_end_catch \
|
|
|
|
-Wl,--wrap,__cxa_call_unexpected \
|
|
|
|
-Wl,--wrap,__cxa_call_terminate \
|
|
|
|
-Wl,--wrap,__gxx_personality_v0 \
|
|
|
|
-Wl,--wrap,_Unwind_Resume \
|
|
|
|
-Wl,--wrap,_ZSt19__throw_logic_errorPKc \
|
|
|
|
-Wl,--wrap,_ZSt20__throw_length_errorPKc \
|
2021-05-02 18:33:15 +01:00
|
|
|
-Wl,--wrap,_ZNSt11logic_errorC2EPKc \
|
|
|
|
-Wl,--wrap,exit
|
2019-12-09 11:57:37 +00:00
|
|
|
|
2021-01-13 16:30:24 +00:00
|
|
|
export LDFLAGS = -specs=$(ATMOSPHERE_LIBRARIES_DIR)/libstratosphere/stratosphere.specs -specs=$(DEVKITPRO)/libnx/switch.specs $(SETTINGS) $(CXXWRAPS) -Wl,-Map,$(notdir $*.map)
|
2019-12-09 11:57:37 +00:00
|
|
|
|
2020-03-08 09:39:16 +00:00
|
|
|
export LIBS = -lstratosphere -lnx
|
2019-12-09 11:57:37 +00:00
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
# list of directories containing libraries, this must be the top level containing
|
|
|
|
# include and lib
|
|
|
|
#---------------------------------------------------------------------------------
|
2020-03-08 09:39:16 +00:00
|
|
|
export LIBDIRS = $(PORTLIBS) $(LIBNX) $(ATMOSPHERE_LIBRARIES_DIR)/libvapours $(ATMOSPHERE_LIBRARIES_DIR)/libstratosphere
|
2019-12-09 11:57:37 +00:00
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------
|
|
|
|
# stratosphere sysmodules may (but usually do not) have an exefs source dir
|
|
|
|
#---------------------------------------------------------------------------------
|
2020-03-08 09:39:16 +00:00
|
|
|
export EXEFS_SRC = exefs_src
|