mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-18 16:27:34 +01:00
* [CI] Fix 3DS try 1
* [CI] Fix 3DS try 2
* [CI] Fix 3DS try 3
* [CI] Fix 3DS try 4
* [CI] Fix 3DS try 5
* [CI] Fix 3DS try 6
* [CI] Fix 3DS try 7
* [CI] Fix 3DS try 8
* [CI] Fix 3DS try 9
* [CI] Fix 3DS try 10
* [CI] Fix 3DS try 11
* [CI] Fix 3DS try 12
* [CI] Fix 3DS try 13
* [CI] Fix 3DS try 14
* [CI] Fix 3DS try 15
* [CI] Fix 3DS try 16
* [CI] Fix 3DS try 17
* [CI] Fix 3DS try 18
* [CI] Fix 3DS try 19
* [CI] Make other simulators than 3DS working
* [CI] Fix 3DS without breaking others simulators try 1
* Apply suggestions from code review
* Improve SDL assert
* Fix SDL assert
* Fix SDL assert 2
* [CI] Enable iOS, macOS and 3DS tests by default
* [CI] Change epsilon-sdk tap url
* Revert "[CI] Change epsilon-sdk tap url"
This reverts commit 9516607aba.
71 lines
1.6 KiB
Makefile
71 lines
1.6 KiB
Makefile
|
|
ifeq ($(strip $(DEVKITARM)),)
|
|
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
|
|
endif
|
|
|
|
ifeq ($(strip $(DEVKITPRO)),)
|
|
$(error "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to>devkitPro)
|
|
endif
|
|
|
|
DEVKITPATH=$(shell echo "$(DEVKITPRO)" | sed -e 's/^\([a-zA-Z]\):/\/\1/')
|
|
|
|
PREFIX = $(DEVKITPATH)/devkitARM/bin/arm-none-eabi-
|
|
|
|
CC = $(PREFIX)gcc
|
|
CXX = $(PREFIX)g++
|
|
LD = $(CXX)
|
|
GDB = $(PREFIX)gdb
|
|
OBJCOPY = $(PREFIX)objcopy
|
|
SIZE = $(PREFIX)size
|
|
|
|
|
|
ARCH = -march=armv6k -mtune=mpcore -mfloat-abi=hard -mtp=soft
|
|
|
|
CFLAGS = -g -Wall -O2 -mword-relocations \
|
|
-ffunction-sections \
|
|
$(ARCH)
|
|
|
|
|
|
LIBDIRS := $(DEVKITPRO)/libctru
|
|
|
|
INCLUDE = $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
|
|
-I$(CURDIR)/$(BUILD)
|
|
|
|
CFLAGS += $(INCLUDE) -DARM11 -D_3DS -D__3DS__
|
|
|
|
CXXFLAGS = $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11
|
|
|
|
ASFLAGS = -g $(ARCH)
|
|
LDFLAGS = -specs=3dsx.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
|
|
|
|
LIBS = -lctru -lm
|
|
|
|
|
|
# Always generate debug information
|
|
SFLAGS += -ggdb3
|
|
|
|
# Put data/code symbols in their own subsection
|
|
# This allows the linker script to precisely place a given symbol
|
|
SFLAGS += -fdata-sections -ffunction-sections
|
|
|
|
ifeq ($(DEBUG),1)
|
|
LTO ?= 0
|
|
else
|
|
LTO ?= 1
|
|
endif
|
|
|
|
ifeq ($(LTO),1)
|
|
# Use link-time optimization if LTO=1
|
|
SFLAGS += -flto
|
|
endif
|
|
|
|
# Get rid of unused symbols. This is also useful even if LTO=1.
|
|
LDFLAGS += -Wl,--gc-sections
|
|
|
|
LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
|
|
|
|
LDFLAGS += $(SFLAGS) $(LIBPATHS) $(LIBS) -lgcc
|
|
|
|
# To debug linker scripts, add the following line
|
|
# LDFLAGS += -Wl,-M
|