--- ardour-0.99.2.bak/SConstruct	2006-04-11 13:50:40.000000000 -0400
+++ ardour-0.99.2/SConstruct	2006-04-11 14:11:22.000000000 -0400
@@ -522,6 +522,8 @@
             env['DIST_TARGET'] = 'x86_64';
         elif re.search("i[0-5]86", config[config_cpu]) != None:
             env['DIST_TARGET'] = 'i386';
+	elif re.search("powerpc", config[config_cpu]) != None:
+	    env['DIST_TARGET'] = 'powerpc';
         else:
             env['DIST_TARGET'] = 'i686';
     print "\n*******************************"
@@ -550,14 +552,22 @@
     # Apple/PowerPC optimization options
     #
     # -mcpu=7450 does not reliably work with gcc 3.*
-    #
-    if env['DIST_TARGET'] == 'tiger':
-        if config[config_arch] == 'apple':
-            opt_flags.extend ([ "-mcpu=7450", "-faltivec"])
+    if config[config_arch] == 'apple':
+    	 if env['DIST_TARGET'] == 'tiger':
+       	   if config[config_arch] == 'apple':
+       	        opt_flags.extend ([ "-mcpu=7450", "-faltivec"])
+             else:
+                  opt_flags.extend ([ "-mcpu=7400", "-maltivec", "-mabi=altivec"]) 
         else:
-            opt_flags.extend ([ "-mcpu=7400", "-maltivec", "-mabi=altivec"]) 
+             opt_flags.extend([ "-mcpu=750", "-mmultiple" ])
+    # 
+    # Linux/PPC
+    #
     else:
-        opt_flags.extend([ "-mcpu=750", "-mmultiple" ])
+	if env['ALTIVEC']:
+             opt_flags.extend ([ "-mcpu=7400", "-maltivec", "-mabi=altivec"]) 
+	else:
+             opt_flags.extend([ "-mcpu=750", "-mmultiple" ])
     opt_flags.extend (["-mhard-float", "-mpowerpc-gfxopt"])
 
 elif ((re.search ("i[0-9]86", config[config_cpu]) != None) or (re.search ("x86_64", config[config_cpu]) != None)) and env['DIST_TARGET'] != 'none':
