primus (0~20140711-1) unstable; urgency=medium
authorVincent Cheng <vcheng@debian.org>
Wed, 15 Jan 2014 22:14:25 +0000 (22:14 +0000)
committerVincent Cheng <vcheng@debian.org>
Wed, 15 Jan 2014 22:14:25 +0000 (22:14 +0000)
  [ Vincent Cheng ]
  * New upstream git snapshot.
    - rebase on 4e000124ec
  * Update email address.
  * Update Standards version to 3.9.6, no changes required.

  [ Andreas Beckmann ]
  * hardening.patch: New. Use all variables that contain hardening flags.

[dgit import unpatched primus 0~20140711-1]

14 files changed:
1  2 
debian/bash-completion
debian/changelog
debian/compat
debian/control
debian/copyright
debian/docs
debian/manpages
debian/patches/hardening.patch
debian/patches/series
debian/primus-libs-ia32.lintian-overrides
debian/rules
debian/scripts/primusrun
debian/source/format
debian/watch

index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..4bbaa34e5694cddb5b83000ff6ec9488ae47200d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++primus.bash-completion primus
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..8876c0946422be44c33f31df738a29353d0b6f63
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,73 @@@
++primus (0~20140711-1) unstable; urgency=medium
++
++  [ Vincent Cheng ]
++  * New upstream git snapshot.
++    - rebase on 4e000124ec
++  * Update email address.
++  * Update Standards version to 3.9.6, no changes required.
++
++  [ Andreas Beckmann ]
++  * hardening.patch: New. Use all variables that contain hardening flags.
++
++ -- Vincent Cheng <vcheng@debian.org>  Wed, 15 Jan 2014 14:14:25 -0800
++
++primus (0~20131127-2) unstable; urgency=medium
++
++  * Build with PRIMUS_UPLOAD=1 to avoid a bug triggered by using primus and
++    xserver-xorg-video-intel with UXA acceleration enabled (which is currently
++    the default with xserver-xorg-video-intel 2:2.21.15-1 in unstable).
++    This workaround will remain in effect until xserver-xorg-video-intel
++    defaults to SNA in unstable. This flag will not be set if build
++    environment is Ubuntu, as SNA is already enabled by default (in trusty).
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Tue, 07 Jan 2014 01:56:18 -0800
++
++primus (0~20131127-1) unstable; urgency=medium
++
++  * New upstream git snapshot.
++    - rebase on 074817614c
++  * Update Standards version to 3.9.5, no changes required.
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Mon, 06 Jan 2014 01:36:38 -0800
++
++primus (0~20130904-1) unstable; urgency=low
++
++  * New upstream git snapshot.
++    - rebase on da6459236b
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Wed, 23 Oct 2013 01:03:15 -0700
++
++primus (0~20130805-1) unstable; urgency=low
++
++  * New upstream git snapshot.
++    - rebase on 3f248d9f13
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Tue, 20 Aug 2013 02:13:51 -0700
++
++primus (0~20130601-1) unstable; urgency=low
++
++  * New upstream git snapshot.
++    - rebase on 38731d5375
++    - fixes FTBFS on oldstable with gcc < 4.6 (Closes: #710025)
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Thu, 06 Jun 2013 00:31:34 -0700
++
++primus (0~20130527-1) unstable; urgency=low
++
++  * New upstream git snapshot.
++    - rebase on 618acb99e0
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Wed, 29 May 2013 01:49:06 -0700
++
++primus (0~20130511-1) unstable; urgency=low
++
++  * New upstream git snapshot.
++    - rebase on ef73dd1976
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Thu, 16 May 2013 00:17:46 -0700
++
++primus (0~20130427-1) unstable; urgency=low
++
++  * Initial release. (Closes: #692597)
++
++ -- Vincent Cheng <Vincentc1208@gmail.com>  Fri, 03 May 2013 03:26:17 -0700
diff --cc debian/compat
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..ec635144f60048986bc560c5576355344005e6e7
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++9
diff --cc debian/control
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..426909415d581211c23d26d497baf6e22136d2e5
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,56 @@@
++Source: primus
++Section: utils
++Priority: extra
++Maintainer: Debian NVIDIA Maintainers <pkg-nvidia-devel@lists.alioth.debian.org>
++Uploaders: 
++ Aron Xu <aron@debian.org>, 
++ Vincent Cheng <vcheng@debian.org>,
++ Yunqiang Su <wzssyqa@gmail.com>
++Build-Depends: debhelper (>= 9), bash-completion, mesa-common-dev
++Standards-Version: 3.9.6
++Homepage: https://github.com/amonakov/primus
++Vcs-Git: git://anonscm.debian.org/pkg-nvidia/primus.git
++Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-nvidia/primus.git
++
++Package: primus
++Architecture: i386 amd64
++Depends: ${shlibs:Depends}, ${misc:Depends}, bumblebee, socat,
++ primus-libs (= ${binary:Version})
++Recommends: primus-libs-ia32 [amd64]
++Description: client-side GPU offloading for NVIDIA Optimus
++ Primus is a shared library that provides OpenGL and GLX APIs and implements
++ low-overhead local-only client-side OpenGL offloading via GLX forking,
++ similar to VirtualGL. It intercepts GLX calls and redirects GL rendering
++ to a secondary X display, presumably driven by a faster GPU. On swapping
++ buffers, rendered contents are read back using a PBO and copied onto
++ the drawable it was supposed to be rendered on in the first place.
++ .
++ Primus is currently intended to be used alongside Bumblebee and provides a
++ drop-in replacement for optirun (i.e. "primusrun").
++
++Package: primus-libs
++Architecture: i386 amd64
++Depends: ${shlibs:Depends}, ${misc:Depends}
++Multi-Arch: same
++Description: Shared libraries for primus
++ This package contains the libraries for primus which are loaded when running
++ primusrun.
++
++Package: primus-libs-ia32
++Architecture: i386
++Depends: primus-libs, ${misc:Depends}
++Multi-Arch: foreign
++Description: Shared libraries for primus (32-bit)
++ This package depends on 32-bit libraries for primus. It can safely be
++ removed after installation.
++
++Package: primus-libs-dbg
++Architecture: i386 amd64
++Section: debug
++Depends: primus-libs (=${binary:Version}), ${misc:Depends}
++Multi-Arch: same
++Description: Shared libraries for primus - debugging symbols
++ This package contains the libraries for primus which are loaded when running
++ primusrun.
++ .
++ This package contains the debugging symbols for primus-libs.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..37a9b5cb008e15c0b43f9ef6bd37e8d2d2fc0f36
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,39 @@@
++Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: primus
++Source: https://github.com/amonakov/primus
++
++Files: *
++Copyright: 2012-2013 Alexander Monakov <amonakov@gmail.com> 
++License: ISC
++ Permission to use, copy, modify, and/or distribute this software for any
++ purpose with or without fee is hereby granted, provided that the above
++ copyright notice and this permission notice appear in all copies.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
++ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
++ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
++ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
++ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
++ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
++ PERFORMANCE OF THIS SOFTWARE.
++
++Files: debian/*
++Copyright: 2012 Dmitry Zhurikhin <zhurikhin@gmail.com>
++           2013 Bruno Pagani <bruno.n.pagani@gmail.com>
++           2013 Vincent Cheng <vcheng@debian.org>
++License: GPL-3.0+
++ 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 3 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 3 can be found in "/usr/share/common-licenses/GPL-3".
diff --cc debian/docs
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..7daf99b051d016ffd54ebf828fcf7ce96f4125c5
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2 @@@
++README.md
++technotes.md
diff --cc debian/manpages
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b7c3def4aa75395a272f744a1d86bfebe174ca95
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++primusrun.1
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..4db58f1118e21db428a2d5fb5cefc596170e3a80
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,13 @@@
++Description: use all variables containing hardening flags
++Forwarded: https://github.com/amonakov/primus/pull/148
++Author: Andreas Beckmann <anbe@debian.org>
++Last-Update: 2014-10-25
++
++--- a/Makefile
+++++ b/Makefile
++@@ -30,4 +30,4 @@
++ 
++ $(LIBDIR)/libGL.so.1: libglfork.cpp
++      mkdir -p $(LIBDIR)
++-     $(CXX) $(CXXFLAGS) -fvisibility=hidden -fPIC -shared -Wl,-Bsymbolic -o $@ $< -lX11 -lpthread -lrt
+++     $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fvisibility=hidden -fPIC -shared -Wl,-Bsymbolic -o $@ $< $(LDFLAGS) -lX11 -lpthread -lrt
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..814900f955669f5c00aae2fc6a1ff299365922f5
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++hardening.patch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..6e3221c88117dca5939364a448d603cf21682596
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++primus-libs-ia32: empty-binary-package
diff --cc debian/rules
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..fcf719af2341319440df13c027d21604f9c0eddd
new file mode 100755 (executable)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,46 @@@
++#!/usr/bin/make -f
++# -*- makefile -*-
++
++# Uncomment this to turn on verbose mode.
++#export DH_VERBOSE=1
++
++DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
++
++ifeq ($(shell dpkg-vendor --derives-from Ubuntu && echo yes),yes)
++      PRIMUS_libGLa=/usr/lib/$(DEB_HOST_MULTIARCH)/mesa/libGL.so.1
++      PRIMUS_libGLd=/usr/lib/$(DEB_HOST_MULTIARCH)/mesa/libGL.so.1
++      # =1 on 13.04/raring and earlier, 0 (default) on 13.10/saucy and later
++      PRIMUS_UPLOAD=0
++else
++      PRIMUS_libGLa=/usr/lib/$(DEB_HOST_MULTIARCH)/libGL.so.1
++      PRIMUS_libGLd=/usr/lib/$(DEB_HOST_MULTIARCH)/libGL.so.1
++      # PRIMUS_UPLOAD=1 set until Debian's xserver-xorg-video-intel
++      # defaults to SNA acceleration in unstable
++      PRIMUS_UPLOAD=1
++endif
++
++# Where to put the resulting library during build
++BUILD_LIBDIR ?= lib
++
++%:
++      dh $@ --with bash-completion
++
++override_dh_clean:
++      rm -rf $(BUILD_LIBDIR)
++      dh_clean
++
++override_dh_auto_build:
++      dh_auto_build -- LIBDIR=$(BUILD_LIBDIR) \
++          PRIMUS_libGLd=$(PRIMUS_libGLd) \
++          PRIMUS_libGLa=$(PRIMUS_libGLa) \
++          PRIMUS_UPLOAD=$(PRIMUS_UPLOAD)
++
++override_dh_install:
++      # Make all the paths explicitly
++      mkdir -p debian/primus/usr/bin/ debian/primus-libs/usr/lib/$(DEB_HOST_MULTIARCH)/primus/
++      install -m 755 debian/scripts/primusrun debian/primus/usr/bin/
++      cp -r $(BUILD_LIBDIR)/* debian/primus-libs/usr/lib/$(DEB_HOST_MULTIARCH)/primus/
++      dh_install
++
++override_dh_strip:
++      dh_strip --dbg-package=primus-libs-dbg
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..54432f31b924c7dc4507d286eef2a2ef9aeede0a
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,52 @@@
++#!/bin/bash
++
++# Readback-display synchronization method
++# 0: no sync, 1: D lags behind one frame, 2: fully synced
++# export PRIMUS_SYNC=${PRIMUS_SYNC:-0}
++
++# Verbosity level
++# 0: only errors, 1: warnings (default), 2: profiling
++# export PRIMUS_VERBOSE=${PRIMUS_VERBOSE:-1}
++
++# Secondary display
++# export PRIMUS_DISPLAY=${PRIMUS_DISPLAY:-:8}
++
++# "Accelerating" libGL
++# $LIB will be interpreted by the dynamic linker
++# if (which dpkg-vendor >/dev/null && dpkg-vendor --derives-from Ubuntu) || \
++#     [ -e /etc/dpkg/origins/ubuntu ]; then
++#     # Ubuntu
++#     export PRIMUS_libGLa=${PRIMUS_libGLa:-'/usr/$LIB/mesa/libGL.so.1'}
++# else
++#     # Debian
++#     export PRIMUS_libGLa=${PRIMUS_libGLa:-'/usr/$LIB/libGL.so.1'}
++# fi
++
++# "Displaying" libGL
++# if (which dpkg-vendor >/dev/null && dpkg-vendor --derives-from Ubuntu) || \
++#     [ -e /etc/dpkg/origins/ubuntu ]; then
++#     # Ubuntu
++#     export PRIMUS_libGLa=${PRIMUS_libGLa:-'/usr/$LIB/mesa/libGL.so.1'}
++# else
++#     # Debian
++#     export PRIMUS_libGLa=${PRIMUS_libGLa:-'/usr/$LIB/libGL.so.1'}
++# fi 
++
++# Directory containing primus libGL
++PRIMUS_libGL=${PRIMUS_libGL:-'/usr/$LIB/primus'}
++
++# On some distributions, e.g. on Gentoo, libnvidia-tls.so is not available
++# in default search paths.  Add its path manually after the primus library
++bblibs=$(echo -ne 'Q LibraryPath\0' | \
++  socat - UNIX-CONNECT:/var/run/bumblebee.socket | sed 's/^Value: \(.*\)/\1/')
++
++PRIMUS_libGL=${PRIMUS_libGL}${bblibs:+:$bblibs}
++
++# Mesa drivers need a few symbols to be visible
++# export PRIMUS_LOAD_GLOBAL=${PRIMUS_LOAD_GLOBAL:-'libglapi.so.0'}
++
++# Need functions from primus libGL to take precedence
++export LD_LIBRARY_PATH=${PRIMUS_libGL}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
++
++# And go!
++exec "$@"
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..163aaf8d82b6c54f23c45f32895dbdfdcc27b047
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++3.0 (quilt)
diff --cc debian/watch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..9ea2b042a98627de8351c72b297fbd6f14fe0cba
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2 @@@
++version=3
++https://github.com/amonakov/primus/tags .*/v?(\d.*)\.(?:tgz|tbz2|tar\.(?:gz|bz2|xz))