Changeset 159806 in webkit
- Timestamp:
- Nov 26, 2013 10:05:27 PM (10 years ago)
- Location:
- trunk
- Files:
-
- 14 added
- 19 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/CMakeLists.txt
r157159 r159806 11 11 set(WEBKIT2_DIR "${CMAKE_SOURCE_DIR}/Source/WebKit2") 12 12 set(THIRDPARTY_DIR "${CMAKE_SOURCE_DIR}/Source/ThirdParty") 13 set(PLATFORM_DIR "${CMAKE_SOURCE_DIR}/Source/Platform") 13 14 14 15 set(TOOLS_DIR "${CMAKE_SOURCE_DIR}/Tools") … … 40 41 # Determine which port will be built 41 42 # ----------------------------------------------------------------------------- 42 set(ALL_PORTS Efl WinCE BlackBerry GTK )43 set(ALL_PORTS Efl WinCE BlackBerry GTK Nix) 43 44 set(PORT "NOPORT" CACHE STRING "choose which WebKit port to build (one of ${ALL_PORTS})") 44 45 -
trunk/ChangeLog
r159778 r159806 1 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org> 2 3 Nix upstreaming - Adding build files and supporting scripts 4 https://bugs.webkit.org/show_bug.cgi?id=118367 5 6 Reviewed by Ryosuke Niwa. 7 8 * CMakeLists.txt: 9 * Source/CMakeLists.txt: 10 * Source/cmake/FindEGL.cmake: 11 * Source/cmake/FindOpenGLES2.cmake: Added. 12 * Source/cmake/OptionsCommon.cmake: 13 * Source/cmake/OptionsNix.cmake: Added. 14 1 15 2013-11-25 Ryuan Choi <ryuan.choi@samsung.com> 2 16 -
trunk/Source/CMakeLists.txt
r150336 r159806 5 5 6 6 add_subdirectory(JavaScriptCore) 7 8 if ("${PORT}" STREQUAL "Nix") 9 add_subdirectory(Platform) 10 endif () 7 11 8 12 if (ENABLE_API_TESTS) … … 27 31 # Set compiler flags for all targets 28 32 # ----------------------------------------------------------------------------- 33 if ("${PORT}" STREQUAL "Nix") 34 if (NOT DISABLE_STRICT_BUILD) 35 set(ADDITIONAL_FLAGS ENABLE_WERROR) 36 endif () 37 WEBKIT_SET_EXTRA_COMPILER_FLAGS(Platform ${ADDITIONAL_FLAGS}) 38 endif () 39 29 40 if (${PORT} STREQUAL "Efl") 30 41 set(ADDITIONAL_FLAGS ENABLE_WERROR) -
trunk/Source/Platform/ChangeLog
r158848 r159806 1 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org> 2 3 Nix upstreaming - Adding build files and supporting scripts 4 https://bugs.webkit.org/show_bug.cgi?id=118367 5 6 Reviewed by Ryosuke Niwa. 7 8 * CMakeLists.txt: Added. 9 * PlatformNix.cmake: Added. 10 1 11 2013-11-07 Denis Nomiyama <d.nomiyama@samsung.com> 2 12 -
trunk/Source/WTF/ChangeLog
r159799 r159806 1 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org> 2 3 Nix upstreaming - Adding build files and supporting scripts 4 https://bugs.webkit.org/show_bug.cgi?id=118367 5 6 Reviewed by Ryosuke Niwa. 7 8 * wtf/FeatureDefines.h: 9 * wtf/Platform.h: 10 * wtf/PlatformNix.cmake: Added. 11 1 12 2013-11-26 Drew Yao <ayao@apple.com> 2 13 -
trunk/Source/WTF/wtf/FeatureDefines.h
r159679 r159806 286 286 #endif /* PLATFORM(WIN_CAIRO) */ 287 287 288 /* --------- NIX port (Unix) --------- */ 289 #if PLATFORM(NIX) 290 #include "nix/FeatureDefinesNix.h" 291 #endif /* PLATFORM(NIX) */ 292 288 293 /* --------- EFL port (Unix) --------- */ 289 294 #if PLATFORM(EFL) -
trunk/Source/WTF/wtf/Platform.h
r159735 r159806 453 453 #elif defined(BUILDING_BLACKBERRY__) 454 454 #define WTF_PLATFORM_BLACKBERRY 1 455 #elif defined(BUILDING_NIX__) 456 #include "nix/PlatformNix.h" 455 457 #elif OS(DARWIN) 456 458 #define WTF_PLATFORM_MAC 1 -
trunk/Source/WebCore/CMakeLists.txt
r159797 r159806 2858 2858 "${WEBCORE_DIR}/platform/graphics/gpu" 2859 2859 ) 2860 if (OPENGL_FOUND) 2860 # Nix may use either OpenGL or OpenGLES2 headers, so we handle this at PlatformNix.cmake. 2861 if (OPENGL_FOUND AND NOT PORT STREQUAL "Nix") 2861 2862 list(APPEND WebCore_INCLUDE_DIRECTORIES 2862 2863 ${OPENGL_INCLUDE_DIR} … … 2865 2866 ${OPENGL_gl_LIBRARY} 2866 2867 ) 2867 elseif (OPENGLES2_FOUND )2868 elseif (OPENGLES2_FOUND AND NOT PORT STREQUAL "Nix") 2868 2869 list(APPEND WebCore_INCLUDE_DIRECTORIES 2869 2870 ${OPENGLES2_INCLUDE_DIR} -
trunk/Source/WebCore/ChangeLog
r159800 r159806 1 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org> 2 3 Nix upstreaming - Adding build files and supporting scripts 4 https://bugs.webkit.org/show_bug.cgi?id=118367 5 6 Reviewed by Ryosuke Niwa. 7 8 No new tests needed. 9 10 * CMakeLists.txt: 11 * PlatformNix.cmake: Added. 12 1 13 2013-11-26 Tim Horton <timothy_horton@apple.com> 2 14 -
trunk/Source/cmake/FindEGL.cmake
r138033 r159806 36 36 include(FindPackageHandleStandardArgs) 37 37 FIND_PACKAGE_HANDLE_STANDARD_ARGS(EGL DEFAULT_MSG EGL_INCLUDE_DIR EGL_LIBRARY) 38 39 if (PORT STREQUAL "Nix") 40 mark_as_advanced(EGL_INCLUDE_DIR EGL_LIBRARY) 41 endif () -
trunk/Source/cmake/OptionsCommon.cmake
r155163 r159806 1 add_definitions(-DBUILDING_WITH_CMAKE=1) 2 add_definitions(-DHAVE_CONFIG_H=1) 1 # Nix doesn't use cmakeconfig.h 2 if (NOT PORT STREQUAL "Nix") 3 add_definitions(-DBUILDING_WITH_CMAKE=1) 4 add_definitions(-DHAVE_CONFIG_H=1) 5 endif () 3 6 4 7 if (WTF_OS_UNIX) -
trunk/Tools/ChangeLog
r159805 r159806 1 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org> 2 3 Nix upstreaming - Adding build files and supporting scripts 4 https://bugs.webkit.org/show_bug.cgi?id=118367 5 6 Reviewed by Ryosuke Niwa. 7 8 * Scripts/build-webkit: 9 * Scripts/run-nix-tests: Added. 10 * Scripts/run-webkit-tests: 11 * Scripts/update-webkit-libs-jhbuild: 12 * Scripts/update-webkitnix-libs: Added. 13 * Scripts/webkitdirs.pm: 14 (determineArchitecture): 15 (argumentsForConfiguration): 16 (jscProductDir): 17 (builtDylibPathForName): 18 (determineIsNix): 19 (isNix): 20 (isAppleWebKit): 21 (launcherPath): 22 (launcherName): 23 (checkRequiredSystemConfig): 24 (copyInspectorFrontendFiles): 25 (jhbuildWrapperPrefixIfNeeded): 26 (buildCMakeProjectOrExit): 27 (cmakeBasedPortName): 28 * Scripts/webkitpy/common/config/ports.py: 29 (DeprecatedPort.port): 30 (EflWK2Port.build_webkit_command): 31 (NixPort): 32 (NixPort.build_webkit_command): 33 * Scripts/webkitpy/port/factory.py: 34 (platform_options): 35 (PortFactory): 36 * Scripts/webkitpy/port/nix.py: Added. 37 (NixPort): 38 (NixPort._wk2_port_name): 39 (NixPort.determine_full_port_name): 40 (NixPort.__init__): 41 (NixPort._port_flag_for_scripts): 42 (NixPort.setup_test_run): 43 (NixPort.setup_environ_for_server): 44 (NixPort.default_timeout_ms): 45 (NixPort.clean_up_test_run): 46 (NixPort._generate_all_test_configurations): 47 (NixPort._path_to_driver): 48 (NixPort._path_to_image_diff): 49 (NixPort._image_diff_command): 50 (NixPort._search_paths): 51 (NixPort.show_results_html_file): 52 (NixPort._port_specific_expectations_files): 53 (NixPort.default_baseline_search_path): 54 * Scripts/webkitpy/port/nix_unittest.py: Added. 55 (NixPortTest): 56 (NixPortTest._assert_search_path): 57 (NixPortTest._assert_expectations_files): 58 (NixPortTest.test_baseline_search_path): 59 (NixPortTest.test_expectations_files): 60 (NixPortTest.test_default_timeout_ms): 61 * jhbuild/jhbuild-wrapper: 62 (determine_platform): 63 * nix/common.py: Added. 64 (script_path): 65 (top_level_path): 66 * nix/jhbuild.modules: Added. 67 * nix/jhbuildrc: Added. 68 1 69 2013-11-26 Ryosuke Niwa <rniwa@webkit.org> 2 70 -
trunk/Tools/Scripts/build-webkit
r159321 r159806 5 5 # Copyright (C) 2010 moiji-mobile.com All rights reserved. 6 6 # Copyright (C) 2011 Research In Motion Limited. All rights reserved. 7 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 7 8 # 8 9 # Redistribution and use in source and binary forms, with or without … … 37 38 use File::Spec; 38 39 use FindBin; 39 use Getopt::Long qw(:config pass_through );40 use Getopt::Long qw(:config pass_through no_auto_abbrev); 40 41 use lib $FindBin::Bin; 41 42 use webkitdirs; … … 63 64 my $coverageSupport = 0; 64 65 my $startTime = time(); 66 my $curl = 0; 67 my $opengles2 = 0; 65 68 66 69 my @features = getFeatureOptionList(); 70 71 # Update defaults for the Nix port 72 if (isNix()) { 73 # Instead of use FeatureList.pm to list enabled features, tell the compiler to 74 # parse Source/WTF/wtf/Platform.h and get the default values of all feature flags 75 # from the result. 76 my $portDefine = "BUILDING_".uc(cmakeBasedPortName())."__"; 77 my $definitions = `gcc -E -P -dM -D$portDefine -I Source/WTF Source/WTF/wtf/Platform.h | grep '^#define ENABLE_\\w\\+ \[01\]\$\\|^#define WTF_USE_\\w\\+ \[01\]\$' | cut -d' ' -f2-3`; 78 79 my %featureDefaults; 80 foreach (split(/\n/, $definitions)) { 81 my @macroDefinition = split(/ /); 82 $featureDefaults{$macroDefinition[0]} = $macroDefinition[1]; 83 } 84 85 @features = (); 86 foreach (sort keys %featureDefaults) { 87 next if (!/^ENABLE/); 88 my $optionName = lc $_; 89 $optionName =~ s/^enable_//; 90 $optionName =~ s/_/-/g; 91 my $descName = $optionName; 92 $descName =~ s/-/ /g; 93 94 push @features, { 95 option => $optionName, 96 desc => "Toggle $descName support", 97 define => $_, 98 default => $featureDefaults{$_} 99 }; 100 } 101 } 67 102 68 103 # Additional environment parameters … … 95 130 --blackberry Build the BlackBerry port on Mac/Linux 96 131 --efl Build the EFL port 132 --nix Build the Nix port 97 133 --gtk Build the GTK+ port 98 134 --wincairo Build using Cairo (rather than CoreGraphics) on Windows … … 110 146 --no-webkit1 Omit WebKit1 code from the build (EFL/GTK only) 111 147 --no-webkit2 Omit WebKit2 code from the build 148 149 --curl Use libCurl as network backend (Nix only) 150 --opengles2 Use EGL and OpenGLES2 instead of GLX (Nix only) 112 151 113 152 EOF … … 126 165 'no-webkit2' => \$noWebKit2, 127 166 'coverage' => \$coverageSupport, 167 'curl' => \$curl, 168 'opengles2' => \$opengles2, 128 169 ); 129 170 … … 230 271 exit exitStatus($result) if exitStatus($result); 231 272 @projects = ("Source/WebInspectorUI"); 273 } 274 275 if (isNix()) { 276 if ($noWebKit2) { 277 print STDERR "Nix is a WebKit2 port, you can't disable WebKit2 on it!\n"; 278 exit 1; 279 } 280 281 # By default we build using all of the available CPUs. 282 $makeArgs .= ($makeArgs ? " " : "") . "-j" . numberOfCPUs() if $makeArgs !~ /-j\s*\d+/; 283 $cmakeArgs = "-DWTF_USE_CURL=ON " . $cmakeArgs if $curl; 284 $cmakeArgs = "-DWTF_USE_OPENGL_ES_2=ON " . $cmakeArgs if $opengles2; 285 286 # We remove CMakeCache to avoid the bots to reuse cached flags when 287 # we enable new features. This forces a reconfiguration. 288 removeCMakeCache(); 289 290 buildCMakeProjectOrExit($clean, "Nix", $prefixPath, $makeArgs, (cmakeBasedPortArguments(), cMakeArgsFromFeatures()), $cmakeArgs); 232 291 } 233 292 -
trunk/Tools/Scripts/run-webkit-tests
r156895 r159806 2 2 # Copyright (C) 2010 Google Inc. All rights reserved. 3 3 # Copyright (C) 2013 Apple Inc. All rights reserved. 4 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 4 5 # 5 6 # Redistribution and use in source and binary forms, with or without … … 81 82 } elsif (isEfl()) { 82 83 push(@ARGV, "--efl"); 84 } elsif (isNix()) { 85 push(@ARGV, "--nix"); 83 86 } elsif (isWinCairo()) { 84 87 push(@ARGV, "--wincairo"); -
trunk/Tools/Scripts/update-webkit-libs-jhbuild
r157923 r159806 2 2 # Copyright (C) 2011 Igalia S.L. 3 3 # Copyright (C) 2012 Intel Corporation 4 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 4 5 # 5 6 # This library is free software; you can redistribute it and/or … … 24 25 my $platformEfl = 0; 25 26 my $platformGtk = 0; 27 my $platformNix = 0; 26 28 27 29 my $getOptionsResult = GetOptions( 28 30 'efl' => \$platformEfl, 29 'gtk' => \$platformGtk 31 'gtk' => \$platformGtk, 32 'nix' => \$platformNix 30 33 ); 31 34 32 35 my $platform = ""; 33 36 if (!$getOptionsResult) { 34 die "No platform specified for " . basename($0) .". Use --gtk or --efl.\n";37 die "No platform specified for " . basename($0) .". Use --gtk, --efl or --nix.\n"; 35 38 } else { 36 39 if ($platformEfl) { … … 39 42 if ($platformGtk) { 40 43 $platform = "gtk"; 44 } 45 if ($platformNix) { 46 $platform = "nix"; 41 47 } 42 48 } … … 121 127 chdir(relativeScriptsDir() . "/../jhbuild") or die $!; 122 128 123 my %prettyPlatform = ( "efl" => "EFL", "gtk" => "GTK+" );129 my %prettyPlatform = ( "efl" => "EFL", "gtk" => "GTK+", "nix" => "Nix" ); 124 130 125 131 if (-e getJhbuildPath() && jhbuildConfigurationChanged()) { -
trunk/Tools/Scripts/webkitdirs.pm
r159668 r159806 2 2 # Copyright (C) 2009 Google Inc. All rights reserved. 3 3 # Copyright (C) 2011 Research In Motion Limited. All rights reserved. 4 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 4 5 # 5 6 # Redistribution and use in source and binary forms, with or without … … 95 96 my $isWin64; 96 97 my $isEfl; 98 my $isNix; 97 99 my $isBlackBerry; 98 100 my $isInspectorFrontend; … … 315 317 } 316 318 } 317 } elsif (isEfl() ) {319 } elsif (isEfl() || isNix()) { 318 320 my $host_processor = ""; 319 321 $host_processor = `cmake --system-information | grep CMAKE_SYSTEM_PROCESSOR`; … … 325 327 } 326 328 327 if (!$architecture && (isGtk() || isAppleMacWebKit() || isEfl() )) {329 if (!$architecture && (isGtk() || isAppleMacWebKit() || isEfl() || isNix())) { 328 330 # Fall back to output of `arch', if it is present. 329 331 $architecture = `arch`; … … 331 333 } 332 334 333 if (!$architecture && (isGtk() || isAppleMacWebKit() || isEfl() )) {335 if (!$architecture && (isGtk() || isAppleMacWebKit() || isEfl() || isNix())) { 334 336 # Fall back to output of `uname -m', if it is present. 335 337 $architecture = `uname -m`; … … 380 382 push(@args, '--gtk') if isGtk(); 381 383 push(@args, '--efl') if isEfl(); 384 push(@args, '--nix') if isNix(); 382 385 push(@args, '--wincairo') if isWinCairo(); 383 386 push(@args, '--wince') if isWinCE(); … … 530 533 { 531 534 my $productDir = productDir(); 532 $productDir .= "/bin" if isEfl();535 $productDir .= "/bin" if (isEfl() || isNix()); 533 536 $productDir .= "/Programs" if isGtk(); 534 537 … … 786 789 } 787 790 return "$configurationProductDir/lib/libewebkit.so"; 791 } 792 if (isNix()) { 793 return "$configurationProductDir/lib/libWebKitNix.so"; 788 794 } 789 795 if (isWinCE()) { … … 1040 1046 } 1041 1047 1048 sub determineIsNix() 1049 { 1050 return if defined($isNix); 1051 $isNix = checkForArgumentAndRemoveFromARGV("--nix"); 1052 } 1053 1054 sub isNix() 1055 { 1056 determineIsNix(); 1057 return $isNix; 1058 } 1042 1059 sub isGtk() 1043 1060 { … … 1190 1207 sub isAppleWebKit() 1191 1208 { 1192 return !(isGtk() or isEfl() or isWinCE() or isBlackBerry() );1209 return !(isGtk() or isEfl() or isWinCE() or isBlackBerry() or isNix()); 1193 1210 } 1194 1211 … … 1381 1398 { 1382 1399 my $relativeScriptsPath = relativeScriptsDir(); 1383 if (isGtk() || isEfl() || isWinCE() ) {1400 if (isGtk() || isEfl() || isWinCE() || isNix()) { 1384 1401 return "$relativeScriptsPath/run-launcher"; 1385 1402 } elsif (isAppleWebKit()) { … … 1398 1415 } elsif (isWinCE()) { 1399 1416 return "WinCELauncher"; 1417 } elsif (isNix()) { 1418 return "MiniBrowser"; 1400 1419 } 1401 1420 } … … 1420 1439 print "*************************************************************\n"; 1421 1440 } 1422 } elsif (isGtk() or isEfl() or isWindows() ) {1441 } elsif (isGtk() or isEfl() or isWindows() or isNix()) { 1423 1442 my @cmds = qw(bison gperf flex); 1424 1443 my @missing = (); … … 1639 1658 } elsif (isAppleWinWebKit() || isWinCairo()) { 1640 1659 $inspectorResourcesDirPath = $productDir . "/WebKit.resources/inspector"; 1641 } elsif (isGtk() ) {1660 } elsif (isGtk() || isNix()) { 1642 1661 my $prefix = $ENV{"WebKitInstallationPrefix"}; 1643 1662 $inspectorResourcesDirPath = (defined($prefix) ? $prefix : "/usr/share") . "/webkit-1.0/webinspector"; … … 1952 1971 } elsif (isGtk()) { 1953 1972 push(@prefix, "--gtk"); 1973 } elsif (isNix()) { 1974 push(@prefix, "--nix"); 1954 1975 } 1955 1976 push(@prefix, "run"); … … 2046 2067 } 2047 2068 2069 if (isNix() && checkForArgumentAndRemoveFromARGV("--update-nix")) { 2070 system("perl", "$sourceDir/Tools/Scripts/update-webkitnix-libs") == 0 or die $!; 2071 } 2048 2072 2049 2073 $returnCode = exitStatus(generateBuildSystemFromCMakeProject($port, $prefixPath, @cmakeArgs)); … … 2069 2093 return "Efl" if isEfl(); 2070 2094 return "WinCE" if isWinCE(); 2095 return "Nix" if isNix(); 2071 2096 return ""; 2072 2097 } -
trunk/Tools/Scripts/webkitpy/common/config/ports.py
r157682 r159806 1 1 # Copyright (C) 2009, Google Inc. All rights reserved. 2 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 2 3 # 3 4 # Redistribution and use in source and binary forms, with or without … … 71 72 "efl": EflPort, 72 73 "efl-wk2": EflWK2Port, 74 "nix": NixPort, 73 75 } 74 76 default_port = { … … 231 233 command.append(super(EflWK2Port, self).makeArgs()) 232 234 return command 235 236 237 class NixPort(DeprecatedPort): 238 port_flag_name = "nix" 239 240 def build_webkit_command(self, build_style=None): 241 command = super(NixPort, self).build_webkit_command(build_style=build_style) 242 command.append("--nix") 243 command.append("--update-nix") 244 command.append(super(NixPort, self).makeArgs()) 245 return command -
trunk/Tools/Scripts/webkitpy/port/factory.py
r159282 r159806 1 1 # Copyright (C) 2010 Google Inc. All rights reserved. 2 2 # Copyright (C) 2013 Apple Inc. All rights reserved. 3 # Copyright (C) 2013 Nokia Corporation and/or its subsidiary(-ies). 3 4 # 4 5 # Redistribution and use in source and binary forms, with or without … … 47 48 const=('efl*' if use_globs else 'efl'), 48 49 help=('Alias for --platform=efl*' if use_globs else 'Alias for --platform=efl')), 50 optparse.make_option('--nix', action='store_const', dest='platform', 51 const=('nix'), help=('Alias for --platform=nix')), 49 52 optparse.make_option('--gtk', action='store_const', dest='platform', 50 53 const=('gtk*' if use_globs else 'gtk'), … … 76 79 PORT_CLASSES = ( 77 80 'efl.EflPort', 81 'nix.NixPort', 78 82 'gtk.GtkPort', 79 83 'mac.MacPort', -
trunk/Tools/jhbuild/jhbuild-wrapper
r158912 r159806 3 3 # Copyright (C) 2012 Gustavo Noronha Silva <gns@gnome.org> 4 4 # Copyright (C) 2012 Intel Corporation 5 # Copyright (C) 2012, 2013 Nokia Corporation and/or its subsidiary(-ies). 5 6 # 6 7 # This library is free software; you can redistribute it and/or … … 98 99 if '--gtk' in sys.argv: 99 100 return "gtk"; 101 if '--nix' in sys.argv: 102 return "nix"; 100 103 raise ValueError('No platform specified for jhbuild-wrapper.') 101 104
Note: See TracChangeset
for help on using the changeset viewer.