--- SDL_sound-1.0.1/configure.in.orig 2003-10-12 20:49:54.000000000 +0200 +++ SDL_sound-1.0.1/configure.in 2006-12-28 01:32:57.687466105 +0100 @@ -157,7 +157,7 @@ dnl obsolete versions. dnl Hooray for shitty autoconf bugs! -x="C__seekable_stream_decoder_process_single" +x="C__stream_decoder_process_single" flcsym="FLA$x" dnl Check for libFLAC AC_ARG_ENABLE(flac, --- SDL_sound-1.0.1/decoders/flac.c.orig 2003-03-10 23:44:14.000000000 +0100 +++ SDL_sound-1.0.1/decoders/flac.c 2006-12-28 01:43:13.870580380 +0100 @@ -44,42 +44,33 @@ #define __SDL_SOUND_INTERNAL__ #include "SDL_sound_internal.h" -#include +#include -#define D_END_OF_STREAM FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM +#define D_END_OF_STREAM FLAC__STREAM_DECODER_END_OF_STREAM -#define d_new() FLAC__seekable_stream_decoder_new() -#define d_init(x) FLAC__seekable_stream_decoder_init(x) -#define d_process_metadata(x) FLAC__seekable_stream_decoder_process_until_end_of_metadata(x) -#define d_process_one_frame(x) FLAC__seekable_stream_decoder_process_single(x) -#define d_get_state(x) FLAC__seekable_stream_decoder_get_state(x) -#define d_finish(x) FLAC__seekable_stream_decoder_finish(x) -#define d_delete(x) FLAC__seekable_stream_decoder_delete(x) -#define d_set_read_callback(x, y) FLAC__seekable_stream_decoder_set_read_callback(x, y) -#define d_set_write_callback(x, y) FLAC__seekable_stream_decoder_set_write_callback(x, y) -#define d_set_metadata_callback(x, y) FLAC__seekable_stream_decoder_set_metadata_callback(x, y) -#define d_set_error_callback(x, y) FLAC__seekable_stream_decoder_set_error_callback(x, y) -#define d_set_client_data(x, y) FLAC__seekable_stream_decoder_set_client_data(x, y) - -typedef FLAC__SeekableStreamDecoder decoder_t; -typedef FLAC__SeekableStreamDecoderReadStatus d_read_status_t; - -#define D_SEEK_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK -#define D_SEEK_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR -#define D_TELL_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK -#define D_TELL_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR -#define D_LENGTH_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK -#define D_LENGTH_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR - -#define d_set_seek_callback(x, y) FLAC__seekable_stream_decoder_set_seek_callback(x, y) -#define d_set_tell_callback(x, y) FLAC__seekable_stream_decoder_set_tell_callback(x, y) -#define d_set_length_callback(x, y) FLAC__seekable_stream_decoder_set_length_callback(x, y) -#define d_set_eof_callback(x, y) FLAC__seekable_stream_decoder_set_eof_callback(x, y) -#define d_seek_absolute(x, y) FLAC__seekable_stream_decoder_seek_absolute(x, y) - -typedef FLAC__SeekableStreamDecoderSeekStatus d_seek_status_t; -typedef FLAC__SeekableStreamDecoderTellStatus d_tell_status_t; -typedef FLAC__SeekableStreamDecoderLengthStatus d_length_status_t; +#define d_new() FLAC__stream_decoder_new() +#define d_init FLAC__stream_decoder_init_stream +#define d_process_metadata(x) FLAC__stream_decoder_process_until_end_of_metadata(x) +#define d_process_one_frame(x) FLAC__stream_decoder_process_single(x) +#define d_get_state(x) FLAC__stream_decoder_get_state(x) +#define d_finish(x) FLAC__stream_decoder_finish(x) +#define d_delete(x) FLAC__stream_decoder_delete(x) + +typedef FLAC__StreamDecoder decoder_t; +typedef FLAC__StreamDecoderReadStatus d_read_status_t; + +#define D_SEEK_STATUS_OK FLAC__STREAM_DECODER_SEEK_STATUS_OK +#define D_SEEK_STATUS_ERROR FLAC__STREAM_DECODER_SEEK_STATUS_ERROR +#define D_TELL_STATUS_OK FLAC__STREAM_DECODER_TELL_STATUS_OK +#define D_TELL_STATUS_ERROR FLAC__STREAM_DECODER_TELL_STATUS_ERROR +#define D_LENGTH_STATUS_OK FLAC__STREAM_DECODER_LENGTH_STATUS_OK +#define D_LENGTH_STATUS_ERROR FLAC__STREAM_DECODER_LENGTH_STATUS_ERROR + +#define d_seek_absolute(x, y) FLAC__stream_decoder_seek_absolute(x, y) + +typedef FLAC__StreamDecoderSeekStatus d_seek_status_t; +typedef FLAC__StreamDecoderTellStatus d_tell_status_t; +typedef FLAC__StreamDecoderLengthStatus d_length_status_t; #define D_WRITE_CONTINUE FLAC__STREAM_DECODER_WRITE_STATUS_CONTINUE #define D_READ_END_OF_STREAM FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM @@ -400,17 +391,6 @@ BAIL_MACRO(ERR_OUT_OF_MEMORY, 0); } /* if */ - d_set_read_callback(decoder, read_callback); - d_set_write_callback(decoder, write_callback); - d_set_metadata_callback(decoder, metadata_callback); - d_set_error_callback(decoder, error_callback); - d_set_seek_callback(decoder, seek_callback); - d_set_tell_callback(decoder, tell_callback); - d_set_length_callback(decoder, length_callback); - d_set_eof_callback(decoder, eof_callback); - - d_set_client_data(decoder, f); - f->rw = internal->rw; f->sample = sample; f->decoder = decoder; @@ -418,7 +398,9 @@ f->is_flac = 0 /* !!! FIXME: should be "has_extension", not "0". */; internal->decoder_private = f; - d_init(decoder); + d_init(decoder, read_callback, seek_callback, tell_callback, + length_callback, eof_callback, write_callback, metadata_callback, + error_callback, f); sample->flags = SOUND_SAMPLEFLAG_NONE;