19d49de6f1
x86 doesn't care about alignment, and on all other platforms where it does something it causes build errors, so instead of removing it on those platforms just don't enable it at all. Change-Id: Idfeb387099b28af60ba161b6ca678b7c9df17fe1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
48 lines
1.8 KiB
Plaintext
48 lines
1.8 KiB
Plaintext
# The headersclean test attempts to ensure all public Qt headers
|
|
# abide by various rules.
|
|
#
|
|
# To use this test, create a project which contains nothing else than a
|
|
# QT= line with the modules you want to test (no presence conditionals needed),
|
|
# followed by load(qt_headersclean).
|
|
|
|
*-g++*: QMAKE_CXXFLAGS += -W -Wall -Wextra -Werror
|
|
|
|
# The flags here come from http://wiki.qt-project.org/Coding_Conventions#Conventions_for_public_header_files
|
|
# -Wold-style-cast cannot be used, /usr/include/bits/byteswap.h defines the macro bswap_16 using C style casts :(
|
|
# -Wfloat-equal cannot be used, qrect.h and qvector2d.h do exact comparisons in isNull and operator==. Would need #pragmas.
|
|
*-g++*: QMAKE_CXXFLAGS += -Woverloaded-virtual -Wshadow -Wundef
|
|
|
|
# Other nice flags
|
|
*-g++*: QMAKE_CXXFLAGS += -Wnon-virtual-dtor -ansi -Wchar-subscripts -Wpointer-arith -Wformat-security
|
|
|
|
# Enable pedantic mode, but accept variadic macros and 'long long' usage.
|
|
*-g++*: QMAKE_CXXFLAGS += -Wno-long-long -Wno-variadic-macros -pedantic-errors
|
|
|
|
QMAKE_CXXFLAGS += -DQT_NO_CAST_TO_ASCII \
|
|
-DQT_NO_CAST_FROM_ASCII \
|
|
-DQT_STRICT_ITERATORS \
|
|
-DQT_NO_URL_CAST_FROM_STRING \
|
|
-DQT_NO_CAST_FROM_BYTEARRAY \
|
|
-DQT_NO_KEYWORDS \
|
|
-DQT_USE_FAST_CONCATENATION \
|
|
-DQT_USE_FAST_OPERATOR_PLUS
|
|
|
|
TARGET = tst_headersclean
|
|
|
|
includes =
|
|
for(q, QT) {
|
|
sq = $$replace(q, -private\$, )
|
|
qn = $$eval(QT.$${sq}.name)
|
|
isEmpty(qn): \
|
|
QT -= $$q
|
|
else: \
|
|
includes += "$${LITERAL_HASH}include <$$qn/$$qn>"
|
|
}
|
|
includes = $$join(includes, $$escape_expand(\\n))
|
|
|
|
testfile.input = $$PWD/data/headersclean/tst_headersclean.cpp.in
|
|
testfile.output = $$OUT_PWD/tst_headersclean.cpp
|
|
QMAKE_SUBSTITUTES += testfile
|
|
|
|
SOURCES += $$testfile.output
|