Hello,
From to time I have played a little with trying to make Freeamp work in
Solaris, as I use Solaris quite much on the desktop. Today I finally had
some success. At least it runs without crashing, and I can stream files
+ play MP3s from disk. With /usr/dt/bin/sdtaudiocontrol, I can select
whether I want to use the internal speaker, the internal sound card, or
both. It seems stable too!
Test setup:
* Sun Blade 100 running Solaris 8 10/01 with GNOME 2 beta 1 from
www.sun.com/software.
* Gcc 3.1, glib 1.2.10, gtk 1.2.10, gdkpixbuf 0.11.0 and freetype 1.3.1
from sunfreeware.com.
Packages made:
* http://anders.fix.no/solaris/pkg/sol8/sparc32-64/zinf-2.2.0-sol8-sparc64-local.gz
*
http://anders.fix.no/solaris/pkg/sol8/sparc32-64/musicbrainz-1.1.0-sol8-sparc64-local.gz
Patches used:
* Attached.
Screenshot of player in use:
* http://anders.fix.no/test/grab_solaris8+gnome2+zinf.png
If there is some interest in Solaris support in the CVS repository, I'll
consider trying to maintain it.
Thanks for making such a nice sound player - the best opensource one
IMHO!
Cheers,
--
Anders.
--- lib/http/src/Http.cpp.orig Thu Jun 20 08:40:07 2002
+++ lib/http/src/Http.cpp Thu Jul 25 00:19:13 2002
-42,6 +42,10
#include unistd.h
#endif
+#if defined(solaris)
+#define INADDR_NONE 0x
+#endif
+
#if defined(unix) || defined(__BEOS__) || defined(_BSD_SOURCE)
#define SOCKET int
#endif
--- ui/musicbrowser/unix/src/fileselector.cpp.orig Thu Jun 20 08:41:53 2002
+++ ui/musicbrowser/unix/src/fileselector.cpp Thu Jul 25 01:23:32 2002
-34,6 +34,12
#include utility.h
#include preferences.h
+#if defined(solaris)
+#include sys/types.h
+#include sys/param.h /* for MAXPATHLEN */
+#include sys/stat.h
+#endif
+
char old_path[PATH_MAX]=/\0;
FileSelector::FileSelector(FAContext *context,const char *windowtitle)
-68,11 +74,19
{
DIR *dir=NULL;
struct dirent *current=NULL;
+#if defined(solaris)
+struct stat *s;
+#endif
if ((dir = opendir(subdirs))!=NULL){
current = readdir(dir);
current = readdir(dir);
while((current=readdir(dir))!=NULL){
+#if defined(solaris)
+ stat(subdirs, s);
+if (s-st_mode S_IFDIR) {
+#else
if(current-d_type==DT_DIR){
+#endif
char temp_subdir[PATH_MAX];
strncpy(temp_subdir, subdirs,PATH_MAX);
strcat(temp_subdir,/);
--- ui/zinf/unix/src/GTKFileSelector.cpp.orig Thu Jun 20 08:42:46 2002
+++ ui/zinf/unix/src/GTKFileSelector.cppThu Jul 25 01:37:15 2002
-25,6 +25,12
#include unistd.h
#include dirent.h
+#if defined(solaris)
+#include sys/types.h
+#include sys/param.h /* for MAXPATHLEN */
+#include sys/stat.h
+#endif
+
char old_path[PATH_MAX];
GTKFileSelector::GTKFileSelector(FAContext *context,const char *windowtitle)
-59,11 +65,19
{
DIR *dir=NULL;
struct dirent *current=NULL;
+#if defined(solaris)
+struct stat *s;
+#endif
if ((dir = opendir(subdirs))!=NULL){
current = readdir(dir);
current = readdir(dir);
while((current=readdir(dir))!=NULL){
+#if defined(solaris)
+ stat(subdirs, s);
+ if (s-st_mode S_IFDIR) {
+#else
if(current-d_type==DT_DIR){
+#endif
char temp_subdir[PATH_MAX];
strncpy(temp_subdir, subdirs,PATH_MAX);
strcat(temp_subdir,/);