-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[dbus] Build failure when cross-compiling #40031
Comments
Also, the upstream logic looks wrong to me: #### Find socket directories
set(DBUS_SESSION_SOCKET_DIR "" CACHE STRING "Default directory for session socket")
if(UNIX)
if (CMAKE_CROSSCOMPILING)
if (NOT DBUS_SESSION_SOCKET_DIR)
message(FATAL_ERROR "cannot autodetect session socket directory "
"when crosscompiling, pass -DDBUS_SESSION_SOCKET_DIR=...")
endif()
elseif(NOT $ENV{TMPDIR} STREQUAL "")
set(DBUS_SESSION_SOCKET_DIR $ENV{TMPDIR})
elseif(NOT $ENV{TEMP} STREQUAL "")
set(DBUS_SESSION_SOCKET_DIR $ENV{TEMP})
elseif(NOT $ENV{TMP} STREQUAL "")
set(DBUS_SESSION_SOCKET_DIR $ENV{TMP})
else()
set(DBUS_SESSION_SOCKET_DIR /tmp)
endif()
endif() On macOS the |
The actual value should depend on the target system.
Apart from the potential macOS issue, the given code hides the cache variable (aka input variable) for native builds by setting a normal variable. |
I agree, that should (and probably can only be) done at runtime.
That too, good catch. |
Seeing this also with |
Well, it is cross compiling if you are on a x64 host. |
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Due to a bug in DBUS and its VCPKG port (microsoft/vcpkg#40031), DBUS cannot be cross-compiled.
Editing the portfile to pass
-DDBUS_SESSION_SOCKET_DIR=/tmp
to CMake fixes the issue.Operating system
macOS (ARM64)
Steps to reproduce the behavior
Failure logs
The text was updated successfully, but these errors were encountered: