diff options
| -rwxr-xr-x | configure | 120 | 
1 files changed, 59 insertions, 61 deletions
| @@ -439,7 +439,7 @@ get_system_exe_extension() {  	arm-riscos)  		_exeext=",ff8"  		;; -	dreamcast | ds | 3ds | gamecube | n64 | ps2 | psp | wii) +	3ds | dreamcast | ds | gamecube | n64 | ps2 | psp | wii)  		_exeext=".elf"  		;;  	gph-linux) @@ -842,9 +842,9 @@ Usage: $0 [OPTIONS]...  Configuration:    -h, --help              display this help and exit -  --backend=BACKEND       backend to build (android, tizen, dc, dingux, ds, 3ds, gcw0, +  --backend=BACKEND       backend to build (3ds, android, dc, dingux, ds, gcw0,                            gph, iphone, ios7, linuxmoto, maemo, n64, null, openpandora, -                          ps2, psp, samsungtv, sdl, webos, wii, wince) [sdl] +                          ps2, psp, samsungtv, sdl, tizen, webos, wii, wince) [sdl]  Installation directories:    --prefix=PREFIX         install architecture-independent files in PREFIX @@ -870,16 +870,15 @@ Fine tuning of the installation directories:  Special configuration feature:    --host=HOST             cross-compile to target HOST (arm-linux, ...) -                          special targets: android-arm for Android ARM +                          special targets: 3ds for Nintendo 3DS +                                           android-arm for Android ARM                                             android-mips for Android MIPS                                             android-x86 for Android x86 -                                           tizen for Samsung Tizen                                             caanoo for Caanoo                                             dingux for Dingux                                             raspberrypi for Raspberry Pi                                             dreamcast for Sega Dreamcast                                             ds for Nintendo DS -                                           3ds for Nintendo 3DS                                             gamecube for Nintendo GameCube                                             gcw0 for GCW Zero                                             gp2x for GP2X @@ -897,6 +896,7 @@ Special configuration feature:                                             ps3 for PlayStation 3                                             psp for PlayStation Portable                                             samsungtv for Samsung TV +                                           tizen for Samsung Tizen                                             webos for HP Palm WebOS                                             wii for Nintendo Wii                                             wince for Windows CE @@ -1304,6 +1304,11 @@ get_system_exe_extension $guessed_host  NATIVEEXEEXT=$_exeext  case $_host in +3ds) +	_host_os=3ds +	_host_cpu=arm +	_host_alias=arm-none-eabi +	;;  android | android-arm | android-v7a | android-arm-v7a | ouya)  	_host_os=android  	_host_cpu=arm @@ -1352,11 +1357,6 @@ ds)  	_host_cpu=arm  	_host_alias=arm-eabi  	;; -3ds) -	_host_os=3ds -	_host_cpu=arm -	_host_alias=arm-none-eabi -	;;  gamecube)  	_host_os=gamecube  	_host_cpu=powerpc @@ -1590,7 +1590,7 @@ android)  		exit 1  	fi  	;; -ds | 3ds | gamecube | wii) +3ds | ds | gamecube | wii)  	if test -z "$DEVKITPRO"; then  		echo "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to devkitPRO>"  		exit 1 @@ -1846,7 +1846,7 @@ if test "$have_gcc" = yes ; then  			case $_host_os in  			# newlib-based system include files suppress non-C89 function  			# declarations under __STRICT_ANSI__ -			amigaos* | android | dreamcast | ds | 3ds | gamecube | mingw* | n64 | psp | ps2 | ps3 | tizen | wii | wince ) +			3ds | amigaos* | android | dreamcast | ds | gamecube | mingw* | n64 | psp | ps2 | ps3 | tizen | wii | wince )  				;;  			*)  				append_var CXXFLAGS "-ansi" @@ -2146,6 +2146,27 @@ esac  echo_n "Checking hosttype... "  echo $_host_os  case $_host_os in +	3ds) +		_optimization_level=-O2 +		append_var DEFINES "-D__3DS__" +		append_var DEFINES "-DARM" +		append_var DEFINES "-DARM11" +		append_var CXXFLAGS "-march=armv6k" +		append_var CXXFLAGS "-mtune=mpcore" +		append_var CXXFLAGS "-mword-relocations" +		append_var CXXFLAGS "-mfloat-abi=hard" +		append_var CXXFLAGS "-ffunction-sections" +		append_var CXXFLAGS "-fomit-frame-pointer" +		append_var CXXFLAGS "-I$DEVKITPRO/libctru/include" +		append_var CXXFLAGS "-I$DEVKITPRO/portlibs/3ds/include" +		if test "$_dynamic_modules" = no ; then +			append_var LDFLAGS "-Wl,--gc-sections" +		else +			append_var LDFLAGS "-Wl,--no-gc-sections" +		fi +		append_var LDFLAGS "-L$DEVKITPRO/portlibs/3ds/lib" +		append_var LIBS "-lcitro3d -lctru" +		;;  	amigaos*)  		append_var LDFLAGS "-Wl,--export-dynamic"  		append_var LDFLAGS "-L/sdk/local/newlib/lib" @@ -2406,27 +2427,6 @@ case $_host_os in  		append_var LDFLAGS "-L$DEVKITPRO/libnds/lib"  		append_var LIBS "-lnds9"  		;; -	3ds) -		_optimization_level=-O2 -		append_var DEFINES "-D__3DS__" -		append_var DEFINES "-DARM" -		append_var DEFINES "-DARM11" -		append_var CXXFLAGS "-march=armv6k" -		append_var CXXFLAGS "-mtune=mpcore" -		append_var CXXFLAGS "-mword-relocations" -		append_var CXXFLAGS "-mfloat-abi=hard" -		append_var CXXFLAGS "-ffunction-sections" -		append_var CXXFLAGS "-fomit-frame-pointer" -		append_var CXXFLAGS "-isystem $DEVKITPRO/libctru/include" -		append_var CXXFLAGS "-isystem $DEVKITPRO/devkitARM/arm-none-eabi/include" -		append_var CXXFLAGS "-isystem $DEVKITPRO/portlibs/3ds/include" -		if test "$_dynamic_modules" = no ; then -			append_var LDFLAGS "-Wl,--gc-sections" -		else -			append_var LDFLAGS "-Wl,--no-gc-sections" -		fi -		append_var LIBS "-lcitro3d -lctru" -		;;  	freebsd*)  		append_var LDFLAGS "-L/usr/local/lib"  		append_var CXXFLAGS "-I/usr/local/include" @@ -2604,6 +2604,18 @@ if test -n "$_host"; then  	# Cross-compiling mode - add your target here if needed  	echo "Cross-compiling to $_host"  	case "$_host" in +		3ds) +			append_var DEFINES "-DDISABLE_FANCY_THEMES" +			append_var DEFINES "-DDISABLE_SID" +			append_var DEFINES "-DDISABLE_NES_APU" +			_backend="3ds" +			_build_scalers=no +			_vkeybd=yes +			_mt32emu=no +			# Should use Tremor instead of Vorbis +			_vorbis=no +			_port_mk="backends/platform/3ds/3ds.mk" +			;;  		android | android-arm | android-v7a | android-arm-v7a | android-mips | android-x86 | ouya)  			# we link a .so as default  			append_var LDFLAGS "-shared" @@ -2733,25 +2745,6 @@ if test -n "$_host"; then  			_mt32emu=no  			_port_mk="backends/platform/ds/ds.mk"  			;; -		3ds) -			append_var DEFINES "-DDISABLE_FANCY_THEMES" -			append_var DEFINES "-DDISABLE_SID" -			append_var DEFINES "-DDISABLE_NES_APU" -			_backend="3ds" -			_build_scalers=no -			_vkeybd=yes -			_mt32emu=no -			_vorbis=no -			_tremor=yes -			_mad=yes -			_zlib=yes -			_jpeg=yes -			_png=yes -			_flac=yes -			_faad=yes -			_freetype2=yes -			_port_mk="backends/platform/3ds/3ds.mk" -			;;  		gamecube)  			_backend="wii"  			_build_scalers=no @@ -3081,6 +3074,8 @@ fi  # Backend related stuff  #  case $_backend in +	3ds) +		;;  	android)  		append_var DEFINES "-DREDUCE_MEMORY_USAGE"  		append_var CXXFLAGS "-Wa,--noexecstack" @@ -3183,6 +3178,8 @@ case $_backend in  		append_var LDFLAGS "-shared"  		append_var LDFLAGS "-fpic"  		;; +	sdl) +		;;  	tizen)  		# dirent.h not available. NONSTANDARD_PORT==ensure portdefs.h is included  		append_var DEFINES "-DTIZEN -DDISABLE_STDIO_FILESTREAM -DNONSTANDARD_PORT" @@ -3231,10 +3228,6 @@ case $_backend in  		append_var DEFINES "-DSDL_BACKEND"  		add_line_to_config_mk "SDL_BACKEND = 1"  		;; -	3ds) -		;; -	sdl) -		;;  	*)  		echo "support for $_backend backend not implemented in configure script yet"  		exit 1 @@ -3269,7 +3262,7 @@ esac  # Enable 16bit support only for backends which support it  #  case $_backend in -	android | dingux | dc | 3ds | gph | iphone | ios7 | maemo | openpandora | psp | samsungtv | sdl | tizen | webos | wii) +	3ds | android | dingux | dc | gph | iphone | ios7 | maemo | openpandora | psp | samsungtv | sdl | tizen | webos | wii)  		if test "$_16bit" = auto ; then  			_16bit=yes  		else @@ -4561,6 +4554,14 @@ fi  # after all of CXXFLAGS, LDFLAGS, LIBS etc. have been setup  #  case $_backend in +	3ds) +		if test "$_freetype2" = yes -a "$_png" = yes; then +			append_var LIBS "-lpng" +		fi +		if test "$_tremor" = yes -o "$_flac" = yes; then +			append_var LIBS "-logg" +		fi +		;;  	android)  		# ssp at this point so the cxxtests link  		if test "$_debug_build" = yes; then @@ -4592,9 +4593,6 @@ case $_backend in  		# during linking stage  		append_var LIBS "-lc -lgcc -lnosys"  		;; -	3ds) -		append_var LIBS "-logg -lpng" -		;;  esac | 
