Index: mythmusic/mythmusic/vorbisdecoder.cpp
===================================================================
--- mythmusic/mythmusic/vorbisdecoder.cpp	(revision 8602)
+++ mythmusic/mythmusic/vorbisdecoder.cpp	(working copy)
@@ -1,4 +1,4 @@
- #include <stdio.h>
+#include <stdio.h>
 #include <stdlib.h>
 #include <iostream>
 #include <string>
@@ -240,9 +240,15 @@
             seekTime = -1.0;
         }
 
+#if __BYTE_ORDER == __LITTLE_ENDIAN
         len = ov_read(&oggfile, (char *) (output_buf + output_at), bks, 0, 2, 1,
                       &section);
+#else
+        len = ov_read(&oggfile, (char *) (output_buf + output_at), bks, 1, 2, 1,
+                      &section);
+#endif
 
+
         if (len > 0) {
             bitrate = ov_bitrate_instant(&oggfile) / 1000;
 
Index: mythmusic/mythmusic/flacdecoder.h
===================================================================
--- mythmusic/mythmusic/flacdecoder.h	(revision 8602)
+++ mythmusic/mythmusic/flacdecoder.h	(working copy)
@@ -4,6 +4,10 @@
 #define HAVE_INTTYPES_H
 #include <FLAC/all.h>
 
+extern "C" {
+#include <endian.h>
+}
+
 #include "decoder.h"
 
 class Metadata;
Index: mythmusic/mythmusic/flacdecoder.cpp
===================================================================
--- mythmusic/mythmusic/flacdecoder.cpp	(revision 8602)
+++ mythmusic/mythmusic/flacdecoder.cpp	(working copy)
@@ -102,7 +102,12 @@
             for (channel = 0; channel < chan; channel++)
             {
                sample = (FLAC__int8)buffer[channel][cursamp];
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
                *(output_buf + output_at++) = ((sample >> 0) & 0xff);
+#else
+               *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+#endif
                output_bytes += 1;
             }
         }   
@@ -113,9 +118,14 @@
         {
             for (channel = 0; channel < chan; channel++)
             { 
-               sample = (FLAC__int16)buffer[channel][cursamp];             
+               sample = (FLAC__int16)buffer[channel][cursamp];
+#if __BYTE_ORDER == __LITTLE_ENDIAN
                *(output_buf + output_at++) = ((sample >> 0) & 0xff);
                *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+#else
+               *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+               *(output_buf + output_at++) = ((sample >> 0) & 0xff);
+#endif
                output_bytes += 2;
             }
         }
Index: mythmusic/mythmusic/maddecoder.h
===================================================================
--- mythmusic/mythmusic/maddecoder.h	(revision 8602)
+++ mythmusic/mythmusic/maddecoder.h	(working copy)
@@ -5,6 +5,7 @@
 
 extern "C" {
 #include <mad.h>
+#include <endian.h>
 }
 
 class Metadata;
Index: mythmusic/mythmusic/vorbisdecoder.h
===================================================================
--- mythmusic/mythmusic/vorbisdecoder.h	(revision 8602)
+++ mythmusic/mythmusic/vorbisdecoder.h	(working copy)
@@ -4,6 +4,9 @@
 #include "decoder.h"
 
 #include <vorbis/vorbisfile.h>
+extern "C" {
+#include <endian.h>
+}
 
 class Metadata;
 
Index: mythmusic/mythmusic/maddecoder.cpp
===================================================================
--- mythmusic/mythmusic/maddecoder.cpp	(revision 8602)
+++ mythmusic/mythmusic/maddecoder.cpp	(working copy)
@@ -483,15 +483,25 @@
             flush();
         }
         sample = fix_sample(16, *left++);
+#if __BYTE_ORDER == __LITTLE_ENDIAN
         *(output_buf + output_at++) = ((sample >> 0) & 0xff);
         *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+#else
+        *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+        *(output_buf + output_at++) = ((sample >> 0) & 0xff);
+#endif
         output_bytes += 2;
 
         if (channels == 2)
         {
             sample = fix_sample(16, *right++);
+#if __BYTE_ORDER == __LITTLE_ENDIAN
             *(output_buf + output_at++) = ((sample >> 0) & 0xff);
             *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+#else
+            *(output_buf + output_at++) = ((sample >> 8) & 0xff);
+            *(output_buf + output_at++) = ((sample >> 0) & 0xff);
+#endif
             output_bytes += 2;
         }
     }
Index: settings.pro
===================================================================
--- settings.pro	(revision 8602)
+++ settings.pro	(working copy)
@@ -2,7 +2,7 @@
 CONFIG += release
 
 isEmpty( PREFIX ) {
-    PREFIX = /usr/local
+    PREFIX = /usr
 }
 
 LIBVERSION = 0.18.2
@@ -17,10 +17,11 @@
 DEFINES += PREFIX=\"$${PREFIX}\"
 
 # Remove for x86-64
-DEFINES += HAVE_MMX
+#DEFINES += HAVE_MMX
+DEFINES += FPM_PPC
 
 release {
-    QMAKE_CXXFLAGS_RELEASE = -O3 -march=pentiumpro -fomit-frame-pointer
+    QMAKE_CXXFLAGS_RELEASE = -O3 -fomit-frame-pointer
     macx {
         # Don't use -O3, it causes some Qt moc methods to go missing
         QMAKE_CXXFLAGS_RELEASE = -O2
