Version: 1.4 (using KDE 4.0.0DevelDevelKDE 1.2)
Installed from: Compiled From SourcesCompiled From SourcesCompiled From SourcesCompiled From Sources
Compiler: Solaris Workshop 12 CC: Sun C++ 5.9 SunOS_i386 Patch 124864-01 2007/07/25
I'm attempting to build taglib-1.4 on x86_64-sun-solaris2.10, using the latest version
(12) of the Workshop compiler suite from Sun. My system is completely up to date with patches.
Since strdup() wasn't a standard C function when the last revision of the C++ specification was finalized, it's not available in some environments, including the Solaris 10 environment.
It should be possible to detect whether std::strdup is available via configure, and use something like AC_REPLACE_FUNCS to provide an internal version of strdup if it's not available in the OS, though.
If I go to the work of doing the configure test and providing the patch, is there a reasonable chance that it will be included in some future version of taglib?
If you provide a patch, the chance that it gets included in a future release is pretty high :)
Actually I think I'm going to remove that code anyway and just switch to using a std::string instead (for completely different reasons). That's one of the last things on my TODO list before releasing 1.5 (which will almost certainly happen this weekend).
Thanks Scott, that's great news.
I have a few other (easier) build issues with taglib too, but the strdup was
the most difficult of them. I'll do my best to open "bug" reports for each of them this weekend and include my patch, and you can evaluate and decide if the patch is generally useful or if I should rework.
SVN commit 770581 by wheeler:
Less code, less ifdefs, should compile on Solaris. I knocked out Win 9x support
on the way since it simplified things, and, well, I don't care about supporting
Windows releases that have been outdated for 7 years.
M +41 -72 tfile.cpp
M +7 -7 tfile.h
WebSVN link: http://websvn.kde.org/?view=rev&revision=770581