From: Chen Qi <qi.c...@windriver.com>

If the TMPDIR has more than 256 chars, building qt4-native fails.
This violates the 410 length limit of TMPDIR.

This patch makes building qt4-native succeed with a long building
path (410 for example) by extending its static arrays' sizes by
256 chars.

[YOCTO #2766]

Signed-off-by: Chen Qi <qi.c...@windriver.com>
---
 ...e-qt4-native-work-with-long-building-path.patch |   82 ++++++++++++++++++++
 meta/recipes-qt/qt4/qt4-native.inc                 |    3 +-
 2 files changed, 84 insertions(+), 1 deletion(-)
 create mode 100644 
meta/recipes-qt/qt4/qt4-4.8.3/0001-make-qt4-native-work-with-long-building-path.patch

diff --git 
a/meta/recipes-qt/qt4/qt4-4.8.3/0001-make-qt4-native-work-with-long-building-path.patch
 
b/meta/recipes-qt/qt4/qt4-4.8.3/0001-make-qt4-native-work-with-long-building-path.patch
new file mode 100644
index 0000000..74f4e1a
--- /dev/null
+++ 
b/meta/recipes-qt/qt4/qt4-4.8.3/0001-make-qt4-native-work-with-long-building-path.patch
@@ -0,0 +1,82 @@
+Upstream-Status: Pending
+
+Make qt4-native work with long building path.
+
+Signed-off-by: Chen Qi <qi.c...@windriver.com>
+
+Index: configure
+=====================================================================
+--- a/configure
++++ b/configure
+@@ -4764,8 +4764,8 @@ DEMOS_PATH_STR=`"$relpath/config.tests/unix/padstring" 
268 "qt_demopath=$QT_INST
+ TODAY=`date +%Y-%m-%d`
+ cat > "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
+ /* License Info */
+-static const char qt_configure_licensee_str          [256 + 12] = 
"$LICENSE_USER_STR";
+-static const char qt_configure_licensed_products_str [256 + 12] = 
"$LICENSE_PRODUCTS_STR";
++static const char qt_configure_licensee_str          [512 + 12] = 
"$LICENSE_USER_STR";
++static const char qt_configure_licensed_products_str [512 + 12] = 
"$LICENSE_PRODUCTS_STR";
+ 
+ /* Installation date */
+ static const char qt_configure_installation          [12+11]    = 
"qt_instdate=$TODAY";
+@@ -4790,36 +4790,36 @@ if [ ! -z "$QT_HOST_PREFIX" ]; then
+ 
+ #if defined(QT_BOOTSTRAPPED) || defined(QT_BUILD_QMAKE)
+ /* Installation Info */
+-static const char qt_configure_prefix_path_str       [256 + 12] = 
"$HOSTPREFIX_PATH_STR";
+-static const char qt_configure_documentation_path_str[256 + 12] = 
"$HOSTDOCUMENTATION_PATH_STR";
+-static const char qt_configure_headers_path_str      [256 + 12] = 
"$HOSTHEADERS_PATH_STR";
+-static const char qt_configure_libraries_path_str    [256 + 12] = 
"$HOSTLIBRARIES_PATH_STR";
+-static const char qt_configure_binaries_path_str     [256 + 12] = 
"$HOSTBINARIES_PATH_STR";
+-static const char qt_configure_plugins_path_str      [256 + 12] = 
"$HOSTPLUGINS_PATH_STR";
+-static const char qt_configure_imports_path_str      [256 + 12] = 
"$HOSTIMPORTS_PATH_STR";
+-static const char qt_configure_data_path_str         [256 + 12] = 
"$HOSTDATA_PATH_STR";
+-static const char qt_configure_translations_path_str [256 + 12] = 
"$HOSTTRANSLATIONS_PATH_STR";
+-static const char qt_configure_settings_path_str     [256 + 12] = 
"$HOSTSETTINGS_PATH_STR";
+-static const char qt_configure_examples_path_str     [256 + 12] = 
"$HOSTEXAMPLES_PATH_STR";
+-static const char qt_configure_demos_path_str        [256 + 12] = 
"$HOSTDEMOS_PATH_STR";
++static const char qt_configure_prefix_path_str       [512 + 12] = 
"$HOSTPREFIX_PATH_STR";
++static const char qt_configure_documentation_path_str[512 + 12] = 
"$HOSTDOCUMENTATION_PATH_STR";
++static const char qt_configure_headers_path_str      [512 + 12] = 
"$HOSTHEADERS_PATH_STR";
++static const char qt_configure_libraries_path_str    [512 + 12] = 
"$HOSTLIBRARIES_PATH_STR";
++static const char qt_configure_binaries_path_str     [512 + 12] = 
"$HOSTBINARIES_PATH_STR";
++static const char qt_configure_plugins_path_str      [512 + 12] = 
"$HOSTPLUGINS_PATH_STR";
++static const char qt_configure_imports_path_str      [512 + 12] = 
"$HOSTIMPORTS_PATH_STR";
++static const char qt_configure_data_path_str         [512 + 12] = 
"$HOSTDATA_PATH_STR";
++static const char qt_configure_translations_path_str [512 + 12] = 
"$HOSTTRANSLATIONS_PATH_STR";
++static const char qt_configure_settings_path_str     [512 + 12] = 
"$HOSTSETTINGS_PATH_STR";
++static const char qt_configure_examples_path_str     [512 + 12] = 
"$HOSTEXAMPLES_PATH_STR";
++static const char qt_configure_demos_path_str        [512 + 12] = 
"$HOSTDEMOS_PATH_STR";
+ #else // QT_BOOTSTRAPPED
+ EOF
+ fi
+ 
+ cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
+ /* Installation Info */
+-static const char qt_configure_prefix_path_str       [256 + 12] = 
"$PREFIX_PATH_STR";
+-static const char qt_configure_documentation_path_str[256 + 12] = 
"$DOCUMENTATION_PATH_STR";
+-static const char qt_configure_headers_path_str      [256 + 12] = 
"$HEADERS_PATH_STR";
+-static const char qt_configure_libraries_path_str    [256 + 12] = 
"$LIBRARIES_PATH_STR";
+-static const char qt_configure_binaries_path_str     [256 + 12] = 
"$BINARIES_PATH_STR";
+-static const char qt_configure_plugins_path_str      [256 + 12] = 
"$PLUGINS_PATH_STR";
+-static const char qt_configure_imports_path_str      [256 + 12] = 
"$IMPORTS_PATH_STR";
+-static const char qt_configure_data_path_str         [256 + 12] = 
"$DATA_PATH_STR";
+-static const char qt_configure_translations_path_str [256 + 12] = 
"$TRANSLATIONS_PATH_STR";
+-static const char qt_configure_settings_path_str     [256 + 12] = 
"$SETTINGS_PATH_STR";
+-static const char qt_configure_examples_path_str     [256 + 12] = 
"$EXAMPLES_PATH_STR";
+-static const char qt_configure_demos_path_str        [256 + 12] = 
"$DEMOS_PATH_STR";
++static const char qt_configure_prefix_path_str       [512 + 12] = 
"$PREFIX_PATH_STR";
++static const char qt_configure_documentation_path_str[512 + 12] = 
"$DOCUMENTATION_PATH_STR";
++static const char qt_configure_headers_path_str      [512 + 12] = 
"$HEADERS_PATH_STR";
++static const char qt_configure_libraries_path_str    [512 + 12] = 
"$LIBRARIES_PATH_STR";
++static const char qt_configure_binaries_path_str     [512 + 12] = 
"$BINARIES_PATH_STR";
++static const char qt_configure_plugins_path_str      [512 + 12] = 
"$PLUGINS_PATH_STR";
++static const char qt_configure_imports_path_str      [512 + 12] = 
"$IMPORTS_PATH_STR";
++static const char qt_configure_data_path_str         [512 + 12] = 
"$DATA_PATH_STR";
++static const char qt_configure_translations_path_str [512 + 12] = 
"$TRANSLATIONS_PATH_STR";
++static const char qt_configure_settings_path_str     [512 + 12] = 
"$SETTINGS_PATH_STR";
++static const char qt_configure_examples_path_str     [512 + 12] = 
"$EXAMPLES_PATH_STR";
++static const char qt_configure_demos_path_str        [512 + 12] = 
"$DEMOS_PATH_STR";
+ EOF
+ 
+ if [ ! -z "$QT_HOST_PREFIX" ]; then
diff --git a/meta/recipes-qt/qt4/qt4-native.inc 
b/meta/recipes-qt/qt4/qt4-native.inc
index ad20723..42e2801 100644
--- a/meta/recipes-qt/qt4/qt4-native.inc
+++ b/meta/recipes-qt/qt4/qt4-native.inc
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = 
"file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
                     file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \
                     
file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354"
 
-INC_PR = "r18"
+INC_PR = "r19"
 
 inherit native
 
@@ -17,6 +17,7 @@ SRC_URI = 
"http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-sr
            
file://0001-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \
            file://0002-qkbdtty_qws-fix-build-with-old-kernel-headers.patch \
            file://0003-webkit2-set-OUTPUT_DIR-value-if-empty.patch \
+          file://0001-make-qt4-native-work-with-long-building-path.patch \
            file://g++.conf \
            file://linux.conf \
        "
-- 
1.7.9.5


_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to