diff --git a/tigervnc.spec b/tigervnc.spec index d6fda6f..438971f 100644 --- a/tigervnc.spec +++ b/tigervnc.spec @@ -2,7 +2,7 @@ Name: tigervnc Version: 1.2.80 -Release: 0.1.%{snap}%{?dist} +Release: 0.2.%{snap}%{?dist} Summary: A TigerVNC remote display system Group: User Interface/Desktops @@ -41,6 +41,7 @@ Patch4: tigervnc-cookie.patch Patch10: tigervnc11-ldnow.patch Patch11: tigervnc11-gethomedir.patch Patch13: tigervnc11-rh692048.patch +Patch14: tigervnc12-xorg113-glx.patch %description Virtual Network Computing (VNC) is a remote display system which @@ -135,6 +136,8 @@ done patch -p1 -b --suffix .vnc < ../xserver113.patch popd +%patch14 -p1 -b .glx + %build export CFLAGS="$RPM_OPT_FLAGS" export CXXFLAGS="$CFLAGS" @@ -285,6 +288,9 @@ fi %doc LICENCE.TXT %changelog +* Fri Sep 28 2012 Adam Jackson 1.2.80-0.2. +- tigervnc12-xorg113-glx.patch: Re-enable GLX against xserver 1.13 + * Fri Aug 17 2012 Adam Tkac 1.2.80-0.1.20120905svn4996 - update to 1.2.80 - remove deprecated patches diff --git a/tigervnc12-xorg113-glx.patch b/tigervnc12-xorg113-glx.patch new file mode 100644 index 0000000..c976fd7 --- /dev/null +++ b/tigervnc12-xorg113-glx.patch @@ -0,0 +1,84 @@ +diff -up tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/Makefile.am.jx tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/Makefile.am +--- tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/Makefile.am.jx 2012-09-28 13:24:53.000000000 -0400 ++++ tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/Makefile.am 2012-09-28 13:35:59.918561641 -0400 +@@ -8,6 +8,10 @@ XREGION_LIB=$(LIB_DIR)/Xregion/libXregio + OS_LIB=$(LIB_DIR)/os/libos.la + COMMON_LIBS=$(NETWORK_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB) + ++if GLX ++GLX_LIB = $(top_srcdir)/glx/libglx.la ++endif ++ + noinst_LTLIBRARIES = libvnccommon.la + + HDRS = RegionHelper.h vncExtInit.h vncHooks.h XserverDesktop.h xorg-version.h \ +@@ -35,7 +39,8 @@ Xvnc_CPPFLAGS = $(XVNC_CPPFLAGS) -DTIGER + -UHAVE_CONFIG_H \ + -DXFree86Server -DVENDOR_RELEASE="$(VENDOR_RELEASE)" \ + -DVENDOR_STRING="\"$(VENDOR_STRING)\"" -I$(TIGERVNC_SRCDIR)/common \ +- -I$(top_srcdir)/include ${XSERVERLIBS_CFLAGS} -I$(includedir) ++ -I$(top_srcdir)/include ${XSERVERLIBS_CFLAGS} -I$(includedir) \ ++ -I$(top_srcdir)/glx + + Xvnc_LDADD = $(XVNC_LIBS) libvnccommon.la $(COMMON_LIBS) \ + $(XSERVER_LIBS) $(XSERVER_SYS_LIBS) $(XVNC_SYS_LIBS) -lX11 +@@ -56,7 +61,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I + + libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now + +-libvnc_la_LIBADD = libvnccommon.la $(COMMON_LIBS) $(OS_LIB) ++libvnc_la_LIBADD = libvnccommon.la $(COMMON_LIBS) $(OS_LIB) $(GLX_LIB) + + EXTRA_DIST = Xvnc.man + +diff -up tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/xvnc.cc.jx tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/xvnc.cc +--- tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/xvnc.cc.jx 2012-09-05 09:29:19.000000000 -0400 ++++ tigervnc-1.2.80-20120905svn4996/unix/xserver/hw/vnc/xvnc.cc 2012-09-28 13:39:41.178815125 -0400 +@@ -87,6 +87,17 @@ extern "C" { + #include "version-config.h" + #include "site.h" + #endif ++ ++#if XORG >= 113 ++#ifdef GLXEXT ++/* C++ really is the worst */ ++#define private _private ++#include "glxserver.h" ++#undef private ++#include "glx_extinit.h" ++#endif ++#endif ++ + #undef class + #undef public + } +@@ -1562,6 +1573,16 @@ static void vfbClientStateChange(Callbac + dispatchException &= ~DE_RESET; + } + ++#if XORG >= 113 ++#ifdef GLXEXT ++static ExtensionModule vnc_glx_ext = { ++ GlxExtensionInit, ++ "GLX", ++ &noGlxExtension ++}; ++#endif ++#endif ++ + void + InitOutput(ScreenInfo *screenInfo, int argc, char **argv) + { +@@ -1571,6 +1592,12 @@ InitOutput(ScreenInfo *screenInfo, int a + int i; + int NumFormats = 0; + ++#if XORG >= 113 ++#ifdef GLXEXT ++ LoadExtension(&vnc_glx_ext, TRUE); ++#endif ++#endif ++ + /* initialize pixmap formats */ + + /* must have a pixmap depth to match every screen depth */