1. 24 Sep, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [GTK] Enable the Wayland target if GTK+ dependency is found · 9735a353
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=121704
      
      Reviewed by Gustavo Noronha Silva.
      
      The Wayland target should be enabled by default if the GTK+ dependency is of version 3.9.14 or later.
      
      * Source/autotools/FindDependencies.m4: If the Wayland target was not strictly disabled, the GTK+ dependency
      is tested if it can provide the Wayland GDK backend, and that the version of that backend matches the version
      of the master GTK+ dependency for which we already tested. If found, the target is enabled, otherwise we either
      warn or error out, depending on whether the build target was set to auto or completely disabled through configuration.
      * Source/autotools/ReadCommandLineArguments.m4: Switch the default Wayland target status to 'auto', meaning
      it will be disabled if the GTK+ dependency is not found.
      * Source/autotools/Versions.m4: Require GTK+ 3.9.14 for the Wayland target only.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9735a353
  2. 23 Sep, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [Autotools] Rework the build target selection · bca0b279
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=121703
      
      Reviewed by Gustavo Noronha Silva.
      
      Replace the --with-target configuration flag with target-specific --enable-*-target flags:
      - --enable-x11-target
      - --enable-wayland-target
      - --enable-win32-target
      - --enable-quartz-target
      - --enable-directfb-target
      
      By default, the X11 target is enabled. This default is preserved only if no --enable-*-target flag
      is passed on the command line. When that occurs, the newly-constructed list of build targets is
      used to determine what build targets should actually be built. So for instance, executing just
      `./configure` would only enable the X11 target as that's the default, and executing
      `./configure --enable-wayland-target` would only enable the Wayland target, as the defaults are
      completely ignored.
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: Abort if grep was not found, just in case.
      * Source/autotools/CustomMacros.m4: The new file that contains helpful custom macros.
      * Source/autotools/FindDependencies.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
      * Source/autotools/PrintBuildConfiguration.m4: Use the new AM_APPEND_TO_DESCRIPTION macro to construct a pretty-looking
      description string of what targets will be built.
      * Source/autotools/ReadCommandLineArguments.m4: Replace the --with-target configuration flag and the related
      hacks with the set of --enable-*-target flags. The new AM_DETERMINE_BUILD_TARGET_STATUS macro is used to determine
      whether to enable specific build targets, based indirectly on the passed-in --enable-*-target flags.
      * Source/autotools/SetupAutoconfHeader.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
      * Source/autotools/SetupAutomake.m4: Use the appropriate 'enable_*_target' references instead of 'with_*target'.
      * configure.ac: Include the new CustomMacros.m4 file.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156271 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bca0b279
  3. 11 Sep, 2013 1 commit
    • mario@webkit.org's avatar
      [GTK] Remove Gail dependency from build system for GTK3 · 888b8c1d
      mario@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=119673
      
      Reviewed by Gustavo Noronha Silva.
      
      .:
      
      * Source/autotools/FindDependencies.m4: Don't look for GAIL at all.
      * Source/autotools/Versions.m4: Removed any reference to GAIL.
      * Source/cmake/FindGAIL3.cmake: Removed.
      * Source/cmake/OptionsGTK.cmake: Don't look for the GAIL package.
      
      Source/WebCore:
      
      * GNUmakefile.am: Removed GAIL_CFLAGS.
      * PlatformGTK.cmake: Removed GAIL3_INCLUDE_DIRS and GAIL3_LIBRARIES.
      
      Source/WebKit/gtk:
      
      * GNUmakefile.am: Removed GAIL_CFLAGS and GAIL_LIBS.
      
      Source/WebKit2:
      
      * GNUmakefile.am: Removed GAIL_LIBS.
      
      Tools:
      
      * EWSTools/ubuntu-ews-packages: Removed libgail-dev package.
      * Scripts/webkitpy/port/gtk.py:
      (GtkPort.setup_environ_for_server): Do not load the 'gail' module anymore.
      * TestWebKitAPI/GNUmakefile.am: Removed GAIL_LIBS.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155534 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      888b8c1d
  4. 04 Sep, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [GTK] Add support for the Wayland build target · 500ca7b6
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=120627
      
      Reviewed by Gustavo Noronha Silva.
      
      .: 
      
      Add support for building the GTK port with Wayland as the target. The Wayland target can be the sole target
      that's enabled, or it can be enabled in parallel with the X11 target.
      
      Each of those two targets, when enabled, checks for the corresponding GTK+ windowing dependency being present.
      In the case of only the Wayland target being enabled, the accelerated compositing feature is disabled at
      build-time as the feature is not yet supported under the Wayland display protocol. X11-based plugin support is
      also disabled under that configuration, even if the WebKitPluginProcess is still built but is left non-operational.
      GLX support is also disabled if not building the X11 target.
      
      The Wayland target can be enabled through using the --with-target configuration option that now accepts two
      additional values:
      - 'wayland' - only enables the Wayland target,
      - 'x11,wayland' - enables the X11 and Wayland targets that are to be built in parallel.
      
      This makes it possible to build the GTK port of WebKit with the Wayland target, relying solely on the GTK+
      dependency that only has the Wayland backend enabled, and removes linking against any X11-related library.
      Note that at the moment there seem to be other dependencies that still link to X11-related libraries.
      Complete functionality is not yet guaranteed, but is of course the goal.
      
      * Source/autotools/FindDependencies.m4: Store the version of the basic GTK+ dependency that was found.
      This is later used to check that the GTK+ X11 and GTK+ Wayland dependencies are of the same version. The
      X11-specific dependencies are grouped into one section (apart from the XComposite and XDamage dependencies),
      also checking for the GTK+ X11 dependency. If the X11 target is not enabled, the GLX dependency is disabled.
      Additionally check for the GTK+ Wayland dependency if the Wayland target is enabled.
      We only check for the presence and correct version of the GTK+ X11 and Wayland dependencies, if necessary.
      Check for the XComposite and XDamage dependencies if the X11 target is enabled (in addition to the OpenGL
      headers being present).
      In case of the Wayland target being enabled while the X11 target is not, disable the accelerated compositing
      feature as there's no support yet for it under the Wayland display protocol.
      * Source/autotools/PrintBuildConfiguration.m4: The build configuration should now print out 'GDK targets'.
      * Source/autotools/ReadCommandLineArguments.m4: The --with-target option can now take two additional values,
      'wayland' and 'x11,wayland'. The first one enables only the Wayland target, while the second one enables both
      X11 and Wayland targets. This makes it possible to build the GTK port with both X11 and Wayland display protocols
      supported in the same build.
      We must now check the outcoming with_target variable to see if the special case of building one or both of the
      possible parallel targets was chosen. We define with_x11_target and with_wayland_target variables if the
      with_target value applies to that case.
      * Source/autotools/SetupAutoconfHeader.m4: Do not define the XP_UNIX macro on builds that enable the Wayland-only
      target. It should still be defined if we're building both X11 and Wayland targets in parallel.
      * Source/autotools/SetupAutomake.m4: Define TARGET_X11 and TARGET_WAYLAND Automake conditionals if the new
      with_x11_target or with_wayland_target variables were set, respectively. Additionall, define the TARGET_X11_OR_WAYLAND
      Automake conditional if we're building either of the two targets.
      
      Source/WebCore: 
      
      * GNUmakefile.list.am: Reorder the Source/WebCore/plugins/np* source files.
      The X11-specific source files should only be included if the X11 target is being built. PluginPackageNone and
      PluginViewNone source files must be included in non-X11-target builds. Other source files that were previously
      guarded with the TARGET_X11 conditional should also be built for the Wayland target, so the new TARGET_X11_OR_WAYLAND
      conditional is used. If neither of those two targets is being built we fall back to adding source files to the build
      as necessary by the actual build target.
      * platform/gtk/GtkVersioning.c:
      (gdk_screen_get_monitor_workarea): Additionally guard bits of code that depend on the GDK_WINDOWING_X11 macro being
      defined - these should only be built when building the X11 target, checked for with PLATFORM(X11).
      
      Source/WebKit/gtk: 
      
      * WebCoreSupport/ChromeClientGtk.cpp:
      (WebKit::createBackingStore): Additionally guard the <gdk/gdkx.h> inclusion and the inclusion and use of
      WidgetBackingStoreGtkX11 with PLATFORM(X11), ensuring this code is built when also building with X11 target
      enabled. GDK_WINDOWING_X11 macro can be defined even if the X11 target is disabled.
      
      Source/WebKit2: 
      
      * GNUmakefile.list.am: Build X11-specific NetscapePluginModule and NetscapePlugin classes if building the X11 target,
      fall back to the generic, empty classes otherwise.
      * PluginProcess/unix/PluginProcessMainUnix.cpp:
      (WebKit::PluginProcessMainUnix): Guard the NetscapePluginModule::scanPlugin() invocation with PLUGIN_ARCHITECTURE(X11),
      it's at the moment specific to the X11 implementation of the Netscape plugins.
      * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: Guard PluginProcessProxy::scanPlugin() with PLUGIN_ARCHITECTURE(X11),
      just like it's guarded in the PluginProcessProxy class declaration.
      * UIProcess/cairo/BackingStoreCairo.cpp: Additionally guard <gdk/gdkx.h> and WidgetBackingStoreGtkX11 inclusion and use
      with PLATFORM(X11), this code should only be built when building the X11 target.
      (WebKit::createBackingStoreForGTK):
      * UIProcess/gtk/WebPageProxyGtk.cpp: Guard the createPluginContainer() and windowedPluginGeometryDidChange() methods and their
      helper functions and objects with PLUGIN_ARCHITECTURE(X11), just like they're guarded in the WebPageProxy class declaration.
      * config.h: Only define PLUGIN_ARCHITECTURE_X11 to 1 if we're actually building the X11 target.
      
      Tools: 
      
      * GNUmakefile.am: Define the additional macros also if building the Wayland target.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155032 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      500ca7b6
  5. 28 Aug, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [GTK] Add support for building JSC with FTL JIT enabled · aa396195
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=120270
      
      Reviewed by Filip Pizlo.
      
      .: 
      
      * Source/autotools/FindDependencies.m4: Disable FTL JIT if the JIT itself is disabled or if the C++ compiler
      being used is not Clang. Check for llvm-config and use it to properly test for the LLVM >= 3.4 dependency.
      * Source/autotools/PrintBuildConfiguration.m4: Print out the status of the FTL JIT support.
      * Source/autotools/ReadCommandLineArguments.m4: Add a configuration flag for enabling the feature, defaulting
      to 'no' used as the default value for now. This should switch to 'auto' at some point in future.
      * Source/autotools/SetupAutoconfHeader.m4: Define ENABLE_FTL_JIT to a specific value if possible.
      Also define HAVE_LLVM to 1 if the LLVM dependency was satisfied.
      
      Source/JavaScriptCore: 
      
      * GNUmakefile.am: Add LLVM_LIBS to the list of linker flags and LLVM_CFLAGS to the list of
      compiler flags for the JSC library.
      * GNUmakefile.list.am: Add the missing build targets.
      * ftl/FTLAbbreviations.h: Include the <cstring> header and use std::strlen. This avoids compilation
      failures when using the Clang compiler with the libstdc++ standard library.
      (JSC::FTL::mdKindID):
      (JSC::FTL::mdString):
      
      Source/WTF: 
      
      * wtf/Platform.h: Define ENABLE_FTL_JIT to the value of 1 for the GTK port if building for the x86-64
      architecture with LLVM present and the define not being previously defined. This is applicable when
      configuring the Automake build with '--enable-ftl-jit=auto'.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa396195
  6. 13 Aug, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [Autotools] Unicode's CFLAGS enforce -D_FORTIFY_SOURCE=2, -D_REENTRANT=1,... · f18ab334
      zandobersek@gmail.com authored
      [Autotools] Unicode's CFLAGS enforce -D_FORTIFY_SOURCE=2, -D_REENTRANT=1, causing faulty Clang builds
      https://bugs.webkit.org/show_bug.cgi?id=119685
      
      Reviewed by Gustavo Noronha Silva.
      
      icu-config includes '-D_FORTIFY_SOURCE=2 -D_REENTRANT=1' when printing out C preprocessor flags that are used
      as the C compiler flags to avoid other unwanted compiler options. This causes problems when building optimized
      builds with Clang because of a bug in that compiler:
      http://llvm.org/bugs/show_bug.cgi?id=16821
      
      To avoid that, the C preprocessor search flags, as printed by `icu-config --cppflags-searchpath` are now used
      the Unicode dependency's C compiler flags, avoiding unconditionally specifying the two macros.
      
      To adjust for that, the `-pthread` flag is added to the global CFLAGS and CXXFLAGS variables, ensuring
      the _REENTRANT define is set to 1 and declaring the flag globally instead of relying on Glib dependency's
      C compiler flags to do so for us. -D_FORTIFY_SOURCE=2 is only added to the CFLAGS and CXXFLAGS variables if
      the compiler in use is gcc or g++, preventing the Clang builds to malfunction.
      
      * Source/autotools/FindDependencies.m4:
      * Source/autotools/SetupCompilerFlags.m4:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f18ab334
  7. 09 Aug, 2013 1 commit
  8. 05 Aug, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [Automake] Define ENABLE_JIT through the Autoconf header · a56af6cd
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119445
      
      Reviewed by Martin Robinson.
      
      .: 
      
      Instead of defining the ENABLE_JIT value through JSC_CPPFLAGS, the feature define is
      set to be either enabled or disabled through the Autoconf header, based on the value
      passed through the configuration flag. The 'auto' value is used as default, meaning
      that the feature is enabled or disabled in the Platform.h header based on the platform
      configuration (OS, architecture etc.).
      
      * Source/autotools/FindDependencies.m4: Remove the JSC_CPPFLAGS definition.
      * Source/autotools/ReadCommandLineArguments.m4: Change the default value to 'auto' instead
      of 'autodetect', as used by other configuration options that take a similar approach to enabling
      a specific feature.
      * Source/autotools/SetupAutoconfHeader.m4: Set a strict value for the ENABLE_JIT define through
      the Autoconf header if the feature was specifically enabled or disabled.
      
      Source/JavaScriptCore: 
      
      * GNUmakefile.am: Remove JSC_CPPFLAGS from the cpp flags for the JSC library.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a56af6cd
  9. 01 Jul, 2013 1 commit
    • kov@webkit.org's avatar
      [GTK] Remove unsupported AC backends · 30b49f1f
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=117362
      
      Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-07-01
      Reviewed by Martin Robinson.
      
      .:
      
      * Source/autotools/FindDependencies.m4: remove checks related to acceleration backend,
      turn them into a check for OpenGL being available, simply.
      * Source/autotools/ReadCommandLineArguments.m4: remove command line option to select
      accelerated backend, it's now auto-detected.
      * Source/autotools/SetupAutoconfHeader.m4: no longer defines USE_CLUTTER and
      USE_TEXTURE_MAPPER_CAIRO.
      * Source/autotools/SetupAutomake.m4: remove checks related to acceleration backend,
      turn them into a check for OpenGL being available, simply.
      * Source/autotools/Versions.m4: no longer check for clutter/clutter-gtk.
      
      Source/WebCore:
      
      * GNUmakefile.am:
      * GNUmakefile.list.am:
      * Source/WebCore/platform/graphics/PlatformLayer.h: Removed mentions of clutter
      and the texmap cairo backend.
      * platform/graphics/clutter/DrawingBufferClutter.cpp: Removed.
      * platform/graphics/clutter/GraphicsContext3DClutter.cpp: Removed.
      * platform/graphics/clutter/GraphicsContext3DPrivate.cpp: Removed.
      * platform/graphics/clutter/GraphicsContext3DPrivate.h: Removed.
      * platform/graphics/clutter/GraphicsLayerActor.cpp: Removed.
      * platform/graphics/clutter/GraphicsLayerActor.h: Removed.
      * platform/graphics/clutter/GraphicsLayerClutter.cpp: Removed.
      * platform/graphics/clutter/GraphicsLayerClutter.h: Removed.
      * platform/graphics/clutter/PlatformClutterAnimation.cpp: Removed.
      * platform/graphics/clutter/PlatformClutterAnimation.h: Removed.
      * platform/graphics/clutter/PlatformClutterLayerClient.h: Removed.
      * platform/graphics/clutter/TransformationMatrixClutter.cpp: Removed.
      * Source/WebCore/platform/graphics/transforms/TransformationMatrix.h: Removed cogl
      matrix type conversion.
      
      Source/WebKit/gtk:
      
      * GNUmakefile.am:
      * WebCoreSupport/AcceleratedCompositingContext.h: removed clutter and cairo
      additions.
      * WebCoreSupport/AcceleratedCompositingContextCairo.cpp: Removed.
      * WebCoreSupport/AcceleratedCompositingContextClutter.cpp: Removed.
      * webkit/webkitglobals.cpp:
      (webkitInit): removed clutter-gtk initialization.
      
      Tools:
      
      * gtk/jhbuild-optional.modules: no longer needs clutter-gtk, clutter
      and cogl, so removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152275 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      30b49f1f
  10. 28 Jun, 2013 1 commit
  11. 20 Jun, 2013 1 commit
  12. 17 Jun, 2013 1 commit
  13. 30 May, 2013 1 commit
  14. 08 May, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [GTK] Plumb the Automake build system for the Battery Status API feature · 90142ec9
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=115718
      
      Reviewed by Martin Robinson.
      
      .: 
      
      * Source/autotools/FindDependencies.m4: Check for the upower-glib dependency if the feature is enabled.
      * Source/autotools/PrintBuildConfiguration.m4: Print out the feature status.
      * Source/autotools/ReadCommandLineArguments.m4: Check for the --enable-battery-status option. The deafult,
      when the option is not given, is to disable the feature.
      * Source/autotools/SetupWebKitFeatures.m4: Treat the ENABLE_BATTERY_STATUS define as configurable.
      * Source/autotools/symbols.filter: Export a couple of symbols that are used in the WebCore internals library.
      
      Source/WebCore: 
      
      No new tests - no new functionality. The feature is not enabled yet, though all the relevant tests
      pass when it is.
      
      * GNUmakefile.am: Add the Modules/battery directory to the list of search paths for header inclusions.
      Include the same directory under the IDL_PATH variable so the IDL files it contains are processed.
      List these IDL files using a wildcard under the EXTRA_DIST list.
      * GNUmakefile.list.am: Add the build targets for the module source files, IDLs and resulting JS bindings.
      * bindings/gobject/GNUmakefile.am: Add the build targets for the GObject DOM bindings.
      
      Tools: 
      
      * Scripts/webkitdirs.pm:
      (buildAutotoolsProject): List battery-status as a configurable feature, meaning its value will be adjusted
      through the --(enable|disable)-battery-status flag passed to configure.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149759 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90142ec9
  15. 12 Apr, 2013 2 commits
    • zandobersek@gmail.com's avatar
      Unreviewed, rolling out r148262. · a86b1954
      zandobersek@gmail.com authored
      http://trac.webkit.org/changeset/148262
      https://bugs.webkit.org/show_bug.cgi?id=114493
      
      Cairo dep should now build, rolling r148247 back in (Requested
      by zdobersek on #webkit).
      
      Patch by Commit Queue <rniwa@webkit.org> on 2013-04-12
      
      .: 
      
      * Source/autotools/FindDependencies.m4:
      * Source/autotools/PrintBuildConfiguration.m4:
      * Source/autotools/SetupWebKitFeatures.m4:
      
      Source/WebCore: 
      
      * platform/graphics/GraphicsContext.cpp:
      (WebCore):
      * platform/graphics/ImageBuffer.cpp:
      (WebCore):
      * platform/graphics/cairo/GLContext.h:
      (GLContext):
      * platform/graphics/cairo/GraphicsContextCairo.cpp:
      (WebCore::GraphicsContext::isAcceleratedContext):
      (WebCore):
      * platform/graphics/cairo/ImageBufferCairo.cpp:
      (WebCore::ImageBufferData::ImageBufferData):
      (WebCore):
      (WebCore::createCairoGLSurface):
      (WebCore::ImageBuffer::ImageBuffer):
      (WebCore::ImageBuffer::platformTransformColorSpace):
      (WebCore::mapSurfaceToImage):
      (WebCore::unmapSurfaceFromImage):
      (WebCore::getImageData):
      (WebCore::ImageBuffer::putByteArray):
      (WebCore::ImageBufferData::paintToTextureMapper):
      (WebCore::ImageBuffer::platformLayer):
      * platform/graphics/cairo/ImageBufferDataCairo.h:
      (ImageBufferData):
      * platform/graphics/egl/GLContextEGL.cpp:
      (WebCore::GLContextEGL::GLContextEGL):
      (WebCore::GLContextEGL::~GLContextEGL):
      (WebCore::GLContextEGL::cairoDevice):
      (WebCore):
      * platform/graphics/egl/GLContextEGL.h:
      * platform/graphics/glx/GLContextGLX.cpp:
      (WebCore::GLContextGLX::GLContextGLX):
      (WebCore::GLContextGLX::~GLContextGLX):
      (WebCore::GLContextGLX::cairoDevice):
      (WebCore):
      * platform/graphics/glx/GLContextGLX.h:
      (GLContextGLX):
      
      Tools: 
      
      * Scripts/webkitdirs.pm:
      (buildAutotoolsProject):
      * gtk/jhbuild.modules:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148264 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a86b1954
    • zandobersek@gmail.com's avatar
      Unreviewed, rolling out r148247. · cd8dcdb6
      zandobersek@gmail.com authored
      http://trac.webkit.org/changeset/148247
      https://bugs.webkit.org/show_bug.cgi?id=114490
      
      Cairo dep fails to build on builders due to missing EGL
      headers (Requested by zdobersek on #webkit).
      
      Patch by Commit Queue <rniwa@webkit.org> on 2013-04-11
      
      .: 
      
      * Source/autotools/FindDependencies.m4:
      * Source/autotools/PrintBuildConfiguration.m4:
      * Source/autotools/SetupWebKitFeatures.m4:
      
      Source/WebCore: 
      
      * platform/graphics/GraphicsContext.cpp:
      (WebCore):
      * platform/graphics/ImageBuffer.cpp:
      (WebCore):
      * platform/graphics/cairo/GLContext.h:
      (GLContext):
      * platform/graphics/cairo/GraphicsContextCairo.cpp:
      * platform/graphics/cairo/ImageBufferCairo.cpp:
      (WebCore::ImageBufferData::ImageBufferData):
      (WebCore::ImageBuffer::ImageBuffer):
      (WebCore::ImageBuffer::platformTransformColorSpace):
      (WebCore::getImageData):
      (WebCore::ImageBuffer::putByteArray):
      (WebCore):
      * platform/graphics/cairo/ImageBufferDataCairo.h:
      (ImageBufferData):
      * platform/graphics/egl/GLContextEGL.cpp:
      (WebCore::GLContextEGL::GLContextEGL):
      (WebCore::GLContextEGL::~GLContextEGL):
      * platform/graphics/egl/GLContextEGL.h:
      * platform/graphics/glx/GLContextGLX.cpp:
      (WebCore::GLContextGLX::GLContextGLX):
      (WebCore::GLContextGLX::~GLContextGLX):
      * platform/graphics/glx/GLContextGLX.h:
      (GLContextGLX):
      
      Tools: 
      
      * Scripts/webkitdirs.pm:
      (buildAutotoolsProject):
      * gtk/jhbuild.modules:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd8dcdb6
  16. 11 Apr, 2013 1 commit
    • mrobinson@webkit.org's avatar
      [GTK] Add accelerated 2D canvas support using cairo-gl · 6d6f5915
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=104672
      
      Reviewed by Alejandro G. Castro.
      
      .:
      
      Detect that we can activate accelerated canvas when CairoGL is present and
      TextureMapperGL is enabled.
      
      * Source/autotools/FindDependencies.m4: Look for CairoGL.
      * Source/autotools/PrintBuildConfiguration.m4: Print the status of accelerated canvas activation.
      * Source/autotools/SetupWebKitFeatures.m4: Set the feature.
      
      Source/WebCore:
      
      No new tests. We do not yet have the ability to run tests against
      accelerated content.
      
      * platform/graphics/GraphicsContext.cpp:
      (WebCore): We don't use the stub implementation of isAcceleratedContext any longer.
      * platform/graphics/ImageBuffer.cpp:
      (WebCore): Ditto for ImageBuffer::platformLayer.
      * platform/graphics/cairo/GLContext.h:
      (GLContext): Added method to get a cairo_device_t from the context.
      * platform/graphics/cairo/GraphicsContextCairo.cpp:
      (WebCore::GraphicsContext::isAcceleratedContext): Return true when we are a CairoGL surface.
      * platform/graphics/cairo/ImageBufferCairo.cpp:
      (WebCore::ImageBufferData::ImageBufferData): Initialize the size and the texture to 0.
      (WebCore::createCairoGLSurface): Added this helper.
      (WebCore::ImageBuffer::ImageBuffer): When we are in accelerated rendering mode, create
      a CairoGL surface.
      (WebCore::ImageBuffer::platformTransformColorSpace): Do not implement this for accelerated
      contexts yet.
      (WebCore::mapSurfaceToImage): Added this helper, since we don't require Cairo 1.12 yet,
      which provides an builtin implementation.
      (WebCore::unmapSurfaceFromImage): Ditto.
      (WebCore::getImageData): Map the surface to an image surface first.
      (WebCore::ImageBuffer::putByteArray): Ditto.
      (WebCore::ImageBufferData::paintToTextureMapper): Connect the accelerated canvas into the
      TextureMapper infrastructure.
      (WebCore::ImageBuffer::platformLayer): This lets the TextureMapper at the ImageBufferData.
      * platform/graphics/cairo/ImageBufferDataCairo.h:
      (ImageBufferData): Subclass TexturMapperPlatformLayer where appropriate.
      * platform/graphics/egl/GLContextEGL.cpp: Added implementation of cairoDevice.
      * platform/graphics/egl/GLContextEGL.h: Ditto.
      * platform/graphics/glx/GLContextGLX.cpp: Ditto
      * platform/graphics/glx/GLContextGLX.h: Ditto.
      
      Tools:
      
      Since the value of ACCELERATED_2D_CANVAS relies on some somewhat unusual
      dependencies, don't override value of the setting determined by configure.
      This will make it easier for people using build-webkit, but not the
      WebKit JHBuild.
      
      * Scripts/webkitdirs.pm:
      (buildAutotoolsProject): Add a blacklist for settings to never override.
      * gtk/jhbuild.modules: Build CairoGL.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d6f5915
  17. 08 Apr, 2013 1 commit
  18. 02 Apr, 2013 1 commit
    • mrobinson@webkit.org's avatar
      [GTK] Make libsecret optional · bbdc4083
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113821
      
      Reviewed by Gustavo Noronha Silva.
      
      .:
      
      Add a configuration option to disable credential storage and thus remove
      the libsecret dependency. This should make it possible to build WebKit 2.x
      on Windows again.
      
      * Source/autotools/FindDependencies.m4: Only look for libsecret if credential storage is active.
      * Source/autotools/PrintBuildConfiguration.m4: Print whether or not credential storage is active.
      * Source/autotools/ReadCommandLineArguments.m4: Added an option to control credential storage.
      * Source/autotools/SetupAutoconfHeader.m4: Expose credential storage setting to code.
      
      Source/WebCore:
      
      Don't try to use libsecret if credential storage is disabled.
      
      * platform/gtk/GRefPtrGtk.cpp: Protect libsecret sections.
      * platform/gtk/GRefPtrGtk.h: Ditto.
      * platform/network/gtk/CredentialBackingStore.cpp: Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147499 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bbdc4083
  19. 15 Mar, 2013 1 commit
  20. 14 Mar, 2013 1 commit
  21. 11 Mar, 2013 1 commit
  22. 19 Feb, 2013 2 commits
  23. 13 Feb, 2013 1 commit
  24. 12 Feb, 2013 1 commit
    • commit-queue@webkit.org's avatar
      [GTK] Remove the GLib unicode backend · f9b3c2e3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=109627
      
      Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-12
      Reviewed by Benjamin Poulain.
      
      .:
      
      Remove references to the GLib unicode backend from configuration.
      
      * Source/autotools/FindDependencies.m4:
      * Source/autotools/ReadCommandLineArguments.m4:
      * Source/autotools/SetupAutoconfHeader.m4:
      * Source/autotools/SetupAutomake.m4:
      
      Source/WebCore:
      
      Remove references to the GLib unicode backend from WebCore.
      
      * GNUmakefile.list.am: Update the source list.
      * platform/text/gtk/TextBreakIteratorGtk.cpp: Removed.
      * platform/text/gtk/TextCodecGtk.cpp: Removed.
      * platform/text/gtk/TextCodecGtk.h: Removed.
      
      Source/WTF:
      
      Remove references to the GLib unicode backend from WTF.
      
      * GNUmakefile.list.am: Remove GLib unicode files from the source list.
      * wtf/unicode/glib/UnicodeGLib.cpp: Removed.
      * wtf/unicode/glib/UnicodeGLib.h: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142724 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f9b3c2e3
  25. 08 Feb, 2013 1 commit
    • mrobinson@webkit.org's avatar
      [GTK] Split configure.ac into reusable portions · 38e753c5
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=109246
      
      Reviewed by Philippe Normand.
      
      Split up configure.ac into sections based on different "phases"
      of configuration. This should make it easier to find what you are
      looking for as well as creating a "right" place to put things.
      A nice side effect of this is that we can share the different
      modules with a gyp build.
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: Added.
      * Source/autotools/FindDependencies.m4: Added.
      * Source/autotools/PrintBuildConfiguration.m4: Added.
      * Source/autotools/ReadCommandLineArguments.m4: Added.
      * Source/autotools/SetupAutoconfHeader.m4: Added.
      * Source/autotools/SetupAutomake.m4: Added.
      * Source/autotools/SetupCompilerFlags.m4: Added.
      * Source/autotools/SetupLibtool.m4: Added.
      * Source/autotools/Versions.m4: Added.
      * configure.ac:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      38e753c5