Merge lp:~aacid/unity8/buildWithNinja into lp:unity8
| Status: | Merged |
|---|---|
| Approved by: | Michael Zanetti on 2015-01-19 |
| Approved revision: | 1561 |
| Merged at revision: | 1564 |
| Proposed branch: | lp:~aacid/unity8/buildWithNinja |
| Merge into: | lp:unity8 |
| Diff against target: |
28 lines (+2/-6) 2 files modified
tests/mocks/LightDM/CMakeLists.txt (+1/-2) tests/plugins/LightDM/CMakeLists.txt (+1/-4) |
| To merge this branch: | bzr merge lp:~aacid/unity8/buildWithNinja |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Michael Zanetti (community) | Approve on 2015-01-19 | ||
| Antti Kaijanmäki (community) | 2015-01-19 | Approve on 2015-01-19 | |
|
Review via email:
|
|||
Commit Message
Build with ninja
Description of the Change
* Are there any related MPs required for this MP to build/function as expected?
No
* Did you perform an exploratory manual test run of your code change and any related functionality?
No, Buildsystem only changes
* Did you make sure that your branch does not contain spurious tags?
Yes
* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
N/A
* If you changed the UI, has there been a design review?
N/A
| Michael Zanetti (mzanetti) wrote : | # |
* Did you perform an exploratory manual test run of the code change and any related functionality?
yes, builds fine with ninja now, still builds fine with plain make
* Did CI run pass? If not, please explain why.
waiting....
* Did you make sure that the branch does not contain spurious tags?
yes

Yep. incomplete dependency declarations in the CMakeLists.txt file.
[467/787] Linking CXX executable tests/plugins/ LightDM/ GreeterDBusTest Exec LightDM/ CMakeFiles/ GreeterDBusTest Exec.dir/ dbus.cpp. o tests/plugins/ LightDM/ CMakeFiles/ GreeterDBusTest Exec.dir/ __/__/_ _/plugins/ LightDM/ Greeter. cpp.o tests/plugins/ LightDM/ CMakeFiles/ GreeterDBusTest Exec.dir/ GreeterDBusTest Exec_automoc. cpp.o -o tests/plugins/ LightDM/ GreeterDBusTest Exec -rdynamic /usr/lib/ x86_64- linux-gnu/ libQt5Core. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5DBus. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5Quick. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5Test. so.5.3. 2 -L/home/ antti/branches/ unity8/ unity8/ builddir/ tests/mocks/ LightDM/ full -llightdm-qt5-2 /usr/lib/ x86_64- linux-gnu/ libQt5Qml. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5Network. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5Gui. so.5.3. 2 /usr/lib/ x86_64- linux-gnu/ libQt5Core. so.5.3. 2 && : ld.bfd. real: cannot find -llightdm-qt5-2
FAILED: : && /usr/bin/ccache g++ -fvisibility=hidden -std=c++11 -fno-permissive -pedantic -Wall -Wextra -g tests/plugins/
/usr/bin/
collect2: error: ld returned 1 exit status
There was a target dependency missing. Plain cmake just happens to build the targets in an order that the .so files just happened to be available but ninja reordered the build because it didn't (and couldn't) know about the dependency.
This MP fixes the ninja build, and the CMakeLists.txt causing the failure.