diff options
author | Martin Jansa <Martin.Jansa@gmail.com> | 2012-12-27 16:40:13 +0100 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2013-04-17 16:10:01 +0200 |
commit | 2b5c531b22703025e67b2f207db91ea178f7ead5 (patch) | |
tree | d83c755b2a31e0201cf3cecab7b34fc5c6c65a0d | |
parent | eb1ad81906d8a40acb5a6691012d32772318433a (diff) | |
download | meta-qt5-2b5c531b22703025e67b2f207db91ea178f7ead5.tar.gz |
qtbase: don't touch STAGING and bypass sstate
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r-- | recipes-qt/qt5/qt5.inc | 12 | ||||
-rw-r--r-- | recipes-qt/qt5/qtbase.inc | 38 | ||||
-rw-r--r-- | recipes-qt/qt5/qtbase/qmake.conf.sh | 3 |
3 files changed, 19 insertions, 34 deletions
diff --git a/recipes-qt/qt5/qt5.inc b/recipes-qt/qt5/qt5.inc index 8d5dd81e..8ed4c288 100644 --- a/recipes-qt/qt5/qt5.inc +++ b/recipes-qt/qt5/qt5.inc | |||
@@ -62,6 +62,18 @@ do_configure() { | |||
62 | ln -sf ${OE_QMAKE_QMAKE} bin/qmake | 62 | ln -sf ${OE_QMAKE_QMAKE} bin/qmake |
63 | fi | 63 | fi |
64 | 64 | ||
65 | if [ ! -e mkspecs/${TARGET_OS}-oe-g++ ]; then | ||
66 | ln -sf linux-g++ mkspecs/${TARGET_OS}-oe-g++ | ||
67 | fi | ||
68 | |||
69 | if [ -f mkspecs/common/g++-unix.conf ] ; then | ||
70 | # mkspecs were refactored for 4.8.0 | ||
71 | cp -f ${WORKDIR}/g++.conf mkspecs/common/g++-unix.conf | ||
72 | else | ||
73 | cp -f ${WORKDIR}/g++.conf mkspecs/common/g++.conf | ||
74 | fi | ||
75 | cp -f ${WORKDIR}/linux.conf mkspecs/common/ | ||
76 | |||
65 | # Avoid problems with the linkers, since we want the linker to be g++ | 77 | # Avoid problems with the linkers, since we want the linker to be g++ |
66 | unset LD | 78 | unset LD |
67 | } | 79 | } |
diff --git a/recipes-qt/qt5/qtbase.inc b/recipes-qt/qt5/qtbase.inc index cda46d57..ec46db12 100644 --- a/recipes-qt/qt5/qtbase.inc +++ b/recipes-qt/qt5/qtbase.inc | |||
@@ -44,35 +44,13 @@ do_configure_append() { | |||
44 | cp -f ${WORKDIR}/qplatformdefs.h mkspecs/${TARGET_OS}-oe-g++ | 44 | cp -f ${WORKDIR}/qplatformdefs.h mkspecs/${TARGET_OS}-oe-g++ |
45 | bash ${WORKDIR}/qmake.conf.sh > mkspecs/${TARGET_OS}-oe-g++/qmake.conf | 45 | bash ${WORKDIR}/qmake.conf.sh > mkspecs/${TARGET_OS}-oe-g++/qmake.conf |
46 | 46 | ||
47 | ### Stage the base mkspecs so that 'HostData' will find them | ||
48 | mkdir -p ${STAGING_DATADIR}/${QT_DIR_NAME} | ||
49 | cp -r ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs ${STAGING_DATADIR}/${QT_DIR_NAME}/ | ||
50 | ### Make sure that modules are installed correctly. During configure they will pick this one | ||
51 | ### instead of the one from ${S}/mkspecs... | ||
52 | sed -i '/pritarget/s/QT_HOST_DATA/OE_CROSS_INSTALL_DATA/' \ | ||
53 | ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/features/qt_installs.prf | ||
54 | rm -rf ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/modules* | ||
55 | |||
56 | ### Fix up prl and pkgconfig lib paths, by default they will point to /usr/lib | 47 | ### Fix up prl and pkgconfig lib paths, by default they will point to /usr/lib |
57 | ${OE_QMAKE_QMAKE} -set OE_CROSS_INSTALL_LIBS ${STAGING_LIBDIR} | 48 | ${OE_QMAKE_QMAKE} -set OE_CROSS_INSTALL_LIBS ${STAGING_LIBDIR} |
58 | sed -i 's/QT_INSTALL_LIBS\/raw/OE_CROSS_INSTALL_LIBS/g' mkspecs/features/qt_module.prf | 49 | sed -i 's/QT_INSTALL_LIBS\/raw/OE_CROSS_INSTALL_LIBS/g' mkspecs/features/qt_module.prf |
59 | 50 | ||
60 | ### Remove the old pri files | 51 | # in qtbase case we want to find qmodule.pri in ${S}/mkspec |
61 | rm ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/*.pri | 52 | # ./features/qt_build_config.prf: QMAKE_QT_MODULE = $$[QT_HOST_DATA/get]/mkspecs/qmodule.pri |
62 | 53 | echo "HostData = ${S}" >> ${QT_CONF_PATH} | |
63 | |||
64 | echo "[Paths]" > $QT_CONF_PATH | ||
65 | echo "Binaries=${bindir}" >> $QT_CONF_PATH | ||
66 | echo "Headers=${includedir}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
67 | echo "Documentation=${docdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
68 | echo "Libraries=${libdir}" >> $QT_CONF_PATH | ||
69 | echo "Plugins=${libdir}/${QT_DIR_NAME}/plugins" >> $QT_CONF_PATH | ||
70 | echo "Data=${datadir}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
71 | echo "Translations=${datadir}/${QT_DIR_NAME}/translations" >> $QT_CONF_PATH | ||
72 | echo "Settings=${sysconfdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
73 | echo "Examples=${bindir}/${QT_DIR_NAME}/examples" >> $QT_CONF_PATH | ||
74 | echo "HostBinaries=${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
75 | echo "HostData=${STAGING_DATADIR}/${QT_DIR_NAME}" >> $QT_CONF_PATH | ||
76 | 54 | ||
77 | ./configure -v \ | 55 | ./configure -v \ |
78 | -dont-process \ | 56 | -dont-process \ |
@@ -92,22 +70,16 @@ do_configure_append() { | |||
92 | -xplatform ${TARGET_OS}-oe-g++ \ | 70 | -xplatform ${TARGET_OS}-oe-g++ \ |
93 | ${QT_CONFIG_FLAGS} | 71 | ${QT_CONFIG_FLAGS} |
94 | 72 | ||
95 | ### Since we are pointing our host data we need to get them there before compilation | ||
96 | if [ ! -e ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/${TARGET_OS}-oe-g++ ]; then | ||
97 | cp -rf mkspecs/${TARGET_OS}-oe-g++ ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/${TARGET_OS}-oe-g++ | ||
98 | fi | ||
99 | ### qmodule.pri and qconfig.pri contain target specific stuff copy them over as well | ||
100 | cp -f mkspecs/qmodule.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qmodule.pri | ||
101 | cp -f mkspecs/qconfig.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qconfig.pri | ||
102 | |||
103 | ### As we provided the '-dont-process' switch inorder to allow us to stage a few files | 73 | ### As we provided the '-dont-process' switch inorder to allow us to stage a few files |
104 | ### generated by the configure we need to manually run qmake the generate _all_ the Makefiles (-r) | 74 | ### generated by the configure we need to manually run qmake the generate _all_ the Makefiles (-r) |
75 | export QMAKESPEC="${S}/mkspecs/${TARGET_OS}-oe-g++" | ||
105 | ${OE_QMAKE_QMAKE} -r -d | 76 | ${OE_QMAKE_QMAKE} -r -d |
106 | } | 77 | } |
107 | 78 | ||
108 | do_compile_append() { | 79 | do_compile_append() { |
109 | # Build qmake for the target arch | 80 | # Build qmake for the target arch |
110 | cd ${S}/qmake | 81 | cd ${S}/qmake |
82 | export QMAKESPEC="${S}/mkspecs/${TARGET_OS}-oe-g++" | ||
111 | ${OE_QMAKE_QMAKE} | 83 | ${OE_QMAKE_QMAKE} |
112 | oe_runmake CC="${CC}" CXX="${CXX}" | 84 | oe_runmake CC="${CC}" CXX="${CXX}" |
113 | cd ${S} | 85 | cd ${S} |
diff --git a/recipes-qt/qt5/qtbase/qmake.conf.sh b/recipes-qt/qt5/qtbase/qmake.conf.sh index 52682396..49d9de2a 100644 --- a/recipes-qt/qt5/qtbase/qmake.conf.sh +++ b/recipes-qt/qt5/qtbase/qmake.conf.sh | |||
@@ -34,6 +34,7 @@ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += ${OE_QMAKE_CFLAGS} | |||
34 | QMAKE_CXX = ${OE_QMAKE_CXX} | 34 | QMAKE_CXX = ${OE_QMAKE_CXX} |
35 | QMAKE_LINK = ${OE_QMAKE_LINK} | 35 | QMAKE_LINK = ${OE_QMAKE_LINK} |
36 | QMAKE_LINK_SHLIB = ${OE_QMAKE_LINK} | 36 | QMAKE_LINK_SHLIB = ${OE_QMAKE_LINK} |
37 | QMAKE_CONF_COMPILER = ${OE_QMAKE_CONF_COMPILER} | ||
37 | 38 | ||
38 | load(qt_config) | 39 | load(qt_config) |
39 | EOF \ No newline at end of file | 40 | EOF |