On quarta-feira, 23 de março de 2016 21:49:41 PDT Scott Aron Bloom wrote: > What does this flag do? Is there an equivalent flag for CMake???
It makes rcc operate in a two-pass mode. Without it, resource compilation is: $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} and the output file is then compiled. With it, it becomes: $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -pass 1 -o $$RCC_CPP && \ $$RCC_CXX -c $$RCC_CPP $$RCC_CXX_O_FLAG$$RCC_TMP && \ $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -pass 2 -temp $ $RCC_TMP -o ${QMAKE_FILE_OUT} In pass 1, rcc calculates the size of the data and simply fills it with zeroes. Then the compiler is called, to produce an object file. Then the second pass kicks in and fills the data in the dummy .o, producing the result. Also note how the compiler is called without any optimisation flags, which is required (the compiler can't deduce that the data is zeroes) and also helps with the build time because then the compiler won't try to optimise. This isn't enabled by default because it doesn't work under some scenarios: * LTCG * generators that don't support custom commands (Xcodeproj, for example) * object file formats that "compress" the data (a large section of zeroes is highly compressible) -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest