Yes, a reduced testcase would be much appreciated. I don't have access to
https://codereview.qt-project.org/105039 and I wouldn't know what to do
anyway. :-)

(BTW: You did clear the cache before you compiled the changed source code,
right? Otherwise a cache hit is expected from the previous experiments, of
course. Just checking.)

-- Joel

On 16 February 2015 at 20:37, Oswald Buddenhagen <oswald.buddenha...@gmx.de>
wrote:

> this is pretty incredible ...
> i can't reproduce it with your testcase, either.
> but when i run the actual build with CCACHE_LOGFILE=/dev/stdout, it
> totally confirms that the issue is real:
>
> [2015-02-16T20:25:26.035076 20314] === CCACHE STARTED
> =========================================
> [2015-02-16T20:25:26.035222 20314] Command line: /usr/bin/ccache
> /usr/bin/g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIE -DQT_NO_MTDEV
> -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_NO_XKB -DPROPARSER_DEBUG
> -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_TESTLIB_LIB -DQT_CORE_LIB
> -DQT_NAMESPACE=TestSpace
> -DQT_TESTCASE_BUILDDIR=/home/obuddenh/depot/qt5_build/qtbase/tests/auto/tools/qmakelib
> -I/home/obuddenh/depot/qt5/qtbase/tests/auto/tools/qmakelib -I.
> -I/home/obuddenh/depot/qt5/qtbase/qmake/library -I../../../../include
> -I../../../../include/QtTest -I../../../../include/QtCore -I.moc
> -I/home/obuddenh/depot/qt5/qtbase/mkspecs/linux-g++ -o .obj/qmakeparser.o
> /home/obuddenh/depot/qt5/qtbase/qmake/library/qmakeparser.cpp
> [2015-02-16T20:25:26.035255 20314] Hostname: troll08
> [2015-02-16T20:25:26.035295 20314] Working directory:
> /home/obuddenh/depot/qt5_build/qtbase/tests/auto/tools/qmakelib
> [2015-02-16T20:25:26.035379 20314] Source file:
> /home/obuddenh/depot/qt5/qtbase/qmake/library/qmakeparser.cpp
> [2015-02-16T20:25:26.035393 20314] Object file: .obj/qmakeparser.o
> [2015-02-16T20:25:26.035412 20314] Trying direct lookup
> [2015-02-16T20:25:26.035865 20314] Looking for object file hash in
> /home/obuddenh/.ccache/1/8/3571b3286295ea842e4d0e4b5d8614-51629.manifest
> [2015-02-16T20:25:26.055382 20314] Got object file hash from manifest
> [2015-02-16T20:25:26.055444 20314] Unlink .obj/qmakeparser.o via
> .obj/qmakeparser.o.tmp.rm.troll08.20314
> [2015-02-16T20:25:26.055697 20314] Copying
> /home/obuddenh/.ccache/6/1/77b6a1a9b40804c3fde51f0bc6c051-1584683.o to
> .obj/qmakeparser.o via .obj/qmakeparser.o.troll08.20314.XXXXXX
> (uncompressed)
> [2015-02-16T20:25:26.056724 20314] Created .obj/qmakeparser.o from
> /home/obuddenh/.ccache/6/1/77b6a1a9b40804c3fde51f0bc6c051-1584683.o
> [2015-02-16T20:25:26.056755 20314] Succeeded getting cached result
> [2015-02-16T20:25:26.056793 20314] Acquired lock
> /home/obuddenh/.ccache/6/stats.lock
> [2015-02-16T20:25:26.056988 20314] Releasing lock
> /home/obuddenh/.ccache/6/stats.lock
> [2015-02-16T20:25:26.057008 20314] Unlink
> /home/obuddenh/.ccache/6/stats.lock (as-tmp)
> [2015-02-16T20:25:26.057033 20314] Result: cache hit (direct)
>
> to reproduce it, you "only" need:
>
> qtbase/dev (@1d2efe1f27bedcbaa157ef4e82b8eda33dda46ad).
> this pending change: https://codereview.qt-project.org/105039 (PS3)
> including dependencies.
> this hunk on top:
>
> --- a/qmake/library/qmakeparser.cpp
> +++ b/qmake/library/qmakeparser.cpp
> @@ -1340,6 +1374,7 @@ static bool getBlock(const ushort *tokens, int
> limit, int &offset, QString *outS
>              return false;
>          }
>          *outStr += fL1S(" << H(") + fL1S(tokNames[maskedTok]);
> +        *outStr += fL1S(" /* \\u") + QString::number(maskedTok, 16) +
> fL1S(" */");
>          if (tok & TokNewStr)
>              *outStr += fL1S(" | TokNewStr");
>          if (tok & TokQuoted)
>
> ... and a lot of time, heh.
>
> i thought i might have some env variables set (CCACHE_UNIFY), but this
> doesn't appear to be the case, either.
>
> i can try to extract a smaller testcase if you don't beat me to it.
>
>

Reply via email to