mirror of
https://github.com/ZDoom/zdoom-macos-deps.git
synced 2024-11-10 06:31:37 +00:00
wip
This commit is contained in:
commit
46f6b696c3
16 changed files with 122 additions and 74 deletions
|
@ -57,10 +57,8 @@ def targets():
|
|||
Bzip2Target(),
|
||||
FfiTarget(),
|
||||
FlacTarget(),
|
||||
FluidSynthTarget(),
|
||||
GlibTarget(),
|
||||
IconvTarget(),
|
||||
InstPatchTarget(),
|
||||
IntlTarget(),
|
||||
JpegTurboTarget(),
|
||||
LameTarget(),
|
||||
|
@ -79,7 +77,9 @@ def targets():
|
|||
|
||||
# Libraries needed for other targets
|
||||
DumbTarget(),
|
||||
FluidSynthTarget(),
|
||||
FmtTarget(),
|
||||
InstPatchTarget(),
|
||||
MadTarget(),
|
||||
MikmodTarget(),
|
||||
ModPlugTarget(),
|
||||
|
|
|
@ -95,29 +95,6 @@ class FlacTarget(base.CMakeStaticDependencyTarget):
|
|||
super().configure(state)
|
||||
|
||||
|
||||
class FluidSynthTarget(base.CMakeStaticDependencyTarget):
|
||||
def __init__(self, name='fluidsynth'):
|
||||
super().__init__(name)
|
||||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://github.com/FluidSynth/fluidsynth/archive/refs/tags/v2.3.2.tar.gz',
|
||||
'cd610810f30566e28fb98c36501f00446a06fa6bae3dc562c8cd3868fe1c0fc7')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
opts = state.options
|
||||
opts['DEFAULT_SOUNDFONT'] = 'default.sf2'
|
||||
opts['enable-framework'] = 'NO'
|
||||
opts['enable-readline'] = 'NO'
|
||||
opts['enable-sdl2'] = 'NO'
|
||||
|
||||
super().configure(state)
|
||||
|
||||
def post_build(self, state: BuildState):
|
||||
super().prepare_source(state)
|
||||
self.keep_module_target(state, 'FluidSynth::libfluidsynth')
|
||||
|
||||
|
||||
class GettextTarget(base.ConfigureMakeStaticDependencyTarget):
|
||||
def __init__(self, name='gettext'):
|
||||
super().__init__(name)
|
||||
|
@ -187,32 +164,6 @@ class IconvTarget(base.ConfigureMakeStaticDependencyTarget):
|
|||
super().configure(state)
|
||||
|
||||
|
||||
class InstPatchTarget(base.CMakeStaticDependencyTarget):
|
||||
def __init__(self, name='instpatch'):
|
||||
super().__init__(name)
|
||||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://github.com/swami/libinstpatch/archive/v1.1.6.tar.gz',
|
||||
'8e9861b04ede275d712242664dab6ffa9166c7940fea3b017638681d25e10299')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
state.options['LIB_SUFFIX'] = None
|
||||
|
||||
# Workaround for missing frameworks in dependencies, no clue what's wrong at the moment
|
||||
state.environment['LDFLAGS'] = '-framework CoreFoundation -framework Foundation'
|
||||
|
||||
super().configure(state)
|
||||
|
||||
def post_build(self, state: BuildState):
|
||||
super().post_build(state)
|
||||
|
||||
# Remove extra directory from include path
|
||||
include_path = state.install_path / 'include'
|
||||
include_subpath = include_path / 'libinstpatch-2/libinstpatch'
|
||||
shutil.move(str(include_subpath), include_path)
|
||||
|
||||
|
||||
class IntlTarget(GettextTarget):
|
||||
def __init__(self, name='intl'):
|
||||
super().__init__(name)
|
||||
|
@ -396,8 +347,8 @@ class OpenALTarget(base.CMakeStaticDependencyTarget):
|
|||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://openal-soft.org/openal-releases/openal-soft-1.23.0.tar.bz2',
|
||||
'057dcf96c3cdfcf40159800a93f57740fe79c2956f76247bee10e436b6657183')
|
||||
'https://openal-soft.org/openal-releases/openal-soft-1.23.1.tar.bz2',
|
||||
'796f4b89134c4e57270b7f0d755f0fa3435b90da437b745160a49bd41c845b21')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
opts = state.options
|
||||
|
|
|
@ -48,6 +48,29 @@ class DumbTarget(base.CMakeStaticDependencyTarget):
|
|||
return 'Libs: -L${libdir} -ldumb\n' if line.startswith('Libs:') else line
|
||||
|
||||
|
||||
class FluidSynthTarget(base.CMakeStaticDependencyTarget):
|
||||
def __init__(self, name='fluidsynth'):
|
||||
super().__init__(name)
|
||||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://github.com/FluidSynth/fluidsynth/archive/refs/tags/v2.3.2.tar.gz',
|
||||
'cd610810f30566e28fb98c36501f00446a06fa6bae3dc562c8cd3868fe1c0fc7')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
opts = state.options
|
||||
opts['DEFAULT_SOUNDFONT'] = 'default.sf2'
|
||||
opts['enable-framework'] = 'NO'
|
||||
opts['enable-readline'] = 'NO'
|
||||
opts['enable-sdl2'] = 'NO'
|
||||
|
||||
super().configure(state)
|
||||
|
||||
def post_build(self, state: BuildState):
|
||||
super().prepare_source(state)
|
||||
self.keep_module_target(state, 'FluidSynth::libfluidsynth')
|
||||
|
||||
|
||||
class FmtTarget(base.CMakeStaticDependencyTarget):
|
||||
def __init__(self, name='fmt'):
|
||||
super().__init__(name)
|
||||
|
@ -65,6 +88,32 @@ class FmtTarget(base.CMakeStaticDependencyTarget):
|
|||
super().configure(state)
|
||||
|
||||
|
||||
class InstPatchTarget(base.CMakeStaticDependencyTarget):
|
||||
def __init__(self, name='instpatch'):
|
||||
super().__init__(name)
|
||||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://github.com/swami/libinstpatch/archive/v1.1.6.tar.gz',
|
||||
'8e9861b04ede275d712242664dab6ffa9166c7940fea3b017638681d25e10299')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
state.options['LIB_SUFFIX'] = None
|
||||
|
||||
# Workaround for missing frameworks in dependencies, no clue what's wrong at the moment
|
||||
state.environment['LDFLAGS'] = '-framework CoreFoundation -framework Foundation'
|
||||
|
||||
super().configure(state)
|
||||
|
||||
def post_build(self, state: BuildState):
|
||||
super().post_build(state)
|
||||
|
||||
# Remove extra directory from include path
|
||||
include_path = state.install_path / 'include'
|
||||
include_subpath = include_path / 'libinstpatch-2/libinstpatch'
|
||||
shutil.move(str(include_subpath), include_path)
|
||||
|
||||
|
||||
class MadTarget(base.ConfigureMakeStaticDependencyTarget):
|
||||
def __init__(self, name='mad'):
|
||||
super().__init__(name)
|
||||
|
@ -238,8 +287,8 @@ class Sdl2Target(base.CMakeStaticDependencyTarget):
|
|||
|
||||
def prepare_source(self, state: BuildState):
|
||||
state.download_source(
|
||||
'https://github.com/libsdl-org/SDL/releases/download/release-2.26.4/SDL2-2.26.4.tar.gz',
|
||||
'1a0f686498fb768ad9f3f80b39037a7d006eac093aad39cb4ebcc832a8887231',
|
||||
'https://github.com/libsdl-org/SDL/releases/download/release-2.26.5/SDL2-2.26.5.tar.gz',
|
||||
'ad8fea3da1be64c83c45b1d363a6b4ba8fd60f5bde3b23ec73855709ec5eabf7',
|
||||
patches='sdl2-no-gamecontroller+corehaptic')
|
||||
|
||||
def configure(self, state: BuildState):
|
||||
|
|
33
deps/openal/include/AL/alext.h
vendored
33
deps/openal/include/AL/alext.h
vendored
|
@ -141,9 +141,9 @@ extern "C" {
|
|||
|
||||
#ifndef AL_EXT_STATIC_BUFFER
|
||||
#define AL_EXT_STATIC_BUFFER 1
|
||||
typedef void (AL_APIENTRY*PFNALBUFFERDATASTATICPROC)(const ALint,ALenum,ALvoid*,ALsizei,ALsizei);
|
||||
typedef void (AL_APIENTRY*PFNALBUFFERDATASTATICPROC)(const ALuint,ALenum,ALvoid*,ALsizei,ALsizei);
|
||||
#ifdef AL_ALEXT_PROTOTYPES
|
||||
AL_API void AL_APIENTRY alBufferDataStatic(const ALint buffer, ALenum format, ALvoid *data, ALsizei len, ALsizei freq);
|
||||
void AL_APIENTRY alBufferDataStatic(const ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -391,6 +391,13 @@ AL_API void AL_APIENTRY alProcessUpdatesSOFT(void);
|
|||
/*#define AL_SEC_LENGTH_SOFT 0x200B*/
|
||||
#endif
|
||||
|
||||
#ifndef AL_SOFT_buffer_length_query
|
||||
#define AL_SOFT_buffer_length_query 1
|
||||
/*#define AL_BYTE_LENGTH_SOFT 0x2009*/
|
||||
/*#define AL_SAMPLE_LENGTH_SOFT 0x200A*/
|
||||
/*#define AL_SEC_LENGTH_SOFT 0x200B*/
|
||||
#endif
|
||||
|
||||
#ifndef ALC_SOFT_pause_device
|
||||
#define ALC_SOFT_pause_device 1
|
||||
typedef void (ALC_APIENTRY*LPALCDEVICEPAUSESOFT)(ALCdevice *device);
|
||||
|
@ -604,6 +611,18 @@ AL_API void AL_APIENTRY alGetBufferPtrvSOFT(ALuint buffer, ALenum param, ALvoid
|
|||
#define AL_SUPER_STEREO_WIDTH_SOFT 0x19B1
|
||||
#endif
|
||||
|
||||
#ifndef AL_SOFT_UHJ_ex
|
||||
#define AL_SOFT_UHJ_ex
|
||||
#define AL_FORMAT_UHJ2CHN_MULAW_SOFT 0x19B3
|
||||
#define AL_FORMAT_UHJ2CHN_ALAW_SOFT 0x19B4
|
||||
#define AL_FORMAT_UHJ2CHN_IMA4_SOFT 0x19B5
|
||||
#define AL_FORMAT_UHJ2CHN_MSADPCM_SOFT 0x19B6
|
||||
#define AL_FORMAT_UHJ3CHN_MULAW_SOFT 0x19B7
|
||||
#define AL_FORMAT_UHJ3CHN_ALAW_SOFT 0x19B8
|
||||
#define AL_FORMAT_UHJ4CHN_MULAW_SOFT 0x19B9
|
||||
#define AL_FORMAT_UHJ4CHN_ALAW_SOFT 0x19BA
|
||||
#endif
|
||||
|
||||
#ifndef ALC_SOFT_output_mode
|
||||
#define ALC_SOFT_output_mode
|
||||
#define ALC_OUTPUT_MODE_SOFT 0x19AC
|
||||
|
@ -619,6 +638,16 @@ AL_API void AL_APIENTRY alGetBufferPtrvSOFT(ALuint buffer, ALenum param, ALvoid
|
|||
#define ALC_SURROUND_7_1_SOFT 0x1506
|
||||
#endif
|
||||
|
||||
#ifndef AL_SOFT_source_start_delay
|
||||
#define AL_SOFT_source_start_delay
|
||||
typedef void (AL_APIENTRY*LPALSOURCEPLAYATTIMESOFT)(ALuint source, ALint64SOFT start_time);
|
||||
typedef void (AL_APIENTRY*LPALSOURCEPLAYATTIMEVSOFT)(ALsizei n, const ALuint *sources, ALint64SOFT start_time);
|
||||
#ifdef AL_ALEXT_PROTOTYPES
|
||||
void AL_APIENTRY alSourcePlayAtTimeSOFT(ALuint source, ALint64SOFT start_time);
|
||||
void AL_APIENTRY alSourcePlayAtTimevSOFT(ALsizei n, const ALuint *sources, ALint64SOFT start_time);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -6,4 +6,4 @@ set(OPENAL_FOUND ON)
|
|||
set(OPENAL_INCLUDE_DIR $<TARGET_PROPERTY:OpenAL::OpenAL,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
set(OPENAL_LIBRARY $<LINK_ONLY:OpenAL::OpenAL>)
|
||||
set(OPENAL_DEFINITIONS $<TARGET_PROPERTY:OpenAL::OpenAL,INTERFACE_COMPILE_DEFINITIONS>)
|
||||
set(OPENAL_VERSION_STRING 1.23.0)
|
||||
set(OPENAL_VERSION_STRING 1.23.1)
|
||||
|
|
BIN
deps/openal/lib/libopenal.a
vendored
BIN
deps/openal/lib/libopenal.a
vendored
Binary file not shown.
2
deps/openal/lib/pkgconfig/openal.pc
vendored
2
deps/openal/lib/pkgconfig/openal.pc
vendored
|
@ -6,7 +6,7 @@ includedir=${prefix}/include
|
|||
Name: OpenAL
|
||||
Description: OpenAL is a cross-platform 3D audio API
|
||||
Requires:
|
||||
Version: 1.23.0
|
||||
Version: 1.23.1
|
||||
Libs: -L${libdir} -lopenal
|
||||
Libs.private: -pthread -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit,-framework,ApplicationServices -Wl,-framework,CoreAudio -ldl -lm
|
||||
Cflags: -I${includedir} -I${includedir}/AL -DAL_LIBTYPE_STATIC
|
||||
|
|
2
deps/sdl2/bin/sdl2-config
vendored
2
deps/sdl2/bin/sdl2-config
vendored
|
@ -43,7 +43,7 @@ while test $# -gt 0; do
|
|||
echo $exec_prefix
|
||||
;;
|
||||
--version)
|
||||
echo 2.26.4
|
||||
echo 2.26.5
|
||||
;;
|
||||
--cflags)
|
||||
echo -I${prefix}/include/SDL2 -D_THREAD_SAFE
|
||||
|
|
12
deps/sdl2/include/SDL2/SDL_assert.h
vendored
12
deps/sdl2/include/SDL2/SDL_assert.h
vendored
|
@ -125,12 +125,10 @@ typedef struct SDL_AssertData
|
|||
const struct SDL_AssertData *next;
|
||||
} SDL_AssertData;
|
||||
|
||||
#if (SDL_ASSERT_LEVEL > 0)
|
||||
|
||||
/* Never call this directly. Use the SDL_assert* macros. */
|
||||
extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *,
|
||||
const char *,
|
||||
const char *, int)
|
||||
const char *,
|
||||
const char *, int)
|
||||
#if defined(__clang__)
|
||||
#if __has_feature(attribute_analyzer_noreturn)
|
||||
/* this tells Clang's static analysis that we're a custom assert function,
|
||||
|
@ -151,9 +149,7 @@ extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *,
|
|||
#define SDL_enabled_assert(condition) \
|
||||
do { \
|
||||
while ( !(condition) ) { \
|
||||
static struct SDL_AssertData sdl_assert_data = { \
|
||||
0, 0, #condition, 0, 0, 0, 0 \
|
||||
}; \
|
||||
static struct SDL_AssertData sdl_assert_data = { 0, 0, #condition, 0, 0, 0, 0 }; \
|
||||
const SDL_AssertState sdl_assert_state = SDL_ReportAssertion(&sdl_assert_data, SDL_FUNCTION, SDL_FILE, SDL_LINE); \
|
||||
if (sdl_assert_state == SDL_ASSERTION_RETRY) { \
|
||||
continue; /* go again. */ \
|
||||
|
@ -164,8 +160,6 @@ extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *,
|
|||
} \
|
||||
} while (SDL_NULL_WHILE_LOOP_CONDITION)
|
||||
|
||||
#endif /* enabled assertions support code */
|
||||
|
||||
/* Enable various levels of assertions. */
|
||||
#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */
|
||||
# define SDL_assert(condition) SDL_disabled_assert(condition)
|
||||
|
|
4
deps/sdl2/include/SDL2/SDL_revision.h
vendored
4
deps/sdl2/include/SDL2/SDL_revision.h
vendored
|
@ -2,7 +2,7 @@
|
|||
#define SDL_REVISION_NUMBER 0
|
||||
|
||||
#ifdef SDL_VENDOR_INFO
|
||||
#define SDL_REVISION "SDL-release-2.26.4-0-g07d0f51fa (" SDL_VENDOR_INFO ")"
|
||||
#define SDL_REVISION "SDL-release-2.26.5-0-gac13ca9ab (" SDL_VENDOR_INFO ")"
|
||||
#else
|
||||
#define SDL_REVISION "SDL-release-2.26.4-0-g07d0f51fa"
|
||||
#define SDL_REVISION "SDL-release-2.26.5-0-gac13ca9ab"
|
||||
#endif
|
||||
|
|
2
deps/sdl2/include/SDL2/SDL_version.h
vendored
2
deps/sdl2/include/SDL2/SDL_version.h
vendored
|
@ -59,7 +59,7 @@ typedef struct SDL_version
|
|||
*/
|
||||
#define SDL_MAJOR_VERSION 2
|
||||
#define SDL_MINOR_VERSION 26
|
||||
#define SDL_PATCHLEVEL 4
|
||||
#define SDL_PATCHLEVEL 5
|
||||
|
||||
/**
|
||||
* Macro to determine SDL version program was compiled against.
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version.
|
||||
# The variable CVF_VERSION must be set before calling configure_file().
|
||||
|
||||
set(PACKAGE_VERSION "2.26.4")
|
||||
set(PACKAGE_VERSION "2.26.5")
|
||||
|
||||
if (PACKAGE_FIND_VERSION_RANGE)
|
||||
# Package version must be in the requested version range
|
||||
|
|
BIN
deps/sdl2/lib/libSDL2.a
vendored
BIN
deps/sdl2/lib/libSDL2.a
vendored
Binary file not shown.
2
deps/sdl2/lib/pkgconfig/sdl2.pc
vendored
2
deps/sdl2/lib/pkgconfig/sdl2.pc
vendored
|
@ -7,7 +7,7 @@ includedir=${prefix}/include
|
|||
|
||||
Name: sdl2
|
||||
Description: Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer.
|
||||
Version: 2.26.4
|
||||
Version: 2.26.5
|
||||
Requires:
|
||||
Conflicts:
|
||||
Libs: -L${libdir} -lSDL2 -lSDL2 -Wl,-framework,CoreVideo -Wl,-framework,Cocoa -Wl,-framework,IOKit -Wl,-framework,ForceFeedback -Wl,-framework,Carbon -Wl,-framework,CoreAudio -Wl,-framework,AudioToolbox -Wl,-framework,AVFoundation -Wl,-framework,Foundation -Wl,-weak_framework,Metal -Wl,-weak_framework,QuartzCore -lm
|
||||
|
|
11
test/libxmp.cpp
Normal file
11
test/libxmp.cpp
Normal file
|
@ -0,0 +1,11 @@
|
|||
#include <xmp.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
xmp_context context = xmp_create_context();
|
||||
AEDI_EXPECT(context != nullptr);
|
||||
AEDI_EXPECT(xmp_syserrno() == 0);
|
||||
xmp_free_context(context);
|
||||
|
||||
return 0;
|
||||
}
|
14
test/mad.cpp
Normal file
14
test/mad.cpp
Normal file
|
@ -0,0 +1,14 @@
|
|||
#include <mad.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
AEDI_EXPECT(mad_version[0] != '\0');
|
||||
AEDI_EXPECT(mad_build[0] != '\0');
|
||||
|
||||
mad_stream stream = {};
|
||||
mad_stream_init(&stream);
|
||||
AEDI_EXPECT(stream.error == MAD_ERROR_NONE);
|
||||
mad_stream_finish(&stream);
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue