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 |
