mirror of
https://github.com/RetroDECK/Supermodel.git
synced 2024-11-25 15:15:40 +00:00
Update make files and fix build for the various options (Harry Tuttle)
This commit is contained in:
parent
b5bbda67d0
commit
04758e38b6
|
@ -30,10 +30,7 @@
|
||||||
# Build Options
|
# Build Options
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
#
|
DELETE = rm -d -r -f
|
||||||
# Include console-based debugger in emulator ('yes' or 'no')
|
|
||||||
#
|
|
||||||
ENABLE_DEBUGGER = no
|
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -54,24 +51,23 @@ LD = gcc
|
||||||
#
|
#
|
||||||
|
|
||||||
SDL_CFLAGS =
|
SDL_CFLAGS =
|
||||||
SDL_LDFLAGS = -framework SDL -framework AGL -framework OpenGL -framework GLUT -framework Cocoa
|
SDL_LIBS = -framework SDL -framework AGL -framework OpenGL -framework GLUT -framework Cocoa
|
||||||
|
|
||||||
#
|
#
|
||||||
# OSX-specific
|
# OSX-specific
|
||||||
#
|
#
|
||||||
|
|
||||||
PLATFORM_CFLAGS = -DSUPERMODEL_OSX -DUSE_FILE32API -F/Library/Frameworks/
|
PLATFORM_CFLAGS = $(SDL_CFLAGS) -DSUPERMODEL_OSX -DUSE_FILE32API -F/Library/Frameworks/
|
||||||
PLATFORM_LDFLAGS = -lz -lm -lstdc++ -F/Library/Frameworks/
|
PLATFORM_LDFLAGS = $(SDL_LIBS) -lz -lm -lstdc++ -F/Library/Frameworks/
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Core Makefile
|
# Core Makefile
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
MUSASHI_OUTFILE = $(OBJ_DIR)/m68kmake
|
|
||||||
|
|
||||||
include Makefiles/Makefile.inc
|
include Makefiles/Makefile.inc
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm $(OUTFILE)
|
$(SILENT)echo Cleaning up \"$(BIN_DIR)\" and \"$(OBJ_DIR)\"...
|
||||||
rm -f $(OBJ_DIR)/*
|
$(SILENT)$(DELETE) $(BIN_DIR)
|
||||||
|
$(SILENT)$(DELETE) $(OBJ_DIR)
|
||||||
|
|
|
@ -30,10 +30,7 @@
|
||||||
# Build Options
|
# Build Options
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
#
|
DELETE = rm -d -r -f
|
||||||
# Include console-based debugger in emulator ('yes' or 'no')
|
|
||||||
#
|
|
||||||
ENABLE_DEBUGGER = no
|
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -54,24 +51,23 @@ LD = gcc
|
||||||
#
|
#
|
||||||
|
|
||||||
SDL_CFLAGS = `sdl-config --cflags`
|
SDL_CFLAGS = `sdl-config --cflags`
|
||||||
SDL_LDFLAGS = `sdl-config --libs`
|
SDL_LIBS = `sdl-config --libs`
|
||||||
|
|
||||||
#
|
#
|
||||||
# UNIX-specific
|
# UNIX-specific
|
||||||
#
|
#
|
||||||
|
|
||||||
PLATFORM_CFLAGS =
|
PLATFORM_CFLAGS = $(SDL_CFLAGS)
|
||||||
PLATFORM_LDFLAGS = -lGL -lGLU -lz -lm -lstdc++
|
PLATFORM_LDFLAGS = $(SDL_LIBS) -lGL -lGLU -lz -lm -lstdc++
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Core Makefile
|
# Core Makefile
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
MUSASHI_OUTFILE = $(OBJ_DIR)/m68kmake
|
|
||||||
|
|
||||||
include Makefiles/Makefile.inc
|
include Makefiles/Makefile.inc
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm $(OUTFILE)
|
$(SILENT)echo Cleaning up \"$(BIN_DIR)\" and \"$(OBJ_DIR)\"...
|
||||||
rm -f $(OBJ_DIR)/*
|
$(SILENT)$(DELETE) $(BIN_DIR)
|
||||||
|
$(SILENT)$(DELETE) $(OBJ_DIR)
|
||||||
|
|
|
@ -34,11 +34,28 @@
|
||||||
# Bitness of build ('32' or '64')
|
# Bitness of build ('32' or '64')
|
||||||
#
|
#
|
||||||
BITS = 64
|
BITS = 64
|
||||||
|
# First check if we're under MSYS2 or not, and then get bitness of CPU
|
||||||
|
ifeq ($(strip $(MSYSTEM)),)
|
||||||
|
ifeq ($(findstring 64,$(strip $(PROCESSOR_ARCHITECTURE))),)
|
||||||
|
BITS = 32
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
ifeq ($(findstring 32,$(strip $(MSYSTEM_CARCH))),32)
|
||||||
|
BITS = 32
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
# Safety check: can be only '32' or '64' otherwise defaults to '64'
|
||||||
|
ifneq ($(filter $(strip $(BITS)),32 64),$(strip $(BITS)))
|
||||||
|
override BITS = 64
|
||||||
|
endif
|
||||||
|
|
||||||
#
|
#
|
||||||
# Include console-based debugger in emulator ('yes' or 'no')
|
# Use Bash or Windows Prompt shell commands?
|
||||||
#
|
#
|
||||||
ENABLE_DEBUGGER = no
|
DELETE = rm -d -r -f
|
||||||
|
ifeq ($(strip $(MSYSTEM)),)
|
||||||
|
DELETE = rmdir /s /q
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -47,69 +64,64 @@ ENABLE_DEBUGGER = no
|
||||||
# Edit library and include paths as needed.
|
# Edit library and include paths as needed.
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
|
#
|
||||||
|
# Build environment
|
||||||
|
#
|
||||||
|
|
||||||
|
# Leave empty if 'mingwXX' folder is located on the root filesystem
|
||||||
|
MINGW_ROOT =
|
||||||
|
|
||||||
|
# 'mingw64' or 'mingw32' for respectively 64 or 32 bits builds.
|
||||||
|
# MSYS2 uses that scheme, customize it if necessary
|
||||||
|
MINGW_BASE = mingw$(strip $(BITS))
|
||||||
|
|
||||||
|
# The resulting 'mingwXX' base name for includes and libs
|
||||||
|
MINGW_DIR = $(strip $(MINGW_ROOT))/$(strip $(MINGW_BASE))
|
||||||
|
|
||||||
#
|
#
|
||||||
# Toolchain
|
# Toolchain
|
||||||
#
|
#
|
||||||
CC_64 = gcc
|
|
||||||
CXX_64 = g++
|
CC = gcc
|
||||||
LD_64 = g++
|
CXX = g++
|
||||||
CC_32 = gcc
|
LD = g++
|
||||||
CXX_32 = g++
|
|
||||||
LD_32 = g++
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# SDL
|
# SDL
|
||||||
#
|
#
|
||||||
|
#
|
||||||
|
# (At least for SDL) The linked libs order is fundamental for a successful compiling!
|
||||||
|
# https://stackoverflow.com/questions/24596596/sdl-doesnt-compile-in-native-enviroment
|
||||||
|
# http://www.cplusplus.com/forum/beginner/110753/
|
||||||
|
#
|
||||||
|
|
||||||
SDL_INCLUDE_DIR_64 = c:\tdm-gcc-64\include\SDL
|
SDL_INCLUDE_DIR = $(MINGW_DIR)/include/SDL
|
||||||
SDL_LIB_DIR_64 = c:\tdm-gcc-64\lib
|
SDL_LIB_DIR = $(MINGW_DIR)/lib
|
||||||
SDL_INCLUDE_DIR_32 =
|
SDL_LIBS = -lmingw32 -static-libgcc -static-libstdc++ -lSDLmain -lSDL -liconv -lm -luser32 -lgdi32 -lwinmm -ldxguid
|
||||||
SDL_LIB_DIR_32 =
|
SDL_CFLAGS = -D_GNU_SOURCE=1 -Dmain=SDL_main
|
||||||
|
|
||||||
#
|
#
|
||||||
# MinGW/Windows-specific
|
# MinGW/Windows-specific
|
||||||
#
|
#
|
||||||
|
|
||||||
PLATFORM_CFLAGS_64 = -DSUPERMODEL_WIN32
|
PLATFORM_INCLUDE_DIR = $(SDL_INCLUDE_DIR) $(MINGW_DIR)/include
|
||||||
PLATFORM_LDFLAGS_64 = -lmingw32 -lopengl32 -lglu32 -ldinput8 -ldxguid -lole32 -loleaut32 -lwbemuuid -lz
|
PLATFORM_LIB_DIR = $(SDL_LIB_DIR)
|
||||||
PLATFORM_CFLAGS_32 = -DSUPERMODEL_WIN32
|
PLATFORM_LIBS = -ldinput8 -lglew32 -lglu32 -lole32 -loleaut32 -lopengl32 -lwbemuuid -lws2_32 -lz
|
||||||
PLATFORM_LDFLAGS_32 = -lmingw32 -lopengl32 -lglu32 -ldinput8 -ldxguid -lole32 -loleaut32 -lwbemuuid -lz
|
PLATFORM_CFLAGS = $(SDL_CFLAGS) -DSUPERMODEL_WIN32 $(addprefix -I,$(sort $(PLATFORM_INCLUDE_DIR)))
|
||||||
|
PLATFORM_LDFLAGS = -static -L$(sort $(PLATFORM_LIB_DIR)) $(SDL_LIBS) $(PLATFORM_LIBS)
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Core Makefile
|
# Core Makefile
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
ifeq ($(strip $(BITS)),64)
|
|
||||||
CC = $(CC_64)
|
|
||||||
CXX = $(CXX_64)
|
|
||||||
LD = $(LD_64)
|
|
||||||
PLATFORM_CFLAGS = $(PLATFORM_CFLAGS_64)
|
|
||||||
PLATFORM_LDFLAGS = $(PLATFORM_LDFLAGS_64)
|
|
||||||
SDL_LDFLAGS = -L$(SDL_LIB_DIR_64) -lSDLmain -lSDL
|
|
||||||
SDL_CFLAGS = -I$(SDL_INCLUDE_DIR_64)
|
|
||||||
else
|
|
||||||
CC = $(CC_32)
|
|
||||||
CXX = $(CXX_32)
|
|
||||||
LD = $(LD_32)
|
|
||||||
PLATFORM_CFLAGS = $(PLATFORM_CFLAGS_32)
|
|
||||||
PLATFORM_LDFLAGS = $(PLATFORM_LDFLAGS_32)
|
|
||||||
SDL_LDFLAGS = -L$(SDL_LIB_DIR_32) -lSDLmain -lSDL
|
|
||||||
SDL_CFLAGS = -I$(SDL_INCLUDE_DIR_32)
|
|
||||||
endif
|
|
||||||
|
|
||||||
PLATFORM_SRC_FILES = \
|
PLATFORM_SRC_FILES = \
|
||||||
Src/OSD/Windows/DirectInputSystem.cpp \
|
Src/OSD/Windows/DirectInputSystem.cpp \
|
||||||
Src/OSD/Windows/WinOutputs.cpp
|
Src/OSD/Windows/WinOutputs.cpp
|
||||||
|
|
||||||
MUSASHI_OUTFILE = $(OBJ_DIR)/m68kmake.exe
|
|
||||||
|
|
||||||
include Makefiles/Makefile.inc
|
include Makefiles/Makefile.inc
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
del $(BIN_DIR)\$(OUTFILE).exe
|
$(SILENT)echo Cleaning up \"$(BIN_DIR)\" and \"$(OBJ_DIR)\"...
|
||||||
del $(OBJ_DIR)\*.d
|
$(SILENT)$(DELETE) $(BIN_DIR)
|
||||||
del $(OBJ_DIR)\*.o
|
$(SILENT)$(DELETE) $(OBJ_DIR)
|
||||||
del $(OBJ_DIR)\*.c
|
|
||||||
del $(OBJ_DIR)\*.h
|
|
||||||
del $(OBJ_DIR)\*.exe
|
|
||||||
|
|
|
@ -26,6 +26,55 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Build Options
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
#
|
||||||
|
# Verbose progression
|
||||||
|
#
|
||||||
|
VERBOSE =
|
||||||
|
ifneq ($(filter $(strip $(VERBOSE)),0 1),$(strip $(VERBOSE)))
|
||||||
|
override VERBOSE =
|
||||||
|
endif
|
||||||
|
SILENT = @
|
||||||
|
ifeq ($(strip $(VERBOSE)),1)
|
||||||
|
SILENT =
|
||||||
|
endif
|
||||||
|
|
||||||
|
#
|
||||||
|
# Enable render state analyser for the legacy 3D engine (will slow down emulation!)
|
||||||
|
#
|
||||||
|
DEBUG =
|
||||||
|
ifneq ($(filter $(strip $(DEBUG)),0 1),$(strip $(DEBUG)))
|
||||||
|
override DEBUG =
|
||||||
|
endif
|
||||||
|
|
||||||
|
#
|
||||||
|
# Enable support for Model3 Net Board emulation
|
||||||
|
#
|
||||||
|
NET_BOARD =
|
||||||
|
ifneq ($(filter $(strip $(NET_BOARD)),0 1),$(strip $(NET_BOARD)))
|
||||||
|
override NET_BOARD =
|
||||||
|
endif
|
||||||
|
|
||||||
|
#
|
||||||
|
# Enable Bart's new (experimental) Real3D frame timing
|
||||||
|
#
|
||||||
|
NEW_FRAME_TIMING =
|
||||||
|
ifneq ($(filter $(strip $(NEW_FRAME_TIMING)),0 1),$(strip $(NEW_FRAME_TIMING)))
|
||||||
|
override NEW_FRAME_TIMING =
|
||||||
|
endif
|
||||||
|
|
||||||
|
#
|
||||||
|
# Include console-based debugger in emulator ('yes' or 'no')
|
||||||
|
#
|
||||||
|
ENABLE_DEBUGGER =
|
||||||
|
ifneq ($(filter $(strip $(ENABLE_DEBUGGER)),0 1),$(strip $(ENABLE_DEBUGGER)))
|
||||||
|
override ENABLE_DEBUGGER =
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Source Files
|
# Source Files
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -110,10 +159,18 @@ SRC_FILES = \
|
||||||
Src/ROMSet.cpp \
|
Src/ROMSet.cpp \
|
||||||
$(PLATFORM_SRC_FILES)
|
$(PLATFORM_SRC_FILES)
|
||||||
|
|
||||||
ifeq ($(strip $(ENABLE_DEBUGGER)),yes)
|
ifeq ($(strip $(NET_BOARD)),1)
|
||||||
|
SRC_FILES += \
|
||||||
|
Src/Network/UDPReceive.cpp \
|
||||||
|
Src/Network/UDPSend.cpp \
|
||||||
|
Src/Network/WinSockWrap.cpp \
|
||||||
|
Src/Network/NetBoard.cpp
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(strip $(ENABLE_DEBUGGER)),1)
|
||||||
SRC_FILES += \
|
SRC_FILES += \
|
||||||
Src/Debugger/Debugger.cpp \
|
Src/Debugger/Debugger.cpp \
|
||||||
Src/Debug/ConsoleDebugger.cpp \
|
Src/Debugger/ConsoleDebugger.cpp \
|
||||||
Src/Debugger/SupermodelDebugger.cpp \
|
Src/Debugger/SupermodelDebugger.cpp \
|
||||||
Src/Debugger/CPUDebug.cpp \
|
Src/Debugger/CPUDebug.cpp \
|
||||||
Src/Debugger/AddressTable.cpp \
|
Src/Debugger/AddressTable.cpp \
|
||||||
|
@ -121,7 +178,7 @@ ifeq ($(strip $(ENABLE_DEBUGGER)),yes)
|
||||||
Src/Debugger/CodeAnalyser.cpp \
|
Src/Debugger/CodeAnalyser.cpp \
|
||||||
Src/Debugger/Exception.cpp \
|
Src/Debugger/Exception.cpp \
|
||||||
Src/Debugger/Interrupt.cpp \
|
Src/Debugger/Interrupt.cpp \
|
||||||
Src/Debugger/IO.cpp \
|
Src/Debugger/DebuggerIO.cpp \
|
||||||
Src/Debugger/Label.cpp \
|
Src/Debugger/Label.cpp \
|
||||||
Src/Debugger/Register.cpp \
|
Src/Debugger/Register.cpp \
|
||||||
Src/Debugger/Watch.cpp \
|
Src/Debugger/Watch.cpp \
|
||||||
|
@ -131,7 +188,10 @@ ifeq ($(strip $(ENABLE_DEBUGGER)),yes)
|
||||||
Src/Debugger/CPU/Z80Debug.cpp
|
Src/Debugger/CPU/Z80Debug.cpp
|
||||||
endif
|
endif
|
||||||
|
|
||||||
OBJ_FILES = $(foreach file,$(SRC_FILES),$(OBJ_DIR)/$(basename $(notdir $(file))).o)
|
#
|
||||||
|
# Sorted-path compile order
|
||||||
|
#
|
||||||
|
OBJ_FILES = $(foreach file,$(sort $(SRC_FILES)),$(OBJ_DIR)/$(basename $(notdir $(file))).o)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Deduce include directories from the source file list. The sort function
|
# Deduce include directories from the source file list. The sort function
|
||||||
|
@ -144,32 +204,49 @@ INCLUDE_DIRS = $(sort $(foreach file,$(SRC_FILES),$(dir $(file))))
|
||||||
# Output Locations
|
# Output Locations
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
ifeq ($(strip $(BITS)),64)
|
OBJ_DIR = obj$(strip $(BITS))
|
||||||
OBJ_DIR = obj64
|
BIN_DIR = bin$(strip $(BITS))
|
||||||
BIN_DIR = bin64
|
|
||||||
else ifeq ($(strip $(BITS)),32)
|
|
||||||
OBJ_DIR = obj32
|
|
||||||
BIN_DIR = bin32
|
|
||||||
else
|
|
||||||
OBJ_DIR = obj
|
|
||||||
BIN_DIR = bin
|
|
||||||
endif
|
|
||||||
|
|
||||||
OUTFILE = Supermodel
|
OUTFILE = supermodel
|
||||||
|
MUSASHI_OUTFILE = m68kmake
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Compiler Flags
|
# Compiler Flags
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
CPPFLAGS = $(addprefix -I,$(INCLUDE_DIRS)) -DGLEW_STATIC -O3 #-DNEW_FRAME_TIMING
|
ARCH = -march=native -mfpmath=sse
|
||||||
CFLAGS = $(SDL_CFLAGS) $(PLATFORM_CFLAGS) $(CPPFLAGS) -c -Wall -O3
|
BUILD_CFLAGS =
|
||||||
CXXFLAGS = $(CFLAGS) -std=c++11
|
OPT = -O3
|
||||||
LDFLAGS = -o $(BIN_DIR)/$(OUTFILE) $(PLATFORM_LDFLAGS) $(SDL_LDFLAGS) -s
|
#WARN = -Wall
|
||||||
|
WARN = -w
|
||||||
|
CSTD = -std=iso9899:2011
|
||||||
|
CXXSTD = -std=c++11
|
||||||
|
|
||||||
|
COMMON_CFLAGS = -c $(ARCH) $(OPT) $(WARN) $(addprefix -I,$(sort $(INCLUDE_DIRS))) -DGLEW_STATIC
|
||||||
|
|
||||||
|
CFLAGS = $(COMMON_CFLAGS) $(CSTD)
|
||||||
|
CXXFLAGS = $(PLATFORM_CFLAGS) $(COMMON_CFLAGS) $(BUILD_CFLAGS) $(CXXSTD)
|
||||||
|
LDFLAGS = -o $(BIN_DIR)/$(OUTFILE) $(PLATFORM_LDFLAGS) -s
|
||||||
|
|
||||||
|
# If render state analyser is enabled, need to define DEBUG
|
||||||
|
ifeq ($(strip $(DEBUG)),1)
|
||||||
|
BUILD_CFLAGS += -DDEBUG
|
||||||
|
endif
|
||||||
|
|
||||||
|
# If Net Board support is enabled, need to define NET_BOARD
|
||||||
|
ifeq ($(strip $(NET_BOARD)),1)
|
||||||
|
BUILD_CFLAGS += -DNET_BOARD
|
||||||
|
endif
|
||||||
|
|
||||||
|
# If Bart's new frame timing is enabled, need to define NEW_FRAME_TIMING
|
||||||
|
ifeq ($(strip $(NEW_FRAME_TIMING)),1)
|
||||||
|
BUILD_CFLAGS += -DNEW_FRAME_TIMING
|
||||||
|
endif
|
||||||
|
|
||||||
# If built-in debugger enabled, need to define SUPERMODEL_DEBUGGER
|
# If built-in debugger enabled, need to define SUPERMODEL_DEBUGGER
|
||||||
ifeq ($(strip $(ENABLE_DEBUGGER)),yes)
|
ifeq ($(strip $(ENABLE_DEBUGGER)),1)
|
||||||
PLATFORM_CFLAGS += -DSUPERMODEL_DEBUGGER
|
BUILD_CFLAGS += -DSUPERMODEL_DEBUGGER
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -182,17 +259,21 @@ endif
|
||||||
# generated dependencies because otherwise, make gets confused for some reason
|
# generated dependencies because otherwise, make gets confused for some reason
|
||||||
# and thinks the default target is just one of the object files.
|
# and thinks the default target is just one of the object files.
|
||||||
#
|
#
|
||||||
all: $(BIN_DIR) $(OBJ_DIR) $(OBJ_FILES)
|
all: $(BIN_DIR)/$(OUTFILE)
|
||||||
|
|
||||||
|
$(BIN_DIR)/$(OUTFILE): $(BIN_DIR) $(OBJ_DIR) $(OBJ_FILES)
|
||||||
|
$(info --------------------------------------------------------------------------------)
|
||||||
$(info Linking Supermodel : $(BIN_DIR)/$(OUTFILE))
|
$(info Linking Supermodel : $(BIN_DIR)/$(OUTFILE))
|
||||||
@$(LD) $(OBJ_FILES) $(LDFLAGS)
|
$(SILENT)$(LD) $(OBJ_FILES) $(LDFLAGS)
|
||||||
|
$(info --------------------------------------------------------------------------------)
|
||||||
|
|
||||||
$(BIN_DIR):
|
$(BIN_DIR):
|
||||||
$(info Creating directory : $(BIN_DIR))
|
$(info Creating directory : $(BIN_DIR))
|
||||||
@mkdir $(BIN_DIR)
|
$(SILENT)mkdir $(BIN_DIR)
|
||||||
|
|
||||||
$(OBJ_DIR):
|
$(OBJ_DIR):
|
||||||
$(info Creating directory : $(OBJ_DIR))
|
$(info Creating directory : $(OBJ_DIR))
|
||||||
@mkdir $(OBJ_DIR)
|
$(SILENT)mkdir $(OBJ_DIR)
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -219,15 +300,16 @@ VPATH = $(INCLUDE_DIRS)
|
||||||
#
|
#
|
||||||
$(OBJ_DIR)/%.o: %.cpp
|
$(OBJ_DIR)/%.o: %.cpp
|
||||||
$(info Generating dependencies: $< -> $(OBJ_DIR)/$(*F).d)
|
$(info Generating dependencies: $< -> $(OBJ_DIR)/$(*F).d)
|
||||||
@$(CXX) -MM -MP -MT $(OBJ_DIR)/$(*F).o -MT $(OBJ_DIR)/$(*F).d $(CXXFLAGS) $< > $(OBJ_DIR)/$(*F).d
|
$(SILENT)$(CXX) -MM -MP -MT $(OBJ_DIR)/$(*F).o -MT $(OBJ_DIR)/$(*F).d $(CXXFLAGS) $< > $(OBJ_DIR)/$(*F).d
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CXX) $(CXXFLAGS) $< -o $@
|
$(SILENT)$(CXX) $(CXXFLAGS) $< -o $@
|
||||||
|
|
||||||
$(OBJ_DIR)/%.o: %.c
|
$(OBJ_DIR)/%.o: %.c
|
||||||
$(info Generating dependencies: $< -> $(OBJ_DIR)/$(*F).d)
|
$(info Generating dependencies: $< -> $(OBJ_DIR)/$(*F).d)
|
||||||
@$(CC) -MM -MP -MT $(OBJ_DIR)/$(*F).o -MT $(OBJ_DIR)/$(*F).d $(CPPFLAGS) $< > $(OBJ_DIR)/$(*F).d
|
$(SILENT)$(CC) -MM -MP -MT $(OBJ_DIR)/$(*F).o -MT $(OBJ_DIR)/$(*F).d $(CFLAGS) $< > $(OBJ_DIR)/$(*F).d
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $(CFLAGS) $< -o $@
|
$(SILENT)$(CC) $(CFLAGS) $< -o $@
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Musashi 68K emulator
|
# Musashi 68K emulator
|
||||||
|
@ -237,34 +319,37 @@ $(OBJ_DIR)/%.o: %.c
|
||||||
#
|
#
|
||||||
|
|
||||||
MUSASHI_CFLAGS = -ISrc/CPU/68K/Musashi -I$(OBJ_DIR) -DINLINE="static inline" -Wno-unused-variable
|
MUSASHI_CFLAGS = -ISrc/CPU/68K/Musashi -I$(OBJ_DIR) -DINLINE="static inline" -Wno-unused-variable
|
||||||
MUSASHI_LDFLAGS = -o $(MUSASHI_OUTFILE) $(OBJ_DIR)/m68kmake.o
|
MUSASHI_LDFLAGS = -o $(OBJ_DIR)/$(MUSASHI_OUTFILE) $(OBJ_DIR)/m68kmake.o -s
|
||||||
|
|
||||||
$(MUSASHI_OUTFILE): Src/CPU/68K/Musashi/m68kmake.c Src/CPU/68K/Musashi/m68k_in.c
|
$(OBJ_DIR)/$(MUSASHI_OUTFILE): Src/CPU/68K/Musashi/m68kmake.c
|
||||||
|
$(info --------------------------------------------------------------------------------)
|
||||||
$(info Compiling : $< -> $(OBJ_DIR)/m68kmake.o)
|
$(info Compiling : $< -> $(OBJ_DIR)/m68kmake.o)
|
||||||
@$(CC) $< $(CFLAGS) -o $(OBJ_DIR)/m68kmake.o
|
$(SILENT)$(CC) $< $(CFLAGS) -o $(OBJ_DIR)/m68kmake.o
|
||||||
$(info Linking : $(MUSASHI_OUTFILE))
|
$(info Linking : $(MUSASHI_OUTFILE))
|
||||||
@$(LD) $(MUSASHI_LDFLAGS)
|
$(SILENT)$(LD) $(MUSASHI_LDFLAGS)
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kops.h $(OBJ_DIR)/m68kops.c $(OBJ_DIR)/m68kopac.c $(OBJ_DIR)/m68kopdm.c $(OBJ_DIR)/m68kopnz.c: $(MUSASHI_OUTFILE) Src/CPU/68K/Musashi/m68k_in.c Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
$(OBJ_DIR)/m68kops.h: $(OBJ_DIR)/$(MUSASHI_OUTFILE) Src/CPU/68K/Musashi/m68k_in.c
|
||||||
$(info Generating 68K emulator: $@)
|
$(info Generating 68K emulator: $@)
|
||||||
@$(MUSASHI_OUTFILE) $(OBJ_DIR) Src/CPU/68K/Musashi/m68k_in.c
|
$(SILENT)$(OBJ_DIR)/$(MUSASHI_OUTFILE) $(OBJ_DIR) Src/CPU/68K/Musashi/m68k_in.c
|
||||||
|
|
||||||
|
$(OBJ_DIR)/m68kops.c $(OBJ_DIR)/m68kopac.c $(OBJ_DIR)/m68kopdm.c $(OBJ_DIR)/m68kopnz.c: $(OBJ_DIR)/m68kops.h
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kcpu.o: Src/CPU/68K/Musashi/m68kcpu.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
$(OBJ_DIR)/m68kcpu.o: Src/CPU/68K/Musashi/m68kcpu.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $(OBJ_DIR)/m68kcpu.o
|
$(SILENT)$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $(OBJ_DIR)/m68kcpu.o
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kops.o: $(OBJ_DIR)/m68kops.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h $(MUSASHI_OUTFILE)
|
$(OBJ_DIR)/m68kops.o: $(OBJ_DIR)/m68kops.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
$(SILENT)$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kopac.o: $(OBJ_DIR)/m68kopac.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h $(MUSASHI_OUTFILE)
|
$(OBJ_DIR)/m68kopac.o: $(OBJ_DIR)/m68kopac.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
$(SILENT)$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kopdm.o: $(OBJ_DIR)/m68kopdm.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h $(MUSASHI_OUTFILE)
|
$(OBJ_DIR)/m68kopdm.o: $(OBJ_DIR)/m68kopdm.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
$(SILENT)$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
||||||
|
|
||||||
$(OBJ_DIR)/m68kopnz.o: $(OBJ_DIR)/m68kopnz.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h $(MUSASHI_OUTFILE)
|
$(OBJ_DIR)/m68kopnz.o: $(OBJ_DIR)/m68kopnz.c $(OBJ_DIR)/m68kops.h Src/CPU/68K/Musashi/m68k.h Src/CPU/68K/Musashi/m68kconf.h
|
||||||
$(info Compiling : $< -> $@)
|
$(info Compiling : $< -> $@)
|
||||||
@$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
$(SILENT)$(CC) $< $(CFLAGS) $(MUSASHI_CFLAGS) -o $@
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
#ifdef SUPERMODEL_DEBUGGER
|
#ifdef SUPERMODEL_DEBUGGER
|
||||||
|
|
||||||
|
#include "Supermodel.h"
|
||||||
#include "CPUDebug.h"
|
#include "CPUDebug.h"
|
||||||
#include "CodeAnalyser.h"
|
#include "CodeAnalyser.h"
|
||||||
#include "Label.h"
|
#include "Label.h"
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
#include "Debugger.h"
|
#include "Debugger.h"
|
||||||
#include "Exception.h"
|
#include "Exception.h"
|
||||||
#include "Interrupt.h"
|
#include "Interrupt.h"
|
||||||
#include "IO.h"
|
#include "DebuggerIO.h"
|
||||||
#include "Register.h"
|
#include "Register.h"
|
||||||
#include "Watch.h"
|
#include "Watch.h"
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
#ifdef SUPERMODEL_DEBUGGER
|
#ifdef SUPERMODEL_DEBUGGER
|
||||||
|
|
||||||
|
#include "Supermodel.h"
|
||||||
#include "Debugger.h"
|
#include "Debugger.h"
|
||||||
#include "CPUDebug.h"
|
#include "CPUDebug.h"
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
#ifdef SUPERMODEL_DEBUGGER
|
#ifdef SUPERMODEL_DEBUGGER
|
||||||
|
|
||||||
#include "CPUDebug.h"
|
#include "CPUDebug.h"
|
||||||
#include "IO.h"
|
#include "DebuggerIO.h"
|
||||||
#include "Watch.h"
|
#include "Watch.h"
|
||||||
|
|
||||||
namespace Debugger
|
namespace Debugger
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
#include "CPUDebug.h"
|
#include "CPUDebug.h"
|
||||||
#include "Debugger.h"
|
#include "Debugger.h"
|
||||||
#include "IO.h"
|
#include "DebuggerIO.h"
|
||||||
#include "Watch.h"
|
#include "Watch.h"
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,12 @@
|
||||||
#include <WS2tcpip.h>
|
#include <WS2tcpip.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#ifdef __GNUC__
|
||||||
|
extern "C" {
|
||||||
|
WINSOCK_API_LINKAGE INT WSAAPI inet_pton(INT Family, PCSTR pszAddrString, PVOID pAddrBuf);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace SMUDP
|
namespace SMUDP
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
@ -301,7 +301,7 @@ xcopy /D /Y "$(ProjectDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDi
|
||||||
<ClCompile Include="..\Src\Debugger\Debugger.cpp" />
|
<ClCompile Include="..\Src\Debugger\Debugger.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\Exception.cpp" />
|
<ClCompile Include="..\Src\Debugger\Exception.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\Interrupt.cpp" />
|
<ClCompile Include="..\Src\Debugger\Interrupt.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\IO.cpp" />
|
<ClCompile Include="..\Src\Debugger\DebuggerIO.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\Label.cpp" />
|
<ClCompile Include="..\Src\Debugger\Label.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\Register.cpp" />
|
<ClCompile Include="..\Src\Debugger\Register.cpp" />
|
||||||
<ClCompile Include="..\Src\Debugger\SupermodelDebugger.cpp" />
|
<ClCompile Include="..\Src\Debugger\SupermodelDebugger.cpp" />
|
||||||
|
@ -527,7 +527,7 @@ xcopy /D /Y "$(ProjectDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDi
|
||||||
<ClInclude Include="..\Src\Debugger\Debugger.h" />
|
<ClInclude Include="..\Src\Debugger\Debugger.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\Exception.h" />
|
<ClInclude Include="..\Src\Debugger\Exception.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\Interrupt.h" />
|
<ClInclude Include="..\Src\Debugger\Interrupt.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\IO.h" />
|
<ClInclude Include="..\Src\Debugger\DebuggerIO.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\Label.h" />
|
<ClInclude Include="..\Src\Debugger\Label.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\Register.h" />
|
<ClInclude Include="..\Src\Debugger\Register.h" />
|
||||||
<ClInclude Include="..\Src\Debugger\SupermodelDebugger.h" />
|
<ClInclude Include="..\Src\Debugger\SupermodelDebugger.h" />
|
||||||
|
|
|
@ -335,9 +335,6 @@
|
||||||
<ClCompile Include="..\Src\Debugger\Interrupt.cpp">
|
<ClCompile Include="..\Src\Debugger\Interrupt.cpp">
|
||||||
<Filter>Source Files\Debugger</Filter>
|
<Filter>Source Files\Debugger</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Src\Debugger\IO.cpp">
|
|
||||||
<Filter>Source Files\Debugger</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Src\Debugger\Label.cpp">
|
<ClCompile Include="..\Src\Debugger\Label.cpp">
|
||||||
<Filter>Source Files\Debugger</Filter>
|
<Filter>Source Files\Debugger</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
@ -464,6 +461,9 @@
|
||||||
<ClCompile Include="..\Src\Network\NetBoard.cpp">
|
<ClCompile Include="..\Src\Network\NetBoard.cpp">
|
||||||
<Filter>Source Files\Network</Filter>
|
<Filter>Source Files\Network</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\Src\Debugger\DebuggerIO.cpp">
|
||||||
|
<Filter>Source Files\Debugger</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<MASM Include="..\Src\CPU\68K\Turbo68K\Turbo68K.asm">
|
<MASM Include="..\Src\CPU\68K\Turbo68K\Turbo68K.asm">
|
||||||
|
@ -718,9 +718,6 @@
|
||||||
<ClInclude Include="..\Src\Debugger\Interrupt.h">
|
<ClInclude Include="..\Src\Debugger\Interrupt.h">
|
||||||
<Filter>Header Files\Debugger</Filter>
|
<Filter>Header Files\Debugger</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\Src\Debugger\IO.h">
|
|
||||||
<Filter>Header Files\Debugger</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Src\Debugger\Label.h">
|
<ClInclude Include="..\Src\Debugger\Label.h">
|
||||||
<Filter>Header Files\Debugger</Filter>
|
<Filter>Header Files\Debugger</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -862,6 +859,9 @@
|
||||||
<ClInclude Include="..\Src\Network\NetBoard.h">
|
<ClInclude Include="..\Src\Network\NetBoard.h">
|
||||||
<Filter>Header Files\Network</Filter>
|
<Filter>Header Files\Network</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\Src\Debugger\DebuggerIO.h">
|
||||||
|
<Filter>Header Files\Debugger</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\Src\Debugger\ReadMe.txt">
|
<CustomBuild Include="..\Src\Debugger\ReadMe.txt">
|
||||||
|
|
Loading…
Reference in a new issue