[Qt] Use GNU ar's thin archive format for intermediate static libs
authorabecsi@webkit.org <abecsi@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 7 Feb 2013 11:02:10 +0000 (11:02 +0000)
committerabecsi@webkit.org <abecsi@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 7 Feb 2013 11:02:10 +0000 (11:02 +0000)
commit7e8a7df6f1158af70355e9fe966e33a356f0ee02
tree7453a8759520fdf3aea7937696eb00f1d9e97f45
parentfccdfe990f8c27d366cb598751dd8a5f21fb34ef
[Qt] Use GNU ar's thin archive format for intermediate static libs
https://bugs.webkit.org/show_bug.cgi?id=109052

Reviewed by Jocelyn Turcotte.

Source/JavaScriptCore:

Adjust project files that used activeBuildConfig()
to use targetSubDir().

* JavaScriptCore.pri:
* LLIntOffsetsExtractor.pro:
* Target.pri:

Tools:

With debug builds we exceed the 4GiB limit of GNU ar when creating the WebCore
intermediate static library which results in build failure even with a x86_64
toolchain (http://sourceware.org/bugzilla/show_bug.cgi?id=14625).

When using a GNU toolchain we can use the thin archive format for these static
libraries which also has the benefit of not copying the object files, thus
drastically reducing disk usage and overall compile time.

Currently qmake does not support GNU ar's thin archive format so for
now we need to do the magic in the build system as a stopgap solution.

* qmake/mkspecs/features/configure.prf:
* qmake/mkspecs/features/default_post.prf:
* qmake/mkspecs/features/functions.prf:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@142088 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/JavaScriptCore.pri
Source/JavaScriptCore/LLIntOffsetsExtractor.pro
Source/JavaScriptCore/Target.pri
Tools/ChangeLog
Tools/qmake/mkspecs/features/configure.prf
Tools/qmake/mkspecs/features/default_post.prf
Tools/qmake/mkspecs/features/functions.prf