mirror of
https://github.com/hyprwm/Hyprland
synced 2024-12-22 09:29:48 +01:00
build: Unbreak build on FreeBSD by adjusting dependencies (#5595)
* deps: add epoll-shim for some BSDs after863c7b6072
ld: error: undefined symbol: timerfd_create >>> referenced by EventLoopManager.cpp >>> src/Hyprland.p/managers_eventLoop_EventLoopManager.cpp.o:(CEventLoopManager::CEventLoopManager()) ld: error: undefined symbol: timerfd_settime >>> referenced by EventLoopManager.cpp >>> src/Hyprland.p/managers_eventLoop_EventLoopManager.cpp.o:(CEventLoopManager::nudgeTimers()) See also https://github.com/freebsd/freebsd-src/commit/af93fea71038 https://github.com/netbsd/src/commit/75f1bc6655cf * deps: drop unused xcb-image after45945a3e7d
$ pkg install <hyprland dependencies> $ pkg install meson jq `pkg rquery %dn wlroots` hwdata $ gmake all [...] -- Checking for modules 'xcb;xwayland;xcb-util;xcb-render;xcb-image;xcb-xfixes;xcb-icccm;xcb-composite;xcb-res;xcb-ewmh' -- Package 'xcb-image' not found CMake Error at /usr/local/share/cmake/Modules/FindPkgConfig.cmake:619 (message): The following required packages were not found: - xcb-image Call Stack (most recent call first): /usr/local/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal) CMakeLists.txt:177 (pkg_check_modules) See also https://github.com/swaywm/wlroots/commit/ae7c3f3d1c56
This commit is contained in:
parent
1719905e7f
commit
2ea367839b
4 changed files with 11 additions and 2 deletions
|
@ -164,6 +164,12 @@ if(HAVE_LIBEXECINFO)
|
|||
target_link_libraries(Hyprland execinfo)
|
||||
endif()
|
||||
|
||||
check_include_file("sys/timerfd.h" HAS_TIMERFD)
|
||||
pkg_check_modules(epoll IMPORTED_TARGET epoll-shim)
|
||||
if(NOT HAS_TIMERFD AND epoll_FOUND)
|
||||
target_link_libraries(Hyprland PkgConfig::epoll)
|
||||
endif()
|
||||
|
||||
if(LEGACY_RENDERER)
|
||||
message(STATUS "Using the legacy GLES2 renderer!")
|
||||
add_compile_definitions(LEGACY_RENDERER)
|
||||
|
@ -174,7 +180,7 @@ if(NO_XWAYLAND)
|
|||
add_compile_definitions(NO_XWAYLAND)
|
||||
else()
|
||||
message(STATUS "XWAYLAND Enabled (NO_XWAYLAND not defined) checking deps...")
|
||||
pkg_check_modules(xdeps REQUIRED IMPORTED_TARGET xcb xwayland xcb-util xcb-render xcb-image xcb-xfixes xcb-icccm xcb-composite xcb-res xcb-ewmh)
|
||||
pkg_check_modules(xdeps REQUIRED IMPORTED_TARGET xcb xwayland xcb-util xcb-render xcb-xfixes xcb-icccm xcb-composite xcb-res xcb-ewmh)
|
||||
pkg_check_modules(xcb_errors IMPORTED_TARGET xcb-errors)
|
||||
target_link_libraries(Hyprland PkgConfig::xdeps)
|
||||
if(xcb_errors_FOUND)
|
||||
|
|
|
@ -51,6 +51,7 @@ if not have_xwayland
|
|||
endif
|
||||
|
||||
backtrace_dep = cpp_compiler.find_library('execinfo', required: false)
|
||||
epoll_dep = dependency('epoll-shim', required: false) # timerfd on BSDs
|
||||
systemd_dep = dependency('libsystemd', required: get_option('systemd'))
|
||||
|
||||
if get_option('systemd').enabled()
|
||||
|
|
|
@ -46,13 +46,14 @@ index 45701f5f..3505cefe 100644
|
|||
dependency('cairo'),
|
||||
dependency('hyprcursor'),
|
||||
dependency('hyprlang', version: '>= 0.3.2'),
|
||||
@@ -16,12 +16,12 @@ executable('Hyprland', src,
|
||||
@@ -17,11 +17,11 @@ executable('Hyprland', src,
|
||||
dependency('egl'),
|
||||
dependency('xkbcommon'),
|
||||
dependency('libinput'),
|
||||
- xcb_dep,
|
||||
+ dependency('xcb', required: get_option('xwayland')),
|
||||
backtrace_dep,
|
||||
epoll_dep,
|
||||
systemd_dep,
|
||||
- udis86,
|
||||
+ dependency('udis86'),
|
||||
|
|
|
@ -19,6 +19,7 @@ executable('Hyprland', src,
|
|||
dependency('libinput'),
|
||||
xcb_dep,
|
||||
backtrace_dep,
|
||||
epoll_dep,
|
||||
systemd_dep,
|
||||
udis86,
|
||||
|
||||
|
|
Loading…
Reference in a new issue