[libmemcached-libmemcached-perl] 01/02: Initial buildable package
Christopher Hoskin
christopher.hoskin at gmail.com
Wed Oct 7 21:06:13 UTC 2015
This is an automated email from the git hooks/post-receive script.
grinorcole-guest pushed a commit to branch master
in repository libmemcached-libmemcached-perl.
commit eb9d61904ec6265d183ec7a052515363abd99ea2
Author: Christopher Hoskin <christopher.hoskin at gmail.com>
Date: Wed Oct 7 20:42:38 2015 +0100
Initial buildable package
---
debian/changelog | 2 +-
debian/control | 25 ++--
debian/copyright | 194 +++++++++++++++++++++++++--
debian/libmemcached-libmemcached-perl.docs | 1 -
debian/patches/series | 1 +
debian/patches/use-system-libmemcached.patch | 63 +++++++++
debian/rules | 19 +++
debian/tests/control | 15 +++
debian/tests/custom-smoke | 14 ++
debian/tests/pkg-perl/SKIP | 2 +
10 files changed, 314 insertions(+), 22 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 7f6ab62..032c411 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,5 @@
libmemcached-libmemcached-perl (1.001801-1) UNRELEASED; urgency=low
- * Initial Release.
+ * Initial Release. Closes: #801254
-- Christopher Hoskin <christopher.hoskin at gmail.com> Mon, 5 Oct 2015 06:44:16 +0100
diff --git a/debian/control b/debian/control
index 77d1d30..916a6ac 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,14 @@ Priority: optional
Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
Uploaders: Christopher Hoskin <christopher.hoskin at gmail.com>
Build-Depends: debhelper (>= 9.20120312~),
- perl
+ perl,
+ libmemcached-dev (= 1.0.18-4),
+ memcached,
+ net-tools,
+ procps,
+ libpod-coverage-perl,
+ libtest-pod-perl,
+ libtest-pod-coverage-perl
Standards-Version: 3.9.6
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-perl/packages/libmemcached-libmemcached-perl.git
Vcs-Git: git://anonscm.debian.org/pkg-perl/packages/libmemcached-libmemcached-perl.git
@@ -14,7 +21,7 @@ Testsuite: autopkgtest-pkg-perl
Package: libmemcached-libmemcached-perl
Architecture: any
Depends: ${misc:Depends}, ${perl:Depends}, ${shlibs:Depends}
-Description: Thin fast full interface to the libmemcached client API
+Description: thin, fast, full interface to the libmemcached client API
Memcached::libmemcached is a very thin, highly efficient, wrapper around the
libmemcached library. It's implemented almost entirely in C.
.
@@ -22,16 +29,14 @@ Description: Thin fast full interface to the libmemcached client API
libmemcached is fast, light on memory usage, thread safe, and provide full
access to server side methods.
.
- - Synchronous and Asynchronous support.
+ - Synchronous and Asynchronous support.
.
- - TCP and Unix Socket protocols.
+ - TCP and Unix Socket protocols.
.
- - A half dozen or so different hash algorithms.
+ - A half dozen or so different hash algorithms.
.
- - Implementations of the new cas, replace, and append operators.
+ - Implementations of the new cas, replace, and append operators.
.
- - Man pages written up on entire API.
+ - Man pages written up on entire API.
.
- - Implements both modulo and consistent hashing solutions.
- .
- This description was automagically extracted from the module by dh-make-perl.
+ - Implements both modulo and consistent hashing solutions.
diff --git a/debian/copyright b/debian/copyright
index d079902..69eb1cf 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -2,23 +2,77 @@ Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: https://metacpan.org/release/Memcached-libmemcached
Upstream-Contact: Tim Bunce <Tim.Bunce at pobox.com>
Upstream-Name: Memcached-libmemcached
-DISCLAIMER: This copyright info was automatically extracted
- from the perl module. It may not be accurate, so you better
- check the module sources in order to ensure the module for its
- inclusion in Debian or for general legal information. Please,
- if licensing information is incorrectly generated, file a bug
- on dh-make-perl.
- NOTE: Don't forget to remove this disclaimer once you are happy
- with this file.
Files: *
-Copyright: Tim Bunce <Tim.Bunce at pobox.com>
-License:
+Copyright: 2008, Daisuke Maki <daisuke at endeworks.jp>
+ 2008-2010, Patrick Galbraith <patg at patg.net>
+ 2008-2013, Tim Bunce <Tim.Bunce at pobox.com>
+License: Artistic or GPL-1+
Files: debian/*
Copyright: 2015, Christopher Hoskin <christopher.hoskin at gmail.com>
License: Artistic or GPL-1+
+Files: lib/Memcached/libmemcached/*
+Copyright: 2010, Brian Aker <brian at tangent.org>
+License: Artistic or GPL-1+
+
+Files: lib/Memcached/libmemcached/memcached_user_data.pm lib/Memcached/libmemcached/memcached_memory_allocators.pm lib/Memcached/libmemcached/memcached_pool.pm lib/Memcached/libmemcached/memcached_sasl.pm lib/Memcached/libmemcached/memcached_flush_buffers.pm
+Copyright: Trond Norbye <trond.norbye at gmail.com>
+License: Artistic or GPL-1+
+
+Files: ppport.h
+Copyright: 2004-2007, Marcus Holland-Moritz <mhx-cpan at gmx.net>
+ 2001, Paul Marquess <pmqs at cpan.org> (Version 2.x)
+ 1999, Kenneth Albanowski <kjahds at kjahds.com> (Version 1.x)
+License: Artistic or GPL-1+
+
+Files: src/libmemcached/*
+Copyright: 2006-2014, Data Differential, http://datadifferential.com/
+ 2006-2014, Brian Aker
+License: BSD-3-clause-TangentOrg
+
+Files: src/libmemcached/libhashkit/hsieh.cc
+Copyright: Copyright (c) 2004, 2005, Paul Hsieh
+License: Paul-Hsieh
+
+
+Files: src/libmemcached/libhashkit/md5.cc
+Copyright: Copyright (C) 1991-2, RSA Data Security, Inc.
+License: RSA-Data-Security
+
+Files: src/libmemcached/libhashkit/jenkins.cc
+Copyright: Public Domain
+License: Bob-Jenkins
+
+Files: src/libmemcached/clients/memaslap.c src/libmemcached/clients/ms_conn.* src/libmemcached/clients/ms_memslap.h src/libmemcached/clients/ms_setting.* src/libmemcached/clients/ms_sigsegv.h src/libmemcached/clients/ms_stats.* src/libmemcached/clients/ms_task.* src/libmemcached/clients/ms_thread.*
+Copyright: 2009, Schooner Information Technology Inc.
+License: BSD-3-clause-TangentOrg
+
+Files: src/libmemcached/libmemcached-1.0/memcached.hpp
+Copyright: Padraig O'Sullivan <osullivan.padraig at gmail.com>
+ Patrick Galbraith <patg at patg.net>
+License: BSD-3-clause-TangentOrg
+
+Files: src/libmemcached/clients/ms_sigsegv.c
+Copyright: 2009, Schooner Information Technology Inc.
+ 2009, Sun Microsystems
+License: BSD-3-clause-Sun
+
+Files: src/libmemcached/libmemcached/memcached/protocol_binary.h src/libmemcached/libmemcachedprotocol-0.0/binary.h src/libmemcached/libmemcachedprotocol-0.0/callback.h
+Copyright: 2008, Sun Microsystems:
+License: BSD-3-clause-Sun
+
+Files: src/libmemcached/util/daemon.hpp
+Copyright: 1990, 1993, The Regents of the University of California
+ 2010, Stewart Smith
+License: BSD-3-clause
+
+Files: t/lib/ExtUtils/*
+Copyright: 2002-2003, Ken Williams <ken at mathforum.org>
+ Larry Wall and the Perl 5 Porters
+License: Artistic or GPL-1+
+
License: Artistic
This program is free software; you can redistribute it and/or modify
it under the terms of the Artistic License, which comes with Perl.
@@ -34,3 +88,123 @@ License: GPL-1+
.
On Debian systems, the complete text of version 1 of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL-1'.
+
+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:
+ 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.
+ 3. Neither the name of the University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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-3-clause-TangentOrg
+ 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.
+ .
+ * Neither the name of TangentOrg nor the names of its
+ contributors 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-3-clause-Sun
+ 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.
+ * Neither the name of the nor the
+ names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY SUN MICROSYSTEMS, INC. ``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 SUN MICROSYSTEMS, INC. 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: Paul-Hsieh
+ http://www.azillionmonkeys.com/qed/weblicense.html
+ The derivative content includes raw computer source code, ideas, opinions,
+ and excerpts whose original source is covered under another license and
+ transformations of such derivatives. Note that mere excerpts by themselves
+ (with the exception of raw source code) are not considered derivative works
+ under this license. Use and redistribution is limited to the following
+ conditions:
+ * One may not create a derivative work which, in any way, violates the
+ Paul Hsieh exposition license described above on the original content.
+ * One may not apply a license to a derivative work that precludes anyone
+ else from using and redistributing derivative content.
+ * One may not attribute any derivative content to authors not involved in
+ the creation of the content, though an attribution to the author is not
+ necessary.
+
+License: RSA-Data-Security
+ License to copy and use this software is granted provided that it
+ is identified as the "RSA Data Security, Inc. MD5 Message-Digest
+ Algorithm" in all material mentioning or referencing this software
+ or this function.
+ .
+ License is also granted to make and use derivative works provided
+ that such works are identified as "derived from the RSA Data
+ Security, Inc. MD5 Message-Digest Algorithm" in all material
+ mentioning or referencing the derived work.
+ .
+ RSA Data Security, Inc. makes no representations concerning either
+ the merchantability of this software or the suitability of this
+ software for any particular purpose. It is provided "as is"
+ without express or implied warranty of any kind.
+ .
+ These notices must be retained in any copies of any part of this
+ documentation and/or software.
+
+License: Bob-Jenkins
+ By Bob Jenkins, 2006. bob_jenkins at burtleburtle.net. You may use this
+ code any way you wish, private, educational, or commercial. It's free.
+ Use for hash table lookup, or anything where one collision in 2^^32 is
+ acceptable. Do NOT use for cryptographic purposes.
+ http://burtleburtle.net/bob/hash/index.html
+
diff --git a/debian/libmemcached-libmemcached-perl.docs b/debian/libmemcached-libmemcached-perl.docs
index 41d7396..ea8704f 100644
--- a/debian/libmemcached-libmemcached-perl.docs
+++ b/debian/libmemcached-libmemcached-perl.docs
@@ -5,5 +5,4 @@ src/libmemcached/README
src/libmemcached/README.FIRST
src/libmemcached/NEWS
src/libmemcached/TODO
-src/libmemcached/README.win32
src/libmemcached/libmemcached/memcached/README.txt
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..d0ce0a8
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+use-system-libmemcached.patch
diff --git a/debian/patches/use-system-libmemcached.patch b/debian/patches/use-system-libmemcached.patch
new file mode 100644
index 0000000..e75cbf9
--- /dev/null
+++ b/debian/patches/use-system-libmemcached.patch
@@ -0,0 +1,63 @@
+Description: Use the packaged libmemcached
+ Uses the libmemcached packaged for Debian rather than compiling the bundled
+ source code.
+Author: Christopher Hoskin <christopher.hoskin at gmail.com>
+Forwarded: not-needed
+Last-Update: 2015-10-07
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -31,15 +31,17 @@
+
+ my $lmcd_api_ver = "1.0"; # eg $lmcd_src/libmemcached-$lmcd_api_ver/
+ my $lmcd_inst = getcwd()."/src_inst";
+-my $lmcd_built_lib = "$lmcd_inst/lib/libmemcached$Config{lib_ext}";
++my $lmcd_built_lib = "/usr/lib/x86_64-linux-gnu/libmemcached.so";
+ my $is_developer = (-d ".svn" || -d ".git");
+
+-my ($lmcd_h) = eval { build_libmemcached() };
+-if ($@) {
+- warn "Unable to build libmemcached: $@\n";
+- warn "Aborted.\n";
+- exit 0; # tell cpan testers that this is not a failure
+-}
++#my ($lmcd_h) = eval { build_libmemcached() };
++#if ($@) {
++# warn "Unable to build libmemcached: $@\n";
++# warn "Aborted.\n";
++# exit 0; # tell cpan testers that this is not a failure
++#}
++extract_libmemcached_constants();
++extract_libmemcached_functions();
+
+ my %opts;
+ if (my $gccversion = $Config{gccversion}) { # ask gcc to be more pedantic
+@@ -76,13 +78,13 @@
+ AUTHOR => 'Tim Bunce <Tim.Bunce at pobox.com>',
+ VERSION_FROM => 'libmemcached.pm',
+ ABSTRACT_FROM => 'libmemcached.pm',
+- INC => "-I$lmcd_inst/include",
+- # We want to link to *our* private libmemcached and not one that
+- # might already be installed on the system. The LIBS config gets
+- # appended to the link command line, so if we used "-L$dir -lmemcached"
+- # then the installed lib would get preference over ours.
+- # So we explicitly refer to our static library. That also avoids the
+- # need to worry about what library might get used at runtime.
++# INC => "-I$lmcd_inst/include",
++# # We want to link to *our* private libmemcached and not one that
++# # might already be installed on the system. The LIBS config gets
++# # appended to the link command line, so if we used "-L$dir -lmemcached"
++# # then the installed lib would get preference over ours.
++# # So we explicitly refer to our static library. That also avoids the
++# # need to worry about what library might get used at runtime.
+ LDFROM => '$(OBJECT)'." $lmcd_built_lib",
+ PREREQ_PM => {
+ 'Test::More' => 0,
+@@ -146,7 +148,7 @@
+ -cd $(LMCD_SRC) && $(MAKE) distclean
+
+
+-libmemcached.c : $(XSUBPPDIR)/ParseXS.pm typemap
++#libmemcached.c : $(XSUBPPDIR)/ParseXS.pm typemap
+
+ $(OBJECT) : $(LMCD_BUILT_LIB)
+
diff --git a/debian/rules b/debian/rules
index 2d33f6a..24bd62d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,4 +1,23 @@
#!/usr/bin/make -f
+BUILDHOME = $(CURDIR)/debian/build
+PIDFILE = $(BUILDHOME)/memcached.pid
+WHOAMI = $(shell whoami)
+PORT := $(shell /bin/netstat -want | perl -w -e 'while (<>) { $$used{$$1}=1 if /127\.0\.0\.1:(\d+)/;}; $$port = 20000; while ($$used{$$port}) { $$port++ }; print "$$port\n";')
+
+
%:
dh $@
+
+override_dh_auto_test:
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+ mkdir -p $(BUILDHOME)
+ memcached -u $(WHOAMI) -p $(PORT) -P $(PIDFILE) -d
+ export PERL_LIBMEMCACHED_TEST_SERVERS=127.0.0.1:$(PORT);\
+ dh_auto_test
+ [ ! -s $(PIDFILE) ] || /bin/kill `cat $(PIDFILE)`
+endif
+
+override_dh_clean:
+ dh_clean
+ rm -rf $(BUILDHOME)
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..56657cf
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,15 @@
+Test-Command: /usr/share/pkg-perl-autopkgtest/runner build-deps
+Depends: @, @builddeps@, pkg-perl-autopkgtest
+
+Test-Command: /usr/share/pkg-perl-autopkgtest/runner runtime-deps
+Depends: @, pkg-perl-autopkgtest
+
+Test-Command: /usr/share/pkg-perl-autopkgtest/runner runtime-deps-and-recommends
+Depends: @, pkg-perl-autopkgtest
+Restrictions: needs-recommends
+
+Test-Command: /usr/share/pkg-perl-autopkgtest/runner heavy-deps
+Depends: @, pkg-perl-autopkgtest, pkg-perl-autopkgtest-heavy
+
+Tests: custom-smoke
+Depends: @, memcached, procps, pkg-perl-autopkgtest, net-tools, netbase
diff --git a/debian/tests/custom-smoke b/debian/tests/custom-smoke
new file mode 100644
index 0000000..4ac7401
--- /dev/null
+++ b/debian/tests/custom-smoke
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+PIDFILE=${ADTTMP}/m.pid
+PORT=$(/bin/netstat -want | perl -w -e 'while (<>) { $used{$1}=1 if /127\.0\.0\.1:(\d+)/;}; $port = 20000; while ($used{$port}) { $port++ }; print "$port\n";')
+export PERL_LIBMEMCACHED_TEST_SERVERS=127.0.0.1:${PORT}
+
+echo $MEMCACHED_SERVERS
+
+/usr/bin/memcached -u `whoami` -p$PORT -P$PIDFILE -d
+/usr/share/pkg-perl-autopkgtest/build-deps.d/smoke
+RET=$?
+[ ! -s $PIDFILE ] || /bin/kill `cat ${PIDFILE}`
+exit $RET
+
diff --git a/debian/tests/pkg-perl/SKIP b/debian/tests/pkg-perl/SKIP
new file mode 100644
index 0000000..a0b2493
--- /dev/null
+++ b/debian/tests/pkg-perl/SKIP
@@ -0,0 +1,2 @@
+# needs a running memcached
+smoke
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libmemcached-libmemcached-perl.git
More information about the Pkg-perl-cvs-commits
mailing list