ck (0.6.0-1.4) unstable; urgency=medium
authorJCF Ploemen (jcfp) <linux@jcf.pm>
Sat, 4 Apr 2020 05:20:03 +0000 (06:20 +0100)
committerJCF Ploemen (jcfp) <linux@jcf.pm>
Sat, 4 Apr 2020 05:20:03 +0000 (06:20 +0100)
  * Non-maintainer upload.
  * Explicitly set the platform option when building for armhf
    rather than rely on the configure script's autodetection.

[dgit import unpatched ck 0.6.0-1.4]

15 files changed:
1  2 
debian/changelog
debian/compat
debian/control
debian/copyright
debian/gbp.conf
debian/libck-dev.install
debian/libck0.install
debian/patches/allow-disable-sse.patch
debian/patches/glibc-2.30.patch
debian/patches/series
debian/rules
debian/source/format
debian/source/options
debian/source/patch-header
debian/watch

index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b6b0941c15d1373c0627163a7c937d810b17a3d1
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,95 @@@
++ck (0.6.0-1.4) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Explicitly set the platform option when building for armhf
++    rather than rely on the configure script's autodetection.
++
++ -- JCF Ploemen (jcfp) <linux@jcf.pm>  Sat, 04 Apr 2020 05:20:03 +0000
++
++ck (0.6.0-1.3) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Backport upstream commit b520d58 to fix build failure against
++    glibc 2.30; patch provided by Logan Rosen. (Closes: #951384)
++
++ -- JCF Ploemen (jcfp) <linux@jcf.pm>  Fri, 27 Mar 2020 10:14:22 +0000
++
++ck (0.6.0-1.2) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Backport upstream patch to disable SSE on x86. (Closes: #906697)
++
++ -- Dominik George <natureshadow@debian.org>  Thu, 21 Nov 2019 09:38:52 +0100
++
++ck (0.6.0-1.1) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Apply patch from Niels Thykier to fix FTBFS with
++    debhelper >= 11.1. (Closes: #888591)
++
++ -- Adrian Bunk <bunk@debian.org>  Sat, 24 Feb 2018 21:32:28 +0200
++
++ck (0.6.0-1) unstable; urgency=medium
++
++  * New upstream version 0.6.0
++
++ -- Robert Edmonds <edmonds@debian.org>  Fri, 10 Mar 2017 18:38:50 -0500
++
++ck (0.5.2-2) unstable; urgency=medium
++
++  * debian/control: Only build on architectures supported by upstream
++  * debian/rules: Limit tests to 2 cores (Closes: #764827)
++  * debian/gbp.conf: New (enable pristine-tar, pristine-tar-commit)
++
++ -- Robert Edmonds <edmonds@debian.org>  Thu, 29 Dec 2016 16:59:42 -0500
++
++ck (0.5.2-1) unstable; urgency=medium
++
++  * New upstream version 0.5.2 (Closes: #813145)
++  * debian/control: Update Maintainer (Closes: #848656)
++  * debian/control: Use HTTPS Vcs-* URLs
++  * debian/control: Standards-Version 3.9.8 (no changes)
++  * debian/control: Build-Depend on debhelper 10
++  * debian/compat: Compat level 10
++  * debian/copyright: BSD -> BSD-2-clause (Fixes Lintian
++    "invalid-short-name-in-dep5-copyright")
++  * debian/copyright: Remove Source header (dead link)
++  * debian/copyright: Correct path to include/gcc/x86_64/ck_pr_rtm.h (Fixes
++    Lintian "wildcard-matches-nothing-in-dep5-copyright ck_pr_rtm",
++    "unused-file-paragraph-in-dep5-copyright")
++  * debian/watch: Add watch file for GitHub releases
++  * debian/source/: Use 3.0 (quilt) source format, plus options and patch
++    header
++
++ -- Robert Edmonds <edmonds@debian.org>  Wed, 21 Dec 2016 18:59:51 -0500
++
++ck (0.4.4-2) unstable; urgency=low
++
++  * Update maintainer to Debian QA up (orphaning the package)
++
++ -- Daniel Pocock <daniel@pocock.pro>  Mon, 19 Dec 2016 10:07:18 +0100
++
++ck (0.4.4-1) unstable; urgency=medium
++
++  * New upstream release.
++
++ -- Daniel Pocock <daniel@pocock.pro>  Wed, 10 Sep 2014 22:16:03 +0200
++
++ck (0.4.3-1) unstable; urgency=medium
++
++  * New upstream release.
++
++ -- Daniel Pocock <daniel@pocock.pro>  Sat, 02 Aug 2014 16:28:29 +0200
++
++ck (0.4.2-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Fixes some build issues for non-Intel platforms.
++
++ -- Daniel Pocock <daniel@pocock.pro>  Fri, 02 May 2014 09:17:48 +0200
++
++ck (0.3.5-1) unstable; urgency=low
++
++  * Initial packaging (Closes: #740392)
++
++ -- Daniel Pocock <daniel@pocock.com.au>  Fri, 28 Feb 2014 23:48:09 +0100
diff --cc debian/compat
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..f599e28b8ab0d8c9c57a486c89c4a5132dcbd3b2
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++10
diff --cc debian/control
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..96fccf0300b9eaa82390b59e31e11235fa09b592
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,29 @@@
++Source: ck
++Section: libs
++Priority: optional
++Maintainer: Robert Edmonds <edmonds@debian.org>
++Build-Depends: debhelper (>= 10)
++Standards-Version: 3.9.8
++Homepage: http://concurrencykit.org/
++Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/ck.git
++Vcs-Git: https://anonscm.debian.org/git/collab-maint/ck.git
++
++Package: libck0
++Architecture: amd64 arm64 armhf i386 ppc64el
++Pre-Depends: ${misc:Pre-Depends}
++Depends: ${shlibs:Depends}, ${misc:Depends}
++Description: Concurrency Kit - shared libraries
++ Concurrency primitives, safe memory reclamation mechanisms and
++ non-blocking data structures designed to aid in the research,
++ design and implementation of high performance concurrent systems.
++
++Package: libck-dev
++Section: libdevel
++Architecture: amd64 arm64 armhf i386 ppc64el
++Depends: libck0 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
++Description: Concurrency Kit - development files
++ Concurrency primitives, safe memory reclamation mechanisms and
++ non-blocking data structures designed to aid in the research,
++ design and implementation of high performance concurrent systems.
++ .
++ This package provides header files needed by developers.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b4d9a7996215bfa18b73d3b4e305bf0f45ad97a0
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,68 @@@
++Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: ck
++
++Files: *
++Copyright: 2010-2013, Samy Al Bahra.
++           2011-2013, AppNexus, Inc.
++License: BSD-2-clause
++
++Files: src/ck_hp.c
++Copyright: 2008, IBM Corporation
++License: Apache
++
++Files: include/gcc/x86_64/ck_pr_rtm.h
++Copyright: 2012-2013, Intel Corporation
++License: Intel
++
++Files: debian/*
++Copyright: 2014, Daniel Pocock http://danielpocock.com
++License: BSD-2-clause
++
++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:
++ 1. Redistributions of source code must retain the above copyright
++    notice, this list of conditions and the following disclaimer.
++ 2. 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 AUTHOR 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 AUTHOR 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: Apache
++ (c) Copyright 2008, IBM Corporation.
++ Licensed under the Apache License, Version 2.0 (the "License");
++ you may not use this file except in compliance with the License.
++ You may obtain a copy of the License at
++ .
++ http://www.apache.org/licenses/LICENSE-2.0
++ .
++ Unless required by applicable law or agreed to in writing, software
++ distributed under the License is distributed on an "AS IS" BASIS,
++ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ See the License for the specific language governing permissions and
++ limitations under the License.
++
++License: Intel
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that: (1) source code distributions
++ retain the above copyright notice and this paragraph in its entirety, (2)
++ distributions including binary code include the above copyright notice and
++ this paragraph in its entirety in the documentation or other materials
++ provided with the distribution
++ .
++ THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
++ WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
++ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
++
diff --cc debian/gbp.conf
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b839864c6a8d67e702023caf1180b1bed5a2280d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,6 @@@
++[import-orig]
++pristine-tar = True
++
++[buildpackage]
++pristine-tar = True
++pristine-tar-commit = True
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..47065cde9e827fa135d264ba85efbdaa30422ea4
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,4 @@@
++usr/include
++usr/lib/*/lib*.so
++usr/lib/*/pkgconfig
++usr/share/man
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..3ddde584198421f0d2a3fef9d36cc110f3b8b76d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++usr/lib/*/lib*.so.*
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..181ab0469a5fefc5b6c0a3f88c933514ace30d1d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,57 @@@
++--- a/configure
+++++ b/configure
++@@ -119,6 +119,7 @@ generate()
++          -e "s#@GZIP_SUFFIX@#$GZIP_SUFFIX#g"                 \
++          -e "s#@POINTER_PACK_ENABLE@#$POINTER_PACK_ENABLE#g" \
++          -e "s#@DISABLE_DOUBLE@#$DISABLE_DOUBLE#g"           \
+++         -e "s#@SSE_DISABLE@#$SSE_DISABLE#g"                 \
++          -e "s#@RTM_ENABLE@#$RTM_ENABLE#g"                   \
++          -e "s#@LSE_ENABLE@#$LSE_ENABLE#g"                   \
++          -e "s#@VMA_BITS@#$VMA_BITS_R#g"                     \
++@@ -160,6 +161,7 @@ generate_stdout()
++      echo "      MEMORY_MODEL = $MM"
++      echo "               RTM = $RTM_ENABLE"
++      echo "               LSE = $LSE_ENABLE"
+++     echo "               SSE = $SSE_DISABLE"
++      echo
++      echo "Headers will be installed in $HEADERS"
++      echo "Libraries will be installed in $LIBRARY"
++@@ -201,6 +203,7 @@ for option; do
++              echo "  --platform=N             Force the platform type, instead of relying on autodetection"
++              echo "  --use-cc-builtins        Use the compiler atomic bultin functions, instead of the CK implementation"
++              echo "  --disable-double         Don't generate any of the functions using the \"double\" type"
+++             echo "  --disable-sse            Do not use any SSE instructions (x86 only)"
++              echo
++              echo "The following options affect regression testing."
++              echo "  --cores=N                Specify number of cores available on target machine"
++@@ -243,6 +246,9 @@ for option; do
++      --enable-lse)
++              LSE_ENABLE_SET="CK_MD_LSE_ENABLE"
++              ;;
+++     --disable-sse)
+++             SSE_DISABLE="CK_MD_SSE_DISABLE"
+++             ;;
++      --cores=*)
++              CORES=$value
++              ;;
++@@ -313,6 +319,7 @@ GZIP=${GZIP:-"gzip -c"}
++ POINTER_PACK_ENABLE=${POINTER_PACK_ENABLE:-"CK_MD_POINTER_PACK_DISABLE"}
++ DISABLE_DOUBLE=${DISABLE_DOUBLE:-"CK_PR_ENABLE_DOUBLE"}
++ RTM_ENABLE=${RTM_ENABLE_SET:-"CK_MD_RTM_DISABLE"}
+++SSE_DISABLE=${SSE_DISABLE:-"CK_MD_SSE_ENABLE"}
++ LSE_ENABLE=${LSE_ENABLE_SET:-"CK_MD_LSE_DISABLE"}
++ VMA_BITS=${VMA_BITS:-"unknown"}
++ 
++--- a/include/ck_md.h.in
+++++ b/include/ck_md.h.in
++@@ -47,6 +47,10 @@
++ #define @POINTER_PACK_ENABLE@
++ #endif /* @POINTER_PACK_ENABLE@ */
++ 
+++#ifndef @SSE_DISABLE@
+++#define @SSE_DISABLE@
+++#endif /* @SSE_DISABLE@ */
+++
++ #ifndef @VMA_BITS@ 
++ #define @VMA_BITS@ @VMA_BITS_VALUE@
++ #endif /* @VMA_BITS@ */
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..22a40421e9e405dfb77705e9fff71f93fb99b954
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,52 @@@
++From b520d58d00b7ed6c5cc9bc97c62f07e09f4f49ad Mon Sep 17 00:00:00 2001
++From: Samy Al Bahra <sbahra@backtrace.io>
++Date: Tue, 29 Oct 2019 17:30:09 -0400
++Subject: [PATCH] regressions/common: rename gettid wrapper to common_gettid.
++
++glibc-2.30 added a wrapper to gettid (https://lwn.net/Articles/795127/).
++gettid will clash with the glibc-provided symbol. Remove the
++macro and instead move to a dedicated namespace.
++
++We go this route to avoid introducing unnecessary complexity to
++build.
++
++Fixes #147
++---
++ regressions/common.h | 8 +++-----
++ 1 file changed, 3 insertions(+), 5 deletions(-)
++
++--- a/regressions/common.h
+++++ b/regressions/common.h
++@@ -267,13 +267,11 @@
++ #define AFFINITY_INITIALIZER {0, 0}
++ 
++ #ifdef __linux__
++-#ifndef gettid
++ static pid_t
++-gettid(void)
+++common_gettid(void)
++ {
++      return syscall(__NR_gettid);
++ }
++-#endif /* gettid */
++ 
++ CK_CC_UNUSED static int
++ aff_iterate(struct affinity *acb)
++@@ -285,7 +283,7 @@
++      CPU_ZERO(&s);
++      CPU_SET(c % CORES, &s);
++ 
++-     return sched_setaffinity(gettid(), sizeof(s), &s);
+++     return sched_setaffinity(common_gettid(), sizeof(s), &s);
++ }
++ 
++ CK_CC_UNUSED static int
++@@ -297,7 +295,7 @@
++      CPU_ZERO(&s);
++      CPU_SET((*core) % CORES, &s);
++ 
++-     return sched_setaffinity(gettid(), sizeof(s), &s);
+++     return sched_setaffinity(common_gettid(), sizeof(s), &s);
++ }
++ #elif defined(__MACH__)
++ CK_CC_UNUSED static int
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..422ecb024d51ec2ad8b6cf2abb6444c34e551dd1
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2 @@@
++allow-disable-sse.patch
++glibc-2.30.patch
diff --cc debian/rules
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..468baa980f3ddb78f9c201e0200638f67f18f3d4
new file mode 100755 (executable)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,31 @@@
++#!/usr/bin/make -f
++
++PLATFORM :=
++$(call lazy,DEB_HOST_ARCH,$$(shell dpkg-architecture -qDEB_HOST_ARCH))
++ifneq (,$(findstring armhf,$(DEB_HOST_ARCH)))
++      PLATFORM += --platform=armv7l
++endif
++
++override_dh_auto_configure:
++      ./configure                                             \
++              --includedir=/usr/include                       \
++              --libdir=/usr/lib/$(DEB_HOST_MULTIARCH)         \
++              --mandir=/usr/share/man                         \
++              --prefix=/usr                                   \
++              --cores=2                                       \
++              --disable-sse                                   \
++              $(PLATFORM)
++
++override_dh_auto_test:
++      make -j1 check
++
++%:
++      dh $@
++
++# The build target must not be empty.  Sadly because of how make
++# works, we have do duplicate the target in this case.
++build:
++      dh $@
++
++.PHONY: build
++
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..163aaf8d82b6c54f23c45f32895dbdfdcc27b047
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++3.0 (quilt)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..519a92d9f1e14ce9300c77b9b40558e167957c46
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2 @@@
++single-debian-patch
++compression = "gzip"
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..3bde7c64df04239f1927941dfc5d70e87f340b1d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,10 @@@
++Subject: Collected Debian patches for ck
++Author: Robert Edmonds <edmonds@debian.org>
++
++The ck package is maintained in Git rather than maintaining
++patches as separate files, and separating the patches doesn't seem to
++be worth the effort.  They are therefore all included in this single
++Debian patch.
++
++For full commit history and separated commits, see the packaging Git
++repository.
diff --cc debian/watch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..36e6a29de124c3c28a60cb5fa6d74a19e2ee22ee
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,3 @@@
++version=2
++opts=filenamemangle=s/.+\/v?(\d\S+)\.tar\.gz/<project>-$1\.tar\.gz/ \
++  https://github.com/concurrencykit/ck/releases .*/v?(\d\S+)\.tar\.gz