debian/0000775000000000000000000000000012053173652007174 5ustar debian/copyright0000664000000000000000000000250511757151061011131 0ustar This package was debianized by Gürkan Sengün on Mon, 26 Apr 2004 09:33:33 +0200. It was downloaded from http://organact.mine.nu/~wolfgang/cynthiune/ Upstream Author: Wolfgang Sourdeau Copyright: Copyright (C) 2002-2006 Wolfgang Sourdeau Copyright (C) 2010 Free Software Foundation, Inc. Cynthiune is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Cynthiune is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License with your Debian GNU/Linux system, in /usr/share/common-licenses/GPL, or with the Debian GNU/Linux lire source package as the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-2'. debian/compat0000664000000000000000000000000211757151061010372 0ustar 7 debian/patches/0000775000000000000000000000000011763124304010620 5ustar debian/patches/WindowsMedia.patch0000664000000000000000000000516011757151061014240 0ustar 2009-12-14 Yavor Doganov Fix FTBFS and adopt to the slightly changed avifile API. * Bundles/WindowsMedia.CWMFile.h (WMStreamReadFrames): Typo fix. * Bundles/WindowsMedia/CWMFile.cpp: Include . (WMFileAudioStreamCount, WMStreamGetFrameSize): Cast the result to unsigned int. (WMStreamReadFrames) <_samplesRead, _bytesRead>: Declare of type size_t. Amend the call to readStream->ReadFrames accordingly. --- cynthiune.app-0.9.5.orig/Bundles/WindowsMedia/CWMFile.cpp +++ cynthiune.app-0.9.5/Bundles/WindowsMedia/CWMFile.cpp @@ -26,6 +26,7 @@ #include #include +#include #include "CWMFile.h" @@ -74,7 +75,7 @@ readFile = (avm::IReadFile *) file; - return readFile->AudioStreamCount (); + return (unsigned int) readFile->AudioStreamCount (); } WMStream * @@ -117,7 +118,7 @@ readStream = (avm::IReadStream *) stream; - return readStream->GetFrameSize (); + return (unsigned int) readStream->GetFrameSize (); } void @@ -127,7 +128,7 @@ unsigned int *duration) { avm::IReadStream *readStream; - StreamInfo *streamInfo; + avm::StreamInfo *streamInfo; readStream = (avm::IReadStream *) stream; streamInfo = readStream->GetStreamInfo (); @@ -145,7 +146,7 @@ unsigned int samples, unsigned int *samplesRead, unsigned int *bytesRead) { - unsigned int _samplesRead, _bytesRead; + size_t _samplesRead, _bytesRead; avm::IReadStream *readStream; int result, eof; @@ -157,10 +158,13 @@ readStream = (avm::IReadStream *) stream; while (!result && !_bytesRead) - result = ((readStream->Eof ()) + { + size_t tmp_bufferSize = (size_t) bufferSize; + result = ((readStream->Eof ()) ? -1 - : readStream->ReadFrames (buffer, bufferSize, bufferSize, - _samplesRead, _bytesRead)); + : readStream->ReadFrames (buffer, tmp_bufferSize, tmp_bufferSize, + _samplesRead, _bytesRead)); + } *samplesRead = _samplesRead; *bytesRead = _bytesRead; --- cynthiune.app-0.9.5.orig/Bundles/WindowsMedia/CWMFile.h +++ cynthiune.app-0.9.5/Bundles/WindowsMedia/CWMFile.h @@ -47,7 +47,7 @@ unsigned int *duration); int WMStreamReadFrames (WMStream *stream, void *buffer, unsigned int bufferSize, - unsigned int samples, unsigned *samplesRead, + unsigned int samples, unsigned int *samplesRead, unsigned int *bytesRead); void WMStreamSeekTime (WMStream *stream, unsigned int position); debian/patches/link-libs.patch0000664000000000000000000001667711763105015013544 0ustar 2011-07-11 Colin Watson * framework.make (ADDITIONAL_LDFLAGS): Rename as... (ADDITIONAL_GUI_LIBS): ...this. 2009-04-09 Yavor Doganov * Frameworks/Cynthiune/GNUmakefile (Cynthiune_LIBRARIES_DEPEND_UPON): Add $(OBJC_LIBS). * Bundles/ID3Tag/GNUmakefile.preamble (ADDITIONAL_LDFLAGS): Rename as... (BUNDLE_LIBS): ...which is the proper variable. * Bundles/AudioFile/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/FLACTags/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/FLAC/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/Musepack/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/Esound/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/aRts/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/WindowsMedia/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. * Bundles/MP3/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. (TAGLIB_CFLAGS, TAGLIB_LIBS): Do not define. * Bundles/Mod/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. Don't link against libstdc++. * Bundles/VorbisTags/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. (VORBIS_LIBS): Don't link against libvorbisenc. * Bundles/Ogg/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. (VORBIS_LIBS): Likewise. * Bundles/Taglib/GNUmakefile.preamble (ADDITIONAL_LDFLAGS) (BUNDLE_LIBS): Likewise. (TAGLIB_LIBS): Link only against libtaglib_c. --- cynthiune.app.orig/Frameworks/Cynthiune/GNUmakefile +++ cynthiune.app/Frameworks/Cynthiune/GNUmakefile @@ -77,7 +77,8 @@ NSViewExtensions.m \ utils.m -Cynthiune_LIBRARIES_DEPEND_UPON += -lgnustep-gui -l$(FOUNDATION_LIBRARY_NAME) +Cynthiune_LIBRARIES_DEPEND_UPON += $(OBJC_LIBS) $(GUI_LIBS) \ + -l$(FOUNDATION_LIBRARY_NAME) -include GNUmakefile.preamble -include GNUmakefile.local --- cynthiune.app.orig/Bundles/ID3Tag/GNUmakefile.preamble +++ cynthiune.app/Bundles/ID3Tag/GNUmakefile.preamble @@ -28,7 +28,7 @@ ID3Tag_CFLAGS := $(shell pkg-config id3tag --cflags) ID3Tag_LIBS := $(shell pkg-config id3tag --libs) -ADDITIONAL_LDFLAGS += $(ID3Tag_LIBS) +BUNDLE_LIBS += $(ID3Tag_LIBS) endif ADDITIONAL_INCLUDE_DIRS += -I../.. $(ID3Tag_CFLAGS) --- cynthiune.app.orig/Bundles/MP3/GNUmakefile.preamble +++ cynthiune.app/Bundles/MP3/GNUmakefile.preamble @@ -38,10 +38,7 @@ ID3Tag_CFLAGS := $(shell pkg-config id3tag --cflags) ID3Tag_LIBS := $(shell pkg-config id3tag --libs) -TAGLIB_CFLAGS = $(shell taglib-config --cflags) -TAGLIB_LIBS = $(shell taglib-config --libs) -ltag_c - -ADDITIONAL_LDFLAGS += $(MAD_LIBS) $(ID3Tag_LIBS) $(TAGLIB_LIBS) +BUNDLE_LIBS += $(MAD_LIBS) $(ID3Tag_LIBS) endif ADDITIONAL_INCLUDE_DIRS += -I../.. $(MAD_CFLAGS) $(ID3Tag_CFLAGS) $(TAGLIB_CFLAGS) --- cynthiune.app.orig/Bundles/Mod/GNUmakefile.preamble +++ cynthiune.app/Bundles/Mod/GNUmakefile.preamble @@ -26,7 +26,7 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += -lmodplug -lstdc++ else -ADDITIONAL_LDFLAGS += -lmodplug -lstdc++ +BUNDLE_LIBS += -lmodplug endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/Ogg/GNUmakefile.preamble +++ cynthiune.app/Bundles/Ogg/GNUmakefile.preamble @@ -19,12 +19,12 @@ # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. -VORBIS_LIBS := -lvorbisenc -lvorbisfile -lvorbis -logg +VORBIS_LIBS := -lvorbisfile -lvorbis -logg ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(VORBIS_LIBS) else -ADDITIONAL_LDFLAGS += $(VORBIS_LIBS) +BUNDLE_LIBS += $(VORBIS_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/VorbisTags/GNUmakefile.preamble +++ cynthiune.app/Bundles/VorbisTags/GNUmakefile.preamble @@ -19,12 +19,12 @@ # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. -VORBIS_LIBS := -lvorbisenc -lvorbisfile -lvorbis -logg +VORBIS_LIBS := -lvorbisfile -lvorbis -logg ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(VORBIS_LIBS) else -ADDITIONAL_LDFLAGS += $(VORBIS_LIBS) +BUNDLE_LIBS += $(VORBIS_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/Taglib/GNUmakefile.preamble +++ cynthiune.app/Bundles/Taglib/GNUmakefile.preamble @@ -26,9 +26,9 @@ ADDITIONAL_GUI_LIBS += $(TAGLIB_LIBS) else TAGLIB_CFLAGS = $(shell taglib-config --cflags) -TAGLIB_LIBS = $(shell taglib-config --libs) -ltag_c +TAGLIB_LIBS = $(shell pkg-config taglib_c --libs) -ADDITIONAL_LDFLAGS += $(TAGLIB_LIBS) +BUNDLE_LIBS += $(TAGLIB_LIBS) endif ADDITIONAL_INCLUDE_DIRS += -I../.. $(TAGLIB_CFLAGS) --- cynthiune.app.orig/Bundles/AudioFile/GNUmakefile.preamble +++ cynthiune.app/Bundles/AudioFile/GNUmakefile.preamble @@ -27,7 +27,7 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(AUDIOFILE_LIBS) else -ADDITIONAL_LDFLAGS += $(AUDIOFILE_LIBS) +BUNDLE_LIBS += $(AUDIOFILE_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/Esound/GNUmakefile.preamble +++ cynthiune.app/Bundles/Esound/GNUmakefile.preamble @@ -23,7 +23,7 @@ ESD_LIBS := $(shell esd-config --libs) ADDITIONAL_INCLUDE_DIRS += -I../.. $(ESD_CFLAGS) -ADDITIONAL_LDFLAGS += -I../.. $(ESD_LIBS) +BUNDLE_LIBS += -I../.. $(ESD_LIBS) ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/FLAC/GNUmakefile.preamble +++ cynthiune.app/Bundles/FLAC/GNUmakefile.preamble @@ -26,7 +26,7 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(FLAC_LIBS) else -ADDITIONAL_LDFLAGS += $(FLAC_LIBS) +BUNDLE_LIBS += $(FLAC_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/FLACTags/GNUmakefile.preamble +++ cynthiune.app/Bundles/FLACTags/GNUmakefile.preamble @@ -26,7 +26,7 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(FLAC_LIBS) else -ADDITIONAL_LDFLAGS += $(FLAC_LIBS) +BUNDLE_LIBS += $(FLAC_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/Musepack/GNUmakefile.preamble +++ cynthiune.app/Bundles/Musepack/GNUmakefile.preamble @@ -26,7 +26,7 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += $(MUSEPACK_LIBS) else -ADDITIONAL_LDFLAGS += $(MUSEPACK_LIBS) +BUNDLE_LIBS += $(MUSEPACK_LIBS) endif ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/Bundles/aRts/GNUmakefile.preamble +++ cynthiune.app/Bundles/aRts/GNUmakefile.preamble @@ -20,7 +20,7 @@ # Boston, MA 02111-1307, USA. ADDITIONAL_OBJCFLAGS += -Wall -Wno-import $(shell artsc-config --cflags) -DARTSD="\"$(shell artsc-config --arts-prefix)/bin/artsd\"" -ADDITIONAL_LDFLAGS += $(shell artsc-config --libs) +BUNDLE_LIBS += $(shell artsc-config --libs) ifeq ($(debug), yes) ADDITIONAL_LDFLAGS += -lmcheck --- cynthiune.app.orig/Bundles/WindowsMedia/GNUmakefile.preamble +++ cynthiune.app/Bundles/WindowsMedia/GNUmakefile.preamble @@ -23,7 +23,7 @@ AVIFILE_LIBS := $(shell avifile-config --libs) ADDITIONAL_INCLUDE_DIRS += -I../.. $(AVIFILE_CFLAGS) -ADDITIONAL_LDFLAGS += $(AVIFILE_LIBS) +BUNDLE_LIBS += $(AVIFILE_LIBS) ADDITIONAL_OBJCFLAGS += -Wall -Wno-import --- cynthiune.app.orig/frameworks.make +++ cynthiune.app/frameworks.make @@ -10,5 +10,5 @@ ifeq (mingw32, $(GNUSTEP_TARGET_OS)) ADDITIONAL_GUI_LIBS += -L$(FRAMEWORKS_DIRS)/../../Cynthiune.app $(_ldflags) else -ADDITIONAL_LDFLAGS += $(_ldflags) +ADDITIONAL_GUI_LIBS += $(_ldflags) endif debian/patches/compilation-errors.patch0000664000000000000000000000246711757151061015505 0ustar 2011-04-19 Yavor Doganov * CynthiuneController.m: Don't import . 2010-05-18 Yavor Doganov * Frameworks/Cynthiune/NSCellExtensions.m: Import . 2008-07-02 Hubert Chathi * Bundles/OSS/OSSPreference.h: Declare @class NSMutableDictionary. * Frameworks/Cynthiune/NSCellExtensions.m: Import . --- cynthiune.app-0.9.5.orig/Bundles/OSS/OSSPreference.h +++ cynthiune.app-0.9.5/Bundles/OSS/OSSPreference.h @@ -25,6 +25,7 @@ #import +@class NSMutableDictionary; @class NSBox; @class NSWindow; @class NSTextField; --- cynthiune.app-0.9.5.orig/Frameworks/Cynthiune/NSCellExtensions.m +++ cynthiune.app-0.9.5/Frameworks/Cynthiune/NSCellExtensions.m @@ -20,7 +20,7 @@ * Boston, MA 02111-1307, USA. */ -#import +#import #import "NSCellExtensions.h" --- cynthiune.app-0.9.5.orig/CynthiuneController.m +++ cynthiune.app-0.9.5/CynthiuneController.m @@ -28,9 +28,6 @@ #import #import #import -#ifdef GNUSTEP -#import -#endif #import #import #import debian/patches/FLAC-1.2-new-API.patch0000664000000000000000000002237211757151061014053 0ustar 2007-11-05 Yavor Doganov Port to FLAC 1.2 (at least a try). * Bundles/FLAC/FLAC.h (Format>): Replace FLAC__FileDecoder with FLAC__StreamDecoder. * Bundles/FLAC/FLAC.m (writeCallback, metadataCallBack) (errorCallback): Likewise. (_initializeFileDecoderWithFilename) : Replace with FLAC__stream_decoder_set_metadata_ignore_all. : Replace with FLAC__stream_decoder_set_metadata_respond. : Deleted, obsolete. Return `FLAC__stream_decoder_init_file'. ([FLAC -streamOpen:fileName]): Replace FLAC__file_decoder_new with FLAC__stream_decoder_new. Likewise for FLAC__file_decoder_delete and FLAC__stream_decoder_delete. ([FLAC -streamClose]): Ditto; do the same with FLAC__file_decoder_process_single and FLAC__stream_decoder_process_single accordingly. ([FLAC -readNextChunk:bufferwithSize:bufferSize]): Replace FLAC__FileDecoderState with StreamDecoderInitStatus. Likewise for FLAC__file_decoder_get_state and FLAC__stream_recorder_get_state. Check for the return values of FLAC__STREAM_DECODER_SEARCH_FOR_FRAME_SYNC and FLAC__STREAM_DECODER_END_OF_STREAM. ([FLAC -seek:aPos]): Replace FLAC__file_decoder_seek_absolute with FLAC__stream_decoder_seek_absolute. ([FLAC -dealloc]): Replace FLAC__file_decoder_delete with FLAC__stream_decoder_delete. * Bundles/FLACTags/FLACTags.m (writeCallback, metadataCallback) (errorCallback): Replace FLAC__FileDecoder with FLAC__StreamDecoder. ([FLACTags +readTitle:titleartist:artistalbum:albumtrackNumber:trackNumbergenre:genreyear:yearofFilename:filename]): Likewise. Replace FLAC__file_decorder_new with FLAC__stream_decoder_new. : Replace with FLAC__stream_decoder_set_metadata_ignore_all. : Replace with FLAC__stream_decoder_set_metadata_respond. : Deleted, obsolete. [result]: Use FLAC__stream_decoder_init_file with the proper arguments. --- cynthiune.app-0.9.5.orig/Bundles/FLAC/FLAC.h +++ cynthiune.app-0.9.5/Bundles/FLAC/FLAC.h @@ -31,7 +31,7 @@ @interface FLAC : NSObject { - FLAC__FileDecoder *fileDecoder; + FLAC__StreamDecoder *fileDecoder; unsigned int bitsPerSample; unsigned int duration; --- cynthiune.app-0.9.5.orig/Bundles/FLAC/FLAC.m +++ cynthiune.app-0.9.5/Bundles/FLAC/FLAC.m @@ -39,7 +39,7 @@ #define LOCALIZED(X) _b ([FLAC class], X) static FLAC__StreamDecoderWriteStatus -writeCallback (const FLAC__FileDecoder *fileDecoder, const FLAC__Frame *frame, +writeCallback (const FLAC__StreamDecoder *fileDecoder, const FLAC__Frame *frame, const FLAC__int32 * const buffer[], void *clientData) { CFLAC *cStream; @@ -70,7 +70,7 @@ } static void -metadataCallback (const FLAC__FileDecoder *fileDecoder, +metadataCallback (const FLAC__StreamDecoder *fileDecoder, const FLAC__StreamMetadata *metadata, void *clientData) { @@ -88,7 +88,7 @@ } static void -errorCallback (const FLAC__FileDecoder *fileDecoder, +errorCallback (const FLAC__StreamDecoder *fileDecoder, FLAC__StreamDecoderErrorStatus status, void *clientData) { @@ -161,25 +161,24 @@ - (BOOL) _initializeFileDecoderWithFilename: (NSString *) fileName { - FLAC__file_decoder_set_metadata_ignore_all (fileDecoder); - FLAC__file_decoder_set_metadata_respond (fileDecoder, + FLAC__stream_decoder_set_metadata_ignore_all (fileDecoder); + FLAC__stream_decoder_set_metadata_respond (fileDecoder, FLAC__METADATA_TYPE_STREAMINFO); - FLAC__file_decoder_set_metadata_callback (fileDecoder, - metadataCallback); - FLAC__file_decoder_set_write_callback (fileDecoder, writeCallback); - FLAC__file_decoder_set_error_callback (fileDecoder, errorCallback); - FLAC__file_decoder_set_client_data (fileDecoder, self); - - return (FLAC__file_decoder_set_filename (fileDecoder, [fileName cString]) - && (FLAC__file_decoder_init (fileDecoder) == FLAC__FILE_DECODER_OK) - && FLAC__file_decoder_process_until_end_of_metadata (fileDecoder)); + return (FLAC__stream_decoder_init_file (fileDecoder, + [fileName cString], + writeCallback, + metadataCallback, + errorCallback, + self) + == FLAC__STREAM_DECODER_INIT_STATUS_OK) + && FLAC__stream_decoder_process_until_end_of_metadata (fileDecoder); } - (BOOL) streamOpen: (NSString *) fileName { BOOL result; - fileDecoder = FLAC__file_decoder_new(); + fileDecoder = FLAC__stream_decoder_new(); if (fileDecoder) { @@ -187,7 +186,7 @@ result = YES; else { - FLAC__file_decoder_delete (fileDecoder); + FLAC__stream_decoder_delete (fileDecoder); fileDecoder = NULL; result = NO; } @@ -200,7 +199,7 @@ - (void) streamClose { - FLAC__file_decoder_delete (fileDecoder); + FLAC__stream_decoder_delete (fileDecoder); fileDecoder = NULL; } @@ -215,7 +214,7 @@ if (position >= readBufferSize) { position = 0; - success = FLAC__file_decoder_process_single (fileDecoder); + success = FLAC__stream_decoder_process_single (fileDecoder); } if (success) @@ -251,13 +250,13 @@ withSize: (unsigned int) bufferSize { int readBytes; - FLAC__FileDecoderState state; + FLAC__StreamDecoderState state; - state = FLAC__file_decoder_get_state (fileDecoder); + state = FLAC__stream_decoder_get_state (fileDecoder); - if (state == FLAC__FILE_DECODER_OK) + if (state == FLAC__STREAM_DECODER_SEARCH_FOR_FRAME_SYNC) readBytes = [self _processNextChunk: buffer withSize: bufferSize]; - else if (state == FLAC__FILE_DECODER_END_OF_FILE) + else if (state == FLAC__STREAM_DECODER_END_OF_STREAM) readBytes = 0; else readBytes = -1; @@ -272,7 +271,7 @@ - (void) seek: (unsigned int) aPos { - FLAC__file_decoder_seek_absolute (fileDecoder, aPos * rate); + FLAC__stream_decoder_seek_absolute (fileDecoder, aPos * rate); } - (unsigned int) readChannels @@ -295,7 +294,7 @@ if (readBuffer) free (readBuffer); if (fileDecoder) - FLAC__file_decoder_delete (fileDecoder); + FLAC__stream_decoder_delete (fileDecoder); [super dealloc]; } --- cynthiune.app-0.9.5.orig/Bundles/FLACTags/FLACTags.m +++ cynthiune.app-0.9.5/Bundles/FLACTags/FLACTags.m @@ -78,14 +78,14 @@ } static FLAC__StreamDecoderWriteStatus -writeCallback (const FLAC__FileDecoder *fileDecoder, const FLAC__Frame *frame, +writeCallback (const FLAC__StreamDecoder *fileDecoder, const FLAC__Frame *frame, const FLAC__int32 * const buffer[], void *clientData) { return FLAC__STREAM_DECODER_WRITE_STATUS_CONTINUE; } static void -metadataCallback (const FLAC__FileDecoder *fileDecoder, +metadataCallback (const FLAC__StreamDecoder *fileDecoder, const FLAC__StreamMetadata *metadata, void *clientData) { @@ -104,7 +104,7 @@ } static void -errorCallback (const FLAC__FileDecoder *fileDecoder, +errorCallback (const FLAC__StreamDecoder *fileDecoder, FLAC__StreamDecoderErrorStatus status, void *clientData) { @@ -132,30 +132,25 @@ year: (NSString **) year ofFilename: (NSString *) filename { - FLAC__FileDecoder *fileDecoder; + FLAC__StreamDecoder *fileDecoder; BOOL result; NSString **arrayOfValues[] = { title, artist, album, trackNumber, genre, year }; - fileDecoder = FLAC__file_decoder_new(); + fileDecoder = FLAC__stream_decoder_new(); if (fileDecoder) { - FLAC__file_decoder_set_metadata_ignore_all (fileDecoder); - FLAC__file_decoder_set_metadata_respond (fileDecoder, + FLAC__stream_decoder_set_metadata_ignore_all (fileDecoder); + FLAC__stream_decoder_set_metadata_respond (fileDecoder, FLAC__METADATA_TYPE_VORBIS_COMMENT); - FLAC__file_decoder_set_metadata_callback (fileDecoder, - metadataCallback); - FLAC__file_decoder_set_write_callback (fileDecoder, writeCallback); - FLAC__file_decoder_set_error_callback (fileDecoder, errorCallback); - FLAC__file_decoder_set_client_data (fileDecoder, arrayOfValues); - - result = (FLAC__file_decoder_set_filename (fileDecoder, - [filename cString]) - && (FLAC__file_decoder_init (fileDecoder) - == FLAC__FILE_DECODER_OK) - && FLAC__file_decoder_process_until_end_of_metadata - (fileDecoder)); - FLAC__file_decoder_delete (fileDecoder); + result = (FLAC__stream_decoder_init_file (fileDecoder, + [filename cString], + writeCallback, metadataCallback, + errorCallback, + *arrayOfValues) + == FLAC__STREAM_DECODER_INIT_STATUS_OK) + && FLAC__stream_decoder_process_until_end_of_metadata (fileDecoder); + FLAC__stream_decoder_delete (fileDecoder); } else result = NO; debian/patches/Musepack-new-API.patch0000664000000000000000000002103711757151061014615 0ustar 2009-05-19 Yavor Doganov * Bundsles/Musepack/CNSFileHandle.h: Import . (CNSFileHandleRetain, CNSFileHandleRelease): Remove prototypes. (CNSFileHandleRead, CNSFileHandleTell, CNSFileHandleCanSeek) (CNSFileHandleSeek, CNSFileHandleGetSize): Accept mpc_reader type as first argument. * Bundles/Musepack/CNSFileHandle.m (CNSFileHandleRetain) (CNSFileHandleRelease): Delete; unused. (CNSFileHandleRead, CNSFileHandleTell, CNSFileHandleCanSeek) (CNSFileHandleSeek, CNSFileHandleGetSize): Adjust for the new mpc_reader type. * Bundles/Musepack/Musepack.h : Declare of mpc_demux type. * Bundles/Musepack/Musepack.m: Import . (MPCReaderDelete): Use `mpc_reader_exit_stdio' instead of `free'. (MPCStreamInfoNew): Don't call `mpc_streaminfo_init'. (MPCDecoderNew): Remove function. ([Musepack -streamOpen]): Initialize the decoder with the new API function `mpc_demux_init'. ([Musepack +streamTestOpen]): Likewise. ([Musepack -readNextChunk:withSize:]): Adjust to use `mpc_demux_decode'. : New local variables. : Remove. ([Musepack -readDuration]): Use `mpc_streaminfo_get_length' to obtain the duration and return its result casted to unsigned int. ([Musepack -streamClose]): Use `mpc_demux_exit' as appropriate. ([Musepack +acceptedFileExtensions]): Recognize `.mpp'. ([Musepack -seek]): Use `mpc_demux_seek_second'. --- cynthiune.app-0.9.5.orig/Bundles/Musepack/CNSFileHandle.h +++ cynthiune.app-0.9.5/Bundles/Musepack/CNSFileHandle.h @@ -23,20 +23,17 @@ #ifndef CNSFILEHANDLE_H #define CNSFILEHANDLE_H -#include +#import #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ -void CNSFileHandleRetain (void *fileHandle); -void CNSFileHandleRelease (void *fileHandle); - -int CNSFileHandleRead (void *fileHandle, void *ptr, int size); -int CNSFileHandleTell (void *fileHandle); -mpc_bool_t CNSFileHandleCanSeek (void *fileHandle); -mpc_bool_t CNSFileHandleSeek (void *fileHandle, int offset); -int CNSFileHandleGetSize (void *fileHandle); +int CNSFileHandleRead (mpc_reader *fileHandle, void *ptr, int size); +int CNSFileHandleTell (mpc_reader *fileHandle); +mpc_bool_t CNSFileHandleCanSeek (mpc_reader *fileHandle); +mpc_bool_t CNSFileHandleSeek (mpc_reader *fileHandle, int offset); +int CNSFileHandleGetSize (mpc_reader *fileHandle); #ifdef __cplusplus } --- cynthiune.app-0.9.5.orig/Bundles/Musepack/CNSFileHandle.m +++ cynthiune.app-0.9.5/Bundles/Musepack/CNSFileHandle.m @@ -26,57 +26,45 @@ #import "CNSFileHandle.h" -void -CNSFileHandleRetain (void *fileHandle) -{ - [(NSFileHandle *) fileHandle retain]; -} - -void -CNSFileHandleRelease (void *fileHandle) -{ - [(NSFileHandle *) fileHandle release]; -} - int -CNSFileHandleRead (void *fileHandle, void *ptr, int size) +CNSFileHandleRead (mpc_reader *fileHandle, void *ptr, int size) { NSData *data; - data = [(NSFileHandle *) fileHandle readDataOfLength: size]; + data = [(NSFileHandle *) fileHandle->data readDataOfLength: size]; [data getBytes: ptr]; return [data length]; } int -CNSFileHandleTell (void *fileHandle) +CNSFileHandleTell (mpc_reader *fileHandle) { - return [(NSFileHandle *) fileHandle offsetInFile]; + return [(NSFileHandle *) fileHandle->data offsetInFile]; } mpc_bool_t -CNSFileHandleCanSeek (void *fileHandle) +CNSFileHandleCanSeek (mpc_reader *fileHandle) { return YES; } mpc_bool_t -CNSFileHandleSeek (void *fileHandle, int offset) +CNSFileHandleSeek (mpc_reader *fileHandle, int offset) { - [(NSFileHandle *) fileHandle seekToFileOffset: (long long) offset]; + [(NSFileHandle *) fileHandle->data seekToFileOffset: (long long) offset]; return YES; } int -CNSFileHandleGetSize (void *fileHandle) +CNSFileHandleGetSize (mpc_reader *fileHandle) { int size, where; - where = [(NSFileHandle *) fileHandle offsetInFile]; - size = [(NSFileHandle *) fileHandle seekToEndOfFile]; - [(NSFileHandle *) fileHandle seekToFileOffset: (long long) where]; + where = [(NSFileHandle *) fileHandle->data offsetInFile]; + size = [(NSFileHandle *) fileHandle->data seekToEndOfFile]; + [(NSFileHandle *) fileHandle->data seekToFileOffset: (long long) where]; return size; } --- cynthiune.app-0.9.5.orig/Bundles/Musepack/Musepack.h +++ cynthiune.app-0.9.5/Bundles/Musepack/Musepack.h @@ -31,7 +31,7 @@ mpc_reader *mpcReader; mpc_streaminfo *mpcStreamInfo; - mpc_decoder *mpcDecoder; + mpc_demux *mpcDecoder; MPC_SAMPLE_FORMAT sampleBuffer[maxSamples]; unsigned char frameBuffer[maxSamples * 4]; --- cynthiune.app-0.9.5.orig/Bundles/Musepack/Musepack.m +++ cynthiune.app-0.9.5/Bundles/Musepack/Musepack.m @@ -30,7 +30,7 @@ #import #import -#import +#import #import "Musepack.h" #import "CNSFileHandle.h" @@ -75,7 +75,7 @@ MPCReaderDelete (mpc_reader *reader) { [(NSFileHandle *) reader->data release]; - free (reader); + mpc_reader_exit_stdio (reader); } static mpc_streaminfo * @@ -84,23 +84,10 @@ mpc_streaminfo *streamInfo; streamInfo = malloc (sizeof (mpc_streaminfo)); - mpc_streaminfo_init (streamInfo); return streamInfo; } -static mpc_decoder * -MPCDecoderNew (mpc_reader *reader, mpc_streaminfo *streamInfo) -{ - mpc_decoder *decoder; - - decoder = malloc (sizeof (mpc_decoder)); - mpc_decoder_setup (decoder, reader); - mpc_decoder_initialize (decoder, streamInfo); - - return decoder; -} - static inline void CopyBuffer (const MPC_SAMPLE_FORMAT *buffer, unsigned char *destBuffer, unsigned int length) @@ -173,10 +160,13 @@ { [fileHandle retain]; mpcReader = MPCReaderNew (fileHandle); + if (!mpcReader) + return MPC_FALSE; mpcStreamInfo = MPCStreamInfoNew (); - mpc_streaminfo_read (mpcStreamInfo, mpcReader); - - mpcDecoder = MPCDecoderNew (mpcReader, mpcStreamInfo); + mpcDecoder = mpc_demux_init (mpcReader); + if (!mpcDecoder) + return MPC_FALSE; + mpc_demux_get_info (mpcDecoder, mpcStreamInfo); result = YES; } @@ -196,6 +186,7 @@ NSFileHandle *testFileHandle; mpc_reader *testReader; mpc_streaminfo *testStreamInfo; + mpc_demux *testDecoder; BOOL result; testFileHandle = [NSFileHandle fileHandleForReadingAtPath: fileName]; @@ -203,9 +194,14 @@ { testReader = MPCReaderNew (testFileHandle); testStreamInfo = MPCStreamInfoNew (); - result = !mpc_streaminfo_read (testStreamInfo, testReader); - free (testStreamInfo); - MPCReaderDelete (testReader); + testDecoder = mpc_demux_init (testReader); + if (testDecoder) + { + result = YES; + mpc_demux_exit (testDecoder); + } + if (testReader) + MPCReaderDelete (testReader); } else result = NO; @@ -222,21 +218,29 @@ withSize: (unsigned int) bufferSize { int bytes, status; - unsigned int vbrAcc, vbrBits; + mpc_frame_info frame; + mpc_status err; unsigned long frames, samples; status = 1; + frame.buffer = sampleBuffer; - if (!remaining) + while (!remaining) { - samples = mpc_decoder_decode (mpcDecoder, sampleBuffer, - &vbrAcc, &vbrBits); - if (!samples) - status = 0; - else if (samples == (unsigned long) -1) - status = -1; + err = mpc_demux_decode (mpcDecoder, &frame); + if (err != MPC_STATUS_OK) + { + status = -1; + break; + } + else if (frame.bits == -1) + { + status = 0; + break; + } else { + samples = frame.samples; frames = samples * mpcStreamInfo->channels; CopyBuffer (sampleBuffer, frameBuffer, frames); remaining = frames * 2; @@ -277,7 +281,7 @@ - (unsigned int) readDuration { - return mpcStreamInfo->pcm_samples / mpcStreamInfo->sample_freq; + return (unsigned int) mpc_streaminfo_get_length (mpcStreamInfo); } - (void) streamClose @@ -287,12 +291,10 @@ [fileHandle closeFile]; [fileHandle release]; } + if (mpcDecoder) + mpc_demux_exit (mpcDecoder); if (mpcReader) MPCReaderDelete (mpcReader); - if (mpcStreamInfo) - free (mpcStreamInfo); - if (mpcDecoder) - free (mpcDecoder); [self _resetIVars]; } @@ -300,7 +302,7 @@ // Player Protocol + (NSArray *) acceptedFileExtensions { - return [NSArray arrayWithObjects: @"mpc", @"mp+", nil]; + return [NSArray arrayWithObjects: @"mpc", @"mp+", @"mpp", nil]; } - (BOOL) isSeekable @@ -310,7 +312,7 @@ - (void) seek: (unsigned int) aPos { - mpc_decoder_seek_seconds (mpcDecoder, (double) aPos); + mpc_demux_seek_second (mpcDecoder, (double) aPos); } @end debian/patches/series0000664000000000000000000000034311763102722012035 0ustar libmusicbrainz5.patch gcc-4.7.patch ALSA.patch WindowsMedia.patch Bundles-install-dir.patch link-libs.patch FLAC-1.2-new-API.patch Musepack-new-API.patch compilation-errors.patch compilation-warnings.patch use-pkg-config.patch debian/patches/compilation-warnings.patch0000664000000000000000000000307211757151061016012 0ustar 2009-04-09 Yavor Doganov * Bundles/ID3Tag/ID3Tag.m ([ID3Tag -_readComment:fromTag]): Use `strcmp' to compare strings. * CynthiuneAnimatedImageView.m ([CynthiuneAnimatedImageView -dealloc]): * CynthiunePauseButton.m ([CynthiunePauseButton -dealloc]): * CynthiuneSongTitleCell.m ([CynthiuneSongTitleCell -dealloc]): Add [super dealloc] call. --- cynthiune.app-0.9.5.orig/Bundles/ID3Tag/ID3Tag.m +++ cynthiune.app-0.9.5/Bundles/ID3Tag/ID3Tag.m @@ -91,7 +91,7 @@ string = id3_field_getstrings (field, 0); if (string) { - if (commentTag == ID3_FRAME_GENRE) + if (!strcmp (commentTag, ID3_FRAME_GENRE)) string = id3_genre_name (string); comment = [NSString stringWithUCS4String: string]; } --- cynthiune.app-0.9.5.orig/CynthiuneAnimatedImageView.m +++ cynthiune.app-0.9.5/CynthiuneAnimatedImageView.m @@ -51,6 +51,7 @@ if (animationTimer) [animationTimer release]; [frames release]; + [super dealloc]; } - (void) addFramesFromImagenames: (NSString *) firstImagename, ... --- cynthiune.app-0.9.5.orig/CynthiuneSongTitleCell.m +++ cynthiune.app-0.9.5/CynthiuneSongTitleCell.m @@ -51,6 +51,7 @@ { if (songPointer) [songPointer release]; + [super dealloc]; } - (void) setShowImage: (BOOL) showImage --- cynthiune.app-0.9.5.orig/CynthiunePauseButton.m +++ cynthiune.app-0.9.5/CynthiunePauseButton.m @@ -49,6 +49,7 @@ [primaryImage release]; if (secondaryImage) [primaryImage release]; + [super dealloc]; } - (void) _animate debian/patches/ALSA.patch0000664000000000000000000002600411757151061012366 0ustar 2010-09-03 Yavor Doganov Implement a threaded ALSA output bundle. * Bundles/ALSA/ALSA.h: * Bundles/ALSA/ALSA.m: * Bundles/ALSA/GNUmakefile: * Bundles/ALSA/GNUmakefile.preamble: New file. * GNUmakefile (BUNDLES): Conditionally add ALSA. * GeneralPreference.m: Make ALSA the default on GNU/Linux. (-[GeneralPreference _initDefaults]): Add migration code for existing users. --- cynthiune.app-0.9.5.orig/GNUmakefile +++ cynthiune.app-0.9.5/GNUmakefile @@ -94,6 +94,16 @@ else +# GNUSTEP_TARGET_OS is defined to `linux-gnueabi' on armel and +# `linux-gnuspe' on powerpcspe. +ifneq (,$(findstring linux-gnu,$(GNUSTEP_TARGET_OS))) + +ifneq (yes,$(disable-alsa)) +BUNDLES += ALSA +endif + +endif + ifneq (yes,$(disable-oss)) BUNDLES += OSS endif --- /dev/null +++ cynthiune.app-0.9.5/Bundles/ALSA/ALSA.h @@ -0,0 +1,40 @@ +/* ALSA.h - this file is part of Cynthiune -*-objc-*- + * + * Copyright (C) 2010 Free Software Foundation, Inc. + * + * Author: Yavor Doganov + * + * Cynthiune is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * Cynthiune is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef ALSA_H +#define ALSA_H + +@interface ALSA : NSObject +{ + id parentPlayer; + snd_pcm_t *pcm_handle; + + BOOL stopRequested; + + unsigned int channels; + unsigned long rate; + + unsigned char buffer[DEFAULT_BUFFER_SIZE]; +} +@end + +#endif /* ALSA_H */ --- /dev/null +++ cynthiune.app-0.9.5/Bundles/ALSA/ALSA.m @@ -0,0 +1,169 @@ +/* ALSA.m - this file is part of Cynthiune + * + * Copyright (C) 2010 Free Software Foundation, Inc. + * + * Author: Yavor Doganov + * + * Cynthiune is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * Cynthiune is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef _REENTRANT +#define _REENTRANT 1 +#endif + +#import + +#import +#import +#import + +#include + +#import "ALSA.h" + +#define LOCALIZED(X) _b ([ALSA class], X) + +static char *device = "default"; + +@implementation ALSA ++ (NSString *) bundleDescription +{ + return LOCALIZED (@"Output plug-in for ALSA"); +} + ++ (NSArray *) bundleCopyrightStrings +{ + return [NSArray arrayWithObjects: + LOCALIZED (@"Copyright (C) 2010 Free Software Foundation," + @" Inc."), + nil]; +} + ++ (BOOL) isThreaded +{ + return YES; +} + +- (void) setParentPlayer: (id) aPlayer; +{ + parentPlayer = aPlayer; +} + +- (id) init +{ + if ((self = [super init])) + { + parentPlayer = nil; + pcm_handle = NULL; + channels = 0; + rate = 0; + stopRequested = NO; + } + + return self; +} + +- (BOOL) openDevice +{ + int err; + BOOL result = NO; + + if ((err = snd_pcm_open (&pcm_handle, device, SND_PCM_STREAM_PLAYBACK, 0)) + < 0) + NSRunAlertPanel (LOCALIZED (@"Error"), + LOCALIZED (@"Failed to open the ALSA device:\n%s"), + LOCALIZED (@"OK"), NULL, NULL, snd_strerror (err)); + else if ((err = snd_pcm_set_params (pcm_handle, SND_PCM_FORMAT_S16, + SND_PCM_ACCESS_RW_INTERLEAVED, + channels, rate, 1, 100000)) < 0) + NSRunAlertPanel (LOCALIZED (@"Error"), + LOCALIZED (@"Failed to set device parameters:\n%s"), + LOCALIZED (@"OK"), NULL, NULL, snd_strerror (err)); + else if ((err = snd_pcm_prepare (pcm_handle)) < 0) + NSRunAlertPanel (LOCALIZED (@"Error"), + LOCALIZED (@"Failed to prepare the ALSA device for " + @"playing:\n%s"), + LOCALIZED (@"OK"), NULL, NULL, snd_strerror (err)); + else + result = YES; + + return result; +} + +- (BOOL) prepareDeviceWithChannels: (unsigned int) numberOfChannels + andRate: (unsigned long) sampleRate +{ + channels = numberOfChannels; + rate = sampleRate; + + return YES; +} + +- (void) closeDevice +{ + while (stopRequested) + [NSThread sleepUntilDate: [NSDate dateWithTimeIntervalSinceNow: 0.1]]; + snd_pcm_close (pcm_handle); +} + +- (void) threadLoop +{ + NSAutoreleasePool *pool = [NSAutoreleasePool new]; + + while (!stopRequested) + { + snd_pcm_sframes_t written; + snd_pcm_uframes_t frames; + int bufferSize; + + bufferSize = [parentPlayer readNextChunk: buffer + withSize: DEFAULT_BUFFER_SIZE]; + + if (bufferSize > 0) + { + frames = snd_pcm_bytes_to_frames (pcm_handle, bufferSize); + written = snd_pcm_writei (pcm_handle, buffer, frames); + + if (written < 0) + { + NSLog (@"Failed writing to the ALSA device:\n" + @"%s, trying to recover.\n", snd_strerror (written)); + snd_pcm_recover (pcm_handle, written, 0); + } + } + + if ([pool autoreleaseCount] > 50) + [pool emptyPool]; + } + + stopRequested = NO; + [pool release]; +} + +- (BOOL) startThread +{ + [NSThread detachNewThreadSelector: @selector(threadLoop) + toTarget: self + withObject: nil]; + + return YES; +} + +- (void) stopThread +{ + stopRequested = YES; +} +@end --- /dev/null +++ cynthiune.app-0.9.5/Bundles/ALSA/GNUmakefile @@ -0,0 +1,44 @@ +# GNUmakefile - this file is part of Cynthiune +# +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# Author: Yavor Doganov +# +# Cynthiune is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# Cynthiune is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, +# Boston, MA 02110-1301, USA. + +include $(GNUSTEP_MAKEFILES)/common.make + +PACKAGE_NAME = ALSA +BUNDLE_NAME = ALSA +BUNDLE_EXTENSION = .output +BUNDLE_INSTALL_DIR = $(GNUSTEP_LIBRARY)/Cynthiune +ALSA_PRINCIPAL_CLASS = ALSA + +ALSA_HEADERS = ALSA.h + +ALSA_OBJC_FILES = ALSA.m + +ADDITIONAL_INCLUDE_DIRS += -I../../Frameworks + +FRAMEWORKS_DIRS = ../../Frameworks/Cynthiune +FRAMEWORKS = Cynthiune + +include ../../frameworks.make + +-include GNUmakefile.preamble +-include GNUmakefile.local +include $(GNUSTEP_MAKEFILES)/bundle.make +-include GNUmakefile.postamble --- /dev/null +++ cynthiune.app-0.9.5/Bundles/ALSA/GNUmakefile.preamble @@ -0,0 +1,31 @@ +# GNUmakefile.preamble - this file is part of Cynthiune -*-makefile-gmake-*- +# +# Copyright (C) 2010 Free Software Foundation, Inc. +# +# Author: Yavor Doganov +# +# Cynthiune is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# Cynthiune is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, +# Boston, MA 02110-1301, USA. + +ALSA_CFLAGS := $(shell pkg-config --cflags alsa) +ALSA_LIBS := $(shell pkg-config --libs alsa) + +ADDITIONAL_INCLUDE_DIRS += $(ALSA_CFLAGS) +BUNDLE_LIBS += $(ALSA_LIBS) +ADDITIONAL_OBJCFLAGS += -Wall -Wno-import + +ifeq ($(debug), yes) +ADDITIONAL_LDFLAGS += -lmcheck +endif --- cynthiune.app-0.9.5.orig/GeneralPreference.m +++ cynthiune.app-0.9.5/GeneralPreference.m @@ -20,11 +20,7 @@ * Boston, MA 02111-1307, USA. */ -#import -#import -#import -#import -#import +#import #import #import @@ -45,12 +41,12 @@ #define defaultOutputBundle @"MacOSXPlayer" #else #ifdef __linux__ -#define defaultOutputBundle @"OSS" +#define defaultOutputBundle @"ALSA" #else #ifdef __WIN32__ #define defaultOutputBundle @"WaveOut" #else -#define defaultOutputBundle @"Esound" +#define defaultOutputBundle @"OSS" #endif #endif #endif @@ -90,6 +86,46 @@ [preference setObject: outputBundle forKey: @"OutputBundle"]; } +#ifdef __linux__ + if (![outputBundle isEqualToString: @"ALSA"]) + { + NSString *migrated; + int choice; + + /* Check if the user has already made her choice about which + output bundle to use. The default `SuggestedALSA' is to + ensure that the dialog does not appear every time on + startup, even if the user's preference is OSS or something + else. */ + migrated = [preference objectForKey: @"SuggestedALSA"]; + + if (!migrated) + { + choice = + NSRunAlertPanel (_(@"Deprecated output bundle detected"), + _(@"ALSA is the recommended output bundle\n" + @"on GNU/Linux systems, but %@ is " + @"currently used.\nWould you like to " + @"switch to ALSA now?"), + _(@"Yes"), _(@"No"), + _(@"No, don't ask anymore"), + outputBundle); + + switch (choice) + { + case NSAlertDefaultReturn: + [preference setObject: @"ALSA" forKey: @"OutputBundle"]; + [preference setObject: @"YES" forKey: @"SuggestedALSA"]; + break; + case NSAlertAlternateReturn: + break; + case NSAlertOtherReturn: + [preference setObject: @"YES" forKey: @"SuggestedALSA"]; + } + } + } +#endif + playlistFormat = [preference objectForKey: @"PlaylistFormat"]; if (!playlistFormat || !([playlistFormat isEqualToString: @"m3u"] debian/patches/use-pkg-config.patch0000664000000000000000000000171611757151177014477 0ustar Description: Use pkg-config to retrieve building flags instead of the no longer provided audiofile-config. Author: Daniel T Chen Origin: http://launchpadlibrarian.net/88528108/cynthiune.app_0.9.5-13ubuntu1_0.9.5-13ubuntu2.diff.gz Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654766 Forwarded: no --- Bundles/AudioFile/GNUmakefile.preamble | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- cynthiune.app-0.9.5.orig/Bundles/AudioFile/GNUmakefile.preamble +++ cynthiune.app-0.9.5/Bundles/AudioFile/GNUmakefile.preamble @@ -19,8 +19,8 @@ # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. -AUDIOFILE_CFLAGS := $(shell audiofile-config --cflags) -AUDIOFILE_LIBS := $(shell audiofile-config --libs) +AUDIOFILE_CFLAGS := $(shell pkg-config audiofile --cflags) +AUDIOFILE_LIBS := $(shell pkg-config audiofile --libs) ADDITIONAL_INCLUDE_DIRS += -I../.. $(AUDIOFILE_CFLAGS) debian/patches/libmusicbrainz5.patch0000664000000000000000000002172011763124304014745 0ustar 2012-06-04 Yavor Doganov Port to libmusicbrainz5. * GNUmakefile.preamble (ADDITIONAL_GUI_LIBS): Link with libmusicbrainz5. * SongInspectorController.m: Include . (MakeQis, FreeQis, _generateTrmId): Remove. (-lookupThread, -_parseMB:, -readMB:track:): Adopt to the new libmusicbrainz API. --- cynthiune.app.orig/GNUmakefile.preamble +++ cynthiune.app/GNUmakefile.preamble @@ -25,7 +25,7 @@ ADDITIONAL_CPPFLAGS += -DLOCALBUILD=1 endif -ADDITIONAL_GUI_LIBS += -L/MingW/bin -lmusicbrainz +ADDITIONAL_GUI_LIBS += -L/MingW/bin -lmusicbrainz5 ifneq (mingw32, $(GNUSTEP_TARGET_OS)) ifeq ($(debug), yes) --- cynthiune.app.orig/SongInspectorController.m +++ cynthiune.app/SongInspectorController.m @@ -34,7 +34,7 @@ #import #import -#import +#include #import #import @@ -55,30 +55,6 @@ NSString *SongInspectorWasHiddenNotification = @"SongInspectorWasHiddenNotification"; NSString *SongInspectorDidUpdateSongNotification = @"SongInspectorDidUpdateSongNotification"; -static inline char** -MakeQis (char *trmId, Song *song) -{ - const char **qis; - - qis = malloc (7 * sizeof (char *)); - qis[0] = trmId; - qis[1] = [[song artist] UTF8String]; - qis[2] = [[song album] UTF8String]; - qis[3] = [[song title] UTF8String]; - qis[4] = [[song trackNumber] UTF8String]; - qis[5] = [[[song duration] stringValue] UTF8String]; - qis[6] = NULL; - - return (char **) qis; -} - -static inline void -FreeQis (char *qis[]) -{ - free (qis[0]); - free (qis); -} - @implementation SongInspectorController : NSObject + (void) initialize @@ -320,39 +296,6 @@ forKey: @"song"]]; } -- (char *) _generateTrmId -{ - id stream; - trm_t trmGen; - int size; - char sig[17]; - unsigned char buffer[4096]; - char *trmId; - - stream = [song openStreamForSong]; - if (stream) - { - trmGen = trm_New (); - trm_SetPCMDataInfo (trmGen, - [stream readRate], [stream readChannels], 16); - trm_SetSongLength (trmGen, [stream readDuration]); - size = [stream readNextChunk: buffer withSize: 4096]; - while (!trm_GenerateSignature (trmGen, (char *) buffer, size)) - size = [stream readNextChunk: buffer withSize: 4096]; - - trm_FinalizeSignature (trmGen, sig, NULL); - - trmId = malloc (37); - trm_ConvertSigToASCII (trmGen, sig, trmId); - trm_Delete (trmGen); - [stream streamClose]; - } - else - trmId = NULL; - - return trmId; -} - - (void) updateField: (NSTextField *) field withString: (NSString *) string { @@ -418,77 +361,68 @@ selector: @selector (_updateFieldsWithTrackInfos:)]; } -- (NSDictionary *) readMB: (musicbrainz_t) mb +- (NSDictionary *) readMB: (Mb5RecordingList) list track: (int) track { NSMutableDictionary *trackInfos; NSString *string; - char cString[100]; - int releases; + Mb5Recording rec; + Mb5ReleaseList albums; + Mb5Artist artist; + Mb5Release rel; + Mb5ArtistCredit credit; + Mb5NameCreditList clist; + Mb5NameCredit name_credit; + char cString[256]; trackInfos = [NSMutableDictionary new]; [trackInfos autorelease]; - mb_Select1 (mb, MBS_SelectTrack, track); - if (mb_GetResultData (mb, MBE_TrackGetTrackName, cString, 100)) + rec = mb5_recording_list_item (list, track); + + if (rec) { + mb5_recording_get_title (rec, cString, sizeof (cString)); string = [NSString stringWithUTF8String: cString]; [trackInfos setObject: string forKey: @"title"]; - } - if (mb_GetResultData (mb, MBE_TrackGetArtistName, cString, 100)) - { + albums = mb5_recording_get_releaselist (rec); + rel = mb5_release_list_item (albums, 0); + mb5_release_get_title (rel, cString, sizeof (cString)); string = [NSString stringWithUTF8String: cString]; - [trackInfos setObject: string forKey: @"artist"]; - } + [trackInfos setObject: string forKey: @"album"]; - if (mb_GetResultData (mb, MBE_TrackGetTrackNum, cString, 100)) - { + mb5_release_get_date (rel, cString, sizeof (cString)); + *(cString + 4) = 0; string = [NSString stringWithUTF8String: cString]; - [trackInfos setObject: string forKey: @"trackNumber"]; - } - - if (mb_Select (mb, MBS_SelectTrackAlbum)) - { - if (mb_GetResultData (mb, MBE_AlbumGetAlbumName, cString, 100)) - { - string = [NSString stringWithUTF8String: cString]; - [trackInfos setObject: string forKey: @"album"]; - } -#ifdef MBE_AlbumGetNumReleaseDates - releases = mb_GetResultInt (mb, MBE_AlbumGetNumReleaseDates); - if (releases) - { - mb_Select1 (mb, MBS_SelectReleaseDate, 1); - if (mb_GetResultData (mb, MBE_ReleaseGetDate, cString, 100)) - { - *(cString + 4) = 0; - string = [NSString stringWithUTF8String: cString]; - [trackInfos setObject: string forKey: @"year"]; - } - mb_Select (mb, MBS_Back); - } -#endif + [trackInfos setObject: string forKey: @"year"]; - mb_Select (mb, MBS_Back); + /* Obtain the artist name. Slightly convoluted, but it looks + like there's no other way. */ + credit = mb5_recording_get_artistcredit (rec); + clist = mb5_artistcredit_get_namecreditlist (credit); + name_credit = mb5_namecredit_list_item (clist, 0); + artist = mb5_namecredit_get_artist (name_credit); + mb5_artist_get_name (artist, cString, sizeof (cString)); + string = [NSString stringWithUTF8String: cString]; + [trackInfos setObject: string forKey: @"artist"]; } - mb_Select (mb, MBS_Rewind); - return trackInfos; } -- (void) _parseMB: (musicbrainz_t) mb +- (void) _parseMB: (Mb5RecordingList) songList { int count, results; NSMutableArray *allTrackInfos; - results = mb_GetResultInt (mb, MBE_GetNumTracks); + results = mb5_recording_list_size (songList); + allTrackInfos = [[NSMutableArray alloc] initWithCapacity: results]; [allTrackInfos autorelease]; for (count = 0; count < results; count++) - [allTrackInfos addObject: [self readMB: mb track: count + 1]]; + [allTrackInfos addObject: [self readMB: songList track: count]]; [self performSelectorOnMainThread: @selector (_updateSongFields:) withObject: allTrackInfos @@ -498,45 +432,57 @@ - (void) lookupThread { NSAutoreleasePool *pool; - char *trmId; - musicbrainz_t mb; - char **qis; - char error[80]; + Mb5Query query; + Mb5Metadata metadata; + Mb5RecordingList song_list; + char error[256]; + char **p_names, **p_values; pool = [NSAutoreleasePool new]; [self updateField: lookupStatusLabel - withString: LOCALIZED(@"Generating TRM...")]; - trmId = [self _generateTrmId]; - if (trmId && !threadShouldDie) - { - qis = MakeQis (trmId, song); + withString: LOCALIZED (@"Querying the MusicBrainz server...")]; - if (strcasecmp (trmId, busyTrmId)) - { - [self updateField: lookupStatusLabel - withString: LOCALIZED (@"Querying MusicBrainz server...")]; - mb = mb_New (); - mb_UseUTF8 (mb, YES); - if (mb_QueryWithArgs (mb, MBQ_TrackInfoFromTRMId, qis)) - [self _parseMB: mb]; - else - { -// FIXME: there should be an accurate error message here... - [self updateField: lookupStatusLabel - withString: @""]; - mb_GetQueryError (mb, error, 80); - NSLog (@"Musicbrainz error: %s (%s)", error, trmId); - } - mb_Delete (mb); - } - else - [self updateField: lookupStatusLabel - withString: LOCALIZED (@"The MusicBrainz server was too busy")]; + query = mb5_query_new ("Cynthiune", NULL, 0); - FreeQis (qis); + if (query) + { + p_names = malloc (2 * sizeof (char *)); + p_values = malloc (2 * sizeof (char *)); + p_names[0] = malloc (10); + p_values[0] = malloc (256); + strcpy (p_names[0], "query"); + strcpy (p_values[0], [[song title] UTF8String]); + + if (strlen (p_values[0]) > 0) + { + metadata = mb5_query_query (query, "recording", "", "", 1, + p_names, p_values); + mb5_query_get_lasterrormessage (query, error, sizeof (error)); + + if (metadata) + { + song_list = mb5_metadata_get_recordinglist (metadata); + [self _parseMB: song_list]; + + mb5_metadata_delete (metadata); + } + } + else + [self updateField: lookupStatusLabel + withString: [NSString stringWithFormat: + LOCALIZED (@"Error while querying the\n " + @"Musicbrainz server: %s"), + error]]; + + free (p_names[0]); + free (p_values[0]); + free (p_names); + free (p_values); } + mb5_query_delete(query); + [self performSelectorOnMainThread: @selector (lookupThreadEnded) withObject: nil waitUntilDone: NO]; debian/patches/Bundles-install-dir.patch0000664000000000000000000001504011757151061015460 0ustar 2007-11-05 Yavor Doganov Changes to build with GNUstep Make 2.0. * Bundles/aRts/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/ASFTags/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/AudioFile/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Esound/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/FLAC/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/FLACTags/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/ID3Tag/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Mod/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/MP3/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Musepack/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Ogg/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/OSS/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Taglib/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/Timidity/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/VorbisTags/GNUmakefile (BUNDLE_INSTALL_DIR): * Bundles/WindowsMedia/GNUmakefile (BUNDLE_INSTALL_DIR): Use $(GNUSTEP_LIBRARY). --- cynthiune.app-0.9.5.orig/Bundles/ASFTags/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/ASFTags/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=ASFTags BUNDLE_NAME=ASFTags BUNDLE_EXTENSION=.tags -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune ASFTags_PRINCIPAL_CLASS=ASFTags # --- cynthiune.app-0.9.5.orig/Bundles/AudioFile/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/AudioFile/GNUmakefile @@ -24,7 +24,7 @@ PACKAGE_NAME=AudioFile BUNDLE_NAME=AudioFile BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune AudioFile_PRINCIPAL_CLASS=AudioFile AudioFile_LIBRARIES_DEPEND_UPON += --- cynthiune.app-0.9.5.orig/Bundles/Esound/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Esound/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=Esound BUNDLE_NAME=Esound BUNDLE_EXTENSION=.output -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Esound_PRINCIPAL_CLASS=Esound Esound_LANGUAGES=English French Esound_LOCALIZED_RESOURCE_FILES=Localizable.strings --- cynthiune.app-0.9.5.orig/Bundles/FLACTags/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/FLACTags/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=FLACTags BUNDLE_NAME=FLACTags BUNDLE_EXTENSION=.tags -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune FLACTags_PRINCIPAL_CLASS=FLACTags --- cynthiune.app-0.9.5.orig/Bundles/ID3Tag/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/ID3Tag/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=ID3Tag BUNDLE_NAME=ID3Tag BUNDLE_EXTENSION=.tags -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune ID3Tag_PRINCIPAL_CLASS=ID3Tag # --- cynthiune.app-0.9.5.orig/Bundles/MP3/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/MP3/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=MP3 BUNDLE_NAME=MP3 BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune MP3_PRINCIPAL_CLASS=MP3 # --- cynthiune.app-0.9.5.orig/Bundles/Mod/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Mod/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=Mod BUNDLE_NAME=Mod BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Mod_PRINCIPAL_CLASS=Mod --- cynthiune.app-0.9.5.orig/Bundles/Musepack/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Musepack/GNUmakefile @@ -28,7 +28,7 @@ PACKAGE_NAME=Musepack BUNDLE_NAME=Musepack BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Musepack_PRINCIPAL_CLASS=Musepack # --- cynthiune.app-0.9.5.orig/Bundles/OSS/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/OSS/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=OSS BUNDLE_NAME=OSS BUNDLE_EXTENSION=.output -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune OSS_PRINCIPAL_CLASS=OSS OSS_LANGUAGES=English French OSS_LOCALIZED_RESOURCE_FILES=Localizable.strings --- cynthiune.app-0.9.5.orig/Bundles/Ogg/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Ogg/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=Ogg BUNDLE_NAME=Ogg BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Ogg_PRINCIPAL_CLASS=Ogg --- cynthiune.app-0.9.5.orig/Bundles/Taglib/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Taglib/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=Taglib BUNDLE_NAME=Taglib BUNDLE_EXTENSION=.tags -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Taglib_PRINCIPAL_CLASS=Taglib --- cynthiune.app-0.9.5.orig/Bundles/Timidity/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/Timidity/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=Timidity BUNDLE_NAME=Timidity BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune Timidity_PRINCIPAL_CLASS=Timidity --- cynthiune.app-0.9.5.orig/Bundles/VorbisTags/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/VorbisTags/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=VorbisTags BUNDLE_NAME=VorbisTags BUNDLE_EXTENSION=.tags -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune VorbisTags_PRINCIPAL_CLASS=VorbisTags --- cynthiune.app-0.9.5.orig/Bundles/aRts/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/aRts/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=aRts BUNDLE_NAME=aRts BUNDLE_EXTENSION=.output -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune aRts_PRINCIPAL_CLASS=aRts aRts_LANGUAGES= aRts_LOCALIZED_RESOURCE_FILES= --- cynthiune.app-0.9.5.orig/Bundles/FLAC/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/FLAC/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=FLAC BUNDLE_NAME=FLAC BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune FLAC_PRINCIPAL_CLASS=FLAC --- cynthiune.app-0.9.5.orig/Bundles/WindowsMedia/GNUmakefile +++ cynthiune.app-0.9.5/Bundles/WindowsMedia/GNUmakefile @@ -35,7 +35,7 @@ PACKAGE_NAME=WindowsMedia BUNDLE_NAME=WindowsMedia BUNDLE_EXTENSION=.format -BUNDLE_INSTALL_DIR=$(GNUSTEP_INSTALLATION_DIR)/Library/Cynthiune +BUNDLE_INSTALL_DIR=$(GNUSTEP_LIBRARY)/Cynthiune WindowsMedia_PRINCIPAL_CLASS=WindowsMedia debian/patches/gcc-4.7.patch0000664000000000000000000000331211757151535012713 0ustar 2012-05-23 Yavor Doganov Fix FTBFS with GCC-4.7. * Frameworks/Cynthiune/utils.h: Replace sel_get_name with sel_getName. --- cynthiune.app.orig/Frameworks/Cynthiune/utils.h +++ cynthiune.app/Frameworks/Cynthiune/utils.h @@ -34,7 +34,6 @@ #ifdef __MACOSX__ -#define sel_get_name(X) sel_getName(X) #define NSStandardLibraryPaths() \ NSSearchPathForDirectoriesInDomains (NSAllLibrariesDirectory, \ NSAllDomainsMask, YES) @@ -51,21 +50,21 @@ [[NSException exceptionWithName: @"Obsolete method" \ reason: ([NSString stringWithFormat: @"'%s'" \ @" (%s, %d) is an obsolete method.", \ - sel_get_name (_cmd), __FILE__, __LINE__]) \ + sel_getName (_cmd), __FILE__, __LINE__]) \ userInfo: nil] raise] #define unimplementedMethod() \ [[NSException exceptionWithName: @"Unimplemented method" \ reason: ([NSString stringWithFormat: @"'%s'" \ @" (%s, %d) unimplemented.", \ - sel_get_name (_cmd), __FILE__, __LINE__]) \ + sel_getName (_cmd), __FILE__, __LINE__]) \ userInfo: nil] raise] #define raiseException(t,r) \ [[NSException exceptionWithName: (t) \ reason: ([NSString stringWithFormat: @"%@ in '%s'" \ @" (%s:%d).", \ - (r), sel_get_name (_cmd), __FILE__, __LINE__]) \ + (r), sel_getName (_cmd), __FILE__, __LINE__]) \ userInfo: nil] raise] #define indexOutOfBoundsException(i,m) \ debian/manpages0000664000000000000000000000002311757151061010705 0ustar debian/Cynthiune.1 debian/rules0000775000000000000000000000404311763127550010260 0ustar #!/usr/bin/make -f # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 include /usr/share/dpkg/buildflags.mk include /usr/share/GNUstep/debian/config.mk export GNUSTEP_MAKEFILES := $(GS_MAKE_DIR) d_app := $(CURDIR)/debian/cynthiune.app LDFLAGS += -Wl,-z,defs -Wl,--as-needed -Wl,-rpath,/usr/lib/cynthiune.app ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) optim := debug=yes endif build: build-stamp build-stamp: dh_testdir $(MAKE) messages=yes $(optim) CPPFLAGS="$(CPPFLAGS)" \ ADDITIONAL_CFLAGS="$(CFLAGS)" CCFLAGS="$(CXXFLAGS)" \ OBJCFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" disable-arts=yes convert Images/Cynthiune.tiff -resize 32x32 Cynthiune.xpm touch $@ clean: dh_testdir dh_testroot $(MAKE) distclean dh_clean Cynthiune.xpm install: build dh_testdir dh_testroot dh_prep # Cheat GNUstep Make to create the symlinks for the Cynthiune library # in /usr/lib/cynthiune.app. dh_installdirs usr/lib/cynthiune.app $(MAKE) install disable-arts=yes GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ GNUSTEP_SYSTEM_LIBRARIES=/usr/lib/cynthiune.app DESTDIR=$(d_app) rm $(d_app)/usr/lib/GNUstep/Applications/Cynthiune.app/Resources/COPYING dh_install Cynthiune.xpm usr/share/pixmaps/ dh_install debian/*.desktop usr/share/applications/ rm $(d_app)/usr/lib/GNUstep/Applications/*.app/Resources/*.desktop # Build architecture-independent files here. binary-indep: build install # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot dh_installchangelogs ChangeLog dh_installdocs dh_installmenu dh_installman dh_link gsdh_gnustep dh_installdirs usr/share/GNUstep mv $(d_app)$(GNUSTEP_SYSTEM_APPS)/Cynthiune.app/Resources \ $(d_app)/usr/share/GNUstep/Cynthiune.app dh_link usr/share/GNUstep/Cynthiune.app \ $(GNUSTEP_SYSTEM_APPS)/Cynthiune.app/Resources dh_lintian dh_strip dh_compress dh_fixperms dh_installdeb dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install debian/Cynthiune.10000664000000000000000000000154211757151061011226 0ustar .TH CYNTHIUNE 1 "August 20, 2004" .SH NAME Cynthiune \- music player for GNUstep .SH SYNOPSIS .B Cynthiune [\fIfile\fR] .SH DESCRIPTION This manual page documents briefly the .B Cynthiune command. This manual page was written for the Debian distribution because the original program does not have a manual page. .PP \fBCynthiune\fP is a free software, romantic and extensible music player forB GNUstep and Mac OS X. Similar in look and feel to XMMS, it can read the most-known sound file formats: MP3, Ogg, FLAC, Mod, XM, AIFF, WAV and many more... .PP Very easy to use, it integrates well with the GNUstep desktop environment and shows a nice example of a cross-platform OpenStep application. .SH SEE ALSO .BR GNUstep (7). .SH AUTHOR This manual page was written by G\[:u]rkan Seng\[:u]n , for the Debian project (but may be used by others). debian/lintian-overrides0000664000000000000000000000012311763127434012555 0ustar # False positives. cynthiune.app: hardening-no-fortify-functions usr/lib/GNUstep/* debian/changelog0000664000000000000000000002512012053173652011046 0ustar cynthiune.app (0.9.5-14build1) raring; urgency=low * Rebuild for gnustep-gui 0.22 transition. -- Benjamin Drung Wed, 21 Nov 2012 16:47:54 +0100 cynthiune.app (0.9.5-14) unstable; urgency=low * debian/patches/gcc-4.7.patch: New; fixes FTBFS with GCC-4.7 (Closes: #667867). * debian/patches/libmusicbrainz5.patch: New; port to libmusicbrainz5 (Closes: #656604). * debian/patches/link-libs.patch: Fix FTBFS with ld --as-needed, thanks Colin Watson (Closes: #633543). * debian/patches/series: Update. * debian/source/format: Switch to 3.0 (quilt). * debian/README.source: Delete; redundant. * debian/control (Build-Depends): Remove quilt. Replace libmusicbrainz4-dev with libmusicbrainz5-dev. Add dpkg-dev (>= 1.16.1~), for hardening support. (Vcs-Arch, Vcs-Git, Vcs-Browser): Switch from Arch to Git. (Standards-Version): Bump to 3.9.3; no changes needed. * debian/rules: Don't include /usr/share/quilt/quilt.make, eliminate patch/unpatch dependencies. Enable hardening. (binary-arch): Remove GS_USE_FHS conditional. Invoke dh_lintian. * debian/preinst: Delete; no longer needed. * debian/lintian-overrides: New file, override some hardening false positives. -- Yavor Doganov Mon, 04 Jun 2012 14:08:37 +0300 cynthiune.app (0.9.5-13.1) unstable; urgency=low * Non-maintainer upload. * Prevent FTBFS with audiofile's latest 0.3.x series by relying on pkg-config for gathering the building flags instead of the no longer provided audiofile-config tool (Closes: #654766). -- Alessio Treglia Fri, 27 Jan 2012 00:51:15 +0100 cynthiune.app (0.9.5-13) unstable; urgency=medium * debian/control (Build-Depends): Remove libartsc0-dev (Closes: #620583). * debian/rules (build-stamp, install): Pass `disable-arts=yes'. * debian/patches/compilation-errors.patch: Minor change to fix FTBFS with GCC 4.5 (Closes: #618211) -- Yavor Doganov Tue, 19 Apr 2011 19:33:41 +0300 cynthiune.app (0.9.5-12) unstable; urgency=low * debian/patches/ALSA.patch: Adjust makefile conditional to actually build the bundle on armel and powerpcspe (Really closes: #576228). -- Yavor Doganov Tue, 21 Sep 2010 22:43:29 +0300 cynthiune.app (0.9.5-11) unstable; urgency=low * debian/patches/ALSA.patch: New; implement an ALSA output bundle and make it the default on GNU/Linux (Closes: #576228). * debian/patches/kfreebsd-OSS-default.patch: Remove, default now handled with the above patch. * debian/patches/series: Update. * debian/control (Build-Depends): Add libasound2-dev [linux-any]. (Standards-Version): Set to 3.9.1 (no changes needed). * debian/copyright: Update copyright holders/years. -- Yavor Doganov Fri, 03 Sep 2010 18:49:41 +0300 cynthiune.app (0.9.5-10) unstable; urgency=low * debian/patches/compilation-errors.patch: Fix FTBFS with gnustep-gui/0.18.0 (Closes: #581925). * debian/rules (OPTFLAG, CFLAGS, CCFLAGS): Remove; rework noopt handling to be compatible with gnustep-make/2.4.x (Closes: #581924). * debian/control (Standards-Version): Bump to 3.8.4 (no changes needed). (Description): Make it less ridiculous. * debian/source/format: New file. -- Yavor Doganov Tue, 18 May 2010 18:40:29 +0300 cynthiune.app (0.9.5-9) unstable; urgency=low * debian/patch/WindowsMedia.patch: Fix FTBFS on 64-bit archs. -- Yavor Doganov Mon, 21 Dec 2009 20:17:55 +0200 cynthiune.app (0.9.5-8) unstable; urgency=low * debian/compat: Set to 7. * debian/control: Wrap all fields for diff-friendliness. (Uploaders): Remove Gürkan upon his request, add myself. (Section): Set to `gnustep' to match the override. (Build-Depends): Require debhelper >= 7. Drop gnustep-make. Remove ancient versioned dependencies on libgnustep-gui-dev, libmodplug-dev, libflac-dev, libaudiofile-dev. Add quilt and imagemagick. Require limpcdec-dev >= 2:0.1~r435 and avifile >= 1:0.7.48~20090503.ds. (Depends): Add ${gnustep:Depends} and ${misc:Depends}. (Vcs-Arch): New field. (Standards-Version): Claim compliance to 3.8.3 as of this upload. * debian/patches/series: * debian/patches/Bundles-install-dir.patch: * debian/patches/FLAC-1.2-new-API.patch: * debian/patches/compilation-errors.patch: New, split existing patches from the diff.gz. * debian/patches/link-libs.patch: New, link the framework and all bundles properly, avoiding undefined symbols and unnecessary dependencies. * debian/patches/WindowsMedia.patch: New, fixes FTBFS of the Windows Media bundle. * debian/patches/compilation-warnings.patch: New. * debian/patches/kfreebsd-OSS-default.patch: New. Let -[GeneralPreference _initDefaults] create the default output bundle to be OSS on GNU/kFreeBSD too; this fixes some unpleasant glitches with the fallback Esound bundle. * debian/patches/Musepack-new-API.patch: New, adapt to the new libmpcdec API (Closes: #476381). Previously the app died with SIGFPE when adding a SV8 file to the playlist. * debian/rules: Include quilt.make and update targets accordingly. (OPTFLAG, CFLAGS, CCFLAGS): Define conditionally (support for `noopt' in DEB_BUILD_OPTIONS). (LDFLAGS): Define to `-Wl,-z,defs -Wl,--as-needed -Wl,-rpath,/usr/lib/cynthiune.app'. (d_app): Define for convenience. All uses updated. (windowsmedia): Re-enable the bundle on all architectures. (build-stamp): Pass OPTFLAG, CFLAGS, CCFLAGS, LDFLAGS and messages=yes to make. Convert the app icon in XPM format; the one provided in the tarball is low quality. (clean-patched): Delete the generated icon. Remove upstream clean target; distclean is sufficient. (install): Install our XPM icon. Replace `dh_clean -k' with `dh_prep'. Install libCynthiune as a private library; fixes a policy violation. (binary-arch): Invoke gsdh_gnustep. Conditionally move the Resources to /usr/share. Do not install the the lintian override. * debian/cynthiune.links: Delete, not needed and not in effect anyway. * debian/dirs: * debian/lintian-override: Delete. * debian/watch: * debian/README.source: New file. * debian/Cynthiune.desktop: Correct the Categories field, add the full path to the TIFF icon as it's not in the standard icon dirs. Remove duplicate `audio/mod' and `audio/x-mod' entries. * debian/menu: Add longtitle and icon (Closes: #292910). * debian/preinst: Add, the standard GNUstep FHS_ME_HARDER script. -- Yavor Doganov Mon, 14 Dec 2009 21:46:52 +0200 cynthiune.app (0.9.5-7.1) unstable; urgency=low * Non-maintainer upload. * Add mising #include to make it compile against latest GNUstep. * Adopted by GNUstep maintainers team. (closes: #454457) -- Hubert Chathi Wed, 02 Jul 2008 09:53:37 -0400 cynthiune.app (0.9.5-7) unstable; urgency=low * Orphaning package, setting maintainer to the Debian QA Group. -- Ana Beatriz Guerrero Lopez Fri, 07 Dec 2007 02:16:45 +0100 cynthiune.app (0.9.5-6) unstable; urgency=low * GNUstep transition. + Updated debian/rules. * debian/compat: Bump version, no changes needed. * debian/copyright: Reformated. * Apply patch to transition to FLAC 1.1.4, many thanks to Yavor Doganov. (Closes: #426637, #427741) * Disable Windows Media support since it fails to build. * Added a desktop file. -- Gürkan Sengün Mon, 08 Oct 2007 15:28:47 +0200 cynthiune.app (0.9.5-5) unstable; urgency=high * Remove ia64 from build-depends of libavifile-0.7-dev. -- Gürkan Sengün Thu, 19 Oct 2006 22:57:30 +0200 cynthiune.app (0.9.5-4) unstable; urgency=low * Rebuild against latest libgnustep-gui-dev. -- Gürkan Sengün Sun, 17 Sep 2006 09:00:59 +0200 cynthiune.app (0.9.5-3) unstable; urgency=low * Bump debian version. * Don't build avifile stuff where it is not available. (Closes: 367486) -- Gürkan Sengün Thu, 1 Jun 2006 23:31:28 +0200 cynthiune.app (0.9.5-2) unstable; urgency=low * Fixed build-depends (src:avifile). (Closes: #365991) -- Gürkan Sengün Thu, 4 May 2006 11:17:04 +0200 cynthiune.app (0.9.5-1) unstable; urgency=low * New upstream version. -- Gürkan Sengün Fri, 31 Mar 2006 19:06:36 +0200 cynthiune.app (0.9.4-3) unstable; urgency=low * Rebuild against latest libgnustep-gui. * Bump standards version. -- Gürkan Sengün Tue, 24 Jan 2006 13:36:01 +0100 cynthiune.app (0.9.4-2.1) unstable; urgency=medium * Non-maintainer upload. * Rebuild for FLAC transition. (Closes: #325937) * Use \[:u] in the manpage * Update FSF's address -- Luk Claes Mon, 3 Oct 2005 00:20:00 +0200 cynthiune.app (0.9.4-2) unstable; urgency=low * Updated build-dependency. (Closes: #289951) * Fixed typo in debian/copyright. -- Gürkan Sengün Thu, 13 Jan 2005 00:25:28 +0100 cynthiune.app (0.9.4-1) unstable; urgency=low * New upstream version. * Renamed source package to cynthiune.app. * Updated debian/control build-depends for GNUstep 0.9.4. -- Gürkan Sengün Sun, 28 Nov 2004 16:32:08 +0100 cynthiune (0.9.3a.20040922-1) unstable; urgency=low * NMU. * New upstream release (CVS snapshot). -- Wolfgang Sourdeau Wed, 22 Sep 2004 19:56:44 -0400 cynthiune (0.9.2-2.2cvsadditions) unstable; urgency=low * NMU. * debian/control: libmodplug-dev (>= 0.7-2) correctly depends on libmodplug0. (Closes: #266843) * debian/Cynthiune.1: updated manpage. -- Wolfgang Sourdeau Fri, 20 Aug 2004 11:55:31 -0400 cynthiune (0.9.2-2.1cvsadditions) unstable; urgency=high * NMU. * Added patches in debian/patches with three new bundles: FLAC, AudioFile and Mod. * debian/control: added the dependencies needed for the above and enhanced the package description and synopsis. * debian/rules: added code to handle patches. * debian/copyright: provided complete copyright information. * added missing CynthiuneInfo.plist. * added missing functions in utils.m from CVS version. -- Wolfgang Sourdeau Wed, 18 Aug 2004 14:53:53 -0400 cynthiune (0.9.2-2) unstable; urgency=low * Renamed binary package to cynthiune.app * Updated build-depends to latest gnustep -- Gürkan Sengün Mon, 26 Jul 2004 18:56:36 +0200 cynthiune (0.9.2-1) unstable; urgency=low * Initial Release. -- Gürkan Sengün Mon, 26 Apr 2004 09:33:33 +0200 debian/docs0000664000000000000000000000002111757151061010040 0ustar NEWS README TODO debian/control0000664000000000000000000000257311763107171010606 0ustar Source: cynthiune.app Section: gnustep Priority: optional Maintainer: Debian GNUstep maintainers Uploaders: Yavor Doganov Build-Depends: debhelper (>= 7), dpkg-dev (>= 1.16.1~), libesd0-dev, libgnustep-gui-dev, libvorbis-dev, libmad0-dev, libid3tag0-dev, libmodplug-dev, libflac-dev, libaudiofile-dev, libtagc0-dev, libavifile-0.7-dev (>= 1:0.7.48~20090503.ds), libmusicbrainz5-dev, libmpcdec-dev (>= 2:0.1~r435), libasound2-dev [linux-any], pkg-config, imagemagick Vcs-Git: git://git.debian.org/pkg-gnustep/cynthiune.app.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-gnustep/cynthiune.app.git Standards-Version: 3.9.3 Homepage: http://organact.mine.nu/~wolfgang/cynthiune/ Package: cynthiune.app Architecture: any Depends: ${shlibs:Depends}, ${gnustep:Depends}, ${misc:Depends} Description: Music player for GNUstep Cynthiune is a free software, romantic and extensible music player for GNUstep and Mac OS X. Similar in look and feel to XMMS, it can read the most-known sound file formats: MP3, Ogg, FLAC, Mod, XM, AIFF, WAV and many more... . Very easy to use, it integrates well with the GNUstep desktop environment and shows a nice example of a cross-platform OpenStep application. debian/menu0000664000000000000000000000030611757151061010062 0ustar ?package(cynthiune.app):needs="X11" section="Applications/Sound"\ title="Cynthiune" command="/usr/bin/Cynthiune"\ icon="/usr/share/pixmaps/Cynthiune.xpm"\ longtitle="Music player for GNUstep" debian/source/0000775000000000000000000000000011763105425010474 5ustar debian/source/format0000664000000000000000000000001411763105425011702 0ustar 3.0 (quilt) debian/watch0000664000000000000000000000011611757151061010223 0ustar version=3 http://organact.mine.nu/~wolfgang/cynthiune/Cynthiune-(.*)\.tar\.gz debian/Cynthiune.desktop0000664000000000000000000000236711757151061012545 0ustar [Desktop Entry] Type=Application Categories=AudioVideo;Audio;Player; Name=Cynthiune Comment=A free and romantic music player Comment[bg]=Свободна романтична програма за слушане на музика Icon=/usr/lib/GNUstep/Applications/Cynthiune.app/Resources/Cynthiune.tiff Exec=Cynthiune MimeType=audio/mpegurl;audio/x-mpegurl;audio/scpls;audio/x-scpls;application/ogg;application/x-ogg;audio/flac;audio/x-flac;audio/mpeg;audio/x-mpeg;audio/mpeg3;audio/x-mpeg3;audio/mpg;audio/x-mpg;audio/mp3;audio/x-mp3;audio/musepack;audio/x-musepack;audio/x-ms-wma;audio/669;audio/amf;audio/ams;audio/dbm;audio/dmf;audio/dsm;audio/far;audio/it;audio/j2b;audio/mdl;audio/med;audio/mod;audio/mt2;audio/mtm;audio/okt;audio/psm;audio/ptm;audio/s3m;audio/stm;audio/ult;audio/umx;audio/xm;audio/x-669;audio/x-amf;audio/x-ams;audio/x-dbm;audio/x-dmf;audio/x-dsm;audio/x-far;audio/x-it;audio/x-j2b;audio/x-mdl;audio/x-med;audio/x-mod;audio/x-mt2;audio/x-mtm;audio/x-okt;audio/x-psm;audio/x-ptm;audio/x-s3m;audio/x-stm;audio/x-ult;audio/x-umx;audio/x-xm;audio/aiff;audio/x-aiff;audio/basic;audio/x-basic;audio/au;audio/x-au;audio/x-ulaw;audio/avr;audio/x-avr;application/iff;application/x-iff;audio/nist;audio/x-nist;audio/snd;audio/x-snd;audio/wav;audio/x-wav;