The include directory structure isn't discriminating enough
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mir |
Fix Released
|
Undecided
|
Alan Griffiths |
Bug Description
There is a lack of precision around our mir directory structure, and it is
beginning to matter.
What I think we need is four separate roots for include files (not sure of the names. please bear with me):
1. server_include
2. shared_include
3. client_include
4. test_include
Different parts of the codebase should be compiled with appropriate combinations of the above.
1. server_include & 2. shared_include
server_include and shared_include should have both mir and mir_toolkit subdirectories (Examples of what belongs in shared_include/mir are graphics and protobuf - the rest of include/mir belongs to server_include)
3. client_include
I think client_include just needs a toolkit subdirectory.
4. test_include
test_include would include the current mir_test, mir_test_cucumber, mir_test_doubles and mir_test_framework
Packaging the client toolkit headers would pick up shared_
~~~~
One obvious alternative is:
1. include/server
2. include/shared
3. include/client
4. include/test
With subdirectories as above.
Related branches
- PS Jenkins bot (community): Approve (continuous-integration)
- Daniel van Vugt: Approve
- Kevin DuBois (community): Needs Fixing
- Alexandros Frantzis (community): Abstain
-
Diff: 856 lines (+176/-159)45 files modifiedCMakeLists.txt (+1/-1)
debian/libmirclient-demos.examples (+3/-3)
examples/CMakeLists.txt (+5/-1)
include/test/mir_test/fake_event_hub_input_configuration.h (+1/-1)
include/test/mir_test_doubles/mock_alloc_adaptor.h (+2/-2)
src/CMakeLists.txt (+2/-89)
src/client/CMakeLists.txt (+4/-4)
src/server/CMakeLists.txt (+89/-0)
src/shared/CMakeLists.txt (+8/-0)
tests/CMakeLists.txt (+4/-0)
tests/behavior-tests/session_management_context.cpp (+1/-1)
tests/behavior-tests/session_manager_steps.cpp (+1/-1)
tests/integration-tests/CMakeLists.txt (+0/-1)
tests/integration-tests/client/test_client_render.cpp (+3/-3)
tests/integration-tests/cucumber/test_session_management_context.cpp (+1/-1)
tests/integration-tests/graphics/android/test_buffer_integration.cpp (+3/-3)
tests/integration-tests/graphics/gbm/test_buffer_integration.cpp (+3/-3)
tests/integration-tests/input/android/test_android_cursor_listener.cpp (+2/-2)
tests/integration-tests/input/android/test_android_input_manager.cpp (+2/-2)
tests/integration-tests/input/android/test_fake_event_hub_to_event_filter.cpp (+3/-3)
tests/mir_test_doubles/test_protobuf_socket_server.cpp (+1/-1)
tests/unit-tests/compositor/test_temporary_buffers.cpp (+1/-1)
tests/unit-tests/frontend/test_application_mediator.cpp (+1/-1)
tests/unit-tests/graphics/android/test_android_alloc_adaptor.cpp (+1/-1)
tests/unit-tests/graphics/android/test_android_alloc_adaptor_native_win.cpp (+1/-1)
tests/unit-tests/graphics/android/test_android_buffer.cpp (+1/-1)
tests/unit-tests/graphics/android/test_android_buffer_allocator.cpp (+1/-1)
tests/unit-tests/graphics/android/test_android_fb.cpp (+2/-2)
tests/unit-tests/graphics/android/test_android_framebuffer_window.cpp (+1/-1)
tests/unit-tests/graphics/gbm/test_gbm_buffer.cpp (+3/-3)
tests/unit-tests/graphics/gbm/test_gbm_buffer_allocator.cpp (+2/-2)
tests/unit-tests/graphics/gbm/test_gbm_display.cpp (+2/-2)
tests/unit-tests/graphics/gbm/test_gbm_display_configuration.cpp (+2/-2)
tests/unit-tests/graphics/gbm/test_gbm_display_multi_monitor.cpp (+1/-1)
tests/unit-tests/graphics/gbm/test_kms_output.cpp (+2/-2)
tests/unit-tests/graphics/gbm/test_kms_page_flipper.cpp (+4/-4)
tests/unit-tests/input/android/test_android_input_lexicon.cpp (+1/-1)
tests/unit-tests/input/android/test_android_input_manager.cpp (+4/-4)
tests/unit-tests/input/android/test_android_input_reader_policy.cpp (+1/-1)
tests/unit-tests/input/android/test_android_pointer_controller.cpp (+1/-1)
tests/unit-tests/input/android/test_event_filter_chain.cpp (+1/-1)
tests/unit-tests/input/android/test_event_filter_input_dispatcher_policy.cpp (+1/-1)
tests/unit-tests/shell/test_application_session.cpp (+1/-1)
tests/unit-tests/shell/test_session_manager.cpp (+1/-1)
tests/unit-tests/surfaces/test_proxy_surface.cpp (+1/-1)
Changed in mir: | |
milestone: | none → 0.0.3 |
assignee: | nobody → Alan Griffiths (alan-griffiths) |
Changed in mir: | |
status: | Fix Committed → Fix Released |
Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.0.2