From 53fbf818751c91a12e83bd78eca465a75b4ed890 Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Tue, 9 Sep 2014 00:48:57 -0700 Subject: debian: Add initial packaging Signed-off-by: Jordan Justen --- debian/changelog | 5 + debian/compat | 1 + debian/control | 29 ++++ debian/copyright | 158 +++++++++++++++++++++ debian/gbp.conf | 11 ++ debian/license-reconcile.yml | 39 +++++ ...et-CMAKE-SOVERSION-for-internal-libraries.patch | 31 ++++ debian/patches/series | 1 + debian/piglit.lintian-overrides | 7 + debian/rules | 23 +++ debian/source/format | 1 + debian/source/lintian-overrides | 13 ++ debian/update-piglit-script.py | 20 +++ 13 files changed, 339 insertions(+) create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/gbp.conf create mode 100644 debian/license-reconcile.yml create mode 100644 debian/patches/0001-libpiglit-Set-CMAKE-SOVERSION-for-internal-libraries.patch create mode 100644 debian/patches/series create mode 100644 debian/piglit.lintian-overrides create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/source/lintian-overrides create mode 100644 debian/update-piglit-script.py diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..dc8c8c235 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +piglit (0~git20140914-b0c65ba-1) unstable; urgency=low + + * Add new debian packaging, closes: #761015 + + -- Jordan Justen Sun, 14 Sep 2014 13:43:12 -0700 diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..f11c82a4c --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 \ No newline at end of file diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..f5815fdd3 --- /dev/null +++ b/debian/control @@ -0,0 +1,29 @@ +Source: piglit +Priority: optional +Section: devel +Maintainer: Jordan Justen +Build-Depends: binutils (>> 2.18), + cmake, + debhelper (>= 9), + dh-python, + libegl1-mesa-dev | libegl-dev, + libgl1-mesa-dev | libgl-dev, + libglu1-mesa-dev | libglu-dev, + libxcb1-dev, + libwaffle-dev (>= 1.3), + pkg-config, + python (>= 2.7), + python-mako, + python-numpy +Standards-Version: 3.9.5 +X-Python-Version: >= 2.7 +Homepage: http://piglit.freedesktop.org/ +Vcs-Git: git://anongit.freedesktop.org/piglit +Vcs-Browser: http://cgit.freedesktop.org/piglit/ + +Package: piglit +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Pre-Depends}, ${misc:Depends}, + ${python:Depends} +Description: Open-source test suite for OpenGL implementations + Piglit is an open-source test suite for OpenGL implementations. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 000000000..42373f930 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,158 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: piglit +Upstream-Contact: Piglit +Source: git://anongit.freedesktop.org/piglit + +Files: * +Copyright: 2006 - 2014 Intel Corporation + Intel 2011 + 2007 - 2014 VMware, Inc. + 1999 - 2001 Allen Akin + 2012 Blaž Tomažič + 2009 - 2013 Red Hat, Inc. + 2010 - 2012 Red Hat + 2010 Fredrik Höglund (fredrik@kde.org) + Christopher James Halse Rogers + 2004 - 2008 IBM Corporation + 2011 Marek Olšák + 2009 - 2013 Marek Olšák + 2010 - 2012 Mathias Fröhlich + 2013 - 2014 Advanced Micro Devices, Inc. + 2013 Chris Forbes + 2011 - 2013 LunarG, Inc. + 2007 - 2013 The Piglit project + 2011 - 2013 Henri Verbeet + 2012 - 2013 Google Inc. + 2011 Christoph Bumiller + 2009 Nicolai Hähnle + 2014 Ilia Mirkin + 2013 Linaro + 2013 Linaro Inc + 2011 Vincent Lejeune + 2011 Dave Airlie + 2011 Dave Airlie + 2013 Timothy Arceri + 2010 Kristóf Ralovich + 1999 - 2007 Brian Paul + 2013 Gregory Hainaut + 2013 Jan Vesely + 1994 Silicon Graphics, Inc. + 2014 Adel Gadllah + 2010 Luca Barbieri + 2006 - 2008 Alexander Chemeris + 2010 Török Edwin + 2011 Pierre-Eric Pelloux-Prayer + 2011 - 2012 Con Kolivas +License: MIT + +Files: debian/* +Copyright: 2014 Intel Corporation +License: MIT + +Files: include/msvc/c99/stdint.h +Copyright: 2006-2008 Alexander Chemeris +License: BSD-2-clause + +Files: tests/general/triangle-guardband-viewport.c +Copyright: 2012 Google Inc. +License: LGPL-2.1+ + +Files: tests/shaders/glsl-uniform-out-of-bounds-2.c +Copyright: 2012 Google Inc. +License: LGPL-2.1+ + +Files: tests/util/glxew.h +Copyright: 2002-2008, Milan Ikits + 2002-2008, Marcelo E. Magallon + 2002, Lev Povalahev + 1999-2007 Brian Paul All Rights Reserved. + 2007 The Khronos Group Inc. +License: BSD-3-clause and MIT + +Files: include/msvc/c99/inttypes.h +Copyright: 2006 Alexander Chemeris +License: BSD-2-clause + +License: MIT + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + . + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * The name of the author may be used to endorse or promote products + derived from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + . + - Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + . + - Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This library 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 + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + . + On Debian systems, the full text of the GNU Lesser General Public + License version 2.1 can be found in the file + `/usr/share/common-licenses/LGPL-2.1'. diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 000000000..bfbcf2832 --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,11 @@ +[DEFAULT] +pristine-tar = True + +[buildpackage] +export-dir = ../build/ + +[import-orig] +dch = False +filter = debian/* +filter = */debian/* +filter-pristine-tar = True diff --git a/debian/license-reconcile.yml b/debian/license-reconcile.yml new file mode 100644 index 000000000..618a43c57 --- /dev/null +++ b/debian/license-reconcile.yml @@ -0,0 +1,39 @@ +Rules: + rules: + - + Glob: debian/* + License: MIT + Copyright: 2014 Intel Corporation + - + Glob: tests/texturing/rg-draw-pixels.c + Copyright: 2009 Intel Corporation + - + Glob: tests/fbo/fbo-generatemipmap-swizzle.c + Copyright: 2009 Intel Corporation + - + Glob: tests/glean/dsfilt.h + Copyright: 1999 Allen Akin + - + Glob: tests/shaders/glsl-uniform-out-of-bounds-2.c + Copyright: 2012 Google Inc. + - + Glob: tests/spec/glsl-1.30/execution/isinf-and-isnan.c + Copyright: 2011 Intel Corporation + - + Glob: tests/general/triangle-guardband-viewport.c + Copyright: 2012 Google Inc. + - + Glob: generated_tests/gen_interpolation_tests.py + Copyright: 2011 Intel Corporation + - + Glob: include/msvc/c99/stdint.h + Copyright: 2006-2008 Alexander Chemeris + - + Glob: tests/general/masked-clear.c + Copyright: 1999 Allen Akin + - + Glob: tests/general/select.c + Copyright: 2011 Pierre-Eric Pelloux-Prayer + - + Glob: include/msvc/c99/inttypes.h + Copyright: 2006 Alexander Chemeris diff --git a/debian/patches/0001-libpiglit-Set-CMAKE-SOVERSION-for-internal-libraries.patch b/debian/patches/0001-libpiglit-Set-CMAKE-SOVERSION-for-internal-libraries.patch new file mode 100644 index 000000000..bd662ff3d --- /dev/null +++ b/debian/patches/0001-libpiglit-Set-CMAKE-SOVERSION-for-internal-libraries.patch @@ -0,0 +1,31 @@ +From 58443e98e849916ceaf646d0c6966b226178bd8e Mon Sep 17 00:00:00 2001 +From: Jordan Justen +Date: Wed, 10 Sep 2014 01:55:06 -0700 +Subject: [PATCH] libpiglit: Set CMAKE SOVERSION for internal libraries to "0" + +When packaging for piglit for debian, I see this type of message: +dpkg-shlibdeps: warning: Can't extract name and version from library name libpiglitutil.so + +It it repeated several times for each piglit executable causing a +significant delay in the build time. Setting a soname version for +these internal libraries causes this message to go away. + +Signed-off-by: Jordan Justen +--- + cmake/piglit_util.cmake | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/cmake/piglit_util.cmake b/cmake/piglit_util.cmake +index e2c3454..45143d2 100644 +--- a/cmake/piglit_util.cmake ++++ b/cmake/piglit_util.cmake +@@ -84,5 +84,6 @@ function(piglit_add_library name) + install(TARGETS ${name} DESTINATION ${PIGLIT_INSTALL_LIBDIR}/lib) + endif(WIN32) + add_dependencies(${name} piglit_dispatch_gen) ++ set_target_properties(${name} PROPERTIES SOVERSION "0") + + endfunction(piglit_add_library) +-- +2.1.0 + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 000000000..79efd7a04 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +0001-libpiglit-Set-CMAKE-SOVERSION-for-internal-libraries.patch diff --git a/debian/piglit.lintian-overrides b/debian/piglit.lintian-overrides new file mode 100644 index 000000000..567293d71 --- /dev/null +++ b/debian/piglit.lintian-overrides @@ -0,0 +1,7 @@ +# Piglit uses shared libraries internally, but they are not intended +# to be available system wide. +piglit binary: postinst-has-useless-call-to-ldconfig +piglit binary: postrm-has-useless-call-to-ldconfig + +# Piglit upstream doesn't have a man page +piglit binary: binary-without-manpage diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..6851a169f --- /dev/null +++ b/debian/rules @@ -0,0 +1,23 @@ +#!/usr/bin/make -f +# Copyright (c) 2014 Intel Corporation + +DEB_DESTDIR := $(CURDIR)/debian/piglit + +%: + dh $@ --buildsystem cmake --with python2 + +override_dh_auto_configure: + dh_auto_configure -- \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH) \ + -DCMAKE_BUILD_TYPE=Release \ + -DPIGLIT_BUILD_GLES1_TESTS=1 \ + -DPIGLIT_BUILD_GLES2_TESTS=1 \ + -DPIGLIT_BUILD_GLES3_TESTS=1 \ + -DPIGLIT_USE_WAFFLE=1 + +override_dh_auto_install: + dh_auto_install +# Fix lintian extra-license-file + find $(DEB_DESTDIR) -name COPYING -delete + python $(CURDIR)/debian/update-piglit-script.py $(DEB_DESTDIR)/usr/bin/piglit diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 000000000..46ebe0266 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) \ No newline at end of file diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 000000000..4a7de8dd1 --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,13 @@ +# Piglit uses shared libraries internally, but they are not intended +# to be available system wide. +piglit source: postinst-has-useless-call-to-ldconfig +piglit source: postrm-has-useless-call-to-ldconfig + +# Piglit upstream doesn't have a man page +piglit source: binary-without-manpage + +# Using 'BSD-3-clause and MIT' which should be valid according to +# https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/#license-syntax +# See also: +# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760642 +space-in-std-shortname-in-dep5-copyright diff --git a/debian/update-piglit-script.py b/debian/update-piglit-script.py new file mode 100644 index 000000000..b18b1e5f4 --- /dev/null +++ b/debian/update-piglit-script.py @@ -0,0 +1,20 @@ +#!/usr/bin/python + +import os +import sys + +multiarch = os.environ['DEB_HOST_MULTIARCH'] + +assert len(sys.argv) == 2 +f = open(sys.argv[1], 'rb') +s = f.read() +f.close() + +r = s.replace("'lib64'", "'lib/%s', 'lib64'" % multiarch) +assert len(r) > len(s) + +f = open(sys.argv[1], 'wb') +f.write(r) +f.close() + +sys.exit(0) -- cgit v1.2.3