0001-gn.pro-don-t-link-statically-with-libstc.patch 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. From 7ae73da23ad998bd1e63ad213cf7a02e61191951 Mon Sep 17 00:00:00 2001
  2. From: Romain Naour <romain.naour@gmail.com>
  3. Date: Sat, 23 May 2020 19:01:19 +0200
  4. Subject: [PATCH] gn.pro: don't link statically with libstc++
  5. MIME-Version: 1.0
  6. Content-Type: text/plain; charset=UTF-8
  7. Content-Transfer-Encoding: 8bit
  8. While cross-compiling, qt5webengine is building a host tool but
  9. want to link the libstdc++ statically. This requires to install
  10. libstdc++-static package on the host (Fedora package name).
  11. Otherwise the link fail with:
  12. [185/185] LINK gn
  13. FAILED: gn
  14. /usr/bin/g++ -O3 -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-strip-all -Wl,--as-needed -static-libstdc++ -pthread -o gn -Wl,--start-group tools/gn/gn_main.o base.a gn_lib.a -Wl,--end-group -ldl
  15. /usr/bin/ld : unable to find -lstdc++
  16. [...]
  17. Project ERROR: GN build error!
  18. Add --no-static-libstdc++ argument to gn.pro to link to
  19. libstdc++.so.6 instead of libstdc++.a.
  20. --no-static-libstdc++ has been added by [1] but it force
  21. linking statically by default.
  22. [1] https://github.com/qt/qtwebengine-chromium/commit/cfab9198a9917f42cf08b1caf84ab9b71aac1911#diff-905c8f054808213577c0a92d1b704615
  23. Signed-off-by: Romain Naour <romain.naour@gmail.com>
  24. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
  25. [Giulio: rebased to qt5.15.10]
  26. ---
  27. src/buildtools/gn.pro | 3 ++-
  28. 1 file changed, 2 insertions(+), 1 deletion(-)
  29. diff --git a/src/buildtools/gn.pro b/src/buildtools/gn.pro
  30. index f94694da0..19079a5b3 100644
  31. --- a/src/buildtools/gn.pro
  32. +++ b/src/buildtools/gn.pro
  33. @@ -20,7 +20,8 @@ build_pass|!debug_and_release {
  34. gn_gen_args = --no-last-commit-position --out-path $$out_path \
  35. --cc \"$$which($$QMAKE_CC)\" --cxx \"$$which($$QMAKE_CXX)\" \
  36. - --ld \"$$which($$QMAKE_LINK)\"
  37. + --ld \"$$which($$QMAKE_LINK)\" \
  38. + --no-static-libstdc++
  39. !isEmpty(QMAKE_AR): gn_gen_args += --ar \"$$which($$first(QMAKE_AR))\"
  40. msvc:!clang_cl: gn_gen_args += --use-lto
  41. --
  42. 2.34.1