projects / phoronix-test-suite.git / commitdiff
Build Results
 
Summary

Description: Unnamed repository; edit this file to name it for gitweb.
Last Change: Mon 8/30/10 20:43

Recent Commits
Time
Signed-Off By
Description
Commit Diff
Mon 8/30/10 20:43
Michael Larabel  
 
Mon 8/30/10 20:37
Michael Larabel  
pts-core: Last minute... 
Sat 8/28/10 12:53
Michael Larabel  
pts-core: Detect if a... 
Sat 8/28/10 10:34
Michael Larabel  
pts-core: Fix test result... 
Fri 8/27/10 8:51
Michael Larabel  
pts-core: When doing a... 
Wed 8/25/10 18:46
Michael Larabel  
 
 
> --git a/pts-core/functions/pts-functions-install.php b/pts-core/functions/pts-functions-install.php
index b3a0ab4
..5d11d1d 100644
--- a/pts-core/functions/pts-functions-install.php
+++ b/pts-core/functions/pts-functions-install.php
@@ -88,26 +88,40 @@ function pts_external_dependency_generic($Name)
     if(
is_file(MISC_LOCATION "distro-xml/generic-packages.xml"))
     {
         
$xml_parser = new tandem_XmlReader(file_get_contents(MISC_LOCATION "distro-xml/generic-packages.xml"));
-        
$package_name $xml_parser->getXMLValue("PhoronixTestSuite/Package/Name");
-        
$title $xml_parser->getXMLValue("PhoronixTestSuite/Package/Title");
-        
$description $xml_parser->getXMLValue("PhoronixTestSuite/Package/Description");
-        
$possible_packages $xml_parser->getXMLValue("PhoronixTestSuite/Package/PossibleNames");
+        
$package_name $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/GenericName");
+        
$title $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/Title");
+        
$possible_packages $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/PossibleNames");
+        
$file_check $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/FileCheck");

         
$selection = -1;
-
-        for(
$i 0$i count($title); $i++)
+        for(
$i 0$i count($title) && $selection == -1$i++)
+        {
             if(
$Name == $package_name[$i])
             {
                 
$selection $i;
-                break;
-            }

-        if(
$selection != -1)
-            
$generic_information $title[$selection] . "\n" $description[$selection] . "\n\nPossible Package Names: " $possible_packages[$selection];
+                if(
pts_file_missing_check(explode(","$file_check[$selection])))
+                    
$generic_information "=================================\n" $title[$selection] . "\n=================================\nPossible Package Names: " $possible_packages[$selection] . "\n\n";
+            }
+        }
     }

     return 
$generic_information;
 }
+function 
pts_file_missing_check($file_arr)
+{
+    
$file_missing false;
+
+    foreach(
$file_arr as $file)
+    {
+        
$file trim($file);
+
+        if(!
is_file($file) && !is_dir($file) && !is_link($file))
+            
$file_missing true;
+    }
+
+    return 
$file_missing;
+}
 function 
pts_install_external_dependencies($Benchmark, &$INSTALL_OBJ)
 {
     if(
pts_benchmark_type($Benchmark) != "BENCHMARK")
@@ -
122,+136,@@ function pts_install_external_dependencies($Benchmark, &$INSTALL_OBJ)

     
$dependencies explode(", "$dependencies);

-    
$dep_match_count 0;
     
$vendor strtolower(os_vendor());

     if(
is_file(MISC_LOCATION "distro-xml/" $vendor "-packages.xml"))
@@ -
130,19 +143,38 @@ function pts_install_external_dependencies($Benchmark, &$INSTALL_OBJ)
         
$xml_parser = new tandem_XmlReader(file_get_contents(MISC_LOCATION "distro-xml/" $vendor "-packages.xml"));
         
$generic_package $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/GenericName");
         
$distro_package $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/PackageName");
+        
$file_check $xml_parser->getXMLArrayValues("PhoronixTestSuite/ExternalDependencies/Package/FileCheck");

         for(
$i 0$i count($generic_package); $i++)
             if(!empty(
$generic_package[$i]) && in_array($generic_package[$i], $dependencies))
+            {
                 if(!
in_array($distro_package[$i], $INSTALL_OBJ))
                 {
-                    
array_push($INSTALL_OBJ$distro_package[$i]);
-                    
$dep_match_count++;
+                    if(!empty(
$file_check[$i]))
+                    {
+                        
$files explode(","$file_check[$i]);
+                        
$add_dependency pts_file_missing_check($files);
+                    }
+                    else
+                        
$add_dependency true;
+
+                    echo 
$add_dependency;
+
+                    if(
$add_dependency)
+                        
array_push($INSTALL_OBJ$distro_package[$i]);
                 }
+            }
     }
-
-    if(
$dep_match_count == 0)
+    else
     {
-        echo 
"No packages found for your distribution (" os_vendor() . ").";
+        
$package_string "";
+        foreach(
$dependencies as $dependency)
+        {
+            
$package_string .= pts_external_dependency_generic($dependency);
+        }
+
+        if(!empty(
$package_string))
+            echo 
"\nSome additional dependencies are required to run this benchmark, and they could not be installed automatically for your distribution by the Phoronix Test Suite. Below are the software packages that must be installed for this benchmark to run properly.\n\n" $package_string;
     }
 }

diff --git a/pts/benchmark-profiles/specviewperf9.xml b/pts/benchmark-profiles/specviewperf9.xml
index 7cce9ad
..d4ce884 100644
--- a/pts/benchmark-profiles/specviewperf9.xml
+++ b/pts/benchmark-profiles/specviewperf9.xml
@@ -17,+17,@@
         <
ResultScale>Weighted Geometric Mean</ResultScale>
         <
Proportion>HIB</Proportion>
         <
Description>This test runs SPECViewPerf 9.</Description>
-        <
Notes> </Notes>
     </
Information>
     <
Settings>
         <
Option>
diff --git a/pts/misc-files/distro-xml/generic-packages.xml b/pts/misc-files/distro-xml/generic-packages.xml
new file mode 100644
index 0000000..27c3a96
--- /dev/null
+++ b/pts/misc-files/distro-xml/generic-packages.xml
@@ -0,+1,34 @@
+<
PhoronixTestSuite>
+    <
ExternalDependencies>
+        <
Package>
+            <
GenericName>gtk-development</GenericName>
+            <
Title>GTK Development Files</Title>
+            <
PossibleNames>libgtk2.0-dev</PossibleNames>
+            <
FileCheck>/usr/include/gtk-2.0</FileCheck>
+        </
Package>
+        <
Package>
+            <
GenericName>sdl-development</GenericName>
+            <
Title>SDL Development Files</Title>
+            <
PossibleNames>libsdl1.2-dev</PossibleNames>
+            <
FileCheck>/usr/include/SDL/SDL.h, /usr/include/SDL/SDL_gfxPrimitives.h, /usr/include/SDL/SDL_net.h, /usr/include/SDL/SDL_image.h</FileCheck>
+        </
Package>
+        <
Package>
+            <
GenericName>glut</GenericName>
+            <
Title>OpenGL Utility Kit (GLUT)</Title>
+            <
PossibleNames>freeglut3-dev</PossibleNames>
+            <
FileCheck>/usr/lib/libglut.so.3, /usr/include/GL/glut.h</FileCheck>
+        </
Package>
+        <
Package>
+            <
GenericName>csh</GenericName>
+            <
Title>CSH</Title>
+            <
PossibleNames>csh</PossibleNames>
+            <
FileCheck>/bin/bsd-csh</FileCheck>
+        </
Package>
+        <
Package>
+            <
GenericName>libpng-development</GenericName>
+            <
Title>libpng (PNG ImageDevelopment Files</Title>
+            <
PossibleNames>libpng12-dev</PossibleNames>
+            <
FileCheck>/usr/include/libpng12/png.h</FileCheck>
+        </
Package>
+    </
ExternalDependencies>
+</
PhoronixTestSuite>
diff --git a/pts/misc-files/distro-xml/ubuntu-packages.xml b/pts/misc-files/distro-xml/ubuntu-packages.xml
index c01d3a1
..5c69f01 100644
--- a/pts/misc-files/distro-xml/ubuntu-packages.xml
+++ b/pts/misc-files/distro-xml/ubuntu-packages.xml
@@ -3,22 +3,27 @@
         <
Package>
             <
GenericName>gtk-development</GenericName>
             <
PackageName>libgtk2.0-dev</PackageName>
+            <
FileCheck>/usr/include/gtk-2.0</FileCheck>
         </
Package>
         <
Package>
             <
GenericName>sdl-development</GenericName>
             <
PackageName>libsdl1.2-dev libsdl-gfx1.2-dev libsdl-net1.2-dev libsdl-image1.2-dev</PackageName>
+            <
FileCheck>/usr/include/SDL/SDL.h, /usr/include/SDL/SDL_gfxPrimitives.h, /usr/include/SDL/SDL_net.h, /usr/include/SDL/SDL_image.h</FileCheck>
         </
Package>
         <
Package>
             <
GenericName>glut</GenericName>
             <
PackageName>freeglut3 freeglut3-dev</PackageName>
+            <
FileCheck>/usr/lib/libglut.so.3, /usr/include/GL/glut.h</FileCheck>
         </
Package>
         <
Package>
             <
GenericName>csh</GenericName>
             <
PackageName>csh</PackageName>
+            <
FileCheck>/bin/bsd-csh</FileCheck>
         </
Package>
         <
Package>
             <
GenericName>libpng-development</GenericName>
             <
PackageName>libpng12-dev</PackageName>
+            <
FileCheck>/usr/include/libpng12/png.h</FileCheck>
         </
Package>
     </
ExternalDependencies>
 </
PhoronixTestSuite>
<
 
Phoronix.com
Linux Driver Forums
Copyright © 2010 by Phoronix Media