mirror of
https://github.com/ZDoom/zdoom-macos-deps.git
synced 2024-11-25 13:21:05 +00:00
add modplug 0.8.8.5
This commit is contained in:
parent
65c48a7cd3
commit
91e1ae5a26
5 changed files with 1483 additions and 0 deletions
134
deps/modplug/include/libmodplug/it_defs.h
vendored
Normal file
134
deps/modplug/include/libmodplug/it_defs.h
vendored
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
#ifndef _ITDEFS_H_
|
||||||
|
#define _ITDEFS_H_
|
||||||
|
|
||||||
|
#pragma pack(1)
|
||||||
|
|
||||||
|
typedef struct tagITFILEHEADER
|
||||||
|
{
|
||||||
|
DWORD id; // 0x4D504D49
|
||||||
|
CHAR songname[26];
|
||||||
|
WORD reserved1; // 0x1004
|
||||||
|
WORD ordnum;
|
||||||
|
WORD insnum;
|
||||||
|
WORD smpnum;
|
||||||
|
WORD patnum;
|
||||||
|
WORD cwtv;
|
||||||
|
WORD cmwt;
|
||||||
|
WORD flags;
|
||||||
|
WORD special;
|
||||||
|
BYTE globalvol;
|
||||||
|
BYTE mv;
|
||||||
|
BYTE speed;
|
||||||
|
BYTE tempo;
|
||||||
|
BYTE sep;
|
||||||
|
BYTE zero;
|
||||||
|
WORD msglength;
|
||||||
|
DWORD msgoffset;
|
||||||
|
DWORD reserved2;
|
||||||
|
BYTE chnpan[64];
|
||||||
|
BYTE chnvol[64];
|
||||||
|
} ITFILEHEADER;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct tagITENVELOPE
|
||||||
|
{
|
||||||
|
BYTE flags;
|
||||||
|
BYTE num;
|
||||||
|
BYTE lpb;
|
||||||
|
BYTE lpe;
|
||||||
|
BYTE slb;
|
||||||
|
BYTE sle;
|
||||||
|
BYTE data[25*3];
|
||||||
|
BYTE reserved;
|
||||||
|
} ITENVELOPE;
|
||||||
|
|
||||||
|
// Old Impulse Instrument Format (cmwt < 0x200)
|
||||||
|
typedef struct tagITOLDINSTRUMENT
|
||||||
|
{
|
||||||
|
DWORD id; // IMPI = 0x49504D49
|
||||||
|
CHAR filename[12]; // DOS file name
|
||||||
|
BYTE zero;
|
||||||
|
BYTE flags;
|
||||||
|
BYTE vls;
|
||||||
|
BYTE vle;
|
||||||
|
BYTE sls;
|
||||||
|
BYTE sle;
|
||||||
|
WORD reserved1;
|
||||||
|
WORD fadeout;
|
||||||
|
BYTE nna;
|
||||||
|
BYTE dnc;
|
||||||
|
WORD trkvers;
|
||||||
|
BYTE nos;
|
||||||
|
BYTE reserved2;
|
||||||
|
CHAR name[26];
|
||||||
|
WORD reserved3[3];
|
||||||
|
BYTE keyboard[240];
|
||||||
|
BYTE volenv[200];
|
||||||
|
BYTE nodes[50];
|
||||||
|
} ITOLDINSTRUMENT;
|
||||||
|
|
||||||
|
|
||||||
|
// Impulse Instrument Format
|
||||||
|
typedef struct tagITINSTRUMENT
|
||||||
|
{
|
||||||
|
DWORD id;
|
||||||
|
CHAR filename[12];
|
||||||
|
BYTE zero;
|
||||||
|
BYTE nna;
|
||||||
|
BYTE dct;
|
||||||
|
BYTE dca;
|
||||||
|
WORD fadeout;
|
||||||
|
signed char pps;
|
||||||
|
BYTE ppc;
|
||||||
|
BYTE gbv;
|
||||||
|
BYTE dfp;
|
||||||
|
BYTE rv;
|
||||||
|
BYTE rp;
|
||||||
|
WORD trkvers;
|
||||||
|
BYTE nos;
|
||||||
|
BYTE reserved1;
|
||||||
|
CHAR name[26];
|
||||||
|
BYTE ifc;
|
||||||
|
BYTE ifr;
|
||||||
|
BYTE mch;
|
||||||
|
BYTE mpr;
|
||||||
|
WORD mbank;
|
||||||
|
BYTE keyboard[240];
|
||||||
|
ITENVELOPE volenv;
|
||||||
|
ITENVELOPE panenv;
|
||||||
|
ITENVELOPE pitchenv;
|
||||||
|
BYTE dummy[4]; // was 7, but IT v2.17 saves 554 bytes
|
||||||
|
} ITINSTRUMENT;
|
||||||
|
|
||||||
|
|
||||||
|
// IT Sample Format
|
||||||
|
typedef struct ITSAMPLESTRUCT
|
||||||
|
{
|
||||||
|
DWORD id; // 0x53504D49
|
||||||
|
CHAR filename[12];
|
||||||
|
BYTE zero;
|
||||||
|
BYTE gvl;
|
||||||
|
BYTE flags;
|
||||||
|
BYTE vol;
|
||||||
|
CHAR name[26];
|
||||||
|
BYTE cvt;
|
||||||
|
BYTE dfp;
|
||||||
|
DWORD length;
|
||||||
|
DWORD loopbegin;
|
||||||
|
DWORD loopend;
|
||||||
|
DWORD C5Speed;
|
||||||
|
DWORD susloopbegin;
|
||||||
|
DWORD susloopend;
|
||||||
|
DWORD samplepointer;
|
||||||
|
BYTE vis;
|
||||||
|
BYTE vid;
|
||||||
|
BYTE vir;
|
||||||
|
BYTE vit;
|
||||||
|
} ITSAMPLESTRUCT;
|
||||||
|
|
||||||
|
#pragma pack()
|
||||||
|
|
||||||
|
extern BYTE autovibit2xm[8];
|
||||||
|
extern BYTE autovibxm2it[8];
|
||||||
|
|
||||||
|
#endif
|
186
deps/modplug/include/libmodplug/modplug.h
vendored
Normal file
186
deps/modplug/include/libmodplug/modplug.h
vendored
Normal file
|
@ -0,0 +1,186 @@
|
||||||
|
/*
|
||||||
|
* This source code is public domain.
|
||||||
|
*
|
||||||
|
* Authors: Kenton Varda <temporal@gauge3d.org> (C interface wrapper)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef MODPLUG_H__INCLUDED
|
||||||
|
#define MODPLUG_H__INCLUDED
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
|
# if defined(MODPLUG_BUILD) && defined(DLL_EXPORT) /* building libmodplug as a dll for windows */
|
||||||
|
# define MODPLUG_EXPORT __declspec(dllexport)
|
||||||
|
# elif defined(MODPLUG_BUILD) || defined(MODPLUG_STATIC) /* building or using static libmodplug for windows */
|
||||||
|
# define MODPLUG_EXPORT
|
||||||
|
# else
|
||||||
|
# define MODPLUG_EXPORT __declspec(dllimport) /* using libmodplug dll for windows */
|
||||||
|
# endif
|
||||||
|
/* FIXME: USE VISIBILITY ATTRIBUTES HERE */
|
||||||
|
#elif defined(MODPLUG_BUILD)
|
||||||
|
#define MODPLUG_EXPORT
|
||||||
|
#else
|
||||||
|
#define MODPLUG_EXPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
struct _ModPlugFile;
|
||||||
|
typedef struct _ModPlugFile ModPlugFile;
|
||||||
|
|
||||||
|
struct _ModPlugNote {
|
||||||
|
unsigned char Note;
|
||||||
|
unsigned char Instrument;
|
||||||
|
unsigned char VolumeEffect;
|
||||||
|
unsigned char Effect;
|
||||||
|
unsigned char Volume;
|
||||||
|
unsigned char Parameter;
|
||||||
|
};
|
||||||
|
typedef struct _ModPlugNote ModPlugNote;
|
||||||
|
|
||||||
|
typedef void (*ModPlugMixerProc)(int*, unsigned long, unsigned long);
|
||||||
|
|
||||||
|
/* Load a mod file. [data] should point to a block of memory containing the complete
|
||||||
|
* file, and [size] should be the size of that block.
|
||||||
|
* Return the loaded mod file on success, or NULL on failure. */
|
||||||
|
MODPLUG_EXPORT ModPlugFile* ModPlug_Load(const void* data, int size);
|
||||||
|
/* Unload a mod file. */
|
||||||
|
MODPLUG_EXPORT void ModPlug_Unload(ModPlugFile* file);
|
||||||
|
|
||||||
|
/* Read sample data into the buffer. Returns the number of bytes read. If the end
|
||||||
|
* of the mod has been reached, zero is returned. */
|
||||||
|
MODPLUG_EXPORT int ModPlug_Read(ModPlugFile* file, void* buffer, int size);
|
||||||
|
|
||||||
|
/* Get the name of the mod. The returned buffer is stored within the ModPlugFile
|
||||||
|
* structure and will remain valid until you unload the file. */
|
||||||
|
MODPLUG_EXPORT const char* ModPlug_GetName(ModPlugFile* file);
|
||||||
|
|
||||||
|
/* Get the length of the mod, in milliseconds. Note that this result is not always
|
||||||
|
* accurate, especially in the case of mods with loops. */
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetLength(ModPlugFile* file);
|
||||||
|
|
||||||
|
/* Seek to a particular position in the song. Note that seeking and MODs don't mix very
|
||||||
|
* well. Some mods will be missing instruments for a short time after a seek, as ModPlug
|
||||||
|
* does not scan the sequence backwards to find out which instruments were supposed to be
|
||||||
|
* playing at that time. (Doing so would be difficult and not very reliable.) Also,
|
||||||
|
* note that seeking is not very exact in some mods -- especially those for which
|
||||||
|
* ModPlug_GetLength() does not report the full length. */
|
||||||
|
MODPLUG_EXPORT void ModPlug_Seek(ModPlugFile* file, int millisecond);
|
||||||
|
|
||||||
|
enum _ModPlug_Flags
|
||||||
|
{
|
||||||
|
MODPLUG_ENABLE_OVERSAMPLING = 1 << 0, /* Enable oversampling (*highly* recommended) */
|
||||||
|
MODPLUG_ENABLE_NOISE_REDUCTION = 1 << 1, /* Enable noise reduction */
|
||||||
|
MODPLUG_ENABLE_REVERB = 1 << 2, /* Enable reverb */
|
||||||
|
MODPLUG_ENABLE_MEGABASS = 1 << 3, /* Enable megabass */
|
||||||
|
MODPLUG_ENABLE_SURROUND = 1 << 4 /* Enable surround sound. */
|
||||||
|
};
|
||||||
|
|
||||||
|
enum _ModPlug_ResamplingMode
|
||||||
|
{
|
||||||
|
MODPLUG_RESAMPLE_NEAREST = 0, /* No interpolation (very fast, extremely bad sound quality) */
|
||||||
|
MODPLUG_RESAMPLE_LINEAR = 1, /* Linear interpolation (fast, good quality) */
|
||||||
|
MODPLUG_RESAMPLE_SPLINE = 2, /* Cubic spline interpolation (high quality) */
|
||||||
|
MODPLUG_RESAMPLE_FIR = 3 /* 8-tap fir filter (extremely high quality) */
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct _ModPlug_Settings
|
||||||
|
{
|
||||||
|
int mFlags; /* One or more of the MODPLUG_ENABLE_* flags above, bitwise-OR'ed */
|
||||||
|
|
||||||
|
/* Note that ModPlug always decodes sound at 44100kHz, 32 bit, stereo and then
|
||||||
|
* down-mixes to the settings you choose. */
|
||||||
|
int mChannels; /* Number of channels - 1 for mono or 2 for stereo */
|
||||||
|
int mBits; /* Bits per sample - 8, 16, or 32 */
|
||||||
|
int mFrequency; /* Sampling rate - 11025, 22050, or 44100 */
|
||||||
|
int mResamplingMode; /* One of MODPLUG_RESAMPLE_*, above */
|
||||||
|
|
||||||
|
int mStereoSeparation; /* Stereo separation, 1 - 256 */
|
||||||
|
int mMaxMixChannels; /* Maximum number of mixing channels (polyphony), 32 - 256 */
|
||||||
|
|
||||||
|
int mReverbDepth; /* Reverb level 0(quiet)-100(loud) */
|
||||||
|
int mReverbDelay; /* Reverb delay in ms, usually 40-200ms */
|
||||||
|
int mBassAmount; /* XBass level 0(quiet)-100(loud) */
|
||||||
|
int mBassRange; /* XBass cutoff in Hz 10-100 */
|
||||||
|
int mSurroundDepth; /* Surround level 0(quiet)-100(heavy) */
|
||||||
|
int mSurroundDelay; /* Surround delay in ms, usually 5-40ms */
|
||||||
|
int mLoopCount; /* Number of times to loop. Zero prevents looping.
|
||||||
|
-1 loops forever. */
|
||||||
|
} ModPlug_Settings;
|
||||||
|
|
||||||
|
/* Get and set the mod decoder settings. All options, except for channels, bits-per-sample,
|
||||||
|
* sampling rate, and loop count, will take effect immediately. Those options which don't
|
||||||
|
* take effect immediately will take effect the next time you load a mod. */
|
||||||
|
MODPLUG_EXPORT void ModPlug_GetSettings(ModPlug_Settings* settings);
|
||||||
|
MODPLUG_EXPORT void ModPlug_SetSettings(const ModPlug_Settings* settings);
|
||||||
|
|
||||||
|
/* New ModPlug API Functions */
|
||||||
|
/* NOTE: Master Volume (1-512) */
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_GetMasterVolume(ModPlugFile* file) ;
|
||||||
|
MODPLUG_EXPORT void ModPlug_SetMasterVolume(ModPlugFile* file,unsigned int cvol) ;
|
||||||
|
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetCurrentSpeed(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetCurrentTempo(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetCurrentOrder(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetCurrentPattern(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetCurrentRow(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetPlayingChannels(ModPlugFile* file);
|
||||||
|
|
||||||
|
MODPLUG_EXPORT void ModPlug_SeekOrder(ModPlugFile* file,int order);
|
||||||
|
MODPLUG_EXPORT int ModPlug_GetModuleType(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT char* ModPlug_GetMessage(ModPlugFile* file);
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef MODPLUG_NO_FILESAVE
|
||||||
|
/*
|
||||||
|
* EXPERIMENTAL Export Functions
|
||||||
|
*/
|
||||||
|
/*Export to a Scream Tracker 3 S3M module. EXPERIMENTAL (only works on Little-Endian platforms)*/
|
||||||
|
MODPLUG_EXPORT char ModPlug_ExportS3M(ModPlugFile* file, const char* filepath);
|
||||||
|
|
||||||
|
/*Export to a Extended Module (XM). EXPERIMENTAL (only works on Little-Endian platforms)*/
|
||||||
|
MODPLUG_EXPORT char ModPlug_ExportXM(ModPlugFile* file, const char* filepath);
|
||||||
|
|
||||||
|
/*Export to a Amiga MOD file. EXPERIMENTAL.*/
|
||||||
|
MODPLUG_EXPORT char ModPlug_ExportMOD(ModPlugFile* file, const char* filepath);
|
||||||
|
|
||||||
|
/*Export to a Impulse Tracker IT file. Should work OK in Little-Endian & Big-Endian platforms :-) */
|
||||||
|
MODPLUG_EXPORT char ModPlug_ExportIT(ModPlugFile* file, const char* filepath);
|
||||||
|
#endif // MODPLUG_NO_FILESAVE
|
||||||
|
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_NumInstruments(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_NumSamples(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_NumPatterns(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_NumChannels(ModPlugFile* file);
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_SampleName(ModPlugFile* file, unsigned int qual, char* buff);
|
||||||
|
MODPLUG_EXPORT unsigned int ModPlug_InstrumentName(ModPlugFile* file, unsigned int qual, char* buff);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Retrieve pattern note-data
|
||||||
|
*/
|
||||||
|
MODPLUG_EXPORT ModPlugNote* ModPlug_GetPattern(ModPlugFile* file, int pattern, unsigned int* numrows);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* =================
|
||||||
|
* Mixer callback
|
||||||
|
* =================
|
||||||
|
*
|
||||||
|
* Use this callback if you want to 'modify' the mixed data of LibModPlug.
|
||||||
|
*
|
||||||
|
* void proc(int* buffer,unsigned long channels,unsigned long nsamples) ;
|
||||||
|
*
|
||||||
|
* 'buffer': A buffer of mixed samples
|
||||||
|
* 'channels': N. of channels in the buffer
|
||||||
|
* 'nsamples': N. of samples in the buffeer (without taking care of n.channels)
|
||||||
|
*
|
||||||
|
* (Samples are signed 32-bit integers)
|
||||||
|
*/
|
||||||
|
MODPLUG_EXPORT void ModPlug_InitMixerCallback(ModPlugFile* file,ModPlugMixerProc proc) ;
|
||||||
|
MODPLUG_EXPORT void ModPlug_UnloadMixerCallback(ModPlugFile* file) ;
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
1017
deps/modplug/include/libmodplug/sndfile.h
vendored
Normal file
1017
deps/modplug/include/libmodplug/sndfile.h
vendored
Normal file
File diff suppressed because it is too large
Load diff
146
deps/modplug/include/libmodplug/stdafx.h
vendored
Normal file
146
deps/modplug/include/libmodplug/stdafx.h
vendored
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
/*
|
||||||
|
* This source code is public domain.
|
||||||
|
*
|
||||||
|
* Authors: Rani Assaf <rani@magic.metawire.com>,
|
||||||
|
* Olivier Lapicque <olivierl@jps.net>,
|
||||||
|
* Adam Goode <adam@evdebs.org> (endian and char fixes for PPC)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _STDAFX_H_
|
||||||
|
#define _STDAFX_H_
|
||||||
|
|
||||||
|
/* Autoconf detection of stdint/inttypes */
|
||||||
|
#if defined(HAVE_CONFIG_H) && !defined(CONFIG_H_INCLUDED)
|
||||||
|
# include "config.h"
|
||||||
|
# define CONFIG_H_INCLUDED 1
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_INTTYPES_H
|
||||||
|
# include <inttypes.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_STDINT_H
|
||||||
|
# include <stdint.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
|
||||||
|
#ifdef MSC_VER
|
||||||
|
#pragma warning (disable:4201)
|
||||||
|
#pragma warning (disable:4514)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define WIN32_LEAN_AND_MEAN
|
||||||
|
#include <windows.h>
|
||||||
|
#include <windowsx.h>
|
||||||
|
#include <mmsystem.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <malloc.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#define srandom(_seed) srand(_seed)
|
||||||
|
#define random() rand()
|
||||||
|
#define sleep(_ms) Sleep(_ms)
|
||||||
|
|
||||||
|
inline void ProcessPlugins(int n) {}
|
||||||
|
|
||||||
|
#define strncasecmp(a,b,c) strncmp(a,b,c)
|
||||||
|
#define strcasecmp(a,b) strcmp(a,b)
|
||||||
|
#define strnicmp(a,b,c) strncasecmp(a,b,c)
|
||||||
|
#define HAVE_SINF 1
|
||||||
|
|
||||||
|
#ifndef isblank
|
||||||
|
#define isblank(c) ((c) == ' ' || (c) == '\t')
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#ifdef HAVE_MALLOC_H
|
||||||
|
#include <malloc.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef int8_t CHAR;
|
||||||
|
typedef uint8_t UCHAR;
|
||||||
|
typedef uint8_t* PUCHAR;
|
||||||
|
typedef uint16_t USHORT;
|
||||||
|
typedef uint32_t ULONG;
|
||||||
|
typedef uint32_t UINT;
|
||||||
|
typedef uint32_t DWORD;
|
||||||
|
typedef int32_t LONG;
|
||||||
|
typedef int64_t LONGLONG;
|
||||||
|
typedef int32_t* LPLONG;
|
||||||
|
typedef uint32_t* LPDWORD;
|
||||||
|
typedef uint16_t WORD;
|
||||||
|
typedef uint8_t BYTE;
|
||||||
|
typedef uint8_t* LPBYTE;
|
||||||
|
typedef bool BOOL;
|
||||||
|
typedef char* LPSTR;
|
||||||
|
typedef void* LPVOID;
|
||||||
|
typedef uint16_t* LPWORD;
|
||||||
|
typedef const char* LPCSTR;
|
||||||
|
typedef void* PVOID;
|
||||||
|
typedef void VOID;
|
||||||
|
|
||||||
|
inline LONG MulDiv (long a, long b, long c)
|
||||||
|
{
|
||||||
|
// if (!c) return 0;
|
||||||
|
return ((uint64_t) a * (uint64_t) b ) / c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define MODPLUG_NO_FILESAVE
|
||||||
|
#define NO_AGC
|
||||||
|
#define LPCTSTR LPCSTR
|
||||||
|
#define lstrcpyn strncpy
|
||||||
|
#define lstrcpy strcpy
|
||||||
|
#define lstrcmp strcmp
|
||||||
|
#define WAVE_FORMAT_PCM 1
|
||||||
|
//#define ENABLE_EQ
|
||||||
|
|
||||||
|
#define GHND 0
|
||||||
|
|
||||||
|
inline int8_t * GlobalAllocPtr(unsigned int, size_t size)
|
||||||
|
{
|
||||||
|
int8_t * p = (int8_t *) malloc(size);
|
||||||
|
|
||||||
|
if (p != NULL) memset(p, 0, size);
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void ProcessPlugins(int n) {}
|
||||||
|
|
||||||
|
#define GlobalFreePtr(p) free((void *)(p))
|
||||||
|
|
||||||
|
#define strnicmp(a,b,c) strncasecmp(a,b,c)
|
||||||
|
#define wsprintf sprintf
|
||||||
|
|
||||||
|
#ifndef FALSE
|
||||||
|
#define FALSE false
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef TRUE
|
||||||
|
#define TRUE true
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // _WIN32
|
||||||
|
|
||||||
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
|
# if defined(MODPLUG_BUILD) && defined(DLL_EXPORT) /* building libmodplug as a dll for windows */
|
||||||
|
# define MODPLUG_EXPORT __declspec(dllexport)
|
||||||
|
# elif defined(MODPLUG_BUILD) || defined(MODPLUG_STATIC) /* building or using static libmodplug for windows */
|
||||||
|
# define MODPLUG_EXPORT
|
||||||
|
# else
|
||||||
|
# define MODPLUG_EXPORT __declspec(dllimport) /* using libmodplug dll for windows */
|
||||||
|
# endif
|
||||||
|
/* FIXME: USE VISIBILITY ATTRIBUTES HERE */
|
||||||
|
#elif defined(MODPLUG_BUILD)
|
||||||
|
#define MODPLUG_EXPORT
|
||||||
|
#else
|
||||||
|
#define MODPLUG_EXPORT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
BIN
deps/modplug/lib/libmodplug.a
vendored
Normal file
BIN
deps/modplug/lib/libmodplug.a
vendored
Normal file
Binary file not shown.
Loading…
Reference in a new issue