1. 18 Jan, 2014 1 commit
  2. 06 Jan, 2014 1 commit
  3. 02 Dec, 2013 1 commit
  4. 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
  5. 07 Sep, 2013 2 commits
    • zandobersek@gmail.com's avatar
      REGRESSION(r155143): Build failures on GTK port with Clang and libstdc++ < 4.8.1 · a973b185
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=120896
      
      Reviewed by Anders Carlsson.
      
      The GTK port currently only permits using the libstdc++ standard library when compiling with
      Clang. After r155143, build failures are occurring when using Clang and libstdc++ that predates
      the 4.8.0 release due to the use of std::is_trivially_destructible that isn't available in
      libstdc++ < 4.8.0.
      
      To not add additional special casing, the GTK port should move onto requiring libstdc++ >= 4.8.1
      when compiling with the Clang compiler. Version 4.8.1 was chosen since it's C++11 feature-complete.
      This strict requirement is possible as compiling the GTK port with the Clang compiler is not really
      widespread, so we can afford to adjust the required dependencies to match other ports' progression
      instead of modifying the code.
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: If the detected compiler is Clang, also check
      that the libstdc++ standard library is used by testing for the __GLIBCXX__ macro that should be defined
      to the value lesser than the '20130531', the date stamp used by the 4.8.1 release of libstdc++. Since
      possible future releases of the 4.6 or 4.7 series of libstdc++ will also match this check due to a newer
      date stamp contained in __GLIBCXX__, the std::is_trivially_destructible struct is also used so the
      compilation will fail if the libstdc++ that's used is older than allowed (and therefor does not support
      the feature). If the check fails, a fatal error is thrown, describing the requirement. Everything carries
      on as normal otherwise.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a973b185
    • zandobersek@gmail.com's avatar
      [GTK] Bump the required Clang version to 3.2 · 95d2a311
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=112537
      
      Reviewed by Gustavo Noronha Silva.
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: Require the Clang 3.2 stack
      when the Clang compiler is specified.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      95d2a311
  6. 13 Aug, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [Autotools] Don't compare $CC, $CXX to exact compiler names · c1aaaea0
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=119683
      
      Reviewed by Gustavo Noronha Silva.
      
      Instead of comparing $CC and $CXX to exact compiler names (like 'gcc', 'clang++' etc.),
      use the compiler version checks to also specify the broader compiler collection of which
      the used compiler is a member of. This avoids failures in some border-line cases where
      the user would still use either a GCC or a Clang compiler but provide it through a symbolic
      link that was specified via the CC/CXX environment variables.
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: Store the detected C/C++ compiler collection
      in c_compiler/cxx_compiler. Throw an error if no supported compiler was found.
      * Source/autotools/SetupCompilerFlags.m4: Test for a specific compiler by checking against
      c_compiler/cxx_compiler rather than CC/CXX values.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c1aaaea0
  7. 11 Apr, 2013 1 commit
  8. 21 Mar, 2013 1 commit
  9. 07 Mar, 2013 1 commit
    • zandobersek@gmail.com's avatar
      [GTK] Limit the supported compilers to GCC >= 4.7 and Clang >= 3.0 · ee50a5f2
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=109932
      
      Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-03-07
      Reviewed by Martin Robinson.
      
      .: 
      
      * Source/autotools/CheckSystemAndBasicDependencies.m4: Strictly check for one of the two compilers.
      * Source/autotools/SetupCompilerFlags.m4: Set up C++11-specific compiler flags. Force the C99 standard for the C code.
      Use the -Qunused-arguments flag when using Clang, it reduces irrelevant errors when using ccache.
      
      Source/WebCore: 
      
      * GNUmakefile.am: Replace references to SYMBOL_VISIBILITY_INLINES and SYMBOL_VISIBILITY variables with the actual flags.
      They are now available by default due to the limited set of supported compilers.
      * bindings/gobject/GNUmakefile.am: Ditto.
      
      Source/WebKit/gtk: 
      
      * GNUmakefile.am: Replace references to SYMBOL_VISIBILITY_INLINES and SYMBOL_VISIBILITY variables with the actual flags.
      They are now available by default due to the limited set of supported compilers.
      
      Source/WebKit2: 
      
      * GNUmakefile.am: Replace references to SYMBOL_VISIBILITY_INLINES and SYMBOL_VISIBILITY variables with the actual flags.
      They are now available by default due to the limited set of supported compilers.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145084 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee50a5f2
  10. 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