Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-57437

[MSYS2] forward headers not created correctly

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P4: Low
    • None
    • 5.8.0 Beta
    • Build System
    • None

    Description

      On MSYS2, the creation of forward header with the syncqt.pl script fails on <srcbase>/src/corelib/tools/
      The output I get at build time is:

      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/animation/ { qabstractanimation.h (2), qanimationgroup.h (1), qparallelanimationgroup.h (1), qpauseanimation.h (1), qpropertyanimation.h (1), qsequentialanimationgroup.h (1), qvariantanimation.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/arch/ { qatomic_msvc.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/codecs/ { qtextcodec.h (2) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/global/ { qflags.h (1), qlibraryinfo.h (1), qlogging.h (2), qnamespace.h (1), qsysinfo.h (1), qtypeinfo.h (2) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/io/ { qbuffer.h (1), qdatastream.h (1), qdebug.h (2), qdir.h (1), qdiriterator.h (1), qfile.h (1), qfiledevice.h (1), qfileinfo.h (1), qfileselector.h (1), qfilesystemwatcher.h (1), qlockfile.h (1), qprocess.h (3), qresource.h (1), qsavefile.h (1), qstorageinfo.h (1), qtemporarydir.h (1), qtemporaryfile.h (1), qtextstream.h (1), qurl.h (2), qurlquery.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/itemmodels/ { qabstractitemmodel.h (6), qabstractproxymodel.h (1), qidentityproxymodel.h (1), qitemselectionmodel.h (2), qsortfilterproxymodel.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/json/ { qjsonarray.h (1), qjsondocument.h (2), qjsonobject.h (1), qjsonvalue.h (3) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/kernel/ { qabstractnativeeventfilter.h (1), qbasictimer.h (1), qcoreapplication.h (1), qcoreevent.h (4), qeventloop.h (2), qmetaobject.h (3), qmetatype.h (1), qmimedata.h (1), qobject.h (3), qobjectdefs.h (6), qpointer.h (1), qsharedmemory.h (1), qsignalmapper.h (1), qsocketnotifier.h (1), qsystemsemaphore.h (1), qtranslator.h (1), qvariant.h (3), qwineventnotifier.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/mimetypes/ { qmimedatabase.h (1), qmimetype.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/plugin/ { qlibrary.h (1), qplugin.h (2), qpluginloader.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/statemachine/ { qabstractstate.h (1), qabstracttransition.h (1), qeventtransition.h (1), qfinalstate.h (1), qhistorystate.h (1), qsignaltransition.h (1), qstate.h (1), qstatemachine.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/thread/ { qatomic.h (1), qbasicatomic.h (2), qexception.h (1), qfuture.h (1), qfutureinterface.h (2), qfuturewatcher.h (2), qgenericatomic.h (2), qmutex.h (3), qreadwritelock.h (3), qsemaphore.h (1), qthreadpool.h (1), qwaitcondition.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/tools/ { qarraydata.h (1), qbitarray.h (2), qbytearray.h (3), qbytearraylist.h (1), qbytearraymatcher.h (1), qchar.h (2), qcollator.h (2), qcommandlineoption.h (1), qcommandlineparser.h (1), qcontiguouscache.h (2), qcryptographichash.h (1), qdatetime.h (3), qeasingcurve.h (1), qhash.h (3), qline.h (2), qlinkedlist.h (2), qlist.h (3), qlocale.h (1), qmap.h (6), qmargins.h (2), qmessageauthenticationcode.h (1), qregexp.h (1), qregularexpression.h (3), qscopedpointer.h (4), qshareddata.h (3), qsharedpointer.h (2), qstring.h (6), qstringbuilder.h (4), qstringlist.h (2), qstringmatcher.h (1), qtextboundaryfinder.h (1), qtimeline.h (1), qtimezone.h (1), qvector.h (1) }
      QtCore: created fwd-include header(s) for <srcbase>/src/corelib/xml/ { qxmlstream.h (10) }
      

      but when reaching qtbase/src/corelib/tools/qsimd.cpp I get

      g++ -c -include .pch/release/qt_pch.h -pipe -fno-keep-inline-dllexport -msse2 -mstackrealign -mfpmath=sse -O2 -std=c++1z -fexceptions -mthreads -frtti -Wall -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -DUNICODE -DQT_NO_USING_NAMESPACE -DQT_NO_FOREACH -DWINVER=0x600 -D_WIN32_WINNT=0x0600 -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_DEBUG -I. -Iglobal -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I../3rdparty/sha3 -I../3rdparty/double-conversion/include -I../3rdparty/double-conversion/include/double-conversion -I../../include -I../../include/QtCore -I../../include/QtCore/5.8.0 -I../../include/QtCore/5.8.0/QtCore -Itmp -I.moc/release -I../../mkspecs/win32-g++  -o .obj/release/qsimd.o tools/qsimd.cpp
      tools/qsimd.cpp:43:22: fatal error: QByteArray: No such file or directory
      

      In fact the QByteArray forward include file is not there, despite many others are created correctly.
      The patch on syncqt.pl proposed by the MSYS2 guys is the following:

      --- a/qtbase/bin/syncqt.pl	2014-05-02 23:02:57.995360800 +0100
      +++ b/qtbase/bin/syncqt.pl	2014-05-02 23:03:59.474877200 +0100
      @@ -214,6 +214,7 @@
           push @ret, split(/,/, $classname) if ($classname);
       
           my $parsable = "";
      +    local $/ = "\n";
           if(open(F, "<$iheader")) {
               while(<F>) {
                   my $line = $_;
      

      which still applies to Qt 5.8 and which allows the build process to proceed without failures

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              buddenha Oswald Buddenhagen
              mcallegari79 Massimo Callegari
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes