Fix Coverage build after the addition of ANGLE
authorzecke@webkit.org <zecke@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 30 Aug 2010 01:53:32 +0000 (01:53 +0000)
committerzecke@webkit.org <zecke@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 30 Aug 2010 01:53:32 +0000 (01:53 +0000)
https://bugs.webkit.org/show_bug.cgi?id=44744

ANGLE is using libtool to build a static library and the version of
libtool on Leopard refuses to handle the -fprofile-arcs and -ftest-coverage
parameters. The easiest way to handle this is to not build ANGLE with
coverage information.

This is achieved by applying the XCode options for each project
separately and exclude ANGLE.

* Scripts/build-webkit: Remove -framework AppKit due link errors.
* Scripts/webkitdirs.pm: Do not apply the XCode options for ANGLE.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@66346 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKitTools/ChangeLog
WebKitTools/Scripts/build-webkit
WebKitTools/Scripts/webkitdirs.pm

index f1d89f5..3516c58 100644 (file)
@@ -1,3 +1,21 @@
+2010-08-26  Holger Hans Peter Freyther  <holger@moiji-mobile.com>
+
+        Reviewed by Darin Adler.
+
+        Fix Coverage build after the addition of ANGLE
+        https://bugs.webkit.org/show_bug.cgi?id=44744
+
+        ANGLE is using libtool to build a static library and the version of
+        libtool on Leopard refuses to handle the -fprofile-arcs and -ftest-coverage
+        parameters. The easiest way to handle this is to not build ANGLE with
+        coverage information.
+
+        This is achieved by applying the XCode options for each project
+        separately and exclude ANGLE.
+
+        * Scripts/build-webkit: Remove -framework AppKit due link errors.
+        * Scripts/webkitdirs.pm: Do not apply the XCode options for ANGLE.
+
 2010-08-28  Kevin Ollivier  <kevino@theolliviers.com>
 
         [wx] Build fix after directory addition.
 2010-08-28  Kevin Ollivier  <kevino@theolliviers.com>
 
         [wx] Build fix after directory addition.
index acd7736..4234905 100755 (executable)
@@ -2,6 +2,7 @@
 
 # Copyright (C) 2005, 2006 Apple Inc. All rights reserved.
 # Copyright (C) 2009 Google Inc. All rights reserved.
 
 # Copyright (C) 2005, 2006 Apple Inc. All rights reserved.
 # Copyright (C) 2009 Google Inc. All rights reserved.
+# Copyright (C) 2010 moiji-mobile.com All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions
@@ -330,9 +331,7 @@ if (isGtk()) {
     }
 
     foreach (@features) {
     }
 
     foreach (@features) {
-        if ($_->{option} eq "coverage") {
-            push @options, XcodeCoverageSupportOptions() if $coverageSupport;
-        } else {
+        if ($_->{option} ne "coverage") {
             my $option = option($_->{define}, ${$_->{value}}, $_->{default});
             push @options, $option unless $option eq "";
         }
             my $option = option($_->{define}, ${$_->{value}}, $_->{default});
             push @options, $option unless $option eq "";
         }
@@ -441,7 +440,9 @@ for my $dir (@projects) {
         $result = buildQMakeQtProject($dir, $clean, @options);
     } elsif (isAppleMacWebKit()) {
         $dir = "MiniBrowser" if $dir eq "WebKitTools/MiniBrowser";
         $result = buildQMakeQtProject($dir, $clean, @options);
     } elsif (isAppleMacWebKit()) {
         $dir = "MiniBrowser" if $dir eq "WebKitTools/MiniBrowser";
-        $result = buildXCodeProject($dir, $clean, @options, @ARGV);
+        my @local_options = @options;
+        push @local_options, XcodeCoverageSupportOptions() if $coverageSupport && $dir ne "ANGLE";
+        $result = buildXCodeProject($dir, $clean, @local_options, @ARGV);
     } elsif (isAppleWinWebKit()) {
         if ($dir eq "WebKit") {
             $result = buildVisualStudioProject("win/WebKit.vcproj/WebKit.sln", $clean);
     } elsif (isAppleWinWebKit()) {
         if ($dir eq "WebKit") {
             $result = buildVisualStudioProject("win/WebKit.vcproj/WebKit.sln", $clean);
index 3901611..b4d3f60 100644 (file)
@@ -403,7 +403,7 @@ sub XcodeCoverageSupportOptions()
     push @coverageSupportOptions, "GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=YES";
     push @coverageSupportOptions, "EXTRA_LINK= \$(EXTRA_LINK) -ftest-coverage -fprofile-arcs";
     push @coverageSupportOptions, "OTHER_CFLAGS= \$(OTHER_CFLAGS) -DCOVERAGE -MD";
     push @coverageSupportOptions, "GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=YES";
     push @coverageSupportOptions, "EXTRA_LINK= \$(EXTRA_LINK) -ftest-coverage -fprofile-arcs";
     push @coverageSupportOptions, "OTHER_CFLAGS= \$(OTHER_CFLAGS) -DCOVERAGE -MD";
-    push @coverageSupportOptions, "OTHER_LDFLAGS=\$(OTHER_LDFLAGS) -ftest-coverage -fprofile-arcs -framework AppKit";
+    push @coverageSupportOptions, "OTHER_LDFLAGS=\$(OTHER_LDFLAGS) -ftest-coverage -fprofile-arcs -lgcov";
     return @coverageSupportOptions;
 }
 
     return @coverageSupportOptions;
 }