* [meta-qt5][PATCH 0/2] Add nativesdk tools for Qt5 SDK
@ 2013-11-26 1:47 Denys Dmytriyenko
2013-11-26 1:47 ` [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools Denys Dmytriyenko
2013-11-26 1:47 ` [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools " Denys Dmytriyenko
0 siblings, 2 replies; 14+ messages in thread
From: Denys Dmytriyenko @ 2013-11-26 1:47 UTC (permalink / raw)
To: openembedded-devel; +Cc: Denys Dmytriyenko
From: Denys Dmytriyenko <denys@ti.com>
This patchset adds nativesdk versions of qtbase(-tools) and qttools to be
used by Qt5 SDK.
I also have corresponding packagegroup and meta-toolchain recipes for packaging
up the Qt5 SDK, which I can submit later, once I have them cleaned up.
This has been validated and tested inside the Arago Project distro for a few
weeks using generated Qt5 SDK to cross-compile example applications either on
the command line or in QtCreator.
Denys Dmytriyenko (2):
nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK
tools
nativesdk-qttools: add nativesdk version of qttools necessary for SDK
tools
recipes-qt/qt5/nativesdk-qt5.inc | 12 ++
recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++
...ump-path-length-from-256-to-512-character.patch | 29 ++++
...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++
recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 +
recipes-qt/qt5/nativesdk-qttools.inc | 32 ++++
recipes-qt/qt5/nativesdk-qttools_5.1.1.bb | 12 ++
7 files changed, 314 insertions(+)
create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc
create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc
create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch
create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch
create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb
create mode 100644 recipes-qt/qt5/nativesdk-qttools.inc
create mode 100644 recipes-qt/qt5/nativesdk-qttools_5.1.1.bb
--
1.8.3.2
^ permalink raw reply [flat|nested] 14+ messages in thread* [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-11-26 1:47 [meta-qt5][PATCH 0/2] Add nativesdk tools for Qt5 SDK Denys Dmytriyenko @ 2013-11-26 1:47 ` Denys Dmytriyenko 2013-12-12 14:40 ` Martin Jansa 2014-02-07 0:15 ` Nicolas Dechesne 2013-11-26 1:47 ` [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools " Denys Dmytriyenko 1 sibling, 2 replies; 14+ messages in thread From: Denys Dmytriyenko @ 2013-11-26 1:47 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko From: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Denys Dmytriyenko <denys@ti.com> --- recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ ...ump-path-length-from-256-to-512-character.patch | 29 ++++ ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + 5 files changed, 270 insertions(+) create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc new file mode 100644 index 0000000..2eb8c14 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qt5.inc @@ -0,0 +1,12 @@ +inherit nativesdk qmake5_base + +# we don't want conflicts with qt4 +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc new file mode 100644 index 0000000..8e9a809 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qtbase.inc @@ -0,0 +1,193 @@ +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" +SECTION = "libs" +HOMEPAGE = "http://qt-project.org" + +QT_MODULE = "qtbase" + +require nativesdk-qt5.inc + +# shared with target version +SRC_URI += " \ + file://0001-Add-linux-oe-g-platform.patch \ + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ + file://0003-Add-external-hostbindir-option.patch \ + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ + file://0013-Disable-mkv8snapshot.patch \ + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ + file://0015-qtbase-allow-build-of-examples.patch \ + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ + file://0022-configure-make-alsa-a-configurable-option.patch \ + file://0023-configure-make-freetype-a-configurable-option.patch \ + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ +" + +# specific for nativesdk version +SRC_URI += " \ + file://0001-Always-build-uic.patch \ + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ +" + +PACKAGES = "${PN}-tools-dbg ${PN}-tools" + +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" + +FILES_${PN}-tools-dbg = " \ + ${OE_QMAKE_PATH_BINS}/.debug \ +" + +FILES_${PN}-tools = " \ + ${OE_QMAKE_PATH_BINS}/* \ +" + +QT_CONFIG_FLAGS += " \ + -reduce-relocations \ + -shared \ + -silent \ + -no-pch \ + -no-rpath \ + -pkg-config \ + ${EXTRA_OECONF} \ +" + +# qtbase is exception, as these are used as install path for sysroots +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" + +do_generate_qt_config_file() { + cat > ${QT_CONF_PATH} <<EOF +[Paths] +Prefix = ${OE_QMAKE_PATH_PREFIX} +Headers = ${OE_QMAKE_PATH_HEADERS} +Libraries = ${OE_QMAKE_PATH_LIBS} +ArchData = ${OE_QMAKE_PATH_ARCHDATA} +Data = ${OE_QMAKE_PATH_DATA} +Binaries = ${OE_QMAKE_PATH_BINS} +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} +Plugins = ${OE_QMAKE_PATH_PLUGINS} +Imports = ${OE_QMAKE_PATH_IMPORTS} +Qml2Imports = ${OE_QMAKE_PATH_QML} +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} +Documentation = ${OE_QMAKE_PATH_DOCS} +Settings = ${OE_QMAKE_PATH_SETTINGS} +Examples = ${OE_QMAKE_PATH_EXAMPLES} +Tests = ${OE_QMAKE_PATH_TESTS} +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} +HostData = ${OE_QMAKE_PATH_HOST_DATA} +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} +HostSpec = ${OE_QMAKESPEC} +TartgetSpec = ${OE_XQMAKESPEC} +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} +Sysroot = +EOF +} + +do_generate_qt_config_file_append() { + cat >> ${QT_CONF_PATH} <<EOF + +[EffectivePaths] +Prefix=.. +EOF +} + +# qtbase is exception, we need to use mkspecs from ${S} +QMAKE_MKSPEC_PATH = "${B}" + +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell +export OE_QMAKE_COMPILER +export OE_QMAKE_CC +export OE_QMAKE_CFLAGS +export OE_QMAKE_CXX +export OE_QMAKE_CXXFLAGS +export OE_QMAKE_LINK +export OE_QMAKE_LDFLAGS +export OE_QMAKE_AR +export OE_QMAKE_STRIP + +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" +OE_QMAKE_QMAKE = "bin/qmake" + +do_configure() { + # we need symlink in path relative to source, because + # EffectivePaths:Prefix is relative to qmake location + # Also, configure expects qmake-native to swap with real one + if [ ! -e ${B}/bin/qmake-native ]; then + mkdir ${B}/bin + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native + fi + + ${S}/configure -v \ + -dont-process \ + -opensource -confirm-license \ + -sysroot ${STAGING_DIR_NATIVE} \ + -no-gcc-sysroot \ + -system-zlib \ + -no-libjpeg \ + -no-libpng \ + -no-gif \ + -no-accessibility \ + -no-cups \ + -no-nis \ + -no-gui \ + -no-qml-debug \ + -no-sql-mysql \ + -no-sql-sqlite \ + -no-opengl \ + -no-openssl \ + -no-xcb \ + -verbose \ + -release \ + -prefix ${OE_QMAKE_PATH_PREFIX} \ + -bindir ${OE_QMAKE_PATH_BINS} \ + -libdir ${OE_QMAKE_PATH_LIBS} \ + -datadir ${OE_QMAKE_PATH_DATA} \ + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ + -docdir ${OE_QMAKE_PATH_DOCS} \ + -headerdir ${OE_QMAKE_PATH_HEADERS} \ + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ + -importdir ${OE_QMAKE_PATH_IMPORTS} \ + -qmldir ${OE_QMAKE_PATH_QML} \ + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ + -testsdir ${OE_QMAKE_PATH_TESTS} \ + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ + -no-glib \ + -no-iconv \ + -silent \ + -nomake examples \ + -nomake tests \ + -nomake libs \ + -no-compile-examples \ + -no-rpath \ + -platform ${OE_QMAKESPEC} \ + -xplatform linux-oe-g++ \ + ${QT_CONFIG_FLAGS} + + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" +} + +do_install() { + # Fix install paths for all + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" + + # switch back the proper qmake + rm ${B}/bin/qmake + mv ${B}/bin/qmake-real ${B}/bin/qmake + + oe_runmake install INSTALL_ROOT=${D} + + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) + # e.g. qt3d, qtwayland + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt +} diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch new file mode 100644 index 0000000..3b312b6 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch @@ -0,0 +1,29 @@ +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Mon, 11 Nov 2013 20:27:30 -0500 +Subject: [PATCH] configure: bump path length from 256 to 512 characters + +Increase the path length that gets hardcoded into generated config.cpp file +from 256 to 512 characters, as nativesdk path can be quite long. + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 304d30f..a37a587 100755 +--- a/configure ++++ b/configure +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; + + /* Installation Info */ +-static const char qt_configure_prefix_path_strs[][256 + 12] = { ++static const char qt_configure_prefix_path_strs[][512 + 12] = { + "qt_prfxpath=$QT_INSTALL_PREFIX", + "qt_docspath=$QT_INSTALL_DOCS", + "qt_hdrspath=$QT_INSTALL_HEADERS", +-- +1.8.3.2 + diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch new file mode 100644 index 0000000..048eab7 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch @@ -0,0 +1,29 @@ +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Mon, 11 Nov 2013 20:22:34 -0500 +Subject: [PATCH] configure: preserve built qmake and swap with native one + +Let configure script build the real qmake, but right after it's built, swap +it with a native qmake for further internal use, preserving the real one. + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + configure | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/configure b/configure +index 140c7b4..304d30f 100755 +--- a/configure ++++ b/configure +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; + + (cd "$outpath/qmake"; "$MAKE") || exit 2 + fi # Build qmake ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" + + echo "Running configuration tests..." + +-- +1.8.3.2 + diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb new file mode 100644 index 0000000..6e4f488 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb @@ -0,0 +1,7 @@ +require qt5-${PV}.inc +require ${PN}.inc + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" + +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" -- 1.8.3.2 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-11-26 1:47 ` [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools Denys Dmytriyenko @ 2013-12-12 14:40 ` Martin Jansa 2013-12-12 14:45 ` Denys Dmytriyenko 2014-02-07 0:15 ` Nicolas Dechesne 1 sibling, 1 reply; 14+ messages in thread From: Martin Jansa @ 2013-12-12 14:40 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko [-- Attachment #1: Type: text/plain, Size: 14890 bytes --] On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > From: Denys Dmytriyenko <denys@ti.com> > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > --- > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > 5 files changed, 270 insertions(+) > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb nativesdk-qtbase isn't included in FILESPATH and build fails: NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started WARNING: Failed to fetch URL file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, attempting MIRRORS if available ERROR: Fetcher failure: Unable to find file file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch anywhere. The paths that were searched were: /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ /OE/build/oe-core/downloads ERROR: Function failed: Fetcher failure for URL: 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. Unable to fetch URL from any source. ERROR: Logfile of failure stored in: /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > new file mode 100644 > index 0000000..2eb8c14 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > @@ -0,0 +1,12 @@ > +inherit nativesdk qmake5_base > + > +# we don't want conflicts with qt4 > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > new file mode 100644 > index 0000000..8e9a809 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > @@ -0,0 +1,193 @@ > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > +SECTION = "libs" > +HOMEPAGE = "http://qt-project.org" > + > +QT_MODULE = "qtbase" > + > +require nativesdk-qt5.inc > + > +# shared with target version > +SRC_URI += " \ > + file://0001-Add-linux-oe-g-platform.patch \ > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > + file://0003-Add-external-hostbindir-option.patch \ > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > + file://0013-Disable-mkv8snapshot.patch \ > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > + file://0015-qtbase-allow-build-of-examples.patch \ > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > + file://0022-configure-make-alsa-a-configurable-option.patch \ > + file://0023-configure-make-freetype-a-configurable-option.patch \ > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > +" > + > +# specific for nativesdk version > +SRC_URI += " \ > + file://0001-Always-build-uic.patch \ > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > +" > + > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > + > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > + > +FILES_${PN}-tools-dbg = " \ > + ${OE_QMAKE_PATH_BINS}/.debug \ > +" > + > +FILES_${PN}-tools = " \ > + ${OE_QMAKE_PATH_BINS}/* \ > +" > + > +QT_CONFIG_FLAGS += " \ > + -reduce-relocations \ > + -shared \ > + -silent \ > + -no-pch \ > + -no-rpath \ > + -pkg-config \ > + ${EXTRA_OECONF} \ > +" > + > +# qtbase is exception, as these are used as install path for sysroots > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > + > +do_generate_qt_config_file() { > + cat > ${QT_CONF_PATH} <<EOF > +[Paths] > +Prefix = ${OE_QMAKE_PATH_PREFIX} > +Headers = ${OE_QMAKE_PATH_HEADERS} > +Libraries = ${OE_QMAKE_PATH_LIBS} > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > +Data = ${OE_QMAKE_PATH_DATA} > +Binaries = ${OE_QMAKE_PATH_BINS} > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > +Imports = ${OE_QMAKE_PATH_IMPORTS} > +Qml2Imports = ${OE_QMAKE_PATH_QML} > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > +Documentation = ${OE_QMAKE_PATH_DOCS} > +Settings = ${OE_QMAKE_PATH_SETTINGS} > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > +Tests = ${OE_QMAKE_PATH_TESTS} > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > +HostSpec = ${OE_QMAKESPEC} > +TartgetSpec = ${OE_XQMAKESPEC} > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > +Sysroot = > +EOF > +} > + > +do_generate_qt_config_file_append() { > + cat >> ${QT_CONF_PATH} <<EOF > + > +[EffectivePaths] > +Prefix=.. > +EOF > +} > + > +# qtbase is exception, we need to use mkspecs from ${S} > +QMAKE_MKSPEC_PATH = "${B}" > + > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > +export OE_QMAKE_COMPILER > +export OE_QMAKE_CC > +export OE_QMAKE_CFLAGS > +export OE_QMAKE_CXX > +export OE_QMAKE_CXXFLAGS > +export OE_QMAKE_LINK > +export OE_QMAKE_LDFLAGS > +export OE_QMAKE_AR > +export OE_QMAKE_STRIP > + > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > +OE_QMAKE_QMAKE = "bin/qmake" > + > +do_configure() { > + # we need symlink in path relative to source, because > + # EffectivePaths:Prefix is relative to qmake location > + # Also, configure expects qmake-native to swap with real one > + if [ ! -e ${B}/bin/qmake-native ]; then > + mkdir ${B}/bin > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > + fi > + > + ${S}/configure -v \ > + -dont-process \ > + -opensource -confirm-license \ > + -sysroot ${STAGING_DIR_NATIVE} \ > + -no-gcc-sysroot \ > + -system-zlib \ > + -no-libjpeg \ > + -no-libpng \ > + -no-gif \ > + -no-accessibility \ > + -no-cups \ > + -no-nis \ > + -no-gui \ > + -no-qml-debug \ > + -no-sql-mysql \ > + -no-sql-sqlite \ > + -no-opengl \ > + -no-openssl \ > + -no-xcb \ > + -verbose \ > + -release \ > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > + -bindir ${OE_QMAKE_PATH_BINS} \ > + -libdir ${OE_QMAKE_PATH_LIBS} \ > + -datadir ${OE_QMAKE_PATH_DATA} \ > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > + -docdir ${OE_QMAKE_PATH_DOCS} \ > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > + -qmldir ${OE_QMAKE_PATH_QML} \ > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > + -no-glib \ > + -no-iconv \ > + -silent \ > + -nomake examples \ > + -nomake tests \ > + -nomake libs \ > + -no-compile-examples \ > + -no-rpath \ > + -platform ${OE_QMAKESPEC} \ > + -xplatform linux-oe-g++ \ > + ${QT_CONFIG_FLAGS} > + > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > +} > + > +do_install() { > + # Fix install paths for all > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > + > + # switch back the proper qmake > + rm ${B}/bin/qmake > + mv ${B}/bin/qmake-real ${B}/bin/qmake > + > + oe_runmake install INSTALL_ROOT=${D} > + > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > + # e.g. qt3d, qtwayland > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > +} > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > new file mode 100644 > index 0000000..3b312b6 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > @@ -0,0 +1,29 @@ > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > +From: Denys Dmytriyenko <denys@ti.com> > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > + > +Increase the path length that gets hardcoded into generated config.cpp file > +from 256 to 512 characters, as nativesdk path can be quite long. > + > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > +--- > + configure | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/configure b/configure > +index 304d30f..a37a587 100755 > +--- a/configure > ++++ b/configure > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > + > + /* Installation Info */ > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > + "qt_prfxpath=$QT_INSTALL_PREFIX", > + "qt_docspath=$QT_INSTALL_DOCS", > + "qt_hdrspath=$QT_INSTALL_HEADERS", > +-- > +1.8.3.2 > + > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > new file mode 100644 > index 0000000..048eab7 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > @@ -0,0 +1,29 @@ > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > +From: Denys Dmytriyenko <denys@ti.com> > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > +Subject: [PATCH] configure: preserve built qmake and swap with native one > + > +Let configure script build the real qmake, but right after it's built, swap > +it with a native qmake for further internal use, preserving the real one. > + > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > +--- > + configure | 2 ++ > + 1 file changed, 2 insertions(+) > + > +diff --git a/configure b/configure > +index 140c7b4..304d30f 100755 > +--- a/configure > ++++ b/configure > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > + > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > + fi # Build qmake > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > + > + echo "Running configuration tests..." > + > +-- > +1.8.3.2 > + > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > new file mode 100644 > index 0000000..6e4f488 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > @@ -0,0 +1,7 @@ > +require qt5-${PV}.inc > +require ${PN}.inc > + > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > + > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > -- > 1.8.3.2 > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-12-12 14:40 ` Martin Jansa @ 2013-12-12 14:45 ` Denys Dmytriyenko 2013-12-12 14:58 ` Martin Jansa 0 siblings, 1 reply; 14+ messages in thread From: Denys Dmytriyenko @ 2013-12-12 14:45 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-devel On Thu, Dec 12, 2013 at 03:40:02PM +0100, Martin Jansa wrote: > On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > > From: Denys Dmytriyenko <denys@ti.com> > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > --- > > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > > 5 files changed, 270 insertions(+) > > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > nativesdk-qtbase isn't included in FILESPATH and build fails: Hmm, is this a change in the master oe-core? Putting patches into qtbase/ will break older builds, but that can be fixed by extending FILESPATH... If I find time, I'll try to fix it. > NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started > WARNING: Failed to fetch URL > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, > attempting MIRRORS if available > ERROR: Fetcher failure: Unable to find file > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch > anywhere. The paths that were searched were: > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ > /OE/build/oe-core/downloads > ERROR: Function failed: Fetcher failure for URL: > 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. > Unable to fetch URL from any source. > ERROR: Logfile of failure stored in: > /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > > new file mode 100644 > > index 0000000..2eb8c14 > > --- /dev/null > > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > > @@ -0,0 +1,12 @@ > > +inherit nativesdk qmake5_base > > + > > +# we don't want conflicts with qt4 > > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > > new file mode 100644 > > index 0000000..8e9a809 > > --- /dev/null > > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > > @@ -0,0 +1,193 @@ > > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > > +SECTION = "libs" > > +HOMEPAGE = "http://qt-project.org" > > + > > +QT_MODULE = "qtbase" > > + > > +require nativesdk-qt5.inc > > + > > +# shared with target version > > +SRC_URI += " \ > > + file://0001-Add-linux-oe-g-platform.patch \ > > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > > + file://0003-Add-external-hostbindir-option.patch \ > > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > > + file://0013-Disable-mkv8snapshot.patch \ > > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > > + file://0015-qtbase-allow-build-of-examples.patch \ > > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > > + file://0022-configure-make-alsa-a-configurable-option.patch \ > > + file://0023-configure-make-freetype-a-configurable-option.patch \ > > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > > +" > > + > > +# specific for nativesdk version > > +SRC_URI += " \ > > + file://0001-Always-build-uic.patch \ > > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > > +" > > + > > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > > + > > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > > + > > +FILES_${PN}-tools-dbg = " \ > > + ${OE_QMAKE_PATH_BINS}/.debug \ > > +" > > + > > +FILES_${PN}-tools = " \ > > + ${OE_QMAKE_PATH_BINS}/* \ > > +" > > + > > +QT_CONFIG_FLAGS += " \ > > + -reduce-relocations \ > > + -shared \ > > + -silent \ > > + -no-pch \ > > + -no-rpath \ > > + -pkg-config \ > > + ${EXTRA_OECONF} \ > > +" > > + > > +# qtbase is exception, as these are used as install path for sysroots > > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > > + > > +do_generate_qt_config_file() { > > + cat > ${QT_CONF_PATH} <<EOF > > +[Paths] > > +Prefix = ${OE_QMAKE_PATH_PREFIX} > > +Headers = ${OE_QMAKE_PATH_HEADERS} > > +Libraries = ${OE_QMAKE_PATH_LIBS} > > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > > +Data = ${OE_QMAKE_PATH_DATA} > > +Binaries = ${OE_QMAKE_PATH_BINS} > > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > > +Imports = ${OE_QMAKE_PATH_IMPORTS} > > +Qml2Imports = ${OE_QMAKE_PATH_QML} > > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > > +Documentation = ${OE_QMAKE_PATH_DOCS} > > +Settings = ${OE_QMAKE_PATH_SETTINGS} > > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > > +Tests = ${OE_QMAKE_PATH_TESTS} > > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > > +HostSpec = ${OE_QMAKESPEC} > > +TartgetSpec = ${OE_XQMAKESPEC} > > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > > +Sysroot = > > +EOF > > +} > > + > > +do_generate_qt_config_file_append() { > > + cat >> ${QT_CONF_PATH} <<EOF > > + > > +[EffectivePaths] > > +Prefix=.. > > +EOF > > +} > > + > > +# qtbase is exception, we need to use mkspecs from ${S} > > +QMAKE_MKSPEC_PATH = "${B}" > > + > > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > > +export OE_QMAKE_COMPILER > > +export OE_QMAKE_CC > > +export OE_QMAKE_CFLAGS > > +export OE_QMAKE_CXX > > +export OE_QMAKE_CXXFLAGS > > +export OE_QMAKE_LINK > > +export OE_QMAKE_LDFLAGS > > +export OE_QMAKE_AR > > +export OE_QMAKE_STRIP > > + > > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > > +OE_QMAKE_QMAKE = "bin/qmake" > > + > > +do_configure() { > > + # we need symlink in path relative to source, because > > + # EffectivePaths:Prefix is relative to qmake location > > + # Also, configure expects qmake-native to swap with real one > > + if [ ! -e ${B}/bin/qmake-native ]; then > > + mkdir ${B}/bin > > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > > + fi > > + > > + ${S}/configure -v \ > > + -dont-process \ > > + -opensource -confirm-license \ > > + -sysroot ${STAGING_DIR_NATIVE} \ > > + -no-gcc-sysroot \ > > + -system-zlib \ > > + -no-libjpeg \ > > + -no-libpng \ > > + -no-gif \ > > + -no-accessibility \ > > + -no-cups \ > > + -no-nis \ > > + -no-gui \ > > + -no-qml-debug \ > > + -no-sql-mysql \ > > + -no-sql-sqlite \ > > + -no-opengl \ > > + -no-openssl \ > > + -no-xcb \ > > + -verbose \ > > + -release \ > > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > > + -bindir ${OE_QMAKE_PATH_BINS} \ > > + -libdir ${OE_QMAKE_PATH_LIBS} \ > > + -datadir ${OE_QMAKE_PATH_DATA} \ > > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > > + -docdir ${OE_QMAKE_PATH_DOCS} \ > > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > > + -qmldir ${OE_QMAKE_PATH_QML} \ > > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > > + -no-glib \ > > + -no-iconv \ > > + -silent \ > > + -nomake examples \ > > + -nomake tests \ > > + -nomake libs \ > > + -no-compile-examples \ > > + -no-rpath \ > > + -platform ${OE_QMAKESPEC} \ > > + -xplatform linux-oe-g++ \ > > + ${QT_CONFIG_FLAGS} > > + > > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > > +} > > + > > +do_install() { > > + # Fix install paths for all > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > + > > + # switch back the proper qmake > > + rm ${B}/bin/qmake > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > + > > + oe_runmake install INSTALL_ROOT=${D} > > + > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > + # e.g. qt3d, qtwayland > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > +} > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > new file mode 100644 > > index 0000000..3b312b6 > > --- /dev/null > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > @@ -0,0 +1,29 @@ > > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > > +From: Denys Dmytriyenko <denys@ti.com> > > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > > + > > +Increase the path length that gets hardcoded into generated config.cpp file > > +from 256 to 512 characters, as nativesdk path can be quite long. > > + > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > +--- > > + configure | 2 +- > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > + > > +diff --git a/configure b/configure > > +index 304d30f..a37a587 100755 > > +--- a/configure > > ++++ b/configure > > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > > + > > + /* Installation Info */ > > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > > + "qt_prfxpath=$QT_INSTALL_PREFIX", > > + "qt_docspath=$QT_INSTALL_DOCS", > > + "qt_hdrspath=$QT_INSTALL_HEADERS", > > +-- > > +1.8.3.2 > > + > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > new file mode 100644 > > index 0000000..048eab7 > > --- /dev/null > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > @@ -0,0 +1,29 @@ > > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > > +From: Denys Dmytriyenko <denys@ti.com> > > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > > +Subject: [PATCH] configure: preserve built qmake and swap with native one > > + > > +Let configure script build the real qmake, but right after it's built, swap > > +it with a native qmake for further internal use, preserving the real one. > > + > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > +--- > > + configure | 2 ++ > > + 1 file changed, 2 insertions(+) > > + > > +diff --git a/configure b/configure > > +index 140c7b4..304d30f 100755 > > +--- a/configure > > ++++ b/configure > > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > > + > > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > > + fi # Build qmake > > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > > + > > + echo "Running configuration tests..." > > + > > +-- > > +1.8.3.2 > > + > > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > new file mode 100644 > > index 0000000..6e4f488 > > --- /dev/null > > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > @@ -0,0 +1,7 @@ > > +require qt5-${PV}.inc > > +require ${PN}.inc > > + > > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > + > > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > > -- > > 1.8.3.2 > > > > _______________________________________________ > > Openembedded-devel mailing list > > Openembedded-devel@lists.openembedded.org > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > -- > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-12-12 14:45 ` Denys Dmytriyenko @ 2013-12-12 14:58 ` Martin Jansa 2013-12-12 15:14 ` Denys Dmytriyenko 0 siblings, 1 reply; 14+ messages in thread From: Martin Jansa @ 2013-12-12 14:58 UTC (permalink / raw) To: Denys Dmytriyenko; +Cc: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 17107 bytes --] On Thu, Dec 12, 2013 at 09:45:02AM -0500, Denys Dmytriyenko wrote: > On Thu, Dec 12, 2013 at 03:40:02PM +0100, Martin Jansa wrote: > > On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > > > From: Denys Dmytriyenko <denys@ti.com> > > > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > --- > > > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > > > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > > > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > > > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > > > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > > > 5 files changed, 270 insertions(+) > > > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > nativesdk-qtbase isn't included in FILESPATH and build fails: > > Hmm, is this a change in the master oe-core? Putting patches into qtbase/ will > break older builds, but that can be fixed by extending FILESPATH... If I find > time, I'll try to fix it. I was testing it with master, but I think that there is only BPN in default FILESPATH for a bit longer (i.e. also in dora). FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" seems a bit unnecessary here, because it duplicates default BP. Why would adding 2 extra files in qtbase-5.1.1 break other builds? It seems as reasonable solution to me. > > NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started > > WARNING: Failed to fetch URL > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, > > attempting MIRRORS if available > > ERROR: Fetcher failure: Unable to find file > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > anywhere. The paths that were searched were: > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ > > /OE/build/oe-core/downloads > > ERROR: Function failed: Fetcher failure for URL: > > 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. > > Unable to fetch URL from any source. > > ERROR: Logfile of failure stored in: > > /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > > > > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > > > new file mode 100644 > > > index 0000000..2eb8c14 > > > --- /dev/null > > > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > > > @@ -0,0 +1,12 @@ > > > +inherit nativesdk qmake5_base > > > + > > > +# we don't want conflicts with qt4 > > > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > > > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > > > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > > > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > > > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > > > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > > > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > > > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > > > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > > > new file mode 100644 > > > index 0000000..8e9a809 > > > --- /dev/null > > > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > > > @@ -0,0 +1,193 @@ > > > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > > > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > > > +SECTION = "libs" > > > +HOMEPAGE = "http://qt-project.org" > > > + > > > +QT_MODULE = "qtbase" > > > + > > > +require nativesdk-qt5.inc > > > + > > > +# shared with target version > > > +SRC_URI += " \ > > > + file://0001-Add-linux-oe-g-platform.patch \ > > > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > > > + file://0003-Add-external-hostbindir-option.patch \ > > > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > > > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > > > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > > > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > > > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > > > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > > > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > > > + file://0013-Disable-mkv8snapshot.patch \ > > > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > > > + file://0015-qtbase-allow-build-of-examples.patch \ > > > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > > > + file://0022-configure-make-alsa-a-configurable-option.patch \ > > > + file://0023-configure-make-freetype-a-configurable-option.patch \ > > > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > > > +" > > > + > > > +# specific for nativesdk version > > > +SRC_URI += " \ > > > + file://0001-Always-build-uic.patch \ > > > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > > > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > > > +" > > > + > > > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > > > + > > > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > > > + > > > +FILES_${PN}-tools-dbg = " \ > > > + ${OE_QMAKE_PATH_BINS}/.debug \ > > > +" > > > + > > > +FILES_${PN}-tools = " \ > > > + ${OE_QMAKE_PATH_BINS}/* \ > > > +" > > > + > > > +QT_CONFIG_FLAGS += " \ > > > + -reduce-relocations \ > > > + -shared \ > > > + -silent \ > > > + -no-pch \ > > > + -no-rpath \ > > > + -pkg-config \ > > > + ${EXTRA_OECONF} \ > > > +" > > > + > > > +# qtbase is exception, as these are used as install path for sysroots > > > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > > > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > > > + > > > +do_generate_qt_config_file() { > > > + cat > ${QT_CONF_PATH} <<EOF > > > +[Paths] > > > +Prefix = ${OE_QMAKE_PATH_PREFIX} > > > +Headers = ${OE_QMAKE_PATH_HEADERS} > > > +Libraries = ${OE_QMAKE_PATH_LIBS} > > > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > > > +Data = ${OE_QMAKE_PATH_DATA} > > > +Binaries = ${OE_QMAKE_PATH_BINS} > > > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > > > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > > > +Imports = ${OE_QMAKE_PATH_IMPORTS} > > > +Qml2Imports = ${OE_QMAKE_PATH_QML} > > > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > > > +Documentation = ${OE_QMAKE_PATH_DOCS} > > > +Settings = ${OE_QMAKE_PATH_SETTINGS} > > > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > > > +Tests = ${OE_QMAKE_PATH_TESTS} > > > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > > > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > > > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > > > +HostSpec = ${OE_QMAKESPEC} > > > +TartgetSpec = ${OE_XQMAKESPEC} > > > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > > > +Sysroot = > > > +EOF > > > +} > > > + > > > +do_generate_qt_config_file_append() { > > > + cat >> ${QT_CONF_PATH} <<EOF > > > + > > > +[EffectivePaths] > > > +Prefix=.. > > > +EOF > > > +} > > > + > > > +# qtbase is exception, we need to use mkspecs from ${S} > > > +QMAKE_MKSPEC_PATH = "${B}" > > > + > > > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > > > +export OE_QMAKE_COMPILER > > > +export OE_QMAKE_CC > > > +export OE_QMAKE_CFLAGS > > > +export OE_QMAKE_CXX > > > +export OE_QMAKE_CXXFLAGS > > > +export OE_QMAKE_LINK > > > +export OE_QMAKE_LDFLAGS > > > +export OE_QMAKE_AR > > > +export OE_QMAKE_STRIP > > > + > > > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > > > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > > > +OE_QMAKE_QMAKE = "bin/qmake" > > > + > > > +do_configure() { > > > + # we need symlink in path relative to source, because > > > + # EffectivePaths:Prefix is relative to qmake location > > > + # Also, configure expects qmake-native to swap with real one > > > + if [ ! -e ${B}/bin/qmake-native ]; then > > > + mkdir ${B}/bin > > > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > > > + fi > > > + > > > + ${S}/configure -v \ > > > + -dont-process \ > > > + -opensource -confirm-license \ > > > + -sysroot ${STAGING_DIR_NATIVE} \ > > > + -no-gcc-sysroot \ > > > + -system-zlib \ > > > + -no-libjpeg \ > > > + -no-libpng \ > > > + -no-gif \ > > > + -no-accessibility \ > > > + -no-cups \ > > > + -no-nis \ > > > + -no-gui \ > > > + -no-qml-debug \ > > > + -no-sql-mysql \ > > > + -no-sql-sqlite \ > > > + -no-opengl \ > > > + -no-openssl \ > > > + -no-xcb \ > > > + -verbose \ > > > + -release \ > > > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > > > + -bindir ${OE_QMAKE_PATH_BINS} \ > > > + -libdir ${OE_QMAKE_PATH_LIBS} \ > > > + -datadir ${OE_QMAKE_PATH_DATA} \ > > > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > > > + -docdir ${OE_QMAKE_PATH_DOCS} \ > > > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > > > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > > > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > > > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > > > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > > > + -qmldir ${OE_QMAKE_PATH_QML} \ > > > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > > > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > > > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > > > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > > > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > > > + -no-glib \ > > > + -no-iconv \ > > > + -silent \ > > > + -nomake examples \ > > > + -nomake tests \ > > > + -nomake libs \ > > > + -no-compile-examples \ > > > + -no-rpath \ > > > + -platform ${OE_QMAKESPEC} \ > > > + -xplatform linux-oe-g++ \ > > > + ${QT_CONFIG_FLAGS} > > > + > > > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > > > +} > > > + > > > +do_install() { > > > + # Fix install paths for all > > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > > + > > > + # switch back the proper qmake > > > + rm ${B}/bin/qmake > > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > > + > > > + oe_runmake install INSTALL_ROOT=${D} > > > + > > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > > + # e.g. qt3d, qtwayland > > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > > +} > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > new file mode 100644 > > > index 0000000..3b312b6 > > > --- /dev/null > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > @@ -0,0 +1,29 @@ > > > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > > > +From: Denys Dmytriyenko <denys@ti.com> > > > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > > > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > > > + > > > +Increase the path length that gets hardcoded into generated config.cpp file > > > +from 256 to 512 characters, as nativesdk path can be quite long. > > > + > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > +--- > > > + configure | 2 +- > > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > > + > > > +diff --git a/configure b/configure > > > +index 304d30f..a37a587 100755 > > > +--- a/configure > > > ++++ b/configure > > > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > > > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > > > + > > > + /* Installation Info */ > > > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > > > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > > > + "qt_prfxpath=$QT_INSTALL_PREFIX", > > > + "qt_docspath=$QT_INSTALL_DOCS", > > > + "qt_hdrspath=$QT_INSTALL_HEADERS", > > > +-- > > > +1.8.3.2 > > > + > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > new file mode 100644 > > > index 0000000..048eab7 > > > --- /dev/null > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > @@ -0,0 +1,29 @@ > > > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > > > +From: Denys Dmytriyenko <denys@ti.com> > > > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > > > +Subject: [PATCH] configure: preserve built qmake and swap with native one > > > + > > > +Let configure script build the real qmake, but right after it's built, swap > > > +it with a native qmake for further internal use, preserving the real one. > > > + > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > +--- > > > + configure | 2 ++ > > > + 1 file changed, 2 insertions(+) > > > + > > > +diff --git a/configure b/configure > > > +index 140c7b4..304d30f 100755 > > > +--- a/configure > > > ++++ b/configure > > > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > > > + > > > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > > > + fi # Build qmake > > > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > > > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > > > + > > > + echo "Running configuration tests..." > > > + > > > +-- > > > +1.8.3.2 > > > + > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > new file mode 100644 > > > index 0000000..6e4f488 > > > --- /dev/null > > > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > @@ -0,0 +1,7 @@ > > > +require qt5-${PV}.inc > > > +require ${PN}.inc > > > + > > > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > + > > > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > > > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > > > -- > > > 1.8.3.2 > > > > > > _______________________________________________ > > > Openembedded-devel mailing list > > > Openembedded-devel@lists.openembedded.org > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > > -- > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-12-12 14:58 ` Martin Jansa @ 2013-12-12 15:14 ` Denys Dmytriyenko 2013-12-12 15:31 ` Martin Jansa 0 siblings, 1 reply; 14+ messages in thread From: Denys Dmytriyenko @ 2013-12-12 15:14 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-devel On Thu, Dec 12, 2013 at 03:58:25PM +0100, Martin Jansa wrote: > On Thu, Dec 12, 2013 at 09:45:02AM -0500, Denys Dmytriyenko wrote: > > On Thu, Dec 12, 2013 at 03:40:02PM +0100, Martin Jansa wrote: > > > On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > > > > From: Denys Dmytriyenko <denys@ti.com> > > > > > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > --- > > > > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > > > > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > > > > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > > > > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > > > > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > > > > 5 files changed, 270 insertions(+) > > > > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > > nativesdk-qtbase isn't included in FILESPATH and build fails: > > > > Hmm, is this a change in the master oe-core? Putting patches into qtbase/ will > > break older builds, but that can be fixed by extending FILESPATH... If I find > > time, I'll try to fix it. > > I was testing it with master, but I think that there is only BPN in > default FILESPATH for a bit longer (i.e. also in dora). > > FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > seems a bit unnecessary here, because it duplicates default BP. > > Why would adding 2 extra files in qtbase-5.1.1 break other builds? It > seems as reasonable solution to me. Because those files won't be picked up by default, as it expects them in nativesdk-qtbase. Not sure if I had that issue in dora or in dylan. I still have some older dylan-based releases I have to support here... Either way, should be easy to fix with proper FILESEXTRAPATHS tweak, once I get time :) > > > NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started > > > WARNING: Failed to fetch URL > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, > > > attempting MIRRORS if available > > > ERROR: Fetcher failure: Unable to find file > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > anywhere. The paths that were searched were: > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ > > > /OE/build/oe-core/downloads > > > ERROR: Function failed: Fetcher failure for URL: > > > 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. > > > Unable to fetch URL from any source. > > > ERROR: Logfile of failure stored in: > > > /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > > > > > > > > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > > > > new file mode 100644 > > > > index 0000000..2eb8c14 > > > > --- /dev/null > > > > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > > > > @@ -0,0 +1,12 @@ > > > > +inherit nativesdk qmake5_base > > > > + > > > > +# we don't want conflicts with qt4 > > > > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > > > > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > > > > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > > > > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > > > > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > > > > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > > > > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > > > > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > > > > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > new file mode 100644 > > > > index 0000000..8e9a809 > > > > --- /dev/null > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > @@ -0,0 +1,193 @@ > > > > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > > > > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > > > > +SECTION = "libs" > > > > +HOMEPAGE = "http://qt-project.org" > > > > + > > > > +QT_MODULE = "qtbase" > > > > + > > > > +require nativesdk-qt5.inc > > > > + > > > > +# shared with target version > > > > +SRC_URI += " \ > > > > + file://0001-Add-linux-oe-g-platform.patch \ > > > > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > > > > + file://0003-Add-external-hostbindir-option.patch \ > > > > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > > > > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > > > > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > > > > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > > > > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > > > > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > > > > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > > > > + file://0013-Disable-mkv8snapshot.patch \ > > > > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > > > > + file://0015-qtbase-allow-build-of-examples.patch \ > > > > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > > > > + file://0022-configure-make-alsa-a-configurable-option.patch \ > > > > + file://0023-configure-make-freetype-a-configurable-option.patch \ > > > > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > > > > +" > > > > + > > > > +# specific for nativesdk version > > > > +SRC_URI += " \ > > > > + file://0001-Always-build-uic.patch \ > > > > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > > > > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > > > > +" > > > > + > > > > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > > > > + > > > > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > > > > + > > > > +FILES_${PN}-tools-dbg = " \ > > > > + ${OE_QMAKE_PATH_BINS}/.debug \ > > > > +" > > > > + > > > > +FILES_${PN}-tools = " \ > > > > + ${OE_QMAKE_PATH_BINS}/* \ > > > > +" > > > > + > > > > +QT_CONFIG_FLAGS += " \ > > > > + -reduce-relocations \ > > > > + -shared \ > > > > + -silent \ > > > > + -no-pch \ > > > > + -no-rpath \ > > > > + -pkg-config \ > > > > + ${EXTRA_OECONF} \ > > > > +" > > > > + > > > > +# qtbase is exception, as these are used as install path for sysroots > > > > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > > > > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > > > > + > > > > +do_generate_qt_config_file() { > > > > + cat > ${QT_CONF_PATH} <<EOF > > > > +[Paths] > > > > +Prefix = ${OE_QMAKE_PATH_PREFIX} > > > > +Headers = ${OE_QMAKE_PATH_HEADERS} > > > > +Libraries = ${OE_QMAKE_PATH_LIBS} > > > > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > > > > +Data = ${OE_QMAKE_PATH_DATA} > > > > +Binaries = ${OE_QMAKE_PATH_BINS} > > > > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > > > > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > > > > +Imports = ${OE_QMAKE_PATH_IMPORTS} > > > > +Qml2Imports = ${OE_QMAKE_PATH_QML} > > > > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > > > > +Documentation = ${OE_QMAKE_PATH_DOCS} > > > > +Settings = ${OE_QMAKE_PATH_SETTINGS} > > > > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > > > > +Tests = ${OE_QMAKE_PATH_TESTS} > > > > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > > > > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > > > > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > > > > +HostSpec = ${OE_QMAKESPEC} > > > > +TartgetSpec = ${OE_XQMAKESPEC} > > > > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > > > > +Sysroot = > > > > +EOF > > > > +} > > > > + > > > > +do_generate_qt_config_file_append() { > > > > + cat >> ${QT_CONF_PATH} <<EOF > > > > + > > > > +[EffectivePaths] > > > > +Prefix=.. > > > > +EOF > > > > +} > > > > + > > > > +# qtbase is exception, we need to use mkspecs from ${S} > > > > +QMAKE_MKSPEC_PATH = "${B}" > > > > + > > > > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > > > > +export OE_QMAKE_COMPILER > > > > +export OE_QMAKE_CC > > > > +export OE_QMAKE_CFLAGS > > > > +export OE_QMAKE_CXX > > > > +export OE_QMAKE_CXXFLAGS > > > > +export OE_QMAKE_LINK > > > > +export OE_QMAKE_LDFLAGS > > > > +export OE_QMAKE_AR > > > > +export OE_QMAKE_STRIP > > > > + > > > > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > > > > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > > > > +OE_QMAKE_QMAKE = "bin/qmake" > > > > + > > > > +do_configure() { > > > > + # we need symlink in path relative to source, because > > > > + # EffectivePaths:Prefix is relative to qmake location > > > > + # Also, configure expects qmake-native to swap with real one > > > > + if [ ! -e ${B}/bin/qmake-native ]; then > > > > + mkdir ${B}/bin > > > > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > > > > + fi > > > > + > > > > + ${S}/configure -v \ > > > > + -dont-process \ > > > > + -opensource -confirm-license \ > > > > + -sysroot ${STAGING_DIR_NATIVE} \ > > > > + -no-gcc-sysroot \ > > > > + -system-zlib \ > > > > + -no-libjpeg \ > > > > + -no-libpng \ > > > > + -no-gif \ > > > > + -no-accessibility \ > > > > + -no-cups \ > > > > + -no-nis \ > > > > + -no-gui \ > > > > + -no-qml-debug \ > > > > + -no-sql-mysql \ > > > > + -no-sql-sqlite \ > > > > + -no-opengl \ > > > > + -no-openssl \ > > > > + -no-xcb \ > > > > + -verbose \ > > > > + -release \ > > > > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > > > > + -bindir ${OE_QMAKE_PATH_BINS} \ > > > > + -libdir ${OE_QMAKE_PATH_LIBS} \ > > > > + -datadir ${OE_QMAKE_PATH_DATA} \ > > > > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > > > > + -docdir ${OE_QMAKE_PATH_DOCS} \ > > > > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > > > > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > > > > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > > > > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > > > > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > > > > + -qmldir ${OE_QMAKE_PATH_QML} \ > > > > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > > > > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > > > > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > > > > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > > > > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > > > > + -no-glib \ > > > > + -no-iconv \ > > > > + -silent \ > > > > + -nomake examples \ > > > > + -nomake tests \ > > > > + -nomake libs \ > > > > + -no-compile-examples \ > > > > + -no-rpath \ > > > > + -platform ${OE_QMAKESPEC} \ > > > > + -xplatform linux-oe-g++ \ > > > > + ${QT_CONFIG_FLAGS} > > > > + > > > > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > > > > +} > > > > + > > > > +do_install() { > > > > + # Fix install paths for all > > > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > > > + > > > > + # switch back the proper qmake > > > > + rm ${B}/bin/qmake > > > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > > > + > > > > + oe_runmake install INSTALL_ROOT=${D} > > > > + > > > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > > > + # e.g. qt3d, qtwayland > > > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > > > +} > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > new file mode 100644 > > > > index 0000000..3b312b6 > > > > --- /dev/null > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > @@ -0,0 +1,29 @@ > > > > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > > > > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > > > > + > > > > +Increase the path length that gets hardcoded into generated config.cpp file > > > > +from 256 to 512 characters, as nativesdk path can be quite long. > > > > + > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > +--- > > > > + configure | 2 +- > > > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > > > + > > > > +diff --git a/configure b/configure > > > > +index 304d30f..a37a587 100755 > > > > +--- a/configure > > > > ++++ b/configure > > > > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > > > > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > > > > + > > > > + /* Installation Info */ > > > > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > > > > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > > > > + "qt_prfxpath=$QT_INSTALL_PREFIX", > > > > + "qt_docspath=$QT_INSTALL_DOCS", > > > > + "qt_hdrspath=$QT_INSTALL_HEADERS", > > > > +-- > > > > +1.8.3.2 > > > > + > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > new file mode 100644 > > > > index 0000000..048eab7 > > > > --- /dev/null > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > @@ -0,0 +1,29 @@ > > > > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > > > > +Subject: [PATCH] configure: preserve built qmake and swap with native one > > > > + > > > > +Let configure script build the real qmake, but right after it's built, swap > > > > +it with a native qmake for further internal use, preserving the real one. > > > > + > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > +--- > > > > + configure | 2 ++ > > > > + 1 file changed, 2 insertions(+) > > > > + > > > > +diff --git a/configure b/configure > > > > +index 140c7b4..304d30f 100755 > > > > +--- a/configure > > > > ++++ b/configure > > > > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > > > > + > > > > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > > > > + fi # Build qmake > > > > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > > > > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > > > > + > > > > + echo "Running configuration tests..." > > > > + > > > > +-- > > > > +1.8.3.2 > > > > + > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > new file mode 100644 > > > > index 0000000..6e4f488 > > > > --- /dev/null > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > @@ -0,0 +1,7 @@ > > > > +require qt5-${PV}.inc > > > > +require ${PN}.inc > > > > + > > > > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > > + > > > > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > > > > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > > > > -- > > > > 1.8.3.2 > > > > > > > > _______________________________________________ > > > > Openembedded-devel mailing list > > > > Openembedded-devel@lists.openembedded.org > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > > > > -- > > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > > > > > -- > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-12-12 15:14 ` Denys Dmytriyenko @ 2013-12-12 15:31 ` Martin Jansa 2013-12-12 15:36 ` Denys Dmytriyenko 0 siblings, 1 reply; 14+ messages in thread From: Martin Jansa @ 2013-12-12 15:31 UTC (permalink / raw) To: Denys Dmytriyenko; +Cc: openembedded-devel [-- Attachment #1: Type: text/plain, Size: 19432 bytes --] On Thu, Dec 12, 2013 at 10:14:55AM -0500, Denys Dmytriyenko wrote: > On Thu, Dec 12, 2013 at 03:58:25PM +0100, Martin Jansa wrote: > > On Thu, Dec 12, 2013 at 09:45:02AM -0500, Denys Dmytriyenko wrote: > > > On Thu, Dec 12, 2013 at 03:40:02PM +0100, Martin Jansa wrote: > > > > On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > > > > > From: Denys Dmytriyenko <denys@ti.com> > > > > > > > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > --- > > > > > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > > > > > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > > > > > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > > > > > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > > > > > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > > > > > 5 files changed, 270 insertions(+) > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > > > > nativesdk-qtbase isn't included in FILESPATH and build fails: > > > > > > Hmm, is this a change in the master oe-core? Putting patches into qtbase/ will > > > break older builds, but that can be fixed by extending FILESPATH... If I find > > > time, I'll try to fix it. > > > > I was testing it with master, but I think that there is only BPN in > > default FILESPATH for a bit longer (i.e. also in dora). > > > > FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > > seems a bit unnecessary here, because it duplicates default BP. > > > > Why would adding 2 extra files in qtbase-5.1.1 break other builds? It > > seems as reasonable solution to me. > > Because those files won't be picked up by default, as it expects them in > nativesdk-qtbase. Not sure if I had that issue in dora or in dylan. I still > have some older dylan-based releases I have to support here... Either way, > should be easy to fix with proper FILESEXTRAPATHS tweak, once I get time :) I've already tested moving them to qtbase-5.1.1 and it works fine for master and should work fine for dora too. I plan to merge it to master to get more people testing it. There is also jansa/qt5-5.2.0 branch which I would like to start testing :). > > > > > NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started > > > > WARNING: Failed to fetch URL > > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, > > > > attempting MIRRORS if available > > > > ERROR: Fetcher failure: Unable to find file > > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > anywhere. The paths that were searched were: > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ > > > > /OE/build/oe-core/downloads > > > > ERROR: Function failed: Fetcher failure for URL: > > > > 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. > > > > Unable to fetch URL from any source. > > > > ERROR: Logfile of failure stored in: > > > > /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > > > > > > > > > > > > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > > > > > new file mode 100644 > > > > > index 0000000..2eb8c14 > > > > > --- /dev/null > > > > > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > > > > > @@ -0,0 +1,12 @@ > > > > > +inherit nativesdk qmake5_base > > > > > + > > > > > +# we don't want conflicts with qt4 > > > > > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > > > > > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > > > > > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > > > > > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > > > > > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > > > > > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > > > > > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > > > > > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > > > > > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > > new file mode 100644 > > > > > index 0000000..8e9a809 > > > > > --- /dev/null > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > > @@ -0,0 +1,193 @@ > > > > > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > > > > > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > > > > > +SECTION = "libs" > > > > > +HOMEPAGE = "http://qt-project.org" > > > > > + > > > > > +QT_MODULE = "qtbase" > > > > > + > > > > > +require nativesdk-qt5.inc > > > > > + > > > > > +# shared with target version > > > > > +SRC_URI += " \ > > > > > + file://0001-Add-linux-oe-g-platform.patch \ > > > > > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > > > > > + file://0003-Add-external-hostbindir-option.patch \ > > > > > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > > > > > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > > > > > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > > > > > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > > > > > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > > > > > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > > > > > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > > > > > + file://0013-Disable-mkv8snapshot.patch \ > > > > > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > > > > > + file://0015-qtbase-allow-build-of-examples.patch \ > > > > > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > > > > > + file://0022-configure-make-alsa-a-configurable-option.patch \ > > > > > + file://0023-configure-make-freetype-a-configurable-option.patch \ > > > > > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > > > > > +" > > > > > + > > > > > +# specific for nativesdk version > > > > > +SRC_URI += " \ > > > > > + file://0001-Always-build-uic.patch \ > > > > > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > > > > > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > > > > > +" > > > > > + > > > > > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > > > > > + > > > > > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > > > > > + > > > > > +FILES_${PN}-tools-dbg = " \ > > > > > + ${OE_QMAKE_PATH_BINS}/.debug \ > > > > > +" > > > > > + > > > > > +FILES_${PN}-tools = " \ > > > > > + ${OE_QMAKE_PATH_BINS}/* \ > > > > > +" > > > > > + > > > > > +QT_CONFIG_FLAGS += " \ > > > > > + -reduce-relocations \ > > > > > + -shared \ > > > > > + -silent \ > > > > > + -no-pch \ > > > > > + -no-rpath \ > > > > > + -pkg-config \ > > > > > + ${EXTRA_OECONF} \ > > > > > +" > > > > > + > > > > > +# qtbase is exception, as these are used as install path for sysroots > > > > > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > > > > > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > > > > > + > > > > > +do_generate_qt_config_file() { > > > > > + cat > ${QT_CONF_PATH} <<EOF > > > > > +[Paths] > > > > > +Prefix = ${OE_QMAKE_PATH_PREFIX} > > > > > +Headers = ${OE_QMAKE_PATH_HEADERS} > > > > > +Libraries = ${OE_QMAKE_PATH_LIBS} > > > > > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > > > > > +Data = ${OE_QMAKE_PATH_DATA} > > > > > +Binaries = ${OE_QMAKE_PATH_BINS} > > > > > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > > > > > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > > > > > +Imports = ${OE_QMAKE_PATH_IMPORTS} > > > > > +Qml2Imports = ${OE_QMAKE_PATH_QML} > > > > > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > > > > > +Documentation = ${OE_QMAKE_PATH_DOCS} > > > > > +Settings = ${OE_QMAKE_PATH_SETTINGS} > > > > > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > > > > > +Tests = ${OE_QMAKE_PATH_TESTS} > > > > > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > > > > > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > > > > > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > > > > > +HostSpec = ${OE_QMAKESPEC} > > > > > +TartgetSpec = ${OE_XQMAKESPEC} > > > > > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > > > > > +Sysroot = > > > > > +EOF > > > > > +} > > > > > + > > > > > +do_generate_qt_config_file_append() { > > > > > + cat >> ${QT_CONF_PATH} <<EOF > > > > > + > > > > > +[EffectivePaths] > > > > > +Prefix=.. > > > > > +EOF > > > > > +} > > > > > + > > > > > +# qtbase is exception, we need to use mkspecs from ${S} > > > > > +QMAKE_MKSPEC_PATH = "${B}" > > > > > + > > > > > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > > > > > +export OE_QMAKE_COMPILER > > > > > +export OE_QMAKE_CC > > > > > +export OE_QMAKE_CFLAGS > > > > > +export OE_QMAKE_CXX > > > > > +export OE_QMAKE_CXXFLAGS > > > > > +export OE_QMAKE_LINK > > > > > +export OE_QMAKE_LDFLAGS > > > > > +export OE_QMAKE_AR > > > > > +export OE_QMAKE_STRIP > > > > > + > > > > > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > > > > > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > > > > > +OE_QMAKE_QMAKE = "bin/qmake" > > > > > + > > > > > +do_configure() { > > > > > + # we need symlink in path relative to source, because > > > > > + # EffectivePaths:Prefix is relative to qmake location > > > > > + # Also, configure expects qmake-native to swap with real one > > > > > + if [ ! -e ${B}/bin/qmake-native ]; then > > > > > + mkdir ${B}/bin > > > > > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > > > > > + fi > > > > > + > > > > > + ${S}/configure -v \ > > > > > + -dont-process \ > > > > > + -opensource -confirm-license \ > > > > > + -sysroot ${STAGING_DIR_NATIVE} \ > > > > > + -no-gcc-sysroot \ > > > > > + -system-zlib \ > > > > > + -no-libjpeg \ > > > > > + -no-libpng \ > > > > > + -no-gif \ > > > > > + -no-accessibility \ > > > > > + -no-cups \ > > > > > + -no-nis \ > > > > > + -no-gui \ > > > > > + -no-qml-debug \ > > > > > + -no-sql-mysql \ > > > > > + -no-sql-sqlite \ > > > > > + -no-opengl \ > > > > > + -no-openssl \ > > > > > + -no-xcb \ > > > > > + -verbose \ > > > > > + -release \ > > > > > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > > > > > + -bindir ${OE_QMAKE_PATH_BINS} \ > > > > > + -libdir ${OE_QMAKE_PATH_LIBS} \ > > > > > + -datadir ${OE_QMAKE_PATH_DATA} \ > > > > > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > > > > > + -docdir ${OE_QMAKE_PATH_DOCS} \ > > > > > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > > > > > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > > > > > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > > > > > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > > > > > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > > > > > + -qmldir ${OE_QMAKE_PATH_QML} \ > > > > > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > > > > > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > > > > > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > > > > > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > > > > > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > > > > > + -no-glib \ > > > > > + -no-iconv \ > > > > > + -silent \ > > > > > + -nomake examples \ > > > > > + -nomake tests \ > > > > > + -nomake libs \ > > > > > + -no-compile-examples \ > > > > > + -no-rpath \ > > > > > + -platform ${OE_QMAKESPEC} \ > > > > > + -xplatform linux-oe-g++ \ > > > > > + ${QT_CONFIG_FLAGS} > > > > > + > > > > > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > > > > > +} > > > > > + > > > > > +do_install() { > > > > > + # Fix install paths for all > > > > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > > > > + > > > > > + # switch back the proper qmake > > > > > + rm ${B}/bin/qmake > > > > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > > > > + > > > > > + oe_runmake install INSTALL_ROOT=${D} > > > > > + > > > > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > > > > + # e.g. qt3d, qtwayland > > > > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > > > > +} > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > new file mode 100644 > > > > > index 0000000..3b312b6 > > > > > --- /dev/null > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > @@ -0,0 +1,29 @@ > > > > > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > > > > > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > > > > > + > > > > > +Increase the path length that gets hardcoded into generated config.cpp file > > > > > +from 256 to 512 characters, as nativesdk path can be quite long. > > > > > + > > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > +--- > > > > > + configure | 2 +- > > > > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > + > > > > > +diff --git a/configure b/configure > > > > > +index 304d30f..a37a587 100755 > > > > > +--- a/configure > > > > > ++++ b/configure > > > > > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > > > > > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > > > > > + > > > > > + /* Installation Info */ > > > > > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > > > > > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > > > > > + "qt_prfxpath=$QT_INSTALL_PREFIX", > > > > > + "qt_docspath=$QT_INSTALL_DOCS", > > > > > + "qt_hdrspath=$QT_INSTALL_HEADERS", > > > > > +-- > > > > > +1.8.3.2 > > > > > + > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > new file mode 100644 > > > > > index 0000000..048eab7 > > > > > --- /dev/null > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > @@ -0,0 +1,29 @@ > > > > > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > > > > > +Subject: [PATCH] configure: preserve built qmake and swap with native one > > > > > + > > > > > +Let configure script build the real qmake, but right after it's built, swap > > > > > +it with a native qmake for further internal use, preserving the real one. > > > > > + > > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > +--- > > > > > + configure | 2 ++ > > > > > + 1 file changed, 2 insertions(+) > > > > > + > > > > > +diff --git a/configure b/configure > > > > > +index 140c7b4..304d30f 100755 > > > > > +--- a/configure > > > > > ++++ b/configure > > > > > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > > > > > + > > > > > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > > > > > + fi # Build qmake > > > > > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > > > > > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > > > > > + > > > > > + echo "Running configuration tests..." > > > > > + > > > > > +-- > > > > > +1.8.3.2 > > > > > + > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > new file mode 100644 > > > > > index 0000000..6e4f488 > > > > > --- /dev/null > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > @@ -0,0 +1,7 @@ > > > > > +require qt5-${PV}.inc > > > > > +require ${PN}.inc > > > > > + > > > > > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > > > + > > > > > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > > > > > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > > > > > -- > > > > > 1.8.3.2 > > > > > > > > > > _______________________________________________ > > > > > Openembedded-devel mailing list > > > > > Openembedded-devel@lists.openembedded.org > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > > > > > > -- > > > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > > > > > > > > > -- > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-12-12 15:31 ` Martin Jansa @ 2013-12-12 15:36 ` Denys Dmytriyenko 0 siblings, 0 replies; 14+ messages in thread From: Denys Dmytriyenko @ 2013-12-12 15:36 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-devel On Thu, Dec 12, 2013 at 04:31:22PM +0100, Martin Jansa wrote: > On Thu, Dec 12, 2013 at 10:14:55AM -0500, Denys Dmytriyenko wrote: > > On Thu, Dec 12, 2013 at 03:58:25PM +0100, Martin Jansa wrote: > > > On Thu, Dec 12, 2013 at 09:45:02AM -0500, Denys Dmytriyenko wrote: > > > > On Thu, Dec 12, 2013 at 03:40:02PM +0100, Martin Jansa wrote: > > > > > On Mon, Nov 25, 2013 at 08:47:57PM -0500, Denys Dmytriyenko wrote: > > > > > > From: Denys Dmytriyenko <denys@ti.com> > > > > > > > > > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > > --- > > > > > > recipes-qt/qt5/nativesdk-qt5.inc | 12 ++ > > > > > > recipes-qt/qt5/nativesdk-qtbase.inc | 193 +++++++++++++++++++++ > > > > > > ...ump-path-length-from-256-to-512-character.patch | 29 ++++ > > > > > > ...reserve-built-qmake-and-swap-with-native-.patch | 29 ++++ > > > > > > recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb | 7 + > > > > > > 5 files changed, 270 insertions(+) > > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qt5.inc > > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase.inc > > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > > create mode 100644 recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > > > > > > nativesdk-qtbase isn't included in FILESPATH and build fails: > > > > > > > > Hmm, is this a change in the master oe-core? Putting patches into qtbase/ will > > > > break older builds, but that can be fixed by extending FILESPATH... If I find > > > > time, I'll try to fix it. > > > > > > I was testing it with master, but I think that there is only BPN in > > > default FILESPATH for a bit longer (i.e. also in dora). > > > > > > FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > > > > seems a bit unnecessary here, because it duplicates default BP. > > > > > > Why would adding 2 extra files in qtbase-5.1.1 break other builds? It > > > seems as reasonable solution to me. > > > > Because those files won't be picked up by default, as it expects them in > > nativesdk-qtbase. Not sure if I had that issue in dora or in dylan. I still > > have some older dylan-based releases I have to support here... Either way, > > should be easy to fix with proper FILESEXTRAPATHS tweak, once I get time :) > > I've already tested moving them to qtbase-5.1.1 and it works fine for > master and should work fine for dora too. I plan to merge it to master > to get more people testing it. Sure, I'll see if I care too much about unbreaking dylan... :) > There is also jansa/qt5-5.2.0 branch which I would like to start testing > :). BTW, I was testing 5.2-beta1 and there were few issues I had to fix locally. I'll see if I need to re-do them and submit the patches... > > > > > NOTE: recipe nativesdk-qtbase-5.1.1-r0: task do_fetch: Started > > > > > WARNING: Failed to fetch URL > > > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch, > > > > > attempting MIRRORS if available > > > > > ERROR: Fetcher failure: Unable to find file > > > > > file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > anywhere. The paths that were searched were: > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/nodistro > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/nodistro > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/nodistro > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemux86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemux86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemux86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/qemuall > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/qemuall > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/qemuall > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/x86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/x86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/x86-64 > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase-5.1.1/ > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/qtbase/ > > > > > /OE/build/oe-core/meta-qt5/recipes-qt/qt5/files/ > > > > > /OE/build/oe-core/downloads > > > > > ERROR: Function failed: Fetcher failure for URL: > > > > > 'file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch'. > > > > > Unable to fetch URL from any source. > > > > > ERROR: Logfile of failure stored in: > > > > > /OE/build/oe-core/tmp-eglibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-qtbase/5.1.1-r0/temp/log.do_fetch.21602 > > > > > > > > > > > > > > > > > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qt5.inc b/recipes-qt/qt5/nativesdk-qt5.inc > > > > > > new file mode 100644 > > > > > > index 0000000..2eb8c14 > > > > > > --- /dev/null > > > > > > +++ b/recipes-qt/qt5/nativesdk-qt5.inc > > > > > > @@ -0,0 +1,12 @@ > > > > > > +inherit nativesdk qmake5_base > > > > > > + > > > > > > +# we don't want conflicts with qt4 > > > > > > +OE_QMAKE_PATH_HEADERS = "${OE_QMAKE_PATH_QT_HEADERS}" > > > > > > +OE_QMAKE_PATH_ARCHDATA = "${OE_QMAKE_PATH_QT_ARCHDATA}" > > > > > > +OE_QMAKE_PATH_DATA = "${OE_QMAKE_PATH_QT_DATA}" > > > > > > +OE_QMAKE_PATH_BINS = "${OE_QMAKE_PATH_QT_BINS}" > > > > > > +OE_QMAKE_PATH_TRANSLATIONS = "${OE_QMAKE_PATH_QT_TRANSLATIONS}" > > > > > > +OE_QMAKE_PATH_DOCS = "${OE_QMAKE_PATH_QT_DOCS}" > > > > > > +OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}" > > > > > > +OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}" > > > > > > +OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}" > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase.inc b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > > > new file mode 100644 > > > > > > index 0000000..8e9a809 > > > > > > --- /dev/null > > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase.inc > > > > > > @@ -0,0 +1,193 @@ > > > > > > +DESCRIPTION = "SDK version of Qt/[X11|Mac|Embedded]" > > > > > > +DEPENDS = "nativesdk-zlib nativesdk-dbus qtbase-native" > > > > > > +SECTION = "libs" > > > > > > +HOMEPAGE = "http://qt-project.org" > > > > > > + > > > > > > +QT_MODULE = "qtbase" > > > > > > + > > > > > > +require nativesdk-qt5.inc > > > > > > + > > > > > > +# shared with target version > > > > > > +SRC_URI += " \ > > > > > > + file://0001-Add-linux-oe-g-platform.patch \ > > > > > > + file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ > > > > > > + file://0003-Add-external-hostbindir-option.patch \ > > > > > > + file://0004-qt_functions-temporary-remove-isEmpty-check.patch \ > > > > > > + file://0006-Allow-building-a-separate-qmake-for-the-target.patch \ > > > > > > + file://0007-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch \ > > > > > > + file://0008-qt_module-Fix-pkgconfig-replacement.patch \ > > > > > > + file://0009-qt_module-Fix-paths-in-.prl-files.patch \ > > > > > > + file://0011-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch \ > > > > > > + file://0012-configure.prf-Allow-to-add-extra-arguments-to-make.patch \ > > > > > > + file://0013-Disable-mkv8snapshot.patch \ > > > > > > + file://0014-enables-tslib-device-to-be-read-from-env-variable.patch \ > > > > > > + file://0015-qtbase-allow-build-of-examples.patch \ > > > > > > + file://0021-configure-make-pulseaudio-a-configurable-option.patch \ > > > > > > + file://0022-configure-make-alsa-a-configurable-option.patch \ > > > > > > + file://0023-configure-make-freetype-a-configurable-option.patch \ > > > > > > + file://0024-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determine-pa.patch \ > > > > > > +" > > > > > > + > > > > > > +# specific for nativesdk version > > > > > > +SRC_URI += " \ > > > > > > + file://0001-Always-build-uic.patch \ > > > > > > + file://0001-configure-preserve-built-qmake-and-swap-with-native-.patch \ > > > > > > + file://0001-configure-bump-path-length-from-256-to-512-character.patch \ > > > > > > +" > > > > > > + > > > > > > +PACKAGES = "${PN}-tools-dbg ${PN}-tools" > > > > > > + > > > > > > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > > > > > > + > > > > > > +FILES_${PN}-tools-dbg = " \ > > > > > > + ${OE_QMAKE_PATH_BINS}/.debug \ > > > > > > +" > > > > > > + > > > > > > +FILES_${PN}-tools = " \ > > > > > > + ${OE_QMAKE_PATH_BINS}/* \ > > > > > > +" > > > > > > + > > > > > > +QT_CONFIG_FLAGS += " \ > > > > > > + -reduce-relocations \ > > > > > > + -shared \ > > > > > > + -silent \ > > > > > > + -no-pch \ > > > > > > + -no-rpath \ > > > > > > + -pkg-config \ > > > > > > + ${EXTRA_OECONF} \ > > > > > > +" > > > > > > + > > > > > > +# qtbase is exception, as these are used as install path for sysroots > > > > > > +OE_QMAKE_PATH_HOST_DATA = "${libdir}/${QT_DIR_NAME}" > > > > > > +OE_QMAKE_PATH_HOST_LIBS = "${libdir}" > > > > > > + > > > > > > +do_generate_qt_config_file() { > > > > > > + cat > ${QT_CONF_PATH} <<EOF > > > > > > +[Paths] > > > > > > +Prefix = ${OE_QMAKE_PATH_PREFIX} > > > > > > +Headers = ${OE_QMAKE_PATH_HEADERS} > > > > > > +Libraries = ${OE_QMAKE_PATH_LIBS} > > > > > > +ArchData = ${OE_QMAKE_PATH_ARCHDATA} > > > > > > +Data = ${OE_QMAKE_PATH_DATA} > > > > > > +Binaries = ${OE_QMAKE_PATH_BINS} > > > > > > +LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} > > > > > > +Plugins = ${OE_QMAKE_PATH_PLUGINS} > > > > > > +Imports = ${OE_QMAKE_PATH_IMPORTS} > > > > > > +Qml2Imports = ${OE_QMAKE_PATH_QML} > > > > > > +Translations = ${OE_QMAKE_PATH_TRANSLATIONS} > > > > > > +Documentation = ${OE_QMAKE_PATH_DOCS} > > > > > > +Settings = ${OE_QMAKE_PATH_SETTINGS} > > > > > > +Examples = ${OE_QMAKE_PATH_EXAMPLES} > > > > > > +Tests = ${OE_QMAKE_PATH_TESTS} > > > > > > +HostBinaries = ${OE_QMAKE_PATH_HOST_BINS} > > > > > > +HostData = ${OE_QMAKE_PATH_HOST_DATA} > > > > > > +HostLibraries = ${OE_QMAKE_PATH_HOST_LIBS} > > > > > > +HostSpec = ${OE_QMAKESPEC} > > > > > > +TartgetSpec = ${OE_XQMAKESPEC} > > > > > > +ExternalHostBinaries = ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} > > > > > > +Sysroot = > > > > > > +EOF > > > > > > +} > > > > > > + > > > > > > +do_generate_qt_config_file_append() { > > > > > > + cat >> ${QT_CONF_PATH} <<EOF > > > > > > + > > > > > > +[EffectivePaths] > > > > > > +Prefix=.. > > > > > > +EOF > > > > > > +} > > > > > > + > > > > > > +# qtbase is exception, we need to use mkspecs from ${S} > > > > > > +QMAKE_MKSPEC_PATH = "${B}" > > > > > > + > > > > > > +# qtbase is exception, configure script is using our get(X)QEvalMakeConf and setBootstrapEvalVariable functions to read it from shell > > > > > > +export OE_QMAKE_COMPILER > > > > > > +export OE_QMAKE_CC > > > > > > +export OE_QMAKE_CFLAGS > > > > > > +export OE_QMAKE_CXX > > > > > > +export OE_QMAKE_CXXFLAGS > > > > > > +export OE_QMAKE_LINK > > > > > > +export OE_QMAKE_LDFLAGS > > > > > > +export OE_QMAKE_AR > > > > > > +export OE_QMAKE_STRIP > > > > > > + > > > > > > +# another exception is that we need to run bin/qmake, because EffectivePaths are relative to qmake location > > > > > > +OE_QMAKE_QMAKE_ORIG = "${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake" > > > > > > +OE_QMAKE_QMAKE = "bin/qmake" > > > > > > + > > > > > > +do_configure() { > > > > > > + # we need symlink in path relative to source, because > > > > > > + # EffectivePaths:Prefix is relative to qmake location > > > > > > + # Also, configure expects qmake-native to swap with real one > > > > > > + if [ ! -e ${B}/bin/qmake-native ]; then > > > > > > + mkdir ${B}/bin > > > > > > + ln -sf ${OE_QMAKE_QMAKE_ORIG} ${B}/bin/qmake-native > > > > > > + fi > > > > > > + > > > > > > + ${S}/configure -v \ > > > > > > + -dont-process \ > > > > > > + -opensource -confirm-license \ > > > > > > + -sysroot ${STAGING_DIR_NATIVE} \ > > > > > > + -no-gcc-sysroot \ > > > > > > + -system-zlib \ > > > > > > + -no-libjpeg \ > > > > > > + -no-libpng \ > > > > > > + -no-gif \ > > > > > > + -no-accessibility \ > > > > > > + -no-cups \ > > > > > > + -no-nis \ > > > > > > + -no-gui \ > > > > > > + -no-qml-debug \ > > > > > > + -no-sql-mysql \ > > > > > > + -no-sql-sqlite \ > > > > > > + -no-opengl \ > > > > > > + -no-openssl \ > > > > > > + -no-xcb \ > > > > > > + -verbose \ > > > > > > + -release \ > > > > > > + -prefix ${OE_QMAKE_PATH_PREFIX} \ > > > > > > + -bindir ${OE_QMAKE_PATH_BINS} \ > > > > > > + -libdir ${OE_QMAKE_PATH_LIBS} \ > > > > > > + -datadir ${OE_QMAKE_PATH_DATA} \ > > > > > > + -sysconfdir ${OE_QMAKE_PATH_SETTINGS} \ > > > > > > + -docdir ${OE_QMAKE_PATH_DOCS} \ > > > > > > + -headerdir ${OE_QMAKE_PATH_HEADERS} \ > > > > > > + -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ > > > > > > + -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ > > > > > > + -plugindir ${OE_QMAKE_PATH_PLUGINS} \ > > > > > > + -importdir ${OE_QMAKE_PATH_IMPORTS} \ > > > > > > + -qmldir ${OE_QMAKE_PATH_QML} \ > > > > > > + -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ > > > > > > + -testsdir ${OE_QMAKE_PATH_TESTS} \ > > > > > > + -hostbindir ${OE_QMAKE_PATH_HOST_BINS} \ > > > > > > + -hostdatadir ${OE_QMAKE_PATH_HOST_DATA} \ > > > > > > + -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS} \ > > > > > > + -no-glib \ > > > > > > + -no-iconv \ > > > > > > + -silent \ > > > > > > + -nomake examples \ > > > > > > + -nomake tests \ > > > > > > + -nomake libs \ > > > > > > + -no-compile-examples \ > > > > > > + -no-rpath \ > > > > > > + -platform ${OE_QMAKESPEC} \ > > > > > > + -xplatform linux-oe-g++ \ > > > > > > + ${QT_CONFIG_FLAGS} > > > > > > + > > > > > > + bin/qmake ${OE_QMAKE_DEBUG_OUTPUT} ${S} -o Makefile || die "Configuring qt with qmake failed. EXTRA_OECONF was ${EXTRA_OECONF}" > > > > > > +} > > > > > > + > > > > > > +do_install() { > > > > > > + # Fix install paths for all > > > > > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > > > > > + > > > > > > + # switch back the proper qmake > > > > > > + rm ${B}/bin/qmake > > > > > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > > > > > + > > > > > > + oe_runmake install INSTALL_ROOT=${D} > > > > > > + > > > > > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > > > > > + # e.g. qt3d, qtwayland > > > > > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > > > > > +} > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > > new file mode 100644 > > > > > > index 0000000..3b312b6 > > > > > > --- /dev/null > > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-bump-path-length-from-256-to-512-character.patch > > > > > > @@ -0,0 +1,29 @@ > > > > > > +From 9500744fee36c908d0cb7e034f8c8dd3dd1c4fa4 Mon Sep 17 00:00:00 2001 > > > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > > > +Date: Mon, 11 Nov 2013 20:27:30 -0500 > > > > > > +Subject: [PATCH] configure: bump path length from 256 to 512 characters > > > > > > + > > > > > > +Increase the path length that gets hardcoded into generated config.cpp file > > > > > > +from 256 to 512 characters, as nativesdk path can be quite long. > > > > > > + > > > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > > +--- > > > > > > + configure | 2 +- > > > > > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > + > > > > > > +diff --git a/configure b/configure > > > > > > +index 304d30f..a37a587 100755 > > > > > > +--- a/configure > > > > > > ++++ b/configure > > > > > > +@@ -3870,7 +3870,7 @@ static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$ > > > > > > + static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`"; > > > > > > + > > > > > > + /* Installation Info */ > > > > > > +-static const char qt_configure_prefix_path_strs[][256 + 12] = { > > > > > > ++static const char qt_configure_prefix_path_strs[][512 + 12] = { > > > > > > + "qt_prfxpath=$QT_INSTALL_PREFIX", > > > > > > + "qt_docspath=$QT_INSTALL_DOCS", > > > > > > + "qt_hdrspath=$QT_INSTALL_HEADERS", > > > > > > +-- > > > > > > +1.8.3.2 > > > > > > + > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > > new file mode 100644 > > > > > > index 0000000..048eab7 > > > > > > --- /dev/null > > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase/0001-configure-preserve-built-qmake-and-swap-with-native-.patch > > > > > > @@ -0,0 +1,29 @@ > > > > > > +From 6cd7ade28662730e5de89a171501e3902b321ffc Mon Sep 17 00:00:00 2001 > > > > > > +From: Denys Dmytriyenko <denys@ti.com> > > > > > > +Date: Mon, 11 Nov 2013 20:22:34 -0500 > > > > > > +Subject: [PATCH] configure: preserve built qmake and swap with native one > > > > > > + > > > > > > +Let configure script build the real qmake, but right after it's built, swap > > > > > > +it with a native qmake for further internal use, preserving the real one. > > > > > > + > > > > > > +Signed-off-by: Denys Dmytriyenko <denys@ti.com> > > > > > > +--- > > > > > > + configure | 2 ++ > > > > > > + 1 file changed, 2 insertions(+) > > > > > > + > > > > > > +diff --git a/configure b/configure > > > > > > +index 140c7b4..304d30f 100755 > > > > > > +--- a/configure > > > > > > ++++ b/configure > > > > > > +@@ -4104,6 +4104,8 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; > > > > > > + > > > > > > + (cd "$outpath/qmake"; "$MAKE") || exit 2 > > > > > > + fi # Build qmake > > > > > > ++mv "$outpath/bin/qmake" "$outpath/bin/qmake-real" > > > > > > ++mv "$outpath/bin/qmake-native" "$outpath/bin/qmake" > > > > > > + > > > > > > + echo "Running configuration tests..." > > > > > > + > > > > > > +-- > > > > > > +1.8.3.2 > > > > > > + > > > > > > diff --git a/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > > new file mode 100644 > > > > > > index 0000000..6e4f488 > > > > > > --- /dev/null > > > > > > +++ b/recipes-qt/qt5/nativesdk-qtbase_5.1.1.bb > > > > > > @@ -0,0 +1,7 @@ > > > > > > +require qt5-${PV}.inc > > > > > > +require ${PN}.inc > > > > > > + > > > > > > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qtbase-${PV}:" > > > > > > + > > > > > > +SRC_URI[md5sum] = "955d1e4da875f3872ef3208f21a757dd" > > > > > > +SRC_URI[sha256sum] = "d4620e0b1aff6d2b6f4d8066e6f8258e012a8b5507af7c03b661029a1ffa75c9" > > > > > > -- > > > > > > 1.8.3.2 > > > > > > > > > > > > _______________________________________________ > > > > > > Openembedded-devel mailing list > > > > > > Openembedded-devel@lists.openembedded.org > > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > > > > > > > > -- > > > > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > > > > > > > > > > > > > -- > > > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com > > > > > > -- > Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2013-11-26 1:47 ` [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools Denys Dmytriyenko 2013-12-12 14:40 ` Martin Jansa @ 2014-02-07 0:15 ` Nicolas Dechesne 2014-02-07 1:54 ` Denys Dmytriyenko 1 sibling, 1 reply; 14+ messages in thread From: Nicolas Dechesne @ 2014-02-07 0:15 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko hi, On Tue, Nov 26, 2013 at 2:47 AM, Denys Dmytriyenko <denis@denix.org> wrote: > +do_install() { > + # Fix install paths for all > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > + > + # switch back the proper qmake > + rm ${B}/bin/qmake > + mv ${B}/bin/qmake-real ${B}/bin/qmake > + > + oe_runmake install INSTALL_ROOT=${D} > + > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > + # e.g. qt3d, qtwayland > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > +} about this patch (which was merged already), i am wondering if this is okay to do something like above. basically in the do_install task we are 'corrupting' the output of the do_compile task. Here we remove ${B}/bin/qmake for example. so if the do_install fails for whatever reason, it will never be able to resume properly, since ${B} is no longer what it should be after a legitimate do_compile. i was debugging some weird build issues, and I am wondering if my problem doesn't come from that... ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2014-02-07 0:15 ` Nicolas Dechesne @ 2014-02-07 1:54 ` Denys Dmytriyenko 2014-02-07 9:27 ` Nicolas Dechesne 0 siblings, 1 reply; 14+ messages in thread From: Denys Dmytriyenko @ 2014-02-07 1:54 UTC (permalink / raw) To: Nicolas Dechesne; +Cc: openembedded-devel On Fri, Feb 07, 2014 at 01:15:34AM +0100, Nicolas Dechesne wrote: > hi, > > On Tue, Nov 26, 2013 at 2:47 AM, Denys Dmytriyenko <denis@denix.org> wrote: > > +do_install() { > > + # Fix install paths for all > > + find -name "Makefile*" | xargs sed -i "s,(INSTALL_ROOT)${STAGING_DIR_NATIVE}${STAGING_DIR_NATIVE},(INSTALL_ROOT)${STAGING_DIR_NATIVE},g" > > + > > + # switch back the proper qmake > > + rm ${B}/bin/qmake > > + mv ${B}/bin/qmake-real ${B}/bin/qmake > > + > > + oe_runmake install INSTALL_ROOT=${D} > > + > > + # for modules which are still using syncqt and call qtPrepareTool(QMAKE_SYNCQT, syncqt) > > + # e.g. qt3d, qtwayland > > + ln -sf syncqt.pl ${D}${OE_QMAKE_PATH_QT_BINS}/syncqt > > +} > > about this patch (which was merged already), i am wondering if this is > okay to do something like above. basically in the do_install task we > are 'corrupting' the output of the do_compile task. Here we remove > ${B}/bin/qmake for example. so if the do_install fails for whatever > reason, it will never be able to resume properly, since ${B} is no > longer what it should be after a legitimate do_compile. i was > debugging some weird build issues, and I am wondering if my problem > doesn't come from that... Hmm, never thought of it like that. I guess there are couple options: 1. Make the qmake switch above at the end of do_compile instead 2. Keep it in do_install, but manipulate ${D} instead of ${B} by installing ${B}/qmake-real into ${D}/qmake -- Denys ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools 2014-02-07 1:54 ` Denys Dmytriyenko @ 2014-02-07 9:27 ` Nicolas Dechesne 0 siblings, 0 replies; 14+ messages in thread From: Nicolas Dechesne @ 2014-02-07 9:27 UTC (permalink / raw) To: Denys Dmytriyenko; +Cc: openembedded-devel On Fri, Feb 7, 2014 at 2:54 AM, Denys Dmytriyenko <denys@ti.com> wrote: > 1. Make the qmake switch above at the end of do_compile instead > 2. Keep it in do_install, but manipulate ${D} instead of ${B} by installing > ${B}/qmake-real into ${D}/qmake i would say #2. since the 'hack' is needed for do_install, let's keep the dirty stuff in do_install ;-) ^ permalink raw reply [flat|nested] 14+ messages in thread
* [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools necessary for SDK tools 2013-11-26 1:47 [meta-qt5][PATCH 0/2] Add nativesdk tools for Qt5 SDK Denys Dmytriyenko 2013-11-26 1:47 ` [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools Denys Dmytriyenko @ 2013-11-26 1:47 ` Denys Dmytriyenko 2013-11-26 2:14 ` Martin Jansa 2013-11-26 4:33 ` [meta-qt5][PATCHv2 " Denys Dmytriyenko 1 sibling, 2 replies; 14+ messages in thread From: Denys Dmytriyenko @ 2013-11-26 1:47 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko From: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Denys Dmytriyenko <denys@ti.com> --- recipes-qt/qt5/nativesdk-qttools.inc | 32 +++++++++++++++++++++++++++++++ recipes-qt/qt5/nativesdk-qttools_5.1.1.bb | 12 ++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 recipes-qt/qt5/nativesdk-qttools.inc create mode 100644 recipes-qt/qt5/nativesdk-qttools_5.1.1.bb diff --git a/recipes-qt/qt5/nativesdk-qttools.inc b/recipes-qt/qt5/nativesdk-qttools.inc new file mode 100644 index 0000000..30bb357 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qttools.inc @@ -0,0 +1,32 @@ +# doesnt have GFDL-1.3 like qtbase, LICENSE files are missing in 5.0.0 and 5.0.1, this is for 5.0.2 and git +LICENSE = "LGPL-2.1 | GPL-3.0" +LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \ + file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \ + file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ +" + +DEPENDS = "nativesdk-qtbase qtbase-native" + +QT_MODULE = "qttools" + +require nativesdk-qt5.inc + +SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" + +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" + +FILES_${PN}-dbg = " \ + ${OE_QMAKE_PATH_BINS}/.debug \ +" + +FILES_${PN} = " \ + ${OE_QMAKE_PATH_BINS}/* \ +" + +do_configure() { + ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly +} + +do_install() { + oe_runmake install INSTALL_ROOT=${D} +} diff --git a/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb new file mode 100644 index 0000000..8aca56e --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb @@ -0,0 +1,12 @@ +require qt5-${PV}.inc +require ${PN}.inc + +# LICENSE files are missing in 5.0.0 and 5.0.1 +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \ + file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \ +" + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qttools-${PV}:" + +SRC_URI[md5sum] = "022073d32ff9d408de0182b5d1f01781" +SRC_URI[sha256sum] = "2b42c6d5feeccffb67e890b86a150bae64dd2ff550be39a3cc449ee0e95462b6" -- 1.8.3.2 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools necessary for SDK tools 2013-11-26 1:47 ` [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools " Denys Dmytriyenko @ 2013-11-26 2:14 ` Martin Jansa 2013-11-26 4:33 ` [meta-qt5][PATCHv2 " Denys Dmytriyenko 1 sibling, 0 replies; 14+ messages in thread From: Martin Jansa @ 2013-11-26 2:14 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko [-- Attachment #1: Type: text/plain, Size: 3084 bytes --] On Mon, Nov 25, 2013 at 08:47:58PM -0500, Denys Dmytriyenko wrote: > From: Denys Dmytriyenko <denys@ti.com> > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > --- > recipes-qt/qt5/nativesdk-qttools.inc | 32 +++++++++++++++++++++++++++++++ > recipes-qt/qt5/nativesdk-qttools_5.1.1.bb | 12 ++++++++++++ > 2 files changed, 44 insertions(+) > create mode 100644 recipes-qt/qt5/nativesdk-qttools.inc > create mode 100644 recipes-qt/qt5/nativesdk-qttools_5.1.1.bb There is alternative pull-request on github, but this one looks a lot simpler and cleaner. > > diff --git a/recipes-qt/qt5/nativesdk-qttools.inc b/recipes-qt/qt5/nativesdk-qttools.inc > new file mode 100644 > index 0000000..30bb357 > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qttools.inc > @@ -0,0 +1,32 @@ > +# doesnt have GFDL-1.3 like qtbase, LICENSE files are missing in 5.0.0 and 5.0.1, this is for 5.0.2 and git > +LICENSE = "LGPL-2.1 | GPL-3.0" > +LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \ > + file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \ > + file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \ > +" > + > +DEPENDS = "nativesdk-qtbase qtbase-native" > + > +QT_MODULE = "qttools" > + > +require nativesdk-qt5.inc > + > +SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" > + > +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" > + > +FILES_${PN}-dbg = " \ > + ${OE_QMAKE_PATH_BINS}/.debug \ > +" > + > +FILES_${PN} = " \ > + ${OE_QMAKE_PATH_BINS}/* \ > +" > + > +do_configure() { > + ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly > +} > + > +do_install() { > + oe_runmake install INSTALL_ROOT=${D} > +} > diff --git a/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb > new file mode 100644 > index 0000000..8aca56e > --- /dev/null > +++ b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb > @@ -0,0 +1,12 @@ > +require qt5-${PV}.inc > +require ${PN}.inc > + > +# LICENSE files are missing in 5.0.0 and 5.0.1 > +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \ > + file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \ > +" Looks like I've forgot to remove LIC_FILES_CHKSUM from .bb when upgrading to 5.1.1, can you check if the checksums in .inc are matching and if yes, remove it here and in recipes-qt/qt5/qttools-native_5.1.1.bb ? Thanks > + > +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qttools-${PV}:" > + > +SRC_URI[md5sum] = "022073d32ff9d408de0182b5d1f01781" > +SRC_URI[sha256sum] = "2b42c6d5feeccffb67e890b86a150bae64dd2ff550be39a3cc449ee0e95462b6" > -- > 1.8.3.2 > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* [meta-qt5][PATCHv2 2/2] nativesdk-qttools: add nativesdk version of qttools necessary for SDK tools 2013-11-26 1:47 ` [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools " Denys Dmytriyenko 2013-11-26 2:14 ` Martin Jansa @ 2013-11-26 4:33 ` Denys Dmytriyenko 1 sibling, 0 replies; 14+ messages in thread From: Denys Dmytriyenko @ 2013-11-26 4:33 UTC (permalink / raw) To: openembedded-devel; +Cc: Denys Dmytriyenko From: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Denys Dmytriyenko <denys@ti.com> --- v2 - remove license workarounds recipes-qt/qt5/nativesdk-qttools.inc | 25 +++++++++++++++++++++++++ recipes-qt/qt5/nativesdk-qttools_5.1.1.bb | 7 +++++++ 2 files changed, 32 insertions(+) create mode 100644 recipes-qt/qt5/nativesdk-qttools.inc create mode 100644 recipes-qt/qt5/nativesdk-qttools_5.1.1.bb diff --git a/recipes-qt/qt5/nativesdk-qttools.inc b/recipes-qt/qt5/nativesdk-qttools.inc new file mode 100644 index 0000000..e9b2949 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qttools.inc @@ -0,0 +1,25 @@ +DEPENDS = "nativesdk-qtbase qtbase-native" + +QT_MODULE = "qttools" + +require nativesdk-qt5.inc + +SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch" + +PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src" + +FILES_${PN}-dbg = " \ + ${OE_QMAKE_PATH_BINS}/.debug \ +" + +FILES_${PN} = " \ + ${OE_QMAKE_PATH_BINS}/* \ +" + +do_configure() { + ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly +} + +do_install() { + oe_runmake install INSTALL_ROOT=${D} +} diff --git a/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb new file mode 100644 index 0000000..b56f430 --- /dev/null +++ b/recipes-qt/qt5/nativesdk-qttools_5.1.1.bb @@ -0,0 +1,7 @@ +require qt5-${PV}.inc +require ${PN}.inc + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/qttools-${PV}:" + +SRC_URI[md5sum] = "022073d32ff9d408de0182b5d1f01781" +SRC_URI[sha256sum] = "2b42c6d5feeccffb67e890b86a150bae64dd2ff550be39a3cc449ee0e95462b6" -- 1.8.3.2 ^ permalink raw reply related [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-02-07 9:27 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-11-26 1:47 [meta-qt5][PATCH 0/2] Add nativesdk tools for Qt5 SDK Denys Dmytriyenko 2013-11-26 1:47 ` [meta-qt5][PATCH 1/2] nativesdk-qtbase: add nativesdk version of qtbase necessary for SDK tools Denys Dmytriyenko 2013-12-12 14:40 ` Martin Jansa 2013-12-12 14:45 ` Denys Dmytriyenko 2013-12-12 14:58 ` Martin Jansa 2013-12-12 15:14 ` Denys Dmytriyenko 2013-12-12 15:31 ` Martin Jansa 2013-12-12 15:36 ` Denys Dmytriyenko 2014-02-07 0:15 ` Nicolas Dechesne 2014-02-07 1:54 ` Denys Dmytriyenko 2014-02-07 9:27 ` Nicolas Dechesne 2013-11-26 1:47 ` [meta-qt5][PATCH 2/2] nativesdk-qttools: add nativesdk version of qttools " Denys Dmytriyenko 2013-11-26 2:14 ` Martin Jansa 2013-11-26 4:33 ` [meta-qt5][PATCHv2 " Denys Dmytriyenko
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.