Skip to content

Commit

Permalink
Merge branch 'main' into feature/mirtest-internal-dev
Browse files Browse the repository at this point in the history
  • Loading branch information
mattkae committed Apr 26, 2024
2 parents 6e9cea3 + 25ade62 commit 497950b
Show file tree
Hide file tree
Showing 8 changed files with 354 additions and 120 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/symbols-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,5 @@ jobs:
cmake --build build --target check-miral-symbols-map || RET=$?
cmake --build build --target check-miroil-symbols-map || RET=$?
cmake --build build --target check-mirserver-symbols-map || RET=$?
exit $RET
cmake --build build --target check-mircommon-symbols-map || RET=$?
exit $RET
16 changes: 16 additions & 0 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,22 @@ Description: Display server for Ubuntu - development headers
.
Contains header files required for server and/or client development.

Package: libmircommon-internal-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: libmircommon10 (= ${binary:Version}),
libmircommon-dev (= ${binary:Version}),
libxkbcommon-dev,
${misc:Depends},
Description: Display server for Ubuntu - development headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package contains internal headers with no stability guarantee, for servers
that wish to use functionality for which no public API exists yet.

Package: libmirplatform-dev
Section: libdevel
Architecture: linux-any
Expand Down
3 changes: 3 additions & 0 deletions debian/libmircommon-internal-dev.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
usr/include/mircommon-internal
usr/lib/*/libmircommon.so
usr/lib/*/pkgconfig/mircommon-internal.pc
2 changes: 1 addition & 1 deletion doc/sphinx/reuse/links.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.. _Canonical website: https://canonical.com/

.. _Code of conduct: https://ubuntu.com/community/ethos/code-of-conduct
.. _Get support: https://discourse.canonical.com/c/mir/15
.. _Get support: https://discourse.ubuntu.com/c/mir/15
.. _Join our online chat: https://matrix.to/#/#mir-server:matrix.org
.. _Contribute: how-to/getting_involved_in_mir
51 changes: 46 additions & 5 deletions src/common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,12 +94,53 @@ install(
)

install(
DIRECTORY ${CMAKE_SOURCE_DIR}/include/common/mir_toolkit
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/mircommon"
DIRECTORY ${CMAKE_SOURCE_DIR}/src/include/common/mir
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/mircommon-internal"
)

install(
DIRECTORY ${CMAKE_SOURCE_DIR}/include/common/mir_toolkit
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/mircommon"
)

configure_file(${CMAKE_CURRENT_SOURCE_DIR}/mircommon.pc.in
${CMAKE_CURRENT_BINARY_DIR}/mircommon.pc
@ONLY
${CMAKE_CURRENT_BINARY_DIR}/mircommon.pc
@ONLY
)

configure_file(${CMAKE_CURRENT_SOURCE_DIR}/mircommon-internal.pc.in
${CMAKE_CURRENT_BINARY_DIR}/mircommon-internal.pc
@ONLY
)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/mircommon.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")

install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/mircommon.pc
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/mircommon-internal.pc
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
)

add_custom_target(
generate-mircommon-symbols-map
COMMAND ${PROJECT_SOURCE_DIR}/tools/symbols_map_generator/main.py
--library-name mir_common
--version ${MIR_VERSION_MAJOR}.${MIR_VERSION_MINOR}
--symbols-map-path="${CMAKE_CURRENT_SOURCE_DIR}/symbols.map"
--external-headers-directory="${PROJECT_SOURCE_DIR}/include/common"
--internal-headers-directory="${PROJECT_SOURCE_DIR}/src/include/common"
--include-dirs="$<JOIN:$<TARGET_PROPERTY:mirserver,INCLUDE_DIRECTORIES>,:>"
WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}")

add_custom_target(
check-mircommon-symbols-map
COMMAND ${PROJECT_SOURCE_DIR}/tools/symbols_map_generator/main.py
--library-name mir_common
--version ${MIR_VERSION_MAJOR}.${MIR_VERSION_MINOR}
--symbols-map-path="${CMAKE_CURRENT_SOURCE_DIR}/symbols.map"
--external-headers-directory="${PROJECT_SOURCE_DIR}/include/common"
--internal-headers-directory="${PROJECT_SOURCE_DIR}/src/include/common"
--include-dirs="$<JOIN:$<TARGET_PROPERTY:mirserver,INCLUDE_DIRECTORIES>,:>"
--diff
WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}")
8 changes: 8 additions & 0 deletions src/common/mircommon-internal.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
prefix=@CMAKE_INSTALL_PREFIX@
includedir=@PKGCONFIG_INCLUDEDIR@/mircommon-internal

Name: mircommon-internal
Description: Mir server internal headers
Version: @MIR_VERSION@
Libs: -L${libdir} -lmircommon
Cflags: -I${includedir}
Loading

0 comments on commit 497950b

Please sign in to comment.