[X2Go-Commits] [x2gokdrive] 01/04: Get X2Go KDrive to build (and run!) against X.Org server versions below 1.19.99.901.

git-admin at x2go.org git-admin at x2go.org
Mon Jul 15 22:09:24 CEST 2019


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository x2gokdrive.

commit 3a30f5aa177e1768da0b89f7bfc2fba14a1f8185
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Mon Jul 15 17:54:39 2019 +0200

    Get X2Go KDrive to build (and run!) against X.Org server versions below 1.19.99.901.
---
 x2gokdrive.c     | 29 +++++++++++++++++++++++++++++
 x2gokdrive.h     |  4 ++++
 x2gokdriveinit.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 82 insertions(+)

diff --git a/x2gokdrive.c b/x2gokdrive.c
index 96c80c3..38ecc6a 100644
--- a/x2gokdrive.c
+++ b/x2gokdrive.c
@@ -976,6 +976,35 @@ ephyrCreateResources(ScreenPtr pScreen)
     }
 }
 
+#if XORG_VERSION_CURRENT < 11999901
+void
+ephyrPreserve(KdCardInfo * card)
+{
+}
+
+Bool
+ephyrEnable(ScreenPtr pScreen)
+{
+    return TRUE;
+}
+
+Bool
+ephyrDPMS(ScreenPtr pScreen, int mode)
+{
+    return TRUE;
+}
+
+void
+ephyrDisable(ScreenPtr pScreen)
+{
+}
+
+void
+ephyrRestore(KdCardInfo * card)
+{
+}
+#endif /* XORG_VERSION_CURRENT */
+
 void
 ephyrScreenFini(KdScreenInfo * screen)
 {
diff --git a/x2gokdrive.h b/x2gokdrive.h
index 1942165..6415de2 100644
--- a/x2gokdrive.h
+++ b/x2gokdrive.h
@@ -207,6 +207,10 @@ extern KdPointerDriver EphyrMouseDriver;
 
 extern KdKeyboardDriver EphyrKeyboardDriver;
 
+#if XORG_VERSION_CURRENT < 11999901
+extern KdOsFuncs EphyrOsFuncs;
+#endif /* XORG_VERSION_CURRENT */
+
 extern Bool ephyrCursorInit(ScreenPtr pScreen);
 
 extern int ephyrBufferHeight(KdScreenInfo * screen);
diff --git a/x2gokdriveinit.c b/x2gokdriveinit.c
index 60f4240..b8793f6 100644
--- a/x2gokdriveinit.c
+++ b/x2gokdriveinit.c
@@ -61,9 +61,30 @@ InitCard(char *name)
     KdCardInfoAdd(&ephyrFuncs, 0);
 }
 
+#if XORG_VERSION_CURRENT < 11999901
+
+static const ExtensionModule ephyrExtensions[] = {
+#ifdef GLXEXT
+ { GlxExtensionInit, "GLX", &noGlxExtension },
+#endif
+};
+
+static
+void ephyrExtensionInit(void)
+{
+    LoadExtensionList(ephyrExtensions, ARRAY_SIZE(ephyrExtensions), TRUE);
+}
+
+#endif /* XORG_VERSION_CURRENT */
+
 void
 InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
 {
+#if XORG_VERSION_CURRENT < 11999901
+    if (serverGeneration == 1)
+        ephyrExtensionInit();
+#endif /* XORG_VERSION_CURRENT */
+
     if (serverGeneration == 1)
     {
         remote_selection_init();
@@ -228,6 +249,9 @@ OsVendorInit(void)
 //     if (hostx_want_host_cursor())
         ephyrFuncs.initCursor = &ephyrCursorInit;
 
+#if XORG_VERSION_CURRENT < 11999901
+    KdOsInit(&EphyrOsFuncs);
+#endif
     if (serverGeneration == 1) {
         if (!KdCardInfoLast()) {
             processScreenArg("800x600", NULL);
@@ -242,10 +266,23 @@ KdCardFuncs ephyrFuncs = {
     ephyrInitScreen,            /* initScreen */
     ephyrFinishInitScreen,      /* finishInitScreen */
     ephyrCreateResources,       /* createRes */
+#if XORG_VERSION_CURRENT < 11999901
+    ephyrPreserve,              /* preserve */
+    ephyrEnable,                /* enable */
+    ephyrDPMS,                  /* dpms */
+    ephyrDisable,               /* disable */
+    ephyrRestore,               /* restore */
+#endif /* XORG_VERSION_CURRENT */
     ephyrScreenFini,            /* scrfini */
     ephyrCardFini,              /* cardfini */
 
     0,                          /* initCursor */
+#if XORG_VERSION_CURRENT < 11999901
+    0,                          /* enableCursor */
+    0,                          /* disableCursor */
+    0,                          /* finiCursor */
+    0,                          /* recolorCursor */
+#endif /* XORG_VERSION_CURRENT */
 
     0,                          /* initAccel */
     0,                          /* enableAccel */
@@ -257,3 +294,15 @@ KdCardFuncs ephyrFuncs = {
 
     ephyrCloseScreen,           /* closeScreen */
 };
+
+#if XORG_VERSION_CURRENT < 11999901
+/*
+ * Fake nearly empty EphyrOsFuncs for builds against X.Org << 1.19.99.901
+ */
+int
+ephyrInitFake(void) { return 1; }
+
+KdOsFuncs EphyrOsFuncs = {
+    .Init = ephyrInitFake,
+};
+#endif /* XORG_VERSION_CURRENT */

--
Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gokdrive.git


More information about the x2go-commits mailing list