mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-04 01:48:54 +00:00
Improve D-Bus support.
This commit is contained in:
parent
00acde2e5d
commit
bc6e83f398
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=435803
@ -3,6 +3,7 @@
|
||||
|
||||
PORTNAME= virtualbox-ose
|
||||
PORTVERSION= 5.1.16
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= emulators
|
||||
MASTER_SITES= http://download.virtualbox.org/virtualbox/${PORTVERSION}/
|
||||
PKGNAMESUFFIX?= -additions
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
PORTNAME= virtualbox-ose
|
||||
PORTVERSION= 5.1.16
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= emulators
|
||||
MASTER_SITES= http://download.virtualbox.org/virtualbox/${PORTVERSION}/
|
||||
DISTFILES= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} ${GUESTADDITIONS}
|
||||
|
@ -0,0 +1,71 @@
|
||||
--- src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp.orig 2017-03-08 17:15:20 UTC
|
||||
+++ src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp
|
||||
@@ -71,8 +71,8 @@
|
||||
# include <net/if.h>
|
||||
# include <pwd.h> /* getpwuid */
|
||||
# include <unistd.h>
|
||||
-# if !defined(RT_OS_OS2) && !defined(RT_OS_FREEBSD) && !defined(RT_OS_HAIKU)
|
||||
-# include <utmpx.h> /** @todo FreeBSD 9 should have this. */
|
||||
+# if !defined(RT_OS_OS2) && !defined(RT_OS_HAIKU)
|
||||
+# include <utmpx.h>
|
||||
# endif
|
||||
# ifdef RT_OS_OS2
|
||||
# include <net/if_dl.h>
|
||||
@@ -531,7 +531,7 @@ static void vgsvcVMInfoWriteFixedPropert
|
||||
}
|
||||
|
||||
|
||||
-#if defined(VBOX_WITH_DBUS) && defined(RT_OS_LINUX) /* Not yet for Solaris/FreeBSB. */
|
||||
+#if defined(VBOX_WITH_DBUS) && (defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)) /* Not yet for Solaris. */
|
||||
/*
|
||||
* Simple wrapper to work around compiler-specific va_list madness.
|
||||
*/
|
||||
@@ -562,12 +562,6 @@ static int vgsvcVMInfoWriteUsers(void)
|
||||
rc = VERR_NOT_IMPLEMENTED;
|
||||
# endif
|
||||
|
||||
-#elif defined(RT_OS_FREEBSD)
|
||||
- /** @todo FreeBSD: Port logged on user info retrieval.
|
||||
- * However, FreeBSD 9 supports utmpx, so we could use the code
|
||||
- * block below (?). */
|
||||
- rc = VERR_NOT_IMPLEMENTED;
|
||||
-
|
||||
#elif defined(RT_OS_HAIKU)
|
||||
/** @todo Haiku: Port logged on user info retrieval. */
|
||||
rc = VERR_NOT_IMPLEMENTED;
|
||||
@@ -593,7 +587,7 @@ static int vgsvcVMInfoWriteUsers(void)
|
||||
while ( (ut_user = getutxent())
|
||||
&& RT_SUCCESS(rc))
|
||||
{
|
||||
-# ifdef RT_OS_DARWIN /* No ut_user->ut_session on Darwin */
|
||||
+# if defined(RT_OS_DARWIN) || defined(RT_OS_FREEBSD) /* No ut_user->ut_session on Darwin/FreeBSD */
|
||||
VGSvcVerbose(4, "Found entry '%s' (type: %d, PID: %RU32)\n", ut_user->ut_user, ut_user->ut_type, ut_user->ut_pid);
|
||||
# else
|
||||
VGSvcVerbose(4, "Found entry '%s' (type: %d, PID: %RU32, session: %RU32)\n",
|
||||
@@ -628,7 +622,7 @@ static int vgsvcVMInfoWriteUsers(void)
|
||||
}
|
||||
|
||||
# ifdef VBOX_WITH_DBUS
|
||||
-# if defined(RT_OS_LINUX) /* Not yet for Solaris/FreeBSB. */
|
||||
+# if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) /* Not yet for Solaris. */
|
||||
DBusError dbErr;
|
||||
DBusConnection *pConnection = NULL;
|
||||
int rc2 = RTDBusLoadLib();
|
||||
@@ -837,7 +831,7 @@ static int vgsvcVMInfoWriteUsers(void)
|
||||
if ( fHaveLibDbus
|
||||
&& dbus_error_is_set(&dbErr))
|
||||
dbus_error_free(&dbErr);
|
||||
-# endif /* RT_OS_LINUX */
|
||||
+# endif /* RT_OS_LINUX || RT_OS_FREEBSD */
|
||||
# endif /* VBOX_WITH_DBUS */
|
||||
|
||||
/** @todo Fedora/others: Handle systemd-loginctl. */
|
||||
@@ -874,7 +868,7 @@ static int vgsvcVMInfoWriteUsers(void)
|
||||
RTMemFree(papszUsers);
|
||||
|
||||
endutxent(); /* Close utmpx file. */
|
||||
-#endif /* !RT_OS_WINDOWS && !RT_OS_FREEBSD && !RT_OS_HAIKU && !RT_OS_OS2 */
|
||||
+#endif /* !RT_OS_WINDOWS && !RT_OS_HAIKU && !RT_OS_OS2 */
|
||||
|
||||
Assert(RT_FAILURE(rc) || cUsersInList == 0 || (pszUserList && *pszUserList));
|
||||
|
@ -0,0 +1,10 @@
|
||||
--- src/VBox/Main/Makefile.kmk.orig 2017-03-08 17:20:11 UTC
|
||||
+++ src/VBox/Main/Makefile.kmk
|
||||
@@ -445,6 +445,7 @@ VBoxSVC_SOURCES.os2 = \
|
||||
|
||||
VBoxSVC_SOURCES.freebsd = \
|
||||
src-server/freebsd/HostHardwareFreeBSD.cpp \
|
||||
+ $(if $(VBOX_WITH_DBUS),src-server/linux/HostPowerLinux.cpp) \
|
||||
src-server/HostDnsServiceResolvConf.cpp
|
||||
|
||||
|
@ -0,0 +1,20 @@
|
||||
--- src/VBox/Main/include/HostPower.h.orig 2017-03-08 17:20:12 UTC
|
||||
+++ src/VBox/Main/include/HostPower.h
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
#include <vector>
|
||||
|
||||
-#ifdef RT_OS_LINUX
|
||||
+#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)
|
||||
# include <VBox/dbus.h>
|
||||
#endif
|
||||
|
||||
@@ -63,7 +63,7 @@ private:
|
||||
HWND mHwnd;
|
||||
RTTHREAD mThread;
|
||||
};
|
||||
-#elif defined(RT_OS_LINUX)
|
||||
+#elif defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)
|
||||
/**
|
||||
* The Linux hosted Power Service.
|
||||
*/
|
@ -0,0 +1,11 @@
|
||||
--- src/VBox/Main/src-server/HostImpl.cpp.orig 2017-03-08 17:20:14 UTC
|
||||
+++ src/VBox/Main/src-server/HostImpl.cpp
|
||||
@@ -293,7 +293,7 @@ HRESULT Host::init(VirtualBox *aParent)
|
||||
|
||||
#if defined(RT_OS_WINDOWS)
|
||||
m->pHostPowerService = new HostPowerServiceWin(m->pParent);
|
||||
-#elif defined(RT_OS_LINUX) && defined(VBOX_WITH_DBUS)
|
||||
+#elif (defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)) && defined(VBOX_WITH_DBUS)
|
||||
m->pHostPowerService = new HostPowerServiceLinux(m->pParent);
|
||||
#elif defined(RT_OS_DARWIN)
|
||||
m->pHostPowerService = new HostPowerServiceDarwin(m->pParent);
|
Loading…
Reference in New Issue
Block a user