introduce a "SRB2_TARGET_PORT" variable (name can be changed later) to store a string representing the port

this does not currently replace the existing X=1 flags for each SRB2 port, just so you know

(also this is very experimental and incomplete)
This commit is contained in:
Monster Iestyn 2019-01-05 23:02:14 +00:00
parent 5ac187f81c
commit d44c4546f4

View file

@ -96,6 +96,12 @@ ifdef DC
NOCASTALIGNWARN=1
endif
#--------------------
#--------------------
#Warning flags
#--------------------
#--------------------
OLDWFLAGS:=$(WFLAGS)
# -W -Wno-unused
WFLAGS=-Wall
@ -230,8 +236,11 @@ ifdef GCC80
WFLAGS+=-Wno-stringop-overflow
endif
#--------------------
#--------------------
#indicate platform and what interface use with
#--------------------
#--------------------
ifndef WINCE
ifndef XBOX
ifndef PSP
@ -260,7 +269,87 @@ endif
endif
endif
ifdef DJGPPDOS
SRB2_TARGET_PORT=DOS
endif
ifdef DUMMY
SRB2_TARGET_PORT=DUMMY
endif
ifdef MINGW
SRB2_TARGET_PORT=WIN32
endif
ifdef LINUX
SRB2_TARGET_PORT=LINUX
endif
ifdef MACOSX
SRB2_TARGET_PORT=MACOSX
endif
ifdef FREEBSD
SRB2_TARGET_PORT=FREEBSD
endif
ifdef SOLARIS
SRB2_TARGET_PORT=SOLARIS
endif
ifdef CYGWIN32
SRB2_TARGET_PORT=CYGWIN
endif
ifdef HAIKU
SRB2_TARGET_PORT=HAIKU
endif
# NOTE: ports below this line will be removed in 2.2
#Windows CE
ifdef WINCE
SRB2_TARGET_PORT=WINCE
endif
#console ports
ifdef XBOX
SRB2_TARGET_PORT=XBOX
endif
ifdef PSP
SRB2_TARGET_PORT=PSP
endif
ifdef DC
SRB2_TARGET_PORT=DREAMCAST
endif
ifdef WII
SRB2_TARGET_PORT=WII
endif
ifdef PS3N
SRB2_TARGET_PORT=PS3
endif
ifdef NDS
SRB2_TARGET_PORT=NDS
endif
ifdef GP2X
SRB2_TARGET_PORT=GP2X
endif
SRB2_TARGET_PORT?=UNKNOWN
#--------------------
#--------------------
#determine the interface directory (where you put all i_*.c)
#--------------------
#--------------------
i_cdmus_o=$(OBJDIR)/i_cdmus.o
i_net_o=$(OBJDIR)/i_net.o
i_system_o=$(OBJDIR)/i_system.o
@ -289,8 +378,16 @@ ifndef ECHO
UPX_OPTS+=-q
endif
#--------------------
#--------------------
#Interface Setup
ifdef DJGPPDOS
#--------------------
#--------------------
#--------------------
#DJGPPDOS
#--------------------
ifeq ($(SRB2_TARGET_PORT), DOS)
INTERFACE=djgppdos
NASMFORMAT=coff
OBJDIR:=$(OBJDIR)/djgppdos
@ -299,74 +396,21 @@ ifdef WATTCP
endif
WFLAGS+=-Wno-format
BIN:=$(BIN)/Dos
else
ifdef DUMMY
endif
#--------------------
#DUMMY
#--------------------
ifeq ($(SRB2_TARGET_PORT), DUMMY)
INTERFACE=dummy
OBJDIR:=$(OBJDIR)/dummy
BIN:=$(BIN)/dummy
else
ifdef LINUX
NASMFORMAT=elf -DLINUX
SDL=1
ifdef LINUX64
OBJDIR:=$(OBJDIR)/Linux64
BIN:=$(BIN)/Linux64
else
OBJDIR:=$(OBJDIR)/Linux
BIN:=$(BIN)/Linux
endif
else
ifdef FREEBSD
INTERFACE=sdl
NASMFORMAT=elf -DLINUX
SDL=1
OBJDIR:=$(OBJDIR)/FreeBSD
BIN:=$(BIN)/FreeBSD
else
ifdef SOLARIS
INTERFACE=sdl
NASMFORMAT=elf -DLINUX
SDL=1
OBJDIR:=$(OBJDIR)/Solaris
BIN:=$(BIN)/Solaris
else
ifdef CYGWIN32
INTERFACE=sdl
NASMFORMAT=win32
SDL=1
OBJDIR:=$(OBJDIR)/cygwin
BIN:=$(BIN)/Cygwin
else
ifdef WII
INTERFACE=sdl12
NONX86=1
STATIC=1
PREFIX?=powerpc-eabi
SDL=1
SDL12=1
SDLMAIN=1
OBJDIR:=$(OBJDIR)/Wii
BIN:=$(BIN)/Wii
NOUPX=1
else
ifdef PS3N
INTERFACE=sdl12
NONX86=1
STATIC=1
PREFIX?=ppu
SDL=1
SDL12=1
# unsure?
#SDLMAIN=1
# can't compile SDL_mixer for ps3...
NOMIXER=1
OBJDIR:=$(OBJDIR)/PS3
BIN:=$(BIN)/PS3
else
ifdef MINGW
#--------------------
#MINGW/MINGW64
#--------------------
ifeq ($(SRB2_TARGET_PORT), WIN32)
INTERFACE=win32
#Use SDL by default, unless we want DirectX for srb2dd.exe
ifndef DIRECTX
@ -381,8 +425,97 @@ else #32-bit
OBJDIR:=$(OBJDIR)/Mingw
BIN:=$(BIN)/Mingw
endif
endif
#--------------------
#LINUX
#--------------------
ifeq ($(SRB2_TARGET_PORT), LINUX)
NASMFORMAT=elf -DLINUX
SDL=1
ifdef LINUX64
OBJDIR:=$(OBJDIR)/Linux64
BIN:=$(BIN)/Linux64
else
ifdef XBOX
OBJDIR:=$(OBJDIR)/Linux
BIN:=$(BIN)/Linux
endif
endif
#--------------------
#FREEBSD
#--------------------
ifeq ($(SRB2_TARGET_PORT), FREEBSD)
INTERFACE=sdl
NASMFORMAT=elf -DLINUX
SDL=1
OBJDIR:=$(OBJDIR)/FreeBSD
BIN:=$(BIN)/FreeBSD
endif
#--------------------
#SOLARIS
#--------------------
ifeq ($(SRB2_TARGET_PORT), SOLARIS)
INTERFACE=sdl
NASMFORMAT=elf -DLINUX
SDL=1
OBJDIR:=$(OBJDIR)/Solaris
BIN:=$(BIN)/Solaris
endif
#--------------------
#CYGWIN32
#--------------------
ifeq ($(SRB2_TARGET_PORT), CYGWIN)
INTERFACE=sdl
NASMFORMAT=win32
SDL=1
OBJDIR:=$(OBJDIR)/cygwin
BIN:=$(BIN)/Cygwin
endif
#--------------------
#WII
#--------------------
ifeq ($(SRB2_TARGET_PORT), WII)
INTERFACE=sdl12
NONX86=1
STATIC=1
PREFIX?=powerpc-eabi
SDL=1
SDL12=1
SDLMAIN=1
OBJDIR:=$(OBJDIR)/Wii
BIN:=$(BIN)/Wii
NOUPX=1
endif
#--------------------
#PS3N
#--------------------
ifeq ($(SRB2_TARGET_PORT), PS3)
INTERFACE=sdl12
NONX86=1
STATIC=1
PREFIX?=ppu
SDL=1
SDL12=1
# unsure?
#SDLMAIN=1
# can't compile SDL_mixer for ps3...
NOMIXER=1
OBJDIR:=$(OBJDIR)/PS3
BIN:=$(BIN)/PS3
endif
#--------------------
#XBOX
#--------------------
ifeq ($(SRB2_TARGET_PORT), XBOX)
INTERFACE=sdl12
NASMFORMAT=win32
PREFIX?=/usr/local/openxdk/bin/i386-pc-xbox
@ -390,8 +523,12 @@ ifdef XBOX
SDL12=1
OBJDIR:=$(OBJDIR)/XBOX
BIN:=$(BIN)/XBOX
else
ifdef PSP
endif
#--------------------
#PSP
#--------------------
ifeq ($(SRB2_TARGET_PORT), PSP)
INTERFACE=sdl12
NONX86=1
SDL=1
@ -399,8 +536,12 @@ ifdef PSP
OBJDIR:=$(OBJDIR)/PSP
BIN:=$(BIN)/PSP
NOUPX=1
else
ifdef DC
endif
#--------------------
#DC
#--------------------
ifeq ($(SRB2_TARGET_PORT), DREAMCAST)
INTERFACE=sdl12
NONX86=1
SDL=1
@ -408,8 +549,12 @@ ifdef DC
OBJDIR:=$(OBJDIR)/DC
BIN:=$(BIN)/DC
NOUPX=1
else
ifdef WINCE
endif
#--------------------
#WINCE
#--------------------
ifeq ($(SRB2_TARGET_PORT), WINCE)
INTERFACE=sdl12
NONX86=1
PREFIX?=arm-wince-pe
@ -417,33 +562,33 @@ ifdef WINCE
SDL12=1
OBJDIR:=$(OBJDIR)/WinCE
BIN:=$(BIN)/WinCE
else
ifdef NDS
endif
#--------------------
#NDS
#--------------------
ifeq ($(SRB2_TARGET_PORT), NDS)
INTERFACE=nds
OBJDIR:=$(OBJDIR)/nds
BIN:=$(BIN)/nds
NOUPX=1
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
ifdef GP2X
#--------------------
#GP2X
#--------------------
ifeq ($(SRB2_TARGET_PORT), GP2X)
ifdef SDL
SDL12=1
endif
endif
#--------------------
#--------------------
#--------------------
#--------------------
ifdef ARCHNAME
OBJDIR:=$(OBJDIR)/$(ARCHNAME)
BIN:=$(BIN)/$(ARCHNAME)
@ -466,7 +611,7 @@ endif
# because Apple screws with us on this
# need to get bintools from homebrew
ifdef MACOSX
ifeq ($(SRB2_TARGET_PORT), MACOSX)
CC=clang
CXX=clang
OBJCOPY=gobjcopy
@ -487,7 +632,7 @@ endif
OBJDIR:=$(OBJDIR)/SDL
endif
ifndef DUMMY
ifneq ($(SRB2_TARGET_PORT), DUMMY)
ifdef DEBUGMODE
OBJDIR:=$(OBJDIR)/Debug
BIN:=$(BIN)/Debug