This breaks qtxmlpatterns-native build as shown in: http://errors.yoctoproject.org/Errors/Details/147039/
On Fri, Jun 30, 2017 at 7:47 AM, Huang Qiyu <[email protected]> wrote: > Add qt5-ptest.inc file for qt ptest related tasks > 1) Rewrite do_compile_ptest task for qt > 2) Add new do_compile_ptest_base and task do_install_ptest > 3) Write do_populate_sysroot_append to resolve do_compile_ptest_base > problem in yocto2.3 > The compile error log is shown as follow: > cd auto/ && ( test -e Makefile || /yocto/work001/fnst/huangqy/ > work_qt/build/tmp/work/i586-poky-linux/qtxmlpatterns/5.8. > 0+gitAUTOINC+9f7e01b582-r0/recipe-sysroot-native/usr/bin/qt5/qmake -o > Makefile /yocto/work001/fnst/huangqy/work_qt/build/tmp/work/i586- > poky-linux/qtxmlpatterns/5.8.0+gitAUTOINC+9f7e01b582-r0/git/tests/auto/ > auto.pro ) && make -f Makefile > Project ERROR: Could not find feature xml-schema. > Makefile:42: recipe for target 'sub-auto-make_first' failed > > Signed-off-by: Huang Qiyu <[email protected]> > --- > recipes-qt/qt5/qt5-ptest.inc | 61 ++++++++++++++++++++++++++++++ > ++++++++++++++ > 1 file changed, 61 insertions(+) > create mode 100644 recipes-qt/qt5/qt5-ptest.inc > > diff --git a/recipes-qt/qt5/qt5-ptest.inc b/recipes-qt/qt5/qt5-ptest.inc > new file mode 100644 > index 0000000..da0b65a > --- /dev/null > +++ b/recipes-qt/qt5/qt5-ptest.inc > @@ -0,0 +1,61 @@ > +SRC_URI += "file://run-ptest" > + > +inherit ptest > + > +addtask do_populate_sysroot after do_install before do_compile_ptest_base > +deltask do_compile_ptest_base > +addtask do_compile_ptest_base after do_populate_sysroot before > do_install_ptest > +addtask do_install_ptest after do_compile_ptest_base before do_package > + > +do_compile_ptest() { > + cd ${S}/tests > + qmake -o Makefile tests.pro > + oe_runmake > +} > + > +do_populate_sysroot_append() { > + workdir = d.getVar('WORKDIR') > + srcdir = workdir + '/sysroot-destdir/usr/' > + destdir = workdir + '/recipe-sysroot/usr/' > + > + def copyFiles(sourceDir, targetDir, filelist): > + for file in os.listdir(sourceDir): > + sourceFile = os.path.join(sourceDir, file) > + targetFile = os.path.join(targetDir, file) > + filelist.append(targetFile) #record the file list > + if os.path.isfile(sourceFile): > + if not os.path.exists(targetDir): > + os.makedirs(targetDir) > + if not os.path.exists(targetFile) > or(os.path.exists(targetFile) and (os.path.getsize(targetFile) != > os.path.getsize(sourceFile))): > + open(targetFile, "wb").write(open(sourceFile, > "rb").read()) > + if os.path.isdir(sourceFile): > + First_Directory = False > + copyFiles(sourceFile, targetFile, filelist) > + > + Tmpfilelist = [] > + copyFiles(srcdir, destdir, Tmpfilelist) > + > + fp=open(workdir + '/filelist', 'w') > + for i in Tmpfilelist: > + fp.write(i) > + fp.write("\n") > + fp.close() > +} > + > +fakeroot do_install_ptest() { > + mkdir -p ${D}${PTEST_PATH} > + t=${D}${PTEST_PATH} > + for var in ` find ${S}/tests/auto/ -name tst_*`; do > + if [ -z ` echo ${var##*/} | grep '\.'` ]; then > + echo ${var##*/} >> ${t}/tst_list > + install -m 0644 ${var} ${t} > + fi > + done > + for file in `cat ${WORKDIR}/filelist`; do > + if [ -f $file ]; then > + rm -f $file > + fi > + done > + rm -f ${WORKDIR}/filelist > +} > + > -- > 2.7.4 > > > > -- > _______________________________________________ > Openembedded-devel mailing list > [email protected] > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > -- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
