lvqcl wrote:> But it requires somebody to rewrite FLAC apps.At least I have a suggestion: to enclose all FLAC API functions that take char* filename argument into #ifndef FLAC__FILENAME_API_DISABLED ... #endif and maybe also all functions that take FILE* argument into #ifndef FLAC__FILEPTR_API_DISABLED ... #endif Then try to compile flac.exe/metaflac.exe/etc with -DFLAC__FILENAME_API_DISABLED. When it's done, remove win_utf8_io dependency from libFLAC.
lvqcl wrote:> At least I have a suggestion: to enclose all FLAC API functions that > take char* filename argument into > > #ifndef FLAC__FILENAME_API_DISABLED ... #endifSorry, it wasn't clear: I mean -- to enclose all declarations of such functions in FLAC/*.h and FLAC++/*.h header files. And then modify e.g. flac sources so that it compiles without warnings/errors about undefined functions.
lvqcl wrote:> Sorry, it wasn't clear: I mean -- to enclose all declarations of such > functions in FLAC/*.h and FLAC++/*.h header files. And then modify > e.g. flac sources so that it compiles without warnings/errors about > undefined functions.I was able to compile flac/metaflac this way, but: it requires changing from FLAC__stream_*_filename() to FLAC__stream_*_FILE() and also adding new funtion into API: FLAC__metadata_simple_iterator_init_FILE() that is used instead of FLAC__metadata_simple_iterator_init().