Merge pull request #2 from levonmaa/master
Updating recipes to use correct tools and fixing installations
This commit is contained in:
commit
9914f2c64f
|
@ -21,7 +21,7 @@ Prefix =
|
|||
Binaries = ${STAGING_BINDIR_NATIVE}
|
||||
Headers = ${STAGING_INCDIR}/qt5
|
||||
Plugins = ${STAGING_LIBDIR}/qt5/plugins/
|
||||
Libraries = ${STAGING_LIBDIR}/qt5-test
|
||||
Libraries = ${STAGING_LIBDIR}
|
||||
Mkspecs = ${STAGING_DATADIR}/qt5/mkspecs/
|
||||
HostData = ${STAGING_DATADIR_NATIVE}/qt5
|
||||
HostBinaries = ${STAGING_BINDIR_NATIVE}/
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
From 1092de02d1ac256a8c56fb5b5e590a4df8188acb Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
Date: Tue, 27 Nov 2012 12:46:44 -0800
|
||||
Subject: [PATCH] Always build uic
|
||||
|
||||
Even if we are not building gui or widgets. This tool is needed later
|
||||
as a native tool when compiling the target.
|
||||
|
||||
Signed-off-by: Mikko Levonmaa <mikko.levonmaa@palm.com>
|
||||
---
|
||||
src/tools/tools.pro | 4 ++--
|
||||
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/tools/tools.pro b/src/tools/tools.pro
|
||||
index c67d6bf..b6f3b39 100644
|
||||
--- a/src/tools/tools.pro
|
||||
+++ b/src/tools/tools.pro
|
||||
@@ -1,8 +1,8 @@
|
||||
TEMPLATE = subdirs
|
||||
|
||||
-TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_qdoc
|
||||
+TOOLS_SUBDIRS = src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_qdoc src_tools_uic
|
||||
contains(QT_CONFIG, dbus): TOOLS_SUBDIRS += src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml
|
||||
-!contains(QT_CONFIG, no-widgets): TOOLS_SUBDIRS += src_tools_uic
|
||||
+
|
||||
# Set subdir and respective target name
|
||||
src_tools_bootstrap.subdir = $$PWD/bootstrap
|
||||
src_tools_bootstrap.target = sub-tools-bootstrap
|
||||
--
|
||||
1.7.4.1
|
||||
|
|
@ -18,7 +18,7 @@ QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTP
|
|||
QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
|
||||
|
||||
QMAKE_CXX = $(OE_QMAKE_CXX)
|
||||
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
|
||||
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $$QMAKE_CXXFLAGS $(OE_QMAKE_CXXFLAGS)
|
||||
QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
|
||||
QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
|
||||
QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
|
||||
|
|
|
@ -22,7 +22,6 @@ QMAKE_LIBDIR_EGL =
|
|||
QMAKE_INCDIR_OPENVG =
|
||||
QMAKE_LIBDIR_OPENVG =
|
||||
|
||||
|
||||
QMAKE_LIBS =
|
||||
QMAKE_LIBS_DYNLOAD = -ldl
|
||||
QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
|
||||
|
@ -35,6 +34,15 @@ QMAKE_LIBS_OPENGL_ES1 = -lGLES_CM
|
|||
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
|
||||
QMAKE_LIBS_OPENVG = -lOpenVG
|
||||
QMAKE_LIBS_THREAD = -lpthread
|
||||
QMAKE_LIBS_LIBUDEV = -ludev
|
||||
|
||||
QMAKE_CFLAGS_WAYLAND =
|
||||
QMAKE_INCDIR_WAYLAND =
|
||||
QMAKE_LIBS_WAYLAND_CLIENT = -lwayland-client
|
||||
QMAKE_LIBS_WAYLAND_SERVER = -lwayland-server
|
||||
QMAKE_LIBDIR_WAYLAND =
|
||||
QMAKE_DEFINES_WAYLAND =
|
||||
QMAKE_WAYLAND_SCANNER = wayland-scanner
|
||||
|
||||
QMAKE_MOC = $(OE_QMAKE_MOC)
|
||||
QMAKE_UIC = $(OE_QMAKE_UIC)
|
||||
|
|
|
@ -14,6 +14,7 @@ FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase:"
|
|||
|
||||
SRC_URI += " \
|
||||
file://0001-qlibraryinfo-Allow-the-specification-of-where-to-loa.patch \
|
||||
file://0001-Always-build-uic.patch \
|
||||
"
|
||||
|
||||
EXTRA_OECONF = " \
|
||||
|
@ -36,6 +37,8 @@ EXTRA_OECONF = " \
|
|||
-qt-xcb \
|
||||
-verbose -release \
|
||||
-headerdir ${includedir}/qt5 \
|
||||
-datadir ${datadir}/qt5 \
|
||||
-docdir ${docdir}/qt5 \
|
||||
-no-glib \
|
||||
-no-iconv \
|
||||
-no-fast \
|
||||
|
@ -55,11 +58,9 @@ do_configure() {
|
|||
|
||||
do_install() {
|
||||
install -d ${D}${bindir}/
|
||||
for i in findtr fixqt4headers.pl moc qdoc qmake rcc qdbuscpp2xml qdbusxml2cpp syncqt; do
|
||||
for i in findtr fixqt4headers.pl moc qdoc qmake rcc qdbuscpp2xml qdbusxml2cpp syncqt uic; do
|
||||
install -v -m 0755 bin/${i} ${D}${bindir}/${i}
|
||||
done
|
||||
install -d ${D}${datadir}/qt5/
|
||||
cp -PfR mkspecs ${D}${datadir}/qt5/
|
||||
cp -f ${WORKDIR}/g++.conf ${D}${datadir}/qt5/mkspecs/common/g++-unix.conf
|
||||
cp -f ${WORKDIR}/linux.conf ${D}${datadir}/qt5/mkspecs/common/
|
||||
}
|
||||
|
|
|
@ -25,7 +25,6 @@ QT_DISTRO_FLAGS_linuxstdbase = "-sm"
|
|||
# but add them to QT_CONFIG_FLAGS e.g. in qtbase.inc
|
||||
QT_SQL_DRIVER_FLAGS ?= "-no-sql-ibase -no-sql-mysql -no-sql-psql -no-sql-odbc -plugin-sql-sqlite"
|
||||
QT_GLFLAGS ?= ""
|
||||
QT_QT3SUPPORT ?= "-qt3support"
|
||||
QT_XML ?= "-xmlpatterns"
|
||||
QT_WEBKIT ?= "-webkit"
|
||||
QT_PHONON ?= "-phonon"
|
||||
|
@ -50,6 +49,7 @@ QT_CONFIG_FLAGS += " \
|
|||
-no-pch \
|
||||
-no-rpath \
|
||||
-no-fast \
|
||||
-pkg-config \
|
||||
${QT_SYSTEM_LIBS} \
|
||||
${QT_NIS} \
|
||||
${QT_CUPS} \
|
||||
|
@ -62,8 +62,13 @@ QT_CONFIG_FLAGS += " \
|
|||
${QT_DEMOS} \
|
||||
"
|
||||
|
||||
EXTRA_ENV = 'QMAKE="${STAGING_BINDIR_NATIVE}/qmake -d -after \
|
||||
INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \
|
||||
LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \
|
||||
AR="${TARGET_PREFIX}ar cqs" \
|
||||
MOC="${STAGING_BINDIR_NATIVE}/moc" UIC="${STAGING_BINDIR_NATIVE}/uic" MAKE="make -e ${PARALLEL_MAKE}"'
|
||||
|
||||
EXTRA_OEMAKE = "-e"
|
||||
export QT_CONF_PATH="${S}/qt.conf"
|
||||
|
||||
do_configure() {
|
||||
set_endian
|
||||
|
@ -79,11 +84,18 @@ do_configure() {
|
|||
cp -f ${WORKDIR}/qplatformdefs.h mkspecs/${TARGET_OS}-oe-g++
|
||||
bash ${WORKDIR}/qmake.conf.sh > mkspecs/${TARGET_OS}-oe-g++/qmake.conf
|
||||
|
||||
mkdir -p mkspecs/build-oe-g++
|
||||
cp -f ${WORKDIR}/qplatformdefs.h mkspecs/build-oe-g++
|
||||
|
||||
## FIXME, the file nameing is dumb...
|
||||
cp ${WORKDIR}/qmake-build.conf.sh mkspecs/build-oe-g++/qmake.conf
|
||||
echo "[Paths]" > $QT_CONF_PATH
|
||||
echo "Binaries=${bindir}" >> $QT_CONF_PATH
|
||||
echo "Headers=${includedir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
|
||||
echo "Documentation=${docdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
|
||||
echo "Libraries=${libdir}" >> $QT_CONF_PATH
|
||||
echo "Plugins=${libdir}/${QT_DIR_NAME}/plugins" >> $QT_CONF_PATH
|
||||
echo "Data=${datadir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
|
||||
echo "Translations=${datadir}/${QT_DIR_NAME}/translations" >> $QT_CONF_PATH
|
||||
echo "Settings=${sysconfdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
|
||||
echo "Examples=${bindir}/${QT_DIR_NAME}/examples" >> $QT_CONF_PATH
|
||||
echo "HostBinaries=${STAGING_BINDIR_NATIVE}" >> $QT_CONF_PATH
|
||||
echo "HostData=${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}" >> $QT_CONF_PATH
|
||||
|
||||
./configure -v \
|
||||
-opensource -confirm-license \
|
||||
|
@ -98,24 +110,51 @@ do_configure() {
|
|||
-importdir ${libdir}/${QT_DIR_NAME}/imports \
|
||||
-translationdir ${datadir}/${QT_DIR_NAME}/translations \
|
||||
-examplesdir ${bindir}/${QT_DIR_NAME}/examples \
|
||||
-platform build-oe-g++ \
|
||||
-platform ${TARGET_OS}-oe-g++ \
|
||||
-xplatform ${TARGET_OS}-oe-g++ \
|
||||
${QT_CONFIG_FLAGS}
|
||||
|
||||
### Since we are utilizing the native tree for the mkspecs, update the target mkspecs there
|
||||
if [ ! -e ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs/${TARGET_OS}-oe-g++ ]; then
|
||||
cp -rf mkspecs/${TARGET_OS}-oe-g++ ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs/${TARGET_OS}-oe-g++
|
||||
fi
|
||||
### qmodule.pri and qconfig.pri contain target specific stuff
|
||||
cp -f mkspecs/qmodule.pri ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs/qmodule.pri
|
||||
cp -f mkspecs/qconfig.pri ${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs/qconfig.pri
|
||||
}
|
||||
|
||||
do_compile() {
|
||||
unset CFLAGS CXXFLAGS AR
|
||||
|
||||
export QMAKESPEC="${S}/mkspecs/${TARGET_OS}-oe-g++"
|
||||
oe_runmake ${EXTRA_ENV}
|
||||
|
||||
oe_runmake
|
||||
# Build qmake for the target arch
|
||||
cd ${S}/qmake
|
||||
${OE_QMAKE_QMAKE}
|
||||
oe_runmake CC="${CC}" CXX="${CXX}"
|
||||
cd ${S}
|
||||
}
|
||||
|
||||
do_install() {
|
||||
oe_runmake install INSTALL_ROOT=${D}
|
||||
|
||||
# Fix up the binaries to the right location
|
||||
install -d ${D}${bindir}/
|
||||
mv ${D}/${STAGING_BINDIR_NATIVE}/* ${D}${bindir}/
|
||||
rm -rf ${D}/${STAGING_BINDIR_NATIVE}/
|
||||
|
||||
# Install the right arch qmake
|
||||
rm ${D}/${bindir}/qmake
|
||||
install -m 0755 bin/qmake2 ${D}${bindir}/qmake
|
||||
}
|
||||
|
||||
FILES_${PN} = "${libdir}/*.so.*"
|
||||
FILES_${PN}-dbg = "${libdir}/.debug/*.so.*"
|
||||
FILES_${PN}-plugins = "${libdir}/${QT_DIR_NAME}/platforms/*.so"
|
||||
FILES_${PN}-plugins-dbg = "${libdir}/${QT_DIR_NAME}/platforms/.debug/*.so"
|
||||
|
||||
FILES_${PN}-dev = "${libdir}/cmake/* ${libdir}/pkgconfig/*.pc ${libdir}/*.la ${libdir}/*.prl ${includedir}/qt5/*"
|
||||
FILES_${PN}-staticdev = "${libdir}/libQt*.a"
|
||||
FILES_${PN}-tools = "${bindir}/qmake"
|
||||
FILES_${PN}-mkspecs = "${STAGING_DATADIR_NATIVE}/${QT_DIR_NAME}/mkspecs/*"
|
||||
FILES_${PN}-doc = "${STAGING_DATADIR_NATIVE}/doc/*"
|
||||
|
|
|
@ -6,8 +6,8 @@ SRC_URI += " \
|
|||
file://0003-Allow-building-a-separate-qmake-for-the-target.patch \
|
||||
"
|
||||
|
||||
# to provide xcb/xcb_icccm.h, xcb/xcb_image.h, xcb/xcb_keysyms.h
|
||||
DEPENDS += "xcb-util-wm xcb-util-image xcb-util-keysyms"
|
||||
# to provide xcb/xcb_icccm.h, xcb/xcb_image.h, xcb/xcb_keysyms.h and dbus/dbus.h
|
||||
DEPENDS += "xcb-util-wm xcb-util-image xcb-util-keysyms dbus"
|
||||
|
||||
QT_MODULE_FLAGS ?= "-system-xcb"
|
||||
|
||||
|
@ -16,8 +16,6 @@ INC_PR = "r0"
|
|||
QT_BASE_NAME = "qt5"
|
||||
QT_DIR_NAME = "qt5"
|
||||
|
||||
export QMAKESPEC = "${STAGING_DATADIR}/${QT_DIR_NAME}/mkspecs/${TARGET_OS}-oe-g++"
|
||||
|
||||
# Qt uses atomic instructions not supported in thumb mode
|
||||
ARM_INSTRUCTION_SET = "arm"
|
||||
|
||||
|
|
Loading…
Reference in New Issue