Add patches for use with xserver-1.19
- Rebuild against xserver-1.19 - Cleanup specfile a bit
This commit is contained in:
parent
1dd9a48e14
commit
c3e0f5c47b
382
tigervnc-1.7.0-xserver119-support.patch
Normal file
382
tigervnc-1.7.0-xserver119-support.patch
Normal file
@ -0,0 +1,382 @@
|
|||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/XserverDesktop.cc tigervnc-1.7.0.new/unix/xserver/hw/vnc/XserverDesktop.cc
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/XserverDesktop.cc 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/XserverDesktop.cc 2016-10-03 15:04:48.844035351 +0200
|
||||||
|
@@ -89,6 +89,30 @@
|
||||||
|
XserverDesktop* desktop;
|
||||||
|
};
|
||||||
|
|
||||||
|
+#if XORG >= 119
|
||||||
|
+extern "C" {
|
||||||
|
+/*
|
||||||
|
+ * xserver NotifyFd callbacks. Note we also expect write notifies to work,
|
||||||
|
+ * which only works with xserver >= 1.19.
|
||||||
|
+ */
|
||||||
|
+#include "os.h"
|
||||||
|
+
|
||||||
|
+static void HandleListenFd(int fd, int xevents, void *data)
|
||||||
|
+{
|
||||||
|
+ XserverDesktop *desktop = (XserverDesktop *)data;
|
||||||
|
+
|
||||||
|
+ desktop->handleListenFd(fd);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void HandleSocketFd(int fd, int xevents, void *data)
|
||||||
|
+{
|
||||||
|
+ XserverDesktop *desktop = (XserverDesktop *)data;
|
||||||
|
+
|
||||||
|
+ desktop->handleSocketFd(fd, xevents);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+}
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
XserverDesktop::XserverDesktop(int screenIndex_,
|
||||||
|
std::list<network::TcpListener*> listeners_,
|
||||||
|
@@ -110,15 +134,35 @@
|
||||||
|
|
||||||
|
if (!httpListeners.empty ())
|
||||||
|
httpServer = new FileHTTPServer(this);
|
||||||
|
+
|
||||||
|
+#if XORG >= 119
|
||||||
|
+ for (std::list<TcpListener*>::iterator i = listeners.begin();
|
||||||
|
+ i != listeners.end();
|
||||||
|
+ i++) {
|
||||||
|
+ SetNotifyFd((*i)->getFd(), HandleListenFd, X_NOTIFY_READ, this);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (std::list<TcpListener*>::iterator i = httpListeners.begin();
|
||||||
|
+ i != httpListeners.end();
|
||||||
|
+ i++) {
|
||||||
|
+ SetNotifyFd((*i)->getFd(), HandleListenFd, X_NOTIFY_READ, this);
|
||||||
|
+ }
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
XserverDesktop::~XserverDesktop()
|
||||||
|
{
|
||||||
|
while (!listeners.empty()) {
|
||||||
|
+#if XORG >= 119
|
||||||
|
+ RemoveNotifyFd(listeners.back()->getFd());
|
||||||
|
+#endif
|
||||||
|
delete listeners.back();
|
||||||
|
listeners.pop_back();
|
||||||
|
}
|
||||||
|
while (!httpListeners.empty()) {
|
||||||
|
+#if XORG >= 119
|
||||||
|
+ RemoveNotifyFd(listeners.back()->getFd());
|
||||||
|
+#endif
|
||||||
|
delete httpListeners.back();
|
||||||
|
httpListeners.pop_back();
|
||||||
|
}
|
||||||
|
@@ -388,6 +432,100 @@
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if XORG >= 119
|
||||||
|
+void XserverDesktop::handleListenFd(int fd)
|
||||||
|
+{
|
||||||
|
+ std::list<TcpListener*>::iterator i;
|
||||||
|
+ SocketServer *fd_server = NULL;
|
||||||
|
+ bool is_http = false;
|
||||||
|
+
|
||||||
|
+ for (i = listeners.begin(); i != listeners.end(); i++) {
|
||||||
|
+ if ((*i)->getFd() == fd) {
|
||||||
|
+ fd_server = server;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (httpServer && !fd_server) {
|
||||||
|
+ for (i = httpListeners.begin(); i != httpListeners.end(); i++) {
|
||||||
|
+ if ((*i)->getFd() == fd) {
|
||||||
|
+ fd_server = httpServer;
|
||||||
|
+ is_http = true;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (!fd_server) {
|
||||||
|
+ vlog.error("XserverDesktop::handleListenFd: Error cannot find fd");
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ Socket* sock = (*i)->accept();
|
||||||
|
+ sock->outStream().setBlocking(false);
|
||||||
|
+ vlog.debug("new %sclient, sock %d", is_http ? "http " : "", sock->getFd());
|
||||||
|
+ fd_server->addSocket(sock);
|
||||||
|
+ SetNotifyFd(sock->getFd(), HandleSocketFd, X_NOTIFY_READ, this);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void XserverDesktop::handleSocketFd(int fd, int xevents)
|
||||||
|
+{
|
||||||
|
+ std::list<Socket*> sockets;
|
||||||
|
+ std::list<Socket*>::iterator i;
|
||||||
|
+ SocketServer *fd_server = NULL;
|
||||||
|
+ bool is_http = false;
|
||||||
|
+
|
||||||
|
+ server->getSockets(&sockets);
|
||||||
|
+ for (i = sockets.begin(); i != sockets.end(); i++) {
|
||||||
|
+ if ((*i)->getFd() == fd) {
|
||||||
|
+ fd_server = server;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (httpServer && !fd_server) {
|
||||||
|
+ httpServer->getSockets(&sockets);
|
||||||
|
+ for (i = sockets.begin(); i != sockets.end(); i++) {
|
||||||
|
+ if ((*i)->getFd() == fd) {
|
||||||
|
+ fd_server = httpServer;
|
||||||
|
+ is_http = true;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (!fd_server) {
|
||||||
|
+ vlog.error("XserverDesktop::handleSocketFd: Error cannot find fd");
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (xevents & X_NOTIFY_READ)
|
||||||
|
+ fd_server->processSocketReadEvent(*i);
|
||||||
|
+
|
||||||
|
+ if (xevents & X_NOTIFY_WRITE)
|
||||||
|
+ fd_server->processSocketWriteEvent(*i);
|
||||||
|
+
|
||||||
|
+ if ((*i)->isShutdown()) {
|
||||||
|
+ vlog.debug("%sclient gone, sock %d", is_http ? "http " : "", fd);
|
||||||
|
+ RemoveNotifyFd(fd);
|
||||||
|
+ fd_server->removeSocket(*i);
|
||||||
|
+ if (!is_http)
|
||||||
|
+ vncClientGone(fd);
|
||||||
|
+ delete (*i);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void XserverDesktop::blockHandler(int* timeout)
|
||||||
|
+{
|
||||||
|
+ // We don't have a good callback for when we can init input devices[1],
|
||||||
|
+ // so we abuse the fact that this routine will be called first thing
|
||||||
|
+ // once the dix is done initialising.
|
||||||
|
+ // [1] Technically Xvnc has InitInput(), but libvnc.so has nothing.
|
||||||
|
+ vncInitInputDevice();
|
||||||
|
+
|
||||||
|
+ int nextTimeout = server->checkTimeouts();
|
||||||
|
+ if (nextTimeout > 0 && (*timeout == -1 || nextTimeout < *timeout))
|
||||||
|
+ *timeout = nextTimeout;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+#else
|
||||||
|
+
|
||||||
|
void XserverDesktop::readBlockHandler(fd_set* fds, struct timeval ** timeout)
|
||||||
|
{
|
||||||
|
// We don't have a good callback for when we can init input devices[1],
|
||||||
|
@@ -600,10 +738,15 @@
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
void XserverDesktop::addClient(Socket* sock, bool reverse)
|
||||||
|
{
|
||||||
|
vlog.debug("new client, sock %d reverse %d",sock->getFd(),reverse);
|
||||||
|
server->addSocket(sock, reverse);
|
||||||
|
+#if XORG >= 119
|
||||||
|
+ SetNotifyFd(sock->getFd(), HandleSocketFd, X_NOTIFY_READ, this);
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void XserverDesktop::disconnectClients()
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/XserverDesktop.h tigervnc-1.7.0.new/unix/xserver/hw/vnc/XserverDesktop.h
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/XserverDesktop.h 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/XserverDesktop.h 2016-10-03 13:58:58.434844924 +0200
|
||||||
|
@@ -38,6 +38,7 @@
|
||||||
|
#include <rfb/VNCServerST.h>
|
||||||
|
#include <rdr/SubstitutingInStream.h>
|
||||||
|
#include "Input.h"
|
||||||
|
+#include "xorg-version.h"
|
||||||
|
|
||||||
|
namespace rfb {
|
||||||
|
class VNCServerST;
|
||||||
|
@@ -69,10 +70,16 @@
|
||||||
|
const unsigned char *rgbaData);
|
||||||
|
void add_changed(const rfb::Region ®ion);
|
||||||
|
void add_copied(const rfb::Region &dest, const rfb::Point &delta);
|
||||||
|
+#if XORG >= 119
|
||||||
|
+ void handleListenFd(int fd);
|
||||||
|
+ void handleSocketFd(int fd, int xevents);
|
||||||
|
+ void blockHandler(int* timeout);
|
||||||
|
+#else
|
||||||
|
void readBlockHandler(fd_set* fds, struct timeval ** timeout);
|
||||||
|
void readWakeupHandler(fd_set* fds, int nfds);
|
||||||
|
void writeBlockHandler(fd_set* fds, struct timeval ** timeout);
|
||||||
|
void writeWakeupHandler(fd_set* fds, int nfds);
|
||||||
|
+#endif
|
||||||
|
void addClient(network::Socket* sock, bool reverse);
|
||||||
|
void disconnectClients();
|
||||||
|
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/vncBlockHandler.c tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncBlockHandler.c
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/vncBlockHandler.c 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncBlockHandler.c 2016-10-03 14:06:30.461357037 +0200
|
||||||
|
@@ -30,6 +30,23 @@
|
||||||
|
|
||||||
|
#include "vncExtInit.h"
|
||||||
|
#include "vncBlockHandler.h"
|
||||||
|
+#include "xorg-version.h"
|
||||||
|
+
|
||||||
|
+#if XORG >= 119
|
||||||
|
+
|
||||||
|
+static void vncBlockHandler(void* data, void* timeout)
|
||||||
|
+{
|
||||||
|
+ vncCallBlockHandlers(timeout);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void vncRegisterBlockHandlers(void)
|
||||||
|
+{
|
||||||
|
+ if (!RegisterBlockAndWakeupHandlers(vncBlockHandler,
|
||||||
|
+ (ServerWakeupHandlerProcPtr)NoopDDA, 0))
|
||||||
|
+ FatalError("RegisterBlockAndWakeupHandlers() failed\n");
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+#else
|
||||||
|
|
||||||
|
static void vncBlockHandler(void * data, OSTimePtr t, void * readmask);
|
||||||
|
static void vncWakeupHandler(void * data, int nfds, void * readmask);
|
||||||
|
@@ -144,3 +161,5 @@
|
||||||
|
|
||||||
|
vncWriteWakeupHandler(ret, &fallbackFds);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+#endif
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/vncExtInit.cc tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncExtInit.cc
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/vncExtInit.cc 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncExtInit.cc 2016-10-03 14:08:21.109727176 +0200
|
||||||
|
@@ -241,6 +241,17 @@
|
||||||
|
return (desktop[scrIdx] != NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if XORG >= 119
|
||||||
|
+
|
||||||
|
+void vncCallBlockHandlers(int* timeout)
|
||||||
|
+{
|
||||||
|
+ for (int scr = 0; scr < vncGetScreenCount(); scr++)
|
||||||
|
+ if (desktop[scr])
|
||||||
|
+ desktop[scr]->blockHandler(timeout);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+#else
|
||||||
|
+
|
||||||
|
void vncCallReadBlockHandlers(fd_set * fds, struct timeval ** timeout)
|
||||||
|
{
|
||||||
|
for (int scr = 0; scr < vncGetScreenCount(); scr++)
|
||||||
|
@@ -269,6 +280,8 @@
|
||||||
|
desktop[scr]->writeWakeupHandler(fds, nfds);
|
||||||
|
}
|
||||||
|
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
int vncGetAvoidShiftNumLock(void)
|
||||||
|
{
|
||||||
|
return (bool)avoidShiftNumLock;
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/vncExtInit.h tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncExtInit.h
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/vncExtInit.h 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncExtInit.h 2016-10-03 14:06:34.253369722 +0200
|
||||||
|
@@ -22,6 +22,7 @@
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <sys/select.h>
|
||||||
|
+#include "xorg-version.h"
|
||||||
|
|
||||||
|
// Only from C++
|
||||||
|
#ifdef __cplusplus
|
||||||
|
@@ -52,10 +53,14 @@
|
||||||
|
void vncExtensionInit(void);
|
||||||
|
int vncExtensionIsActive(int scrIdx);
|
||||||
|
|
||||||
|
+#if XORG >= 119
|
||||||
|
+void vncCallBlockHandlers(int* timeout);
|
||||||
|
+#else
|
||||||
|
void vncCallReadBlockHandlers(fd_set * fds, struct timeval ** timeout);
|
||||||
|
void vncCallReadWakeupHandlers(fd_set * fds, int nfds);
|
||||||
|
void vncCallWriteBlockHandlers(fd_set * fds, struct timeval ** timeout);
|
||||||
|
void vncCallWriteWakeupHandlers(fd_set * fds, int nfds);
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
int vncGetAvoidShiftNumLock(void);
|
||||||
|
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/vncHooks.c tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncHooks.c
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/vncHooks.c 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/vncHooks.c 2016-10-03 13:25:54.469267290 +0200
|
||||||
|
@@ -128,9 +128,11 @@
|
||||||
|
#if XORG <= 112
|
||||||
|
static void vncHooksBlockHandler(int i, pointer blockData, pointer pTimeout,
|
||||||
|
pointer pReadmask);
|
||||||
|
-#else
|
||||||
|
+#elif XORG <= 118
|
||||||
|
static void vncHooksBlockHandler(ScreenPtr pScreen, void * pTimeout,
|
||||||
|
void * pReadmask);
|
||||||
|
+#else
|
||||||
|
+static void vncHooksBlockHandler(ScreenPtr pScreen, void * pTimeout);
|
||||||
|
#endif
|
||||||
|
#ifdef RENDER
|
||||||
|
static void vncHooksComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask,
|
||||||
|
@@ -716,9 +718,11 @@
|
||||||
|
#if XORG <= 112
|
||||||
|
static void vncHooksBlockHandler(int i, pointer blockData, pointer pTimeout,
|
||||||
|
pointer pReadmask)
|
||||||
|
-#else
|
||||||
|
+#elif XORG <= 118
|
||||||
|
static void vncHooksBlockHandler(ScreenPtr pScreen_, void * pTimeout,
|
||||||
|
void * pReadmask)
|
||||||
|
+#else
|
||||||
|
+static void vncHooksBlockHandler(ScreenPtr pScreen_, void * pTimeout)
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
#if XORG <= 112
|
||||||
|
@@ -731,8 +735,10 @@
|
||||||
|
|
||||||
|
#if XORG <= 112
|
||||||
|
(*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask);
|
||||||
|
-#else
|
||||||
|
+#elif XORG <= 118
|
||||||
|
(*pScreen->BlockHandler) (pScreen, pTimeout, pReadmask);
|
||||||
|
+#else
|
||||||
|
+ (*pScreen->BlockHandler) (pScreen, pTimeout);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
vncHooksScreen->ignoreHooks--;
|
||||||
|
@@ -1033,12 +1039,21 @@
|
||||||
|
|
||||||
|
// Unwrap and rewrap helpers
|
||||||
|
|
||||||
|
+#if XORG >= 116
|
||||||
|
+#define GC_OP_PROLOGUE(pGC, name)\
|
||||||
|
+ vncHooksGCPtr pGCPriv = vncHooksGCPrivate(pGC);\
|
||||||
|
+ const GCFuncs *oldFuncs = pGC->funcs;\
|
||||||
|
+ pGC->funcs = pGCPriv->wrappedFuncs;\
|
||||||
|
+ pGC->ops = pGCPriv->wrappedOps; \
|
||||||
|
+ DBGPRINT((stderr,"vncHooks" #name " called\n"))
|
||||||
|
+#else
|
||||||
|
#define GC_OP_PROLOGUE(pGC, name)\
|
||||||
|
vncHooksGCPtr pGCPriv = vncHooksGCPrivate(pGC);\
|
||||||
|
GCFuncs *oldFuncs = pGC->funcs;\
|
||||||
|
pGC->funcs = pGCPriv->wrappedFuncs;\
|
||||||
|
pGC->ops = pGCPriv->wrappedOps; \
|
||||||
|
DBGPRINT((stderr,"vncHooks" #name " called\n"))
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#define GC_OP_EPILOGUE(pGC)\
|
||||||
|
pGCPriv->wrappedOps = pGC->ops;\
|
||||||
|
diff -ur tigervnc-1.7.0/unix/xserver/hw/vnc/xorg-version.h tigervnc-1.7.0.new/unix/xserver/hw/vnc/xorg-version.h
|
||||||
|
--- tigervnc-1.7.0/unix/xserver/hw/vnc/xorg-version.h 2016-09-08 12:31:18.000000000 +0200
|
||||||
|
+++ tigervnc-1.7.0.new/unix/xserver/hw/vnc/xorg-version.h 2016-10-03 10:27:53.721116357 +0200
|
||||||
|
@@ -50,8 +50,10 @@
|
||||||
|
#define XORG 117
|
||||||
|
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (18 * 100000) + (99 * 1000))
|
||||||
|
#define XORG 118
|
||||||
|
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (19 * 100000) + (99 * 1000))
|
||||||
|
+#define XORG 119
|
||||||
|
#else
|
||||||
|
-#error "X.Org newer than 1.18 is not supported"
|
||||||
|
+#error "X.Org newer than 1.18 is not supported"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
@ -1,137 +0,0 @@
|
|||||||
diff -up xorg-server-1.17.1/configure.ac.xserver116-rebased xorg-server-1.17.1/configure.ac
|
|
||||||
--- xorg-server-1.17.1/configure.ac.xserver116-rebased 2015-02-10 22:43:52.000000000 +0000
|
|
||||||
+++ xorg-server-1.17.1/configure.ac 2015-02-13 16:14:05.074515927 +0000
|
|
||||||
@@ -74,6 +74,7 @@ dnl forcing an entire recompile.x
|
|
||||||
AC_CONFIG_HEADERS(include/version-config.h)
|
|
||||||
|
|
||||||
AM_PROG_AS
|
|
||||||
+AC_PROG_CXX
|
|
||||||
AC_PROG_LN_S
|
|
||||||
LT_PREREQ([2.2])
|
|
||||||
LT_INIT([disable-static win32-dll])
|
|
||||||
@@ -1795,6 +1796,10 @@ if test "x$XVFB" = xyes; then
|
|
||||||
AC_SUBST([XVFB_SYS_LIBS])
|
|
||||||
fi
|
|
||||||
|
|
||||||
+dnl Xvnc DDX
|
|
||||||
+AC_SUBST([XVNC_CPPFLAGS], ["-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS"])
|
|
||||||
+AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB"])
|
|
||||||
+AC_SUBST([XVNC_SYS_LIBS], ["$GLX_SYS_LIBS"])
|
|
||||||
|
|
||||||
dnl Xnest DDX
|
|
||||||
|
|
||||||
@@ -1830,6 +1835,8 @@ if test "x$XORG" = xauto; then
|
|
||||||
fi
|
|
||||||
AC_MSG_RESULT([$XORG])
|
|
||||||
|
|
||||||
+AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
|
||||||
+
|
|
||||||
if test "x$XORG" = xyes; then
|
|
||||||
XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common'
|
|
||||||
XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
|
|
||||||
@@ -2059,7 +2066,6 @@ if test "x$XORG" = xyes; then
|
|
||||||
AC_DEFINE(XORG_SERVER, 1, [Building Xorg server])
|
|
||||||
AC_DEFINE(XORGSERVER, 1, [Building Xorg server])
|
|
||||||
AC_DEFINE(XFree86Server, 1, [Building XFree86 server])
|
|
||||||
- AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
|
||||||
AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs])
|
|
||||||
AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions])
|
|
||||||
AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server])
|
|
||||||
@@ -2599,6 +2605,7 @@ hw/dmx/Makefile
|
|
||||||
hw/dmx/man/Makefile
|
|
||||||
hw/vfb/Makefile
|
|
||||||
hw/vfb/man/Makefile
|
|
||||||
+hw/vnc/Makefile
|
|
||||||
hw/xnest/Makefile
|
|
||||||
hw/xnest/man/Makefile
|
|
||||||
hw/xwin/Makefile
|
|
||||||
diff -up xorg-server-1.17.1/hw/Makefile.am.xserver116-rebased xorg-server-1.17.1/hw/Makefile.am
|
|
||||||
--- xorg-server-1.17.1/hw/Makefile.am.xserver116-rebased 2014-04-16 21:24:00.000000000 +0100
|
|
||||||
+++ xorg-server-1.17.1/hw/Makefile.am 2015-02-13 16:14:05.131516821 +0000
|
|
||||||
@@ -38,7 +38,8 @@ SUBDIRS = \
|
|
||||||
$(DMX_SUBDIRS) \
|
|
||||||
$(KDRIVE_SUBDIRS) \
|
|
||||||
$(XQUARTZ_SUBDIRS) \
|
|
||||||
- $(XWAYLAND_SUBDIRS)
|
|
||||||
+ $(XWAYLAND_SUBDIRS) \
|
|
||||||
+ vnc
|
|
||||||
|
|
||||||
DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland
|
|
||||||
|
|
||||||
diff -up xorg-server-1.17.1/mi/miinitext.c.xserver116-rebased xorg-server-1.17.1/mi/miinitext.c
|
|
||||||
--- xorg-server-1.17.1/mi/miinitext.c.xserver116-rebased 2015-01-17 23:42:52.000000000 +0000
|
|
||||||
+++ xorg-server-1.17.1/mi/miinitext.c 2015-02-13 16:14:05.131516821 +0000
|
|
||||||
@@ -111,6 +111,10 @@ SOFTWARE.
|
|
||||||
#include "micmap.h"
|
|
||||||
#include "globals.h"
|
|
||||||
|
|
||||||
+#ifdef TIGERVNC
|
|
||||||
+extern void vncExtensionInit(INITARGS);
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
/* The following is only a small first step towards run-time
|
|
||||||
* configurable extensions.
|
|
||||||
*/
|
|
||||||
@@ -235,6 +239,9 @@ EnableDisableExtensionError(const char *
|
|
||||||
|
|
||||||
/* List of built-in (statically linked) extensions */
|
|
||||||
static const ExtensionModule staticExtensions[] = {
|
|
||||||
+#ifdef TIGERVNC
|
|
||||||
+ {vncExtensionInit, "VNC-EXTENSION", NULL},
|
|
||||||
+#endif
|
|
||||||
{GEExtensionInit, "Generic Event Extension", &noGEExtension},
|
|
||||||
{ShapeExtensionInit, "SHAPE", NULL},
|
|
||||||
#ifdef MITSHM
|
|
||||||
diff -up xorg-server-1.17.1/os/WaitFor.c.xserver116-rebased xorg-server-1.17.1/os/WaitFor.c
|
|
||||||
--- xorg-server-1.17.1/os/WaitFor.c.xserver116-rebased 2015-01-26 18:40:30.000000000 +0000
|
|
||||||
+++ xorg-server-1.17.1/os/WaitFor.c 2015-02-13 16:14:05.132516837 +0000
|
|
||||||
@@ -125,6 +125,9 @@ static void DoTimer(OsTimerPtr timer, CA
|
|
||||||
static void CheckAllTimers(void);
|
|
||||||
static volatile OsTimerPtr timers = NULL;
|
|
||||||
|
|
||||||
+extern void vncWriteBlockHandler(fd_set *fds);
|
|
||||||
+extern void vncWriteWakeupHandler(int nfds, fd_set *fds);
|
|
||||||
+
|
|
||||||
/*****************
|
|
||||||
* WaitForSomething:
|
|
||||||
* Make the server suspend until there is
|
|
||||||
@@ -150,6 +153,7 @@ WaitForSomething(int *pClientsReady)
|
|
||||||
INT32 timeout = 0;
|
|
||||||
fd_set clientsReadable;
|
|
||||||
fd_set clientsWritable;
|
|
||||||
+ fd_set socketsWritable;
|
|
||||||
int curclient;
|
|
||||||
int selecterr;
|
|
||||||
static int nready;
|
|
||||||
@@ -212,6 +216,9 @@ WaitForSomething(int *pClientsReady)
|
|
||||||
XFD_COPYSET(&AllSockets, &LastSelectMask);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ FD_ZERO(&socketsWritable);
|
|
||||||
+ vncWriteBlockHandler(&socketsWritable);
|
|
||||||
+
|
|
||||||
BlockHandler((void *) &wt, (void *) &LastSelectMask);
|
|
||||||
if (NewOutputPending)
|
|
||||||
FlushAllOutput();
|
|
||||||
@@ -223,10 +230,20 @@ WaitForSomething(int *pClientsReady)
|
|
||||||
i = Select(MaxClients, &LastSelectMask, &clientsWritable, NULL, wt);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
- i = Select(MaxClients, &LastSelectMask, NULL, NULL, wt);
|
|
||||||
+ if (AnyClientsWriteBlocked)
|
|
||||||
+ XFD_ORSET(&socketsWritable, &ClientsWriteBlocked, &socketsWritable);
|
|
||||||
+
|
|
||||||
+ if (XFD_ANYSET(&socketsWritable)) {
|
|
||||||
+ i = Select(MaxClients, &LastSelectMask, &socketsWritable, NULL, wt);
|
|
||||||
+ if (AnyClientsWriteBlocked)
|
|
||||||
+ XFD_ANDSET(&clientsWritable, &socketsWritable, &ClientsWriteBlocked);
|
|
||||||
+ } else {
|
|
||||||
+ i = Select(MaxClients, &LastSelectMask, NULL, NULL, wt);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
selecterr = GetErrno();
|
|
||||||
WakeupHandler(i, (void *) &LastSelectMask);
|
|
||||||
+ vncWriteWakeupHandler(i, &socketsWritable);
|
|
||||||
if (i <= 0) { /* An error or timeout occurred */
|
|
||||||
if (dispatchException)
|
|
||||||
return 0;
|
|
@ -1,44 +0,0 @@
|
|||||||
diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h.xserver117 tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h
|
|
||||||
--- tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h.xserver117 2015-01-23 23:37:23.000000000 +0000
|
|
||||||
+++ tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h 2015-02-13 17:35:29.847294663 +0000
|
|
||||||
@@ -48,8 +48,10 @@
|
|
||||||
#define XORG 115
|
|
||||||
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (16 * 100000) + (99 * 1000))
|
|
||||||
#define XORG 116
|
|
||||||
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (17 * 100000) + (99 * 1000))
|
|
||||||
+#define XORG 117
|
|
||||||
#else
|
|
||||||
-#error "X.Org newer than 1.16 is not supported"
|
|
||||||
+#error "X.Org newer than 1.17 is not supported"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc.xserver117 tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc
|
|
||||||
--- tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc.xserver117 2015-01-23 23:37:23.000000000 +0000
|
|
||||||
+++ tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc 2015-02-13 17:35:27.963265774 +0000
|
|
||||||
@@ -717,9 +717,9 @@ vfbInstallColormap(ColormapPtr pmap)
|
|
||||||
entries = pmap->pVisual->ColormapEntries;
|
|
||||||
pVisual = pmap->pVisual;
|
|
||||||
|
|
||||||
- ppix = (Pixel *)xalloc(entries * sizeof(Pixel));
|
|
||||||
- prgb = (xrgb *)xalloc(entries * sizeof(xrgb));
|
|
||||||
- defs = (xColorItem *)xalloc(entries * sizeof(xColorItem));
|
|
||||||
+ ppix = (Pixel *)calloc(entries, sizeof(Pixel));
|
|
||||||
+ prgb = (xrgb *)calloc(entries, sizeof(xrgb));
|
|
||||||
+ defs = (xColorItem *)calloc(entries, sizeof(xColorItem));
|
|
||||||
|
|
||||||
for (i = 0; i < entries; i++) ppix[i] = i;
|
|
||||||
/* XXX truecolor */
|
|
||||||
@@ -738,9 +738,9 @@ vfbInstallColormap(ColormapPtr pmap)
|
|
||||||
}
|
|
||||||
(*pmap->pScreen->StoreColors)(pmap, entries, defs);
|
|
||||||
|
|
||||||
- xfree(ppix);
|
|
||||||
- xfree(prgb);
|
|
||||||
- xfree(defs);
|
|
||||||
+ free(ppix);
|
|
||||||
+ free(prgb);
|
|
||||||
+ free(defs);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
95
tigervnc-xserver119.patch
Normal file
95
tigervnc-xserver119.patch
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
diff -up xserver/configure.ac.xserver116-rebased xserver/configure.ac
|
||||||
|
--- xserver/configure.ac.xserver116-rebased 2016-09-29 13:14:45.595441590 +0200
|
||||||
|
+++ xserver/configure.ac 2016-09-29 13:14:45.631442006 +0200
|
||||||
|
@@ -74,6 +74,7 @@ dnl forcing an entire recompile.x
|
||||||
|
AC_CONFIG_HEADERS(include/version-config.h)
|
||||||
|
|
||||||
|
AM_PROG_AS
|
||||||
|
+AC_PROG_CXX
|
||||||
|
AC_PROG_LN_S
|
||||||
|
LT_PREREQ([2.2])
|
||||||
|
LT_INIT([disable-static win32-dll])
|
||||||
|
@@ -1863,6 +1864,10 @@ if test "x$XVFB" = xyes; then
|
||||||
|
AC_SUBST([XVFB_SYS_LIBS])
|
||||||
|
fi
|
||||||
|
|
||||||
|
+dnl Xvnc DDX
|
||||||
|
+AC_SUBST([XVNC_CPPFLAGS], ["-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS"])
|
||||||
|
+AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB"])
|
||||||
|
+AC_SUBST([XVNC_SYS_LIBS], ["$GLX_SYS_LIBS"])
|
||||||
|
|
||||||
|
dnl Xnest DDX
|
||||||
|
|
||||||
|
@@ -1898,6 +1903,8 @@ if test "x$XORG" = xauto; then
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT([$XORG])
|
||||||
|
|
||||||
|
+AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
||||||
|
+
|
||||||
|
if test "x$XORG" = xyes; then
|
||||||
|
XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common'
|
||||||
|
XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os'
|
||||||
|
@@ -2116,7 +2123,6 @@ if test "x$XORG" = xyes; then
|
||||||
|
AC_DEFINE(XORG_SERVER, 1, [Building Xorg server])
|
||||||
|
AC_DEFINE(XORGSERVER, 1, [Building Xorg server])
|
||||||
|
AC_DEFINE(XFree86Server, 1, [Building XFree86 server])
|
||||||
|
- AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version])
|
||||||
|
AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs])
|
||||||
|
AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions])
|
||||||
|
AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server])
|
||||||
|
@@ -2691,6 +2697,7 @@ hw/dmx/Makefile
|
||||||
|
hw/dmx/man/Makefile
|
||||||
|
hw/vfb/Makefile
|
||||||
|
hw/vfb/man/Makefile
|
||||||
|
+hw/vnc/Makefile
|
||||||
|
hw/xnest/Makefile
|
||||||
|
hw/xnest/man/Makefile
|
||||||
|
hw/xwin/Makefile
|
||||||
|
diff -up xserver/hw/Makefile.am.xserver116-rebased xserver/hw/Makefile.am
|
||||||
|
--- xserver/hw/Makefile.am.xserver116-rebased 2016-09-29 13:14:45.601441659 +0200
|
||||||
|
+++ xserver/hw/Makefile.am 2016-09-29 13:14:45.631442006 +0200
|
||||||
|
@@ -38,7 +38,8 @@ SUBDIRS = \
|
||||||
|
$(DMX_SUBDIRS) \
|
||||||
|
$(KDRIVE_SUBDIRS) \
|
||||||
|
$(XQUARTZ_SUBDIRS) \
|
||||||
|
- $(XWAYLAND_SUBDIRS)
|
||||||
|
+ $(XWAYLAND_SUBDIRS) \
|
||||||
|
+ vnc
|
||||||
|
|
||||||
|
DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland
|
||||||
|
|
||||||
|
diff -up xserver/mi/miinitext.c.xserver116-rebased xserver/mi/miinitext.c
|
||||||
|
--- xserver/mi/miinitext.c.xserver116-rebased 2016-09-29 13:14:45.618441855 +0200
|
||||||
|
+++ xserver/mi/miinitext.c 2016-09-29 13:14:45.631442006 +0200
|
||||||
|
@@ -114,6 +114,10 @@ SOFTWARE.
|
||||||
|
#include "micmap.h"
|
||||||
|
#include "globals.h"
|
||||||
|
|
||||||
|
+#ifdef TIGERVNC
|
||||||
|
+extern void vncExtensionInit(INITARGS);
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
/* The following is only a small first step towards run-time
|
||||||
|
* configurable extensions.
|
||||||
|
*/
|
||||||
|
@@ -238,6 +242,9 @@ EnableDisableExtensionError(const char *
|
||||||
|
|
||||||
|
/* List of built-in (statically linked) extensions */
|
||||||
|
static const ExtensionModule staticExtensions[] = {
|
||||||
|
+#ifdef TIGERVNC
|
||||||
|
+ {vncExtensionInit, "VNC-EXTENSION", NULL},
|
||||||
|
+#endif
|
||||||
|
{GEExtensionInit, "Generic Event Extension", &noGEExtension},
|
||||||
|
{ShapeExtensionInit, "SHAPE", NULL},
|
||||||
|
#ifdef MITSHM
|
||||||
|
--- xserver/include/os.h~ 2016-10-03 09:07:29.000000000 +0200
|
||||||
|
+++ xserver/include/os.h 2016-10-03 14:13:00.013654506 +0200
|
||||||
|
@@ -621,7 +621,7 @@
|
||||||
|
extern _X_EXPORT void
|
||||||
|
LogClose(enum ExitCode error);
|
||||||
|
extern _X_EXPORT Bool
|
||||||
|
-LogSetParameter(LogParameter param, int value);
|
||||||
|
+LogSetParameter(enum _LogParameter param, int value);
|
||||||
|
extern _X_EXPORT void
|
||||||
|
LogVWrite(int verb, const char *f, va_list args)
|
||||||
|
_X_ATTRIBUTE_PRINTF(2, 0);
|
@ -1,11 +1,10 @@
|
|||||||
Name: tigervnc
|
Name: tigervnc
|
||||||
Version: 1.7.0
|
Version: 1.7.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: A TigerVNC remote display system
|
Summary: A TigerVNC remote display system
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
|
|
||||||
Group: User Interface/Desktops
|
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: http://www.tigervnc.com
|
URL: http://www.tigervnc.com
|
||||||
|
|
||||||
@ -13,7 +12,6 @@ Source0: %{name}-%{version}.tar.gz
|
|||||||
Source1: vncserver.service
|
Source1: vncserver.service
|
||||||
Source2: vncserver.sysconfig
|
Source2: vncserver.sysconfig
|
||||||
Source3: 10-libvnc.conf
|
Source3: 10-libvnc.conf
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
||||||
|
|
||||||
BuildRequires: libX11-devel, automake, autoconf, libtool, gettext, gettext-autopoint
|
BuildRequires: libX11-devel, automake, autoconf, libtool, gettext, gettext-autopoint
|
||||||
BuildRequires: libXext-devel, xorg-x11-server-source, libXi-devel
|
BuildRequires: libXext-devel, xorg-x11-server-source, libXi-devel
|
||||||
@ -44,6 +42,7 @@ Obsoletes: vnc < 4.1.3-2, vnc-libs < 4.1.3-2
|
|||||||
Provides: tightvnc = 1.5.0-0.15.20090204svn3586
|
Provides: tightvnc = 1.5.0-0.15.20090204svn3586
|
||||||
Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
|
Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
|
||||||
|
|
||||||
|
Patch1: tigervnc-1.7.0-xserver119-support.patch
|
||||||
Patch3: tigervnc-libvnc-os.patch
|
Patch3: tigervnc-libvnc-os.patch
|
||||||
Patch7: tigervnc-manpages.patch
|
Patch7: tigervnc-manpages.patch
|
||||||
Patch8: tigervnc-getmaster.patch
|
Patch8: tigervnc-getmaster.patch
|
||||||
@ -52,7 +51,7 @@ Patch14: tigervnc-xstartup.patch
|
|||||||
Patch18: tigervnc-utilize-system-crypto-policies.patch
|
Patch18: tigervnc-utilize-system-crypto-policies.patch
|
||||||
|
|
||||||
# This is tigervnc-%%{version}/unix/xserver116.patch rebased on the latest xorg
|
# This is tigervnc-%%{version}/unix/xserver116.patch rebased on the latest xorg
|
||||||
Patch100: tigervnc-xserver116-rebased.patch
|
Patch100: tigervnc-xserver119.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Virtual Network Computing (VNC) is a remote display system which
|
Virtual Network Computing (VNC) is a remote display system which
|
||||||
@ -64,7 +63,6 @@ server.
|
|||||||
|
|
||||||
%package server
|
%package server
|
||||||
Summary: A TigerVNC server
|
Summary: A TigerVNC server
|
||||||
Group: User Interface/X
|
|
||||||
Provides: vnc-server = 4.1.3-2, vnc-libs = 4.1.3-2
|
Provides: vnc-server = 4.1.3-2, vnc-libs = 4.1.3-2
|
||||||
Obsoletes: vnc-server < 4.1.3-2, vnc-libs < 4.1.3-2
|
Obsoletes: vnc-server < 4.1.3-2, vnc-libs < 4.1.3-2
|
||||||
Provides: tightvnc-server = 1.5.0-0.15.20090204svn3586
|
Provides: tightvnc-server = 1.5.0-0.15.20090204svn3586
|
||||||
@ -87,7 +85,6 @@ X session.
|
|||||||
|
|
||||||
%package server-minimal
|
%package server-minimal
|
||||||
Summary: A minimal installation of TigerVNC server
|
Summary: A minimal installation of TigerVNC server
|
||||||
Group: User Interface/X
|
|
||||||
Requires(post): chkconfig
|
Requires(post): chkconfig
|
||||||
Requires(preun):chkconfig
|
Requires(preun):chkconfig
|
||||||
Requires(preun):initscripts
|
Requires(preun):initscripts
|
||||||
@ -105,7 +102,6 @@ machine.
|
|||||||
%ifnarch s390 s390x
|
%ifnarch s390 s390x
|
||||||
%package server-module
|
%package server-module
|
||||||
Summary: TigerVNC module to Xorg
|
Summary: TigerVNC module to Xorg
|
||||||
Group: User Interface/X
|
|
||||||
Provides: vnc-server = 4.1.3-2, vnc-libs = 4.1.3-2
|
Provides: vnc-server = 4.1.3-2, vnc-libs = 4.1.3-2
|
||||||
Obsoletes: vnc-server < 4.1.3-2, vnc-libs < 4.1.3-2
|
Obsoletes: vnc-server < 4.1.3-2, vnc-libs < 4.1.3-2
|
||||||
Provides: tightvnc-server-module = 1.5.0-0.15.20090204svn3586
|
Provides: tightvnc-server-module = 1.5.0-0.15.20090204svn3586
|
||||||
@ -120,7 +116,6 @@ to access the desktop on your machine.
|
|||||||
|
|
||||||
%package server-applet
|
%package server-applet
|
||||||
Summary: Java TigerVNC viewer applet for TigerVNC server
|
Summary: Java TigerVNC viewer applet for TigerVNC server
|
||||||
Group: User Interface/X
|
|
||||||
Requires: tigervnc-server, java, jpackage-utils
|
Requires: tigervnc-server, java, jpackage-utils
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
@ -130,7 +125,6 @@ clients to use web browser when connect to the TigerVNC server.
|
|||||||
|
|
||||||
%package license
|
%package license
|
||||||
Summary: License of TigerVNC suite
|
Summary: License of TigerVNC suite
|
||||||
Group: User Interface/X
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
%description license
|
%description license
|
||||||
@ -138,7 +132,6 @@ This package contains license of the TigerVNC suite
|
|||||||
|
|
||||||
%package icons
|
%package icons
|
||||||
Summary: Icons for TigerVNC viewer
|
Summary: Icons for TigerVNC viewer
|
||||||
Group: User Interface/X
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
%description icons
|
%description icons
|
||||||
@ -146,7 +139,7 @@ This package contains icons for TigerVNC viewer
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch1 -p1
|
||||||
%patch3 -p1 -b .libvnc-os
|
%patch3 -p1 -b .libvnc-os
|
||||||
|
|
||||||
cp -r /usr/share/xorg-x11-server-source/* unix/xserver
|
cp -r /usr/share/xorg-x11-server-source/* unix/xserver
|
||||||
@ -218,8 +211,7 @@ JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" make
|
|||||||
popd
|
popd
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf $RPM_BUILD_ROOT
|
%make_install
|
||||||
make install DESTDIR=$RPM_BUILD_ROOT
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/{README.txt,LICENCE.TXT}
|
rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/{README.txt,LICENCE.TXT}
|
||||||
|
|
||||||
pushd unix/xserver/hw/vnc
|
pushd unix/xserver/hw/vnc
|
||||||
@ -263,9 +255,6 @@ mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/
|
|||||||
install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%clean
|
|
||||||
rm -rf $RPM_BUILD_ROOT
|
|
||||||
|
|
||||||
%post
|
%post
|
||||||
touch -c %{_datadir}/icons/hicolor
|
touch -c %{_datadir}/icons/hicolor
|
||||||
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
|
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
|
||||||
@ -292,14 +281,12 @@ fi
|
|||||||
%systemd_postun
|
%systemd_postun
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc README.txt
|
%doc README.txt
|
||||||
%{_bindir}/vncviewer
|
%{_bindir}/vncviewer
|
||||||
%{_datadir}/applications/*
|
%{_datadir}/applications/*
|
||||||
%{_mandir}/man1/vncviewer.1*
|
%{_mandir}/man1/vncviewer.1*
|
||||||
|
|
||||||
%files server
|
%files server
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%config(noreplace) %{_sysconfdir}/sysconfig/vncservers
|
%config(noreplace) %{_sysconfdir}/sysconfig/vncservers
|
||||||
%{_unitdir}/vncserver@.service
|
%{_unitdir}/vncserver@.service
|
||||||
%{_bindir}/x0vncserver
|
%{_bindir}/x0vncserver
|
||||||
@ -308,7 +295,6 @@ fi
|
|||||||
%{_mandir}/man1/x0vncserver.1*
|
%{_mandir}/man1/x0vncserver.1*
|
||||||
|
|
||||||
%files server-minimal
|
%files server-minimal
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%{_bindir}/vncconfig
|
%{_bindir}/vncconfig
|
||||||
%{_bindir}/vncpasswd
|
%{_bindir}/vncpasswd
|
||||||
%{_bindir}/Xvnc
|
%{_bindir}/Xvnc
|
||||||
@ -318,24 +304,26 @@ fi
|
|||||||
|
|
||||||
%ifnarch s390 s390x
|
%ifnarch s390 s390x
|
||||||
%files server-module
|
%files server-module
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%{_libdir}/xorg/modules/extensions/libvnc.so
|
%{_libdir}/xorg/modules/extensions/libvnc.so
|
||||||
%config %{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
%config %{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files server-applet
|
%files server-applet
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc java/com/tigervnc/vncviewer/README
|
%doc java/com/tigervnc/vncviewer/README
|
||||||
%{_datadir}/vnc/classes/*
|
%{_datadir}/vnc/classes/*
|
||||||
|
|
||||||
%files license
|
%files license
|
||||||
%doc LICENCE.TXT
|
%license LICENCE.TXT
|
||||||
|
|
||||||
%files icons
|
%files icons
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%{_datadir}/icons/hicolor/*/apps/*
|
%{_datadir}/icons/hicolor/*/apps/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Oct 3 2016 Hans de Goede <hdegoede@redhat.com> - 1.7.0-2
|
||||||
|
- Add patches for use with xserver-1.19
|
||||||
|
- Rebuild against xserver-1.19
|
||||||
|
- Cleanup specfile a bit
|
||||||
|
|
||||||
* Mon Sep 12 2016 Jan Grulich <jgrulich@redhat.com> - 1.7.0-1
|
* Mon Sep 12 2016 Jan Grulich <jgrulich@redhat.com> - 1.7.0-1
|
||||||
- Update to 1.7.0
|
- Update to 1.7.0
|
||||||
|
|
||||||
|
@ -1,39 +0,0 @@
|
|||||||
From 1f679da30a33f3ddad14bc6b2be0795160ae12b8 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Adam Jackson <ajax@redhat.com>
|
|
||||||
Date: Thu, 9 Apr 2015 10:19:13 -0400
|
|
||||||
Subject: [PATCH] include: Fix endianness setup
|
|
||||||
|
|
||||||
Need to make sure X_{BIG,LITTLE}_ENDIAN actually get defined
|
|
||||||
|
|
||||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
||||||
---
|
|
||||||
include/dix-config.h.in | 1 +
|
|
||||||
include/xorg-server.h.in | 1 +
|
|
||||||
2 files changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/include/dix-config.h.in b/include/dix-config.h.in
|
|
||||||
index 1aa77a5..5e53c00 100644
|
|
||||||
--- a/include/dix-config.h.in
|
|
||||||
+++ b/include/dix-config.h.in
|
|
||||||
@@ -499,6 +499,7 @@
|
|
||||||
|
|
||||||
/* byte order */
|
|
||||||
#undef X_BYTE_ORDER
|
|
||||||
+#include <X11/Xarch.h>
|
|
||||||
|
|
||||||
/* Listen on TCP socket */
|
|
||||||
#undef LISTEN_TCP
|
|
||||||
diff --git a/include/xorg-server.h.in b/include/xorg-server.h.in
|
|
||||||
index 4cb9487..de6462a 100644
|
|
||||||
--- a/include/xorg-server.h.in
|
|
||||||
+++ b/include/xorg-server.h.in
|
|
||||||
@@ -233,5 +233,6 @@
|
|
||||||
|
|
||||||
/* byte order */
|
|
||||||
#undef X_BYTE_ORDER
|
|
||||||
+#include <X11/Xarch.h>
|
|
||||||
|
|
||||||
#endif /* _XORG_SERVER_H_ */
|
|
||||||
--
|
|
||||||
2.1.0
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user