diff options
| author | Mikko Levonmaa <mikko.levonmaa@gmail.com> | 2012-12-05 13:50:46 -0800 |
|---|---|---|
| committer | Mikko Levonmaa <mikko.levonmaa@gmail.com> | 2012-12-07 08:48:15 -0800 |
| commit | b514c5d67a259457383db532151a4bf6f482d158 (patch) | |
| tree | 4f20cd92c147a57f9de4f0e19a8b502a83736baf | |
| parent | 17d2bf1cdd6a6b23a88a8e07dcb640e8f01115d2 (diff) | |
| download | meta-qt5-b514c5d67a259457383db532151a4bf6f482d158.tar.gz | |
Updated QT_CONF_PATH default values in qmake5_base
This allows the subsequent modules to install correctly. Also during
do_configure we stage target specific file into the staging area and
modify some prf files inorder to make the module (qt_lib_<module>.pri)
files install correctly
Signed-off-by: Mikko Levonmaa <mikko.levonmaa@gmail.com>
| -rw-r--r-- | classes/qmake5_base.bbclass | 12 | ||||
| -rw-r--r-- | recipes-qt/qt5/qt5.inc | 40 |
2 files changed, 38 insertions, 14 deletions
diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass index 7012d0d7..014d4618 100644 --- a/classes/qmake5_base.bbclass +++ b/classes/qmake5_base.bbclass | |||
| @@ -17,13 +17,13 @@ do_generate_qt_config_file() { | |||
| 17 | export QT_CONF_PATH=${WORKDIR}/qt.conf | 17 | export QT_CONF_PATH=${WORKDIR}/qt.conf |
| 18 | cat > ${WORKDIR}/qt.conf <<EOF | 18 | cat > ${WORKDIR}/qt.conf <<EOF |
| 19 | [Paths] | 19 | [Paths] |
| 20 | Prefix = | 20 | Binaries = ${bindir} |
| 21 | Binaries = ${STAGING_BINDIR_NATIVE} | 21 | Headers = ${includedir}/qt5 |
| 22 | Headers = ${STAGING_INCDIR}/qt5 | 22 | Plugins = ${libdir}/qt5/plugins |
| 23 | Plugins = ${STAGING_LIBDIR}/qt5/plugins/ | 23 | Libraries = ${libdir} |
| 24 | Libraries = ${STAGING_LIBDIR} | 24 | Data = ${datadir}/qt5 |
| 25 | HostData = ${STAGING_DATADIR}/qt5 | 25 | HostData = ${STAGING_DATADIR}/qt5 |
| 26 | HostBinaries = ${STAGING_BINDIR_NATIVE}/ | 26 | HostBinaries = ${STAGING_BINDIR_NATIVE} |
| 27 | EOF | 27 | EOF |
| 28 | } | 28 | } |
| 29 | 29 | ||
diff --git a/recipes-qt/qt5/qt5.inc b/recipes-qt/qt5/qt5.inc index af933dea..ee2175ac 100644 --- a/recipes-qt/qt5/qt5.inc +++ b/recipes-qt/qt5/qt5.inc | |||
| @@ -84,8 +84,19 @@ do_configure() { | |||
| 84 | cp -f ${WORKDIR}/qplatformdefs.h mkspecs/${TARGET_OS}-oe-g++ | 84 | cp -f ${WORKDIR}/qplatformdefs.h mkspecs/${TARGET_OS}-oe-g++ |
| 85 | bash ${WORKDIR}/qmake.conf.sh > mkspecs/${TARGET_OS}-oe-g++/qmake.conf | 85 | bash ${WORKDIR}/qmake.conf.sh > mkspecs/${TARGET_OS}-oe-g++/qmake.conf |
| 86 | 86 | ||
| 87 | ### This copying needs to take place every time as the installation will | ||
| 88 | ### change.. CHECK THIS | ||
| 87 | mkdir -p ${STAGING_DATADIR}/${QT_DIR_NAME} | 89 | mkdir -p ${STAGING_DATADIR}/${QT_DIR_NAME} |
| 88 | cp -r ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs | 90 | cp -r ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs ${STAGING_DATADIR}/${QT_DIR_NAME}/ |
| 91 | ### Make sure that modules are installed correctly | ||
| 92 | sed -i '/pritarget/s/HOST_DATA/INSTALL_DATA/' ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/features/qt_installs.prf | ||
| 93 | rm -rf ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/modules* | ||
| 94 | rm ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/*.pri | ||
| 95 | |||
| 96 | ### This will make sure that our mkspecs wil leventually end up in STAGING_DATADIR | ||
| 97 | ### Consider doing this as a patch!! | ||
| 98 | sed -i '/mkspecs\.path/s/HOST_DATA/INSTALL_DATA/' qtbase.pro | ||
| 99 | sed -i '/pritarget/s/HOST_DATA/INSTALL_DATA/' mkspecs/features/qt_installs.prf | ||
| 89 | 100 | ||
| 90 | echo "[Paths]" > $QT_CONF_PATH | 101 | echo "[Paths]" > $QT_CONF_PATH |
| 91 | echo "Binaries=${bindir}" >> $QT_CONF_PATH | 102 | echo "Binaries=${bindir}" >> $QT_CONF_PATH |
| @@ -101,6 +112,7 @@ do_configure() { | |||
| 101 | echo "HostData=${STAGING_DATADIR}/${QT_DIR_NAME}" >> $QT_CONF_PATH | 112 | echo "HostData=${STAGING_DATADIR}/${QT_DIR_NAME}" >> $QT_CONF_PATH |
| 102 | 113 | ||
| 103 | ./configure -v \ | 114 | ./configure -v \ |
| 115 | -dont-process \ | ||
| 104 | -opensource -confirm-license \ | 116 | -opensource -confirm-license \ |
| 105 | -prefix ${prefix} \ | 117 | -prefix ${prefix} \ |
| 106 | -bindir ${bindir} \ | 118 | -bindir ${bindir} \ |
| @@ -124,9 +136,14 @@ do_configure() { | |||
| 124 | ### qmodule.pri and qconfig.pri contain target specific stuff copy them over as well | 136 | ### qmodule.pri and qconfig.pri contain target specific stuff copy them over as well |
| 125 | cp -f mkspecs/qmodule.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qmodule.pri | 137 | cp -f mkspecs/qmodule.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qmodule.pri |
| 126 | cp -f mkspecs/qconfig.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qconfig.pri | 138 | cp -f mkspecs/qconfig.pri ${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/qconfig.pri |
| 139 | |||
| 140 | ### As we provided the '-dont-process' switch inorder to allow us to stage a few files | ||
| 141 | ### generated by the configure we need to manually run qmake the generate _all_ the Makefiles (-r) | ||
| 142 | ${OE_QMAKE_QMAKE} -r -d | ||
| 127 | } | 143 | } |
| 128 | 144 | ||
| 129 | do_compile() { | 145 | do_compile() { |
| 146 | |||
| 130 | unset CFLAGS CXXFLAGS AR | 147 | unset CFLAGS CXXFLAGS AR |
| 131 | 148 | ||
| 132 | oe_runmake ${EXTRA_ENV} | 149 | oe_runmake ${EXTRA_ENV} |
| @@ -141,7 +158,8 @@ do_compile() { | |||
| 141 | do_install() { | 158 | do_install() { |
| 142 | oe_runmake install INSTALL_ROOT=${D} | 159 | oe_runmake install INSTALL_ROOT=${D} |
| 143 | 160 | ||
| 144 | # Fix up the binaries to the right location | 161 | ### Fix up the binaries to the right location |
| 162 | ### TODO: FIX | ||
| 145 | install -d ${D}${bindir}/ | 163 | install -d ${D}${bindir}/ |
| 146 | mv ${D}/${STAGING_BINDIR_NATIVE}/* ${D}${bindir}/ | 164 | mv ${D}/${STAGING_BINDIR_NATIVE}/* ${D}${bindir}/ |
| 147 | rm -rf ${D}/${STAGING_BINDIR_NATIVE}/ | 165 | rm -rf ${D}/${STAGING_BINDIR_NATIVE}/ |
| @@ -153,11 +171,17 @@ do_install() { | |||
| 153 | 171 | ||
| 154 | FILES_${PN} = "${libdir}/*.so.*" | 172 | FILES_${PN} = "${libdir}/*.so.*" |
| 155 | FILES_${PN}-dbg = "${libdir}/.debug/*.so.*" | 173 | FILES_${PN}-dbg = "${libdir}/.debug/*.so.*" |
| 156 | FILES_${PN}-plugins = "${libdir}/${QT_DIR_NAME}/platforms/*" | 174 | FILES_${PN}-plugins = "${libdir}/${QT_DIR_NAME}/plugins/*" |
| 157 | FILES_${PN}-plugins-dbg = "${libdir}/${QT_DIR_NAME}/platforms/.debug/*" | 175 | FILES_${PN}-plugins-dbg = "${libdir}/${QT_DIR_NAME}/plugins/.debug/*" |
| 158 | 176 | ||
| 159 | FILES_${PN}-dev = "${libdir}/cmake/* ${libdir}/pkgconfig/*.pc ${libdir}/*.la ${libdir}/*.prl ${includedir}/qt5/*" | 177 | FILES_${PN}-dev = " \ |
| 178 | ${libdir}/cmake/* \ | ||
| 179 | ${libdir}/pkgconfig/*.pc \ | ||
| 180 | ${libdir}/*.la \ | ||
| 181 | ${libdir}/*.prl \ | ||
| 182 | ${includedir}/qt5/* \ | ||
| 183 | ${datadir}/qt5/* \ | ||
| 184 | " | ||
| 160 | FILES_${PN}-staticdev = "${libdir}/libQt*.a" | 185 | FILES_${PN}-staticdev = "${libdir}/libQt*.a" |
| 161 | FILES_${PN}-tools = "${bindir}/*" | 186 | FILES_${PN}-tools = "${bindir}/*" |
| 162 | FILES_${PN}-mkspecs = "${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/*" | 187 | FILES_${PN}-doc = "${datadir}/doc/*" |
| 163 | FILES_${PN}-doc = "${STAGING_DATADIR}/doc/*" | ||
