[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

libglvnd: Changes to 'debian-unstable'



 debian/changelog            |    5 +++++
 debian/compat               |    1 +
 debian/control              |   36 ++++++++++++++++++++++++++++++++++++
 debian/copyright            |   38 ++++++++++++++++++++++++++++++++++++++
 debian/libglvnd-dev.install |    4 ++++
 debian/libglvnd0.install    |    1 +
 debian/rules                |    7 +++++++
 debian/source/format        |    1 +
 src/GLX/libglx.c            |    7 +++++++
 src/GLX/libglxmapping.c     |    5 +++++
 tests/Makefile.am           |    6 +++---
 11 files changed, 108 insertions(+), 3 deletions(-)

New commits:
commit 70cf24886eb430e79376dfa570ba22bfaa763d82
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Thu Sep 26 01:34:13 2013 +0300

    initial packaging

diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..f4537fb
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,5 @@
+libglvnd (0.0.0-1) unstable; urgency=low
+
+  * Initial release (Closes: #nnnn)
+
+ -- Timo Aaltonen <tjaalton@ubuntu.com>  Thu, 29 Aug 2013 10:59:47 +0300
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..f627bb8
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,36 @@
+Source: libglvnd
+Priority: extra
+Maintainer: Timo Aaltonen <tjaalton@ubuntu.com>
+Build-Depends:
+ debhelper (>= 9),
+ dh-autoreconf,
+ pkg-config,
+ libx11-dev,
+ libxext-dev,
+ xserver-xorg-dev,
+ python-dev,
+ python-libxml2,
+ libatomic-ops-dev,
+Standards-Version: 3.9.4
+Section: libs
+Homepage: <insert the upstream URL, if relevant>
+Vcs-Git: git://git.debian.org/pkg-xorg/lib/libglvnd.git
+Vcs-Browser: http://git.debian.org/?p=pkg-xorg/lib/libglvnd.git;a=summary
+
+Package: libglvnd-dev
+Section: libdevel
+Architecture: any
+Depends: libglvnd0 (= ${binary:Version})
+Description: <insert up to 60 chars description>
+ <insert long description, indented with spaces>
+
+Package: libglvnd0
+Section: libs
+Architecture: any
+Pre-Depends: ${misc:Pre-Depends},
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Multi-Arch: same
+Description: <insert up to 60 chars description>
+ This is an implementation of the vendor-neutral dispatch layer for
+ arbitrating OpenGL API calls between multiple vendors on a per-screen basis.
+
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..5c62e9c
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,38 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: libglvnd
+Source: https://github.com/NVIDIA/libglvnd
+
+Files: *
+Copyright: <years> <put author's name and email here>
+           <years> <likewise for another author>
+License: <special license>
+ <Put the license of the package here indented by 1 space>
+ <This follows the format of Description: lines in control file>
+ .
+ <Including paragraphs>
+
+# If you want to use GPL v2 or later for the /debian/* files use 
+# the following clauses, or change it to suit. Delete these two lines
+Files: debian/*
+Copyright: 2013 Timo Aaltonen <tjaalton@ubuntu.com>
+License: GPL-2+
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+
+# Please also look if there are files or directories which have a
+# different copyright/license attached and list them here.
+# Please avoid to pick license terms that are more restrictive than the
+# packaged work, as it may make Debian's contributions unacceptable upstream.
diff --git a/debian/libglvnd-dev.install b/debian/libglvnd-dev.install
new file mode 100644
index 0000000..b3a6e12
--- /dev/null
+++ b/debian/libglvnd-dev.install
@@ -0,0 +1,4 @@
+usr/include/*
+usr/lib/*/lib*.so
+usr/lib/pkgconfig/*
+usr/share/pkgconfig/*
diff --git a/debian/libglvnd0.install b/debian/libglvnd0.install
new file mode 100644
index 0000000..3ddde58
--- /dev/null
+++ b/debian/libglvnd0.install
@@ -0,0 +1 @@
+usr/lib/*/lib*.so.*
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..7e97af4
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,7 @@
+#!/usr/bin/make -f
+#
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+%:
+	dh $@ --with autoreconf,xsf --builddirectory=build/
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..d3827e7
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+1.0

commit f7e7657803bb3c275d1d3c6afd4c889660b6bb71
Author: Andy Ritger <aritger@nvidia.com>
Date:   Tue Sep 3 22:39:08 2013 -0700

    Check for strdup(3) failure in cacheProcAddress()
    
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Signed-off-by: Brian Nguyen <brnguyen@nvidia.com>

diff --git a/src/GLX/libglx.c b/src/GLX/libglx.c
index 47373de..011d572 100644
--- a/src/GLX/libglx.c
+++ b/src/GLX/libglx.c
@@ -880,6 +880,13 @@ static void cacheProcAddress(const GLubyte *procName, __GLXextFuncPtr addr)
     }
 
     pEntry->procName = (GLubyte *)strdup((const char *)procName);
+
+    if (pEntry->procName == NULL) {
+        assert(pEntry->procName);
+        free(pEntry);
+        return;
+    }
+
     pEntry->addr = addr;
 
     LKDHASH_WRLOCK(__glXPthreadFuncs, __glXProcAddressHash);

commit 345a2f34ce50a39580a39deb9950d0b8c06d79a2
Author: Andy Ritger <aritger@nvidia.com>
Date:   Tue Sep 3 22:23:56 2013 -0700

    Link libtrace.la *after* libglvnd_pthread.la
    
    Debug builds of libglvnd_pthread.la depend on the __glvnd_dbg_printf
    symbol from libtrace.la.  Sort the link order so that the linker sees
    libglvnd_pthread.la and its unresolved symbol first, so that it knows
    to resolve it when it subsequently sees libtrace.la.
    
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Signed-off-by: Brian Nguyen <brnguyen@nvidia.com>

diff --git a/tests/Makefile.am b/tests/Makefile.am
index b2b5331..f25474d 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -68,8 +68,8 @@ testglxnscreens_CFLAGS = -I$(X11GLVND_DIR) $(AM_CFLAGS)
 testglxnscreens_LDADD = -lX11
 testglxnscreens_LDADD += $(top_builddir)/src/GLX/libGLX.la
 testglxnscreens_LDADD += $(top_builddir)/src/OpenGL/libOpenGL.la
-testglxnscreens_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 testglxnscreens_LDADD += $(top_builddir)/src/util/glvnd_pthread/libglvnd_pthread.la
+testglxnscreens_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 testglxnscreens_LDADD += -lX11 $(X11GLVND_DIR)/libx11glvnd_client.la
 
 # The *_oldlink variant tests that linking against legacy libGL.so works
@@ -86,8 +86,8 @@ testglxmakecurrent_oldlink_SOURCES = \
 
 testglxmakecurrent_oldlink_LDADD = -lX11
 testglxmakecurrent_oldlink_LDADD += $(top_builddir)/src/GL/libGL.la
-testglxmakecurrent_oldlink_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 testglxmakecurrent_oldlink_LDADD += $(top_builddir)/src/util/glvnd_pthread/libglvnd_pthread.la
+testglxmakecurrent_oldlink_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 
 testx11glvndproto_CFLAGS = -I$(X11GLVND_DIR)
 testx11glvndproto_LDADD = -lX11 $(X11GLVND_DIR)/libx11glvnd_client.la
@@ -107,8 +107,8 @@ testglxgetprocaddress_LDADD = $(top_builddir)/src/GLX/libGLX.la
 testglxmakecurrent_LDADD = -lX11
 testglxmakecurrent_LDADD += $(top_builddir)/src/GLX/libGLX.la
 testglxmakecurrent_LDADD += $(top_builddir)/src/OpenGL/libOpenGL.la
-testglxmakecurrent_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 testglxmakecurrent_LDADD += $(top_builddir)/src/util/glvnd_pthread/libglvnd_pthread.la
+testglxmakecurrent_LDADD += $(top_builddir)/src/util/trace/libtrace.la
 
 testglxgetclientstr_LDADD = -lX11
 testglxgetclientstr_LDADD += $(top_builddir)/src/GLX/libGLX.la

commit c8ae6458854379b615d0030c991ac99614eeec56
Author: Andy Ritger <aritger@nvidia.com>
Date:   Tue Sep 3 21:57:16 2013 -0700

    Check strdup(3) return value in AllocDispatchIndex()
    
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Signed-off-by: Brian Nguyen <brnguyen@nvidia.com>

diff --git a/src/GLX/libglxmapping.c b/src/GLX/libglxmapping.c
index 9932e8a..c243cf4 100644
--- a/src/GLX/libglxmapping.c
+++ b/src/GLX/libglxmapping.c
@@ -130,6 +130,10 @@ static GLboolean AllocDispatchIndex(__GLXvendorInfo *vendor,
     }
 
     pEntry->procName = (GLubyte *)strdup((const char *)procName);
+    if (!pEntry->procName) {
+        free(pEntry);
+        return GL_FALSE;
+    }
 
     LKDHASH_WRLOCK(__glXPthreadFuncs, __glXDispatchIndexHash);
     pEntry->index = __glXNextUnusedHashIndex++;

commit b7f965ed737f327ed66957963ea26fcf14ccf3f5
Author: Andy Ritger <aritger@nvidia.com>
Date:   Tue Sep 3 21:55:54 2013 -0700

    Unlock in the __glXFetchDispatchEntry() failure path.
    
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Signed-off-by: Brian Nguyen <brnguyen@nvidia.com>

diff --git a/src/GLX/libglxmapping.c b/src/GLX/libglxmapping.c
index 4eb057d..9932e8a 100644
--- a/src/GLX/libglxmapping.c
+++ b/src/GLX/libglxmapping.c
@@ -228,6 +228,7 @@ __GLXextFuncPtr __glXFetchDispatchEntry(__GLXdispatchTableDynamic *dynDispatch,
             if (!pEntry) {
                 // Uh-oh!
                 assert(pEntry);
+                LKDHASH_UNLOCK(__glXPthreadFuncs, dynDispatch->hash);
                 return NULL;
             }
             pEntry->index = index;


Reply to: