@@ -383,48 +383,53 @@ CDEFS += -DBEOS
LDFLAGS += -lmidi -lbe -lpthread
ifdef WITH_NETWORK
ifdef BEOS_NET_SERVER
CDEFS += -DBEOS_NET_SERVER
LDFLAGS += -lnet
else
# BONE needs a few more libraries than R5
LDFLAGS += -lbind -lsocket
endif
ifdef MORPHOS
# -Wstrict-prototypes generates much noise because of system headers
CFLAGS += -Wno-strict-prototypes
ifdef SUNOS
CDEFS += -DSUNOS
LDFLAGS += -lnsl -lsocket
# tell the source that we are building a dedicated server
ifdef DEDICATED
CDEFS += -DDEDICATED
# SDL config
ifdef WITH_SDL
CDEFS += -DWITH_SDL
CFLAGS += $(shell $(SDL-CONFIG) --cflags)
ifdef STATIC
LIBS += $(shell $(SDL-CONFIG) --static-libs)
LIBS += $(shell $(SDL-CONFIG) --libs)
# zlib config
ifdef WITH_ZLIB
CDEFS += -DWITH_ZLIB
ifdef OSX
# zlib is default on OSX, so everybody have it. No need for static linking
LIBS += -lz
ifndef STATIC_ZLIB_PATH
ifndef MANUAL_CONFIG
# updates Makefile.config with the zlib path
UPDATECONFIG:=upgradeconf
@@ -477,51 +482,53 @@ endif
# automatically disables asserts for release
ifdef RELEASE
ifndef ENABLE_ASSERTS
CFLAGS += -DNDEBUG
ifdef TRANSLATOR
STRGEN_FLAGS=-t
STRGEN_FLAGS=
# MIDI setup
ifndef MIDI
MIDI:=$(OSXAPP)/Contents/MacOS/track_starter
ifndef SECOND_DATA_PATH
SECOND_DATA_PATH:="$(OSXAPP)/Contents/Data/"
ifndef CUSTOM_LANG_DIR
ifndef DEDICATED
CUSTOM_LANG_DIR:="$(OSXAPP)/Contents/Lang/"
ifdef MIDI
CDEFS += -DEXTERNAL_PLAYER=\"$(MIDI)\"
ifdef MIDI_ARG
CDEFS += -DMIDI_ARG=\"$(MIDI_ARG)\"
CDEFS += -DENABLE_NETWORK
ifdef QNX
LIBS += -lsocket
ifdef SECOND_DATA_PATH
CDEFS += -DSECOND_DATA_DIR=\"$(SECOND_DATA_PATH)/\"
ifdef CUSTOM_LANG_DIR
CDEFS += -DCUSTOM_LANG_DIR=\"$(CUSTOM_LANG_DIR)/\"
@@ -691,50 +698,52 @@ C_SOURCES += ai/trolly/pathfinder.c
C_SOURCES += ai/trolly/shared.c
CXX_SOURCES =
OBJC_SOURCES =
C_SOURCES += sdl.c
C_SOURCES += sound/sdl_s.c
C_SOURCES += video/sdl_v.c
ifdef WIN32
C_SOURCES += win32.c
C_SOURCES += music/win32_m.c
C_SOURCES += sound/win32_s.c
C_SOURCES += video/win32_v.c
C_SOURCES += unix.c
C_SOURCES += music/extmidi.c
OBJC_SOURCES += os/macosx/macos.m
C_SOURCES += music/qtmidi.c
OBJS = $(C_SOURCES:%.c=%.o) $(CXX_SOURCES:%.cpp=%.o) $(OBJC_SOURCES:%.m=%.o)
ifdef BEOS
CXX_SOURCES += music/bemidi.cpp
# Resource file
OBJS += winres.o
ifdef WITH_DIRECTMUSIC
CXX_SOURCES += music/dmusic.cpp
DEPS = $(OBJS:%.o=.deps/%.d)
LANG_TXT = $(filter-out %.unfinished.txt,$(wildcard lang/*.txt))
LANGS = $(LANG_TXT:%.txt=%.lng)
##############################################################################
#
@@ -31,49 +31,49 @@ typedef struct DriverDesc {
const HalCommonDriver* drv;
} DriverDesc;
typedef struct DriverClass {
const DriverDesc *descs;
const char *name;
const HalCommonDriver** drv;
} DriverClass;
#define M(x, y, z) { x, y, (const HalCommonDriver*)z }
static const DriverDesc _music_driver_descs[] = {
#ifdef __BEOS__
M("bemidi", "BeOS MIDI Driver", &_bemidi_music_driver),
#endif
#ifdef __OS2__
M("os2", "OS/2 Music Driver", &_os2_music_driver),
#ifdef WIN32_ENABLE_DIRECTMUSIC_SUPPORT
M("dmusic", "DirectMusic MIDI Driver", &_dmusic_midi_driver),
#ifdef WIN32
M("win32", "Win32 MIDI Driver", &_win32_music_driver),
#ifdef __APPLE__
#if defined(__APPLE__) && !defined(DEDICATED)
M("qt", "QuickTime MIDI Driver", &_qtime_music_driver),
#ifdef UNIX
#if !defined(__MORPHOS__) && !defined(__AMIGA__)
M("extmidi", "External MIDI Driver", &_extmidi_music_driver),
M("null", "Null Music Driver", &_null_music_driver),
M(NULL, NULL, NULL)
};
static const DriverDesc _sound_driver_descs[] = {
M("win32", "Win32 WaveOut Driver", &_win32_sound_driver),
#ifdef WITH_SDL
M("sdl", "SDL Sound Driver", &_sdl_sound_driver),
M("null", "Null Sound Driver", &_null_sound_driver),
static const DriverDesc _video_driver_descs[] = {
Status change: