summaryrefslogtreecommitdiffstats
path: root/mkspecs
Commit message (Collapse)AuthorAgeFilesLines
* winrt: Update capability management to include IOT namespaceAndy Shaw2020-03-112-1/+6
| | | | | Change-Id: Ib24ecb70454af5ab2e82ebbdc1fed9ef2a52bbb1 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* MinGW: Fix debug-and-release configurationKai Koehne2020-02-272-2/+2
| | | | | | | | | | Make sure that, if Qt was configured with -debug-and-release, winmain and user apps are generated by default in debug-and-release mode, too. This amends 9b4ec1393fde2af7deb39b9a2f98bcc93635603f . Change-Id: I0f169d63ca98c9bde41114225004a0844425db33 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Delay the processing of the doc features to the endAndy Shaw2020-02-251-1/+4
| | | | | | | | | | | By delaying it to the end we can be sure that all the Qt modules have their INCLUDEPATHs set and as a result we can avoid long command lines on Windows. Change-Id: I9068f7bf66fe138aad1a633191677a57dfd08d6e Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Topi Reiniö <topi.reinio@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* qmake: Fix handling of QM_FILES_INSTALL_PATHKai Koehne2020-02-181-0/+1
| | | | | | | | | Do not expect the .qm files to be there at qmake time; they will only be generated at build time. Fixes: QTBUG-77398 Change-Id: If73fdb51d40138e52f62eaee0491a5d73d9fe161 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* wasm: remove dependency on perl to find emscripten versionLorn Potter2020-02-171-1/+3
| | | | | | Change-Id: I0d5224d497b2b5652d1be036f2a90c6c53f0c9df Fixes: QTBUG-81722 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix ANDROID_XXXX replace qmake function callBogDan Vatra2020-02-111-4/+4
| | | | | | | | | | The second parameter of replace is a regex, therefore trying to replace strings like "plugins/sensors/libplugins_sensors_qtsensors_android.so" will result to super strange results. Fixes: QTBUG-81974 Change-Id: I887e70f4fd8fa2af482a60f63af371f954b56ce1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake Support: Fix dependent libraries search for MinGW and CMake 3.17Cristian Adam2020-02-101-1/+1
| | | | | | Fixes: QTBUG-81903 Change-Id: Ie2847e38c196c1f9d664b1a35339cca5ebf424cc Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Android: Make sure that it can find qrc files created via the pro fileAndy Shaw2020-02-101-4/+12
| | | | | | | | | | | Since Android will place the created qrc files in their own architecture then we need to make sure that we account for this when returning a list of all the resources. This is so that when other files are created that depend on this list, it is able to find them. Fixes: QTBUG-81477 Change-Id: I4a083c1c5c3e0aec35649cf7f5419cf3c6a75eae Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add function for initializing plugin resources for static buildsJoerg Bornemann2020-01-302-34/+46
| | | | | | | | | | Also move the setting of default RCC_DIR into qtFlattenResources as we need a valid RCC_DIR there. Fixes: QTBUG-81699 Fixes: QTBUG-81713 Change-Id: I7558d99f3aca75d2e9cad0ec89fbb0aa0758dcc7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/5.14.1' into 5.14Liang Qi2020-01-286-21/+46
|\ | | | | | | | | | | | | | | Conflicts: mkspecs/features/create_cmake.prf Done-With: Artem Pisarenko <artem.k.pisarenko@gmail.com> Change-Id: I2ecb9fdca06fe687be8ab3457a58dd81e5e81c4c
| * Fix qtPlatformTargetSuffix for darwin platformsv5.14.1Joerg Bornemann2020-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | Commit 1749f918 changed a "mac" scope to a "macos" scope (thanks to the enormously helpful hint from in^Wsanity bot). Instead it should use "darwin", because that's what is equivalent to "mac". Fixes: QTBUG-81599 Change-Id: I0fd82f984945836a5b7b1bea5ed2117a2f676947 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * MinGW: Fix debug builds of applicationsKai Koehne2020-01-222-20/+38
| | | | | | | | | | | | | | | | | | | | | | | | Only expect debug Qt libs with 'd' suffix if Qt was configured with -debug-and-release. This partially amends 9b4ec1393f and 4d289edb1 . Fixes: QTBUG-81325 Change-Id: I56c8965272265cf0a91351aae29d648b8687ec77 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * [CMake] Fix handling Qt frameworks link flags in static lib depsAlexandru Croitor2020-01-181-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | QMAKE_PRL_LIBS_FOR_CMAKE can contain "-F/foo/bar" entries which are search paths for where frameworks should be found. These should be passed as HINTS to find_library when searching for frameworks. Fixes: QTBUG-81369 Change-Id: I4f699800bd49a1f368b6132823e23d08d1fae604 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Android: Use the values rather than the variables with str_memberAndy Shaw2020-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | This amends ce04fa345dbe52a022b592dde3ff49514c66b4c2 to correctly get the information out of the variables when using str_member and str_size, as it wants a string rather than a variable for these. Fixes: QTBUG-80582 Change-Id: I8e18e05c605ba1596a7ed7a013f5c6677ab76891 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Merge 5.14 into 5.14.1Kari Oikarinen2020-01-153-7/+11
| |\ | | | | | | | | | Change-Id: Ie90edfd16f48e1907fd18288473ac403f62b9032
| * | Handle resources with dots in the qrc file nameTor Arne Vestbø2020-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were removing the .qrc suffix of resources in a way that assumed the filenames would not have any dots in them, but this is not always the case, and we would end up resolving an empty resource name for file names such as .rcc-bar.qrc (e.g. as produced by the qmlcache system). We now remove the .qrc extension explicitly. Change-Id: I50e1d88ac71ca1335bb05f3dbbb2d9bb441a8d64 Fixes: QTBUG-81255 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | yacc: Output the path for the move with the right directory separatorAndy Shaw2020-01-131-2/+2
| | | | | | | | | | | | | | | Change-Id: Ic075711062750dde3e3a6bc7a5ba8da25ddecfe9 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Fix handling of the DEFINES_DEBUG/DEFINES_RELEASE variablesJoerg Bornemann2020-01-232-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modifications of the CONFIG variable in the project file wasn't taken into account in the handling of DEFINES_DEBUG and DEFINES_RELEASE, because it was happening before the evaluation of the project file. Moved the handling code into default_post.prf where the other *_DEBUG and *_RELEASE variables are handled. In practice that means: to avoid the addition of the NDEBUG define one has to remove NDEBUG from DEFINES_RELEASE. This amends commit 1456b809. [ChangeLog][qmake] To remove the NDEBUG define that is added by default in MSVC mkspecs, write DEFINES_RELEASE -= NDEBUG in your .pro file. Fixes: QTBUG-81569 Change-Id: I2ea5628653275a4e48ad002977d34969c0663815 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | | wasm: fix redundant string conversions between wasm and JavaScriptAlexandra Cherdantseva2020-01-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid redundant conversions from UTF16 to UTF8 to UTF16 with help of new class QWasmString static methods: + QWasmString::fromQString to convert QString to js string using js Module.UTF16ToString + QWasmString::toQString to convert js string to QString using js Module.stringToUTF16 Fixed document.getElementById calls for cavasId with unicode characters. Change-Id: I3fc55bfeb6aeda75fa3acd85d22cea667b542f38 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
* | | Fix win32 support for linking against static builds in CMakeArtem Pisarenko2020-01-191-28/+13
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | CMake mkspec feature sets CMAKE_PRL_FILE_LOCATION_* values inconsistent with actual .prl file names being generated/installed, causing dependency extraction mechanism in Qt5BasicConfig.cmake.in to not work (function _qt5_$${CMAKE_MODULE_NAME}_process_prl_file silently fails to find file at given location and skips filling libs deps). [ChangeLog][CMake][Windows] Fixed linking with Qt static build Fixes: QTBUG-81401 Change-Id: I5861cc0c42163d898ba55ad83cbad1994dcb1db2 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Fix isysroot for simulator only builds on iosMichal Klocek2020-01-131-5/+8
| | | | | | | | | | | | | | | | | | | | When not doing fat builds, QMAKE_MAC_SDK_PATH defaults to iphoneos sysroot, which breaks compilation. This fixes compilation when user sets also CONFIG-=device Change-Id: I1d18269946cd2a5608e26d943159c824f31db09a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Bump copyright yearJani Heikkinen2020-01-091-1/+1
| | | | | | | | | | | | Change-Id: I9468ef21a2cf03cf07c38f012a2aa9bae6d02a03 Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Android: make sure we don't add _$${QT_ARCH} twiceBogDan Vatra2020-01-091-1/+2
|/ | | | | | Fixes: QTBUG-80582 Change-Id: I2b3790bb18754e146db611d61c48a3b7a532575c Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* MinGW: Allow debug-and-release buildsKai Koehne2020-01-061-1/+1
| | | | | | | | | | | | | | Commit 4d289edb14aeb49 did disable debug-and-release for MinGW completely. While it makes sense to change the default, we should allow people to opt-in to old behavior by explicitly setting '-debug-and-release'. To allow differentiation between debug and release libraries debug dll's (again) have a 'd' suffix. Fixes: QTBUG-80792 Change-Id: I341b1a94788f490e975be6736159980cd9273f08 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Fix usage requirements for static builds of Qt on macOSJoerg Bornemann2020-01-061-9/+19
| | | | | | | | | | | | | | | | When scanning the prl files to set up usage requirements for the Qt libraries we omitted "-framework Foo" flags. Those were passed as linker flags, but not as interface libraries. Consequently, the frameworks that are used by Qt libraries were missing on the link line when building against a statically built Qt. Fix this issue by scanning the dependencies for "-framework Foo" just like we do with "-lfoo" flags. Fixes: QTBUG-80855 Change-Id: Ie7804304141c86207d143a6e1005e78bdc099113 Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Kyle Edwards <kyle.edwards@kitware.com>
* Always add the extra Android apk and aab targetsAndy Shaw2020-01-021-2/+1
| | | | | | | | | | The extra targets should be added to the project regardless so that qmake can handle it appropriately. This enables make apk to work correctly then from a SUBDIRS project. Fixes: QTBUG-80351 Change-Id: If5903e0d2f543babfdb4ebbb13502e32ab97c6fc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* dumpcpp: Use tblCopy to ensure the path is detected correctlyAndy Shaw2020-01-021-2/+2
| | | | | | | This amends faf742b05d0564a58bfe0290e53e0b2844bc59c1 Change-Id: Ia80a4274f61d895c297b2fae5df62c86db95c14c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* iOS: Silence GL deprecations until we can fix themTor Arne Vestbø2019-12-201-0/+2
| | | | | Change-Id: I1222708be5017a0dca381f365349fce5887a0bcb Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Xcode: Disable GPU frame capture and Metal API validation by defaultTor Arne Vestbø2019-12-181-0/+2
| | | | | | | | | | The auto-detection Xcode has for whether GPU capture should be enabled always enables it for our projects, which adds up to second to the startup time when debugging. There's no need to pay this cost unless you're actively debugging Metal code. Change-Id: I4a76c4e7afedad4bb43395ae64bc0f8d62eca6be Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* wasm: do not use clamp mode for upstream LLVMLorn Potter2019-12-163-25/+29
| | | | | | | | | | Emscripten version 1.39.0 and above are based upon upstream LLVM, which does not contain BINARYEN_TRAP_MODE Fixes: QTBUG-80691 Change-Id: I6129f84a31a607c202e13847b50705ef1c809630 Reviewed-by: jian liang <jianliang79@gmail.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Merge remote-tracking branch 'origin/5.14.0' into 5.14Qt Forward Merge Bot2019-12-132-1/+7
|\ | | | | | | Change-Id: I03927d2ef75514e4f2633839387806125d8954f1
| * Set proper TARGET name for libsBogDan Vatra2019-11-291-0/+1
| | | | | | | | | | | | | | | | | | When doing a multi ABI build in one go, if the TARGET is the same, we'll endup with only one library which is not okay. Task-number: QTBUG-80351 Change-Id: I0c5ff24480446d671e59dbd5a045f9889dff39e9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Fix passing FOO_LIBS variables to configureJoerg Bornemann2019-11-191-1/+6
| | | | | | | | | | | | | | | | | | This amends commit 9864d2c6. Some variables that are set in qtConfLibrary_inline were not exported. Fixes: QTBUG-78873 Change-Id: I10d766c1f41d2baa61967ee931a6631346cac2e9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Account for when qtquickcompiler is used when getting the resourcesAndy Shaw2019-12-121-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | When passing the resources used to the android deployment setting json file it needs to check the variable generated by the qtquickcompiler feature so that it can still find the qrc files originally populated in the resources. This ensures that qmlimportscanner can still scan the original qrc files when determining which QML import plugins are needed. Fixes: QTBUG-80713 Change-Id: I695b289eaaa78cc6c355fa8abd22a8a1031a9f6c Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | wasm: enforce emscripten versionLorn Potter2019-12-112-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | This creates a define in the binary, as well as writing emscripten version for qmake. It also enforces app builder to use a certain known version. Task-number: QTBUG-77745 Change-Id: I37691512171635cec66aa3ffa16258081f3f1e1b Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Fix calls to qtFlattenResources from outside resources.prfJoerg Bornemann2019-12-102-14/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | The xml_escape function must be part of resources_functions.prf, and the qmake_immediate resource must not be created multiple times. Instead, create another qmake_immediate resource with a number suffix. This commit amends 577b6554. Task-number: QTBUG-79672 Change-Id: Ibbe20c0fd1940f1fe7733cd1e5b0891f65689782 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | wasm: Fix clamp modeLorn Potter2019-12-101-1/+1
| | | | | | | | | | | | | | | | Clamp mode was being obliterated by not appending to EMCC_COMMON_LFLAGS This fixes crashes of integer overflow Change-Id: Icae757a7189de25db5ed41df6d41d86304c39830 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | WebAssembly: Do not use sed directly for wasm_shell.html deploymentJoerg Bornemann2019-12-091-1/+1
| | | | | | | | | | | | | | | | | | Use $$QMAKE_STREAM_EDITOR, instead, which will on Windows expand to "qmake -install sed" (triggering qmake's own sed implementation) and otherwise expand to "sed". Change-Id: I57da5fb3a4f6e5a09ae25c947caa0a10d279b480 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* | Fix CONFIG += cmdline testcase creating app bundle paths in MakefilesAaron Linville2019-11-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | Fix an issue where qmake on macOS will generate a Makefile with a path to a macOS bundle instead of a bundle-less executable in the Makefile's check rule if cmdline is specified before testcase in the CONFIG options. Fixes: QTBUG-80280 Change-Id: Icc9ee1355b0641981ce79526b36f29957e1afb00 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Get make docs working better on macOSAndy Shaw2019-11-251-1/+2
| | | | | | | | | | | | | | | | The system include paths need to be added to the include paths passed to Clang so it can find the standard types. Change-Id: I83e13e73a606130e3bc4762b01368bcd4a8bb0dc Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | CMake: Fix static build linkage with CMake version lower than 3.13Alexandru Croitor2019-11-251-8/+26
|/ | | | | | | | | | | | | | | | | | | | | | | | After appropriate link flags are determined, they are added to the INTERFACE_LINK_OPTIONS property. Unfortunately this property was added in 3.13, and thus static builds on Windows for instance failed with missing symbols due to missing system libraries on the link command line, when the CMake version was lower. When detecting a lower version, add the flags instead to INTERFACE_LINK_LIBRARIES, which is a property that is available in older CMake versions. To do this we have to strip the SHELL: prefix, which means that the added link flags might get deduplicated, and thus it can happen that the linking phase might still fail. Nevertheless, on Windows this improves the situation when using an older CMake version. Amends 44602224bfae7bea08e5883768cfeef6629ac503 Task-number: QTBUG-38913 Change-Id: Ib710b8ea691d4a9281dcd5f5b9700b11df0a5c10 Reviewed-by: Kyle Edwards <kyle.edwards@kitware.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add support for passing qrc files to qmlimportscannerAndy Shaw2019-11-131-0/+16
| | | | | | | | | | | | With the qrcFiles entry in the deployment JSON for Android, it can now pass this on to qmlimportscanner for scanning the qrc files for the available imports. This enables qmake to populate the qrc files it has referenced in the project, be it generated by qmake or added by the user. Task-number: QTBUG-55259 Change-Id: Ic512ce6f24508b3ea09ebdd07ac4446debfd9155 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-11-132-0/+7
|\ | | | | | | | | | | | | | | Conflicts: examples/widgets/widgets/scribble/mainwindow.cpp This amends cb54c16584cf3be746a1a536c1e37cb3022a2f1b. Change-Id: Iaae60a893330524b2973917e23b31f9d51f8bd38
| * Fix LTCG linker flags for macOS with separate debug infoJoerg Bornemann2019-11-082-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The linker must not throw away the lto.o file. We now instruct the linker to create a non-temporary lto.o, dependent on the target name. In order to do that we introduce a new mkspec variable QMAKE_LFLAGS_LTCG_SEPARATE_DEBUG_INFO. This variable can contain single-$ variable references that get evaluated when loading ltcg.prf. Fixes: QTBUG-72846 Change-Id: I0ea882628d63e5406ba0ee68c7435af597364b0f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.13' into 5.14"Qt Forward Merge Bot2019-11-065-60/+70
|\ \
| * | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-11-065-60/+70
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf mkspecs/features/mac/default_post.prf src/corelib/tools/qsimd_p.h src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm util/qfloat16-tables/gen_qfloat16_tables.cpp Change-Id: If48fa8a3bc3c983706b609a6d3822cb67c1352a4
| | * Move RESOURCE flattening code to dedicated functionJoerg Bornemann2019-11-052-57/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce resources_functions.prf with the test function qtFlattenResources which ensures that RESOURCES has a flat structure, e.g. only contains *.qrc entries. This can be called by other .prf files like qtquickcompiler.prf without disturbing the ability to extend RESOURCES in other .prf files. Task-number: QTBUG-79672 Change-Id: I43246e40f5ea52a9d9c917a1bd781aeeb1304acc Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| | * Fix regression in how "pkg-config --static" output is handledKai Koehne2019-11-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change a1ea49878927dfe2 did replace different pkg-config calls for -L, -l arguments to one. Anyhow, it also removed the eval() call that ensured that the return string was split by whitespace, meaning that paths couldn't resolve anymore properly if multiple arguments were returned. Fixes: QTBUG-79668 Change-Id: I4091fea6891ef79836e05f8e87ffa9d69863a8f5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * Fix cross-compilation to LinuxJoerg Bornemann2019-11-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CROSS_COMPILE variable wasn't picked up by the linux-g++ mkspec. Now it's possible to cross-build Qt on FreeBSD to Linux, for example. Fixes: QTBUG-79255 Change-Id: Ib1cd8ed3d5ef0af42f2d47af8f6d2c2ff5356adc Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | * Merge remote-tracking branch 'origin/5.13.2' into 5.13Qt Forward Merge Bot2019-10-302-16/+17
| | |\ | | | | | | | | | | | | Change-Id: Ieb5afc87086758119bcfc8efbe355f5c0a93fc04