Win32 Port
Lukáš Lalinský
lalinsky at gmail.com
Mon Jun 12 18:54:18 CEST 2006
Stefan Gehn wrote:
> I still have plans on adding your great utf patch and the exporting stuff into
> official taglib. My current buildsystems is based on cmake instead of
> handmade visual studio files or the automake mess which makes things a lot
> easier (you can build on both unix and windows, you can create makefiles or
> msvc projects and works with mingw too, it includes taglib examples and the
> C-bindings, ...).
>
> I already told Scott about it but haven't had the time to put up a tarball for
> others to test and currently I'm quite busy with finishing my bachelor
> thesis.
Okay, I was thinking about this whole situation a bit yesterday and decided to
finish the patch I'm using and make it usable also for other people. The result
is in this bzr branch:
http://bzr.oxygene.sk/taglib/taglib.win32/
I'll try to keep it always in sync with the KDE SVN (for my own needs :)). If
you want to test the code without using bzr, here are patches against 1.4 and
SVN trunk (r549613):
http://users.musicbrainz.org/~luks/patches/taglib_1_4_win32.diff
http://users.musicbrainz.org/~luks/patches/taglib_r549613_win32.diff
What's changed:
* All classes, static methods and functions from the C bindings are
exported to DLL. There are two macros to control this:
- TAGLIB_NODLL to disable DLL exports
- TAGLIB_API_EXPORTS should be defined when building TagLib
* File::File -- all file names on Windows are treated as UTF-8 by default.
On NT-based systems are used "wide-char" IO functions, which means Unicode
support for paths up to 32000 characters long. On Win 95, 98 and Me are used
classic IO functions and ANSI codepage.
* New functions File::useWinAnsiCP and taglib_file_use_ansi_cp to
set whether you want to use ANSI CP rather than UTF-8 in file names.
As the Autotools build system from official tarballs is not in the SVN, I didn't
even try to port/test it. To use these patches you will need some win-compatible
build system. Here is an ugly SCons script I use:
http://users.musicbrainz.org/~luks/tmp/taglib/
l.
More information about the taglib-devel
mailing list