run-launcher 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/usr/bin/perl -w
  2. # Copyright (C) 2007 Apple Computer, Inc. All rights reserved.
  3. # Copyright (C) 2007 Staikos Computing Services, Inc. <info@staikos.net>
  4. #
  5. # Redistribution and use in source and binary forms, with or without
  6. # modification, are permitted provided that the following conditions
  7. # are met:
  8. #
  9. # 1. Redistributions of source code must retain the above copyright
  10. # notice, this list of conditions and the following disclaimer.
  11. # 2. Redistributions in binary form must reproduce the above copyright
  12. # notice, this list of conditions and the following disclaimer in the
  13. # documentation and/or other materials provided with the distribution.
  14. # 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  15. # its contributors may be used to endorse or promote products derived
  16. # from this software without specific prior written permission.
  17. #
  18. # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  19. # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  20. # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  21. # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
  22. # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  23. # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  24. # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  25. # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  26. # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  27. # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  28. # Simplified "run" script for WebKit Open Source Project.
  29. use strict;
  30. use File::Spec::Functions qw/catdir/;
  31. use File::Temp qw/tempfile/;
  32. use FindBin;
  33. use lib $FindBin::Bin;
  34. use webkitdirs;
  35. setConfiguration();
  36. my $productDir = productDir();
  37. my $launcherPath = productDir();
  38. # Check to see that all the frameworks are built.
  39. checkFrameworks();
  40. # Set paths according to the build system used
  41. if (isQt()) {
  42. my $libDir = catdir(productDir(), 'lib');
  43. if (isWK2()) {
  44. $launcherPath = catdir($launcherPath, "bin", "MiniBrowser");
  45. } else {
  46. $launcherPath = catdir($launcherPath, "bin", "QtTestBrowser");
  47. }
  48. $ENV{QTWEBKIT_PLUGIN_PATH} = catdir($libDir, 'plugins');
  49. print "Starting webkit launcher, running against the built WebKit in $libDir...\n";
  50. if (isDarwin()) {
  51. $ENV{DYLD_LIBRARY_PATH} = $ENV{DYLD_LIBRARY_PATH} ? "$libDir:$ENV{DYLD_LIBRARY_PATH}" : $libDir;
  52. $ENV{DYLD_FRAMEWORK_PATH} = $ENV{DYLD_FRAMEWORK_PATH} ? "$libDir:$ENV{DYLD_FRAMEWORK_PATH}" : $libDir;
  53. } else {
  54. $ENV{LD_LIBRARY_PATH} = $ENV{LD_LIBRARY_PATH} ? "$libDir:$ENV{LD_LIBRARY_PATH}" : $libDir;
  55. }
  56. } else {
  57. if (isGtk()) {
  58. if (isWK2()) {
  59. unshift(@ARGV, catdir($launcherPath, "Programs", "MiniBrowser"));
  60. } else {
  61. unshift(@ARGV, catdir($launcherPath, "Programs", "GtkLauncher"));
  62. }
  63. $launcherPath = catdir(sourceDir(), "Tools", "jhbuild", "jhbuild-wrapper");
  64. unshift(@ARGV, ("--gtk", "run"));
  65. }
  66. if (isEfl()) {
  67. if (isWK2()) {
  68. unshift(@ARGV, catdir($launcherPath, "bin", "MiniBrowser"));
  69. } else {
  70. unshift(@ARGV, catdir($launcherPath, "bin", "EWebLauncher"));
  71. }
  72. $launcherPath = catdir(sourceDir(), "Tools", "jhbuild", "jhbuild-wrapper");
  73. unshift(@ARGV, ("--efl", "run"));
  74. }
  75. print "Starting webkit launcher.\n";
  76. }
  77. exec $launcherPath, @ARGV or die;