Import libcereal_1.3.0+dfsg-1.debian.tar.xz
authorMichael R. Crusoe <crusoe@debian.org>
Wed, 13 Jan 2021 09:20:13 +0000 (10:20 +0100)
committerMichael R. Crusoe <crusoe@debian.org>
Wed, 13 Jan 2021 09:20:13 +0000 (10:20 +0100)
[dgit import tarball libcereal 1.3.0+dfsg-1 libcereal_1.3.0+dfsg-1.debian.tar.xz]

20 files changed:
README.test [new file with mode: 0644]
changelog [new file with mode: 0644]
control [new file with mode: 0644]
copyright [new file with mode: 0644]
libcereal-dev.docs [new file with mode: 0644]
libcereal-dev.install [new file with mode: 0644]
libcereal-doc.doc-base [new file with mode: 0644]
libcereal-doc.install [new file with mode: 0644]
patches/add-only-tests-target [new file with mode: 0644]
patches/drop-google-analytics [new file with mode: 0644]
patches/reproducible-doxygen [new file with mode: 0644]
patches/series [new file with mode: 0644]
patches/use_debian_packaged_rapidjson.patch [new file with mode: 0644]
rules [new file with mode: 0755]
salsa-ci.yml [new file with mode: 0644]
source/format [new file with mode: 0644]
tests/control [new file with mode: 0644]
tests/run-unit-test [new file with mode: 0755]
upstream/metadata [new file with mode: 0644]
watch [new file with mode: 0644]

diff --git a/README.test b/README.test
new file mode 100644 (file)
index 0000000..90657cf
--- /dev/null
@@ -0,0 +1,8 @@
+Notes on how this package can be tested.
+────────────────────────────────────────
+
+This package can be tested by running the provided test:
+
+    sh run-unit-test
+
+in order to confirm its integrity.
diff --git a/changelog b/changelog
new file mode 100644 (file)
index 0000000..4bd0a52
--- /dev/null
+++ b/changelog
@@ -0,0 +1,122 @@
+libcereal (1.3.0+dfsg-1) unstable; urgency=medium
+
+  [ Andreas Tille ]
+  * Team upload.
+  * Standards-Version: 4.5.1 (routine-update)
+  * debhelper-compat 13 (routine-update)
+  * Add salsa-ci file (routine-update)
+  * Rules-Requires-Root: no (routine-update)
+  * watch file standard 4 (routine-update)
+  * install from debian/tmp to enable dh_missing --fail-missing
+  * install cmake file
+  * Remove code copy of rapidjson and use Debian packaged code instead
+    Closes: #976585
+
+  [ Michael R. Crusoe ]
+  * debian/patches/{reproducible-doxygen,drop-google-analytics}:
+    doesn't need forwarding upstream.
+
+ -- Michael R. Crusoe <crusoe@debian.org>  Wed, 13 Jan 2021 10:20:13 +0100
+
+libcereal (1.3.0-3) unstable; urgency=medium
+
+  * libcereal-dev: Convert to Architecture: all, saves space and eases
+    cross-building
+  * Mark -dev and -doc as Multi-Arch: foreign
+  * Tweak the doxygen patch to make the build reproducible
+  * Standards-Version: 4.5.0 (routine-update)
+  * Use secure URI in Homepage field.
+  * Set upstream metadata fields: Bug-Database, Bug-Submit, Repository,
+    Repository-Browse.
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Fri, 28 Feb 2020 17:26:41 +0100
+
+libcereal (1.3.0-2) unstable; urgency=medium
+
+  * debian/ruiles: Work around build failures on platforms without processor
+    intrinsics for atomic operations
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Mon, 28 Oct 2019 14:19:21 +0100
+
+libcereal (1.3.0-1) unstable; urgency=medium
+
+  * New upstream version
+  * debhelper-compat 12
+  * Standards-Version: 4.4.0
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Sun, 27 Oct 2019 17:23:31 +0100
+
+libcereal (1.2.2-3) unstable; urgency=medium
+
+  * Team upload.
+  * Do not try to change non-existing files in binary all builds
+    Closes: #916969
+
+ -- Andreas Tille <tille@debian.org>  Thu, 20 Dec 2018 22:34:59 +0100
+
+libcereal (1.2.2-2) unstable; urgency=medium
+
+  * Team upload.
+  * Fix autopkgtest
+    Closes: #911261
+  * Normalise autopkgtest (as in other Debian Med packages)
+  * debhelper 11
+  * Remove trailing whitespace in debian/changelog
+
+ -- Andreas Tille <tille@debian.org>  Thu, 20 Dec 2018 15:07:17 +0100
+
+libcereal (1.2.2-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Wed, 17 Oct 2018 02:06:26 -0700
+
+libcereal (1.2.1-3) unstable; urgency=medium
+
+  * Team upload
+  * Do not set -Werror which makes build fail when using gcc-7
+    Closes: #853486
+  * debhelper 10
+  * Standards-Version: 4.1.0 (no changes needed)
+
+ -- Andreas Tille <tille@debian.org>  Thu, 31 Aug 2017 23:28:27 +0200
+
+libcereal (1.2.1-2) unstable; urgency=medium
+
+  * Make Doxygen docs reproducible.
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Thu, 10 Nov 2016 04:01:18 -0800
+
+libcereal (1.2.1-1) unstable; urgency=medium
+
+  * New upstream release with support for g++ 6 (Closes: #834187)
+  * Drop arm compatibility patch as it was incorporated upstream
+
+ -- Michael R. Crusoe <michael.crusoe@gmail.com>  Sun, 14 Aug 2016 02:11:45 -0700
+
+libcereal (1.1.2-4) unstable; urgency=medium
+
+  * Drop multilib builddeb (Closes: #814530)
+
+ -- Michael R. Crusoe <crusoe@ucdavis.edu>  Fri, 12 Feb 2016 16:27:13 -0800
+
+libcereal (1.1.2-3) unstable; urgency=medium
+
+  * Applied patch from upstream, try building on all archs again.
+
+ -- Michael R. Crusoe <crusoe@ucdavis.edu>  Thu, 11 Feb 2016 14:04:10 -0800
+
+libcereal (1.1.2-2) unstable; urgency=medium
+
+  * Only build for *-amd64, sparc64 until upstream fixes their code.
+  (Closes: # 813280, #813281, #813282)
+  * Added autopkgtest
+  * Fix Vcs-Git URL.
+
+ -- Michael R. Crusoe <crusoe@ucdavis.edu>  Sun, 31 Jan 2016 00:19:40 -0800
+
+libcereal (1.1.2-1) unstable; urgency=low
+
+  * Initial release (Closes: #800335)
+
+ -- Michael R. Crusoe <crusoe@ucdavis.edu>  Fri, 18 Sep 2015 19:13:43 -0700
diff --git a/control b/control
new file mode 100644 (file)
index 0000000..4a08453
--- /dev/null
+++ b/control
@@ -0,0 +1,42 @@
+Source: libcereal
+Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
+Uploaders: Michael R. Crusoe <crusoe@debian.org>
+Section: libdevel
+Priority: optional
+Build-Depends: debhelper-compat (= 13),
+               libboost-serialization-dev,
+               libboost-test-dev,
+               rapidjson-dev,
+               cmake,
+               doxygen
+Standards-Version: 4.5.1
+Vcs-Browser: https://salsa.debian.org/med-team/libcereal
+Vcs-Git: https://salsa.debian.org/med-team/libcereal.git
+Homepage: https://uscilab.github.io/cereal/
+Rules-Requires-Root: no
+
+Package: libcereal-dev
+Multi-Arch: foreign
+Architecture: all
+Depends: ${misc:Depends},
+         rapidjson-dev
+Description: C++11 library for serialization
+ cereal is a header-only C++11 serialization library. cereal takes arbitrary
+ data types and reversibly turns them into different representations, such as
+ compact binary encodings, XML, or JSON. cereal was designed to be fast,
+ light-weight, and easy to extend - it has no external dependencies and can be
+ easily bundled with other code or used standalone.
+
+Package: libcereal-doc
+Architecture: all
+Multi-Arch: foreign
+Section: doc
+Depends: ${misc:Depends}
+Description: C++11 library for serialization HTML documentation
+ cereal is a header-only C++11 serialization library. cereal takes arbitrary
+ data types and reversibly turns them into different representations, such as
+ compact binary encodings, XML, or JSON. cereal was designed to be fast,
+ light-weight, and easy to extend - it has no external dependencies and can be
+ easily bundled with other code or used standalone.
+ .
+ This package contains the HTML documentation.
diff --git a/copyright b/copyright
new file mode 100644 (file)
index 0000000..4abb0c8
--- /dev/null
+++ b/copyright
@@ -0,0 +1,104 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: cereal
+Source: https://github.com/USCiLab/cereal
+Files-Excluded: include/cereal/external/rapidjson
+
+Files: *
+Copyright: (c) 2014, Randolph Voorhies, Shane Grant
+License: bsd-3-clause
+
+Files: include/cereal/external/base64.hpp
+Copyright: (C) 2004-2008 René Nyffenegger
+License: other
+   This source code is provided 'as-is', without any express or implied
+   warranty. In no event will the author be held liable for any damages
+   arising from the use of this software.
+ .
+   Permission is granted to anyone to use this software for any purpose,
+   including commercial applications, and to alter it and redistribute it
+   freely, subject to the following restrictions:
+ .
+   1. The origin of this source code must not be misrepresented; you must not
+      claim that you wrote the original source code. If you use this source code
+      in a product, an acknowledgment in the product documentation would be
+      appreciated but is not required.
+ .
+   2. Altered source versions must be plainly marked as such, and must not be
+      misrepresented as being the original source code.
+ .
+   3. This notice may not be removed or altered from any source distribution.
+ .
+   René Nyffenegger rene.nyffenegger@adp-gmbh.ch
+
+Files: include/cereal/external/rapidxml/*
+Copyright: Copyright (c) 2006, 2007, 2009 Marcin Kalicinski
+License: BSL-1.0 or Expat
+
+Files: debian/*
+Copyright: © 2015 Michael R. Crusoe <crusoe@ucdavis.edu>
+License: bsd-3-clause
+
+License: BSL-1.0
+ Permission is hereby granted, free of charge, to any person or organization
+ obtaining a copy of the software and accompanying documentation covered by
+ this license (the "Software") to use, reproduce, display, distribute,
+ execute, and transmit the Software, and to prepare derivative works of the
+ Software, and to permit third-parties to whom the Software is furnished to
+ do so, all subject to the following:
+ .
+ The copyright notices in the Software and this entire statement, including
+ the above license grant, this restriction and the following disclaimer,
+ must be included in all copies of the Software, in whole or in part, and
+ all derivative works of the Software, unless such copies or derivative
+ works are solely in the form of machine-executable object code generated by
+ a source language processor.
+ .
+ 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, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+License: Expat
+ 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 THE
+ AUTHORS OR COPYRIGHT HOLDERS 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.
+     * Neither the name of cereal 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 RANDOLPH VOORHIES OR SHANE GRANT 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.
diff --git a/libcereal-dev.docs b/libcereal-dev.docs
new file mode 100644 (file)
index 0000000..4456dc1
--- /dev/null
@@ -0,0 +1,2 @@
+debian/tests/run-unit-test
+debian/README.test
diff --git a/libcereal-dev.install b/libcereal-dev.install
new file mode 100644 (file)
index 0000000..49538fa
--- /dev/null
@@ -0,0 +1,4 @@
+usr/include
+CMakeLists.txt usr/share/doc/libcereal-dev/tests/
+unittests usr/share/doc/libcereal-dev/tests/
+usr/share/cmake/cereal
diff --git a/libcereal-doc.doc-base b/libcereal-doc.doc-base
new file mode 100644 (file)
index 0000000..6884491
--- /dev/null
@@ -0,0 +1,13 @@
+Document: libcereal
+Title: cereal - C++11 library for serialization
+Author: Randolph Voorhies, Shane Grant
+Abstract: cereal is a header-only C++11 serialization library. cereal takes
+ arbitrary data types and reversibly turns them into different representations,
+ such as compact binary encodings, XML, or JSON. cereal was designed to be
+ fast, light-weight, and easy to extend - it has no external dependencies and
+ can be easily bundled with other code or used standalone.
+Section: Programming/C++
+
+Format: html
+Files: /usr/share/doc/libcereal-dev/html/*
+Index: /usr/share/doc/libcereal-dev/html/index.html
diff --git a/libcereal-doc.install b/libcereal-doc.install
new file mode 100644 (file)
index 0000000..68a9786
--- /dev/null
@@ -0,0 +1 @@
+obj-*/doc/html usr/share/doc/libcereal-dev/
diff --git a/patches/add-only-tests-target b/patches/add-only-tests-target
new file mode 100644 (file)
index 0000000..a2286f7
--- /dev/null
@@ -0,0 +1,25 @@
+Author: Michael R. Crusoe <crusoe@ucdavis.edu>
+Description: build just the tests, as an option for autopkgtest later
+With assistance from Kevin D. Murray; thanks!
+--- libcereal.orig/CMakeLists.txt
++++ libcereal/CMakeLists.txt
+@@ -46,6 +46,8 @@
+ endif()
++option(ONLY_TESTS "Don't build docs, or sandbox" OFF)
++
+ if(NOT CMAKE_VERSION VERSION_LESS 3.0)
+     add_library(cereal INTERFACE)
+     target_include_directories(cereal INTERFACE
+@@ -78,7 +80,8 @@
+   
+ enable_testing()
+ add_subdirectory(unittests)
+-
+-add_subdirectory(sandbox)
++if(NOT ONLY_TEST)
++      add_subdirectory(sandbox)
++endif(NOT ONLY_TEST)
+ add_subdirectory(doc)
diff --git a/patches/drop-google-analytics b/patches/drop-google-analytics
new file mode 100644 (file)
index 0000000..cdc08d7
--- /dev/null
@@ -0,0 +1,21 @@
+Description: Drop google analytics
+Author: Michael R. Crusoe <crusoe@debian.org>
+Forwarded: not-needed
+--- libcereal.orig/doc/footer.html
++++ libcereal/doc/footer.html
+@@ -17,15 +17,5 @@
+ </a> $doxygenversion
+ </small></address>
+ <!--END !GENERATE_TREEVIEW-->
+-<script>
+-  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+-  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+-  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+-  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+-
+-  ga('create', 'UA-42360142-1', 'uscilab.github.io');
+-  ga('send', 'pageview');
+-
+-</script>
+ </body>
+ </html>
diff --git a/patches/reproducible-doxygen b/patches/reproducible-doxygen
new file mode 100644 (file)
index 0000000..6526294
--- /dev/null
@@ -0,0 +1,23 @@
+From: Michael R. Crusoe <crusoe@debian.org>
+Subject: Make doxygen docs reproducible
+Forwarded: not-needed
+--- libcereal.orig/doc/doxygen.in
++++ libcereal/doc/doxygen.in
+@@ -119,7 +119,7 @@
+ # path before files name in the file list and in the header files. If set
+ # to NO the shortest path that makes the file name unique will be used.
+-FULL_PATH_NAMES        = YES
++FULL_PATH_NAMES        = NO
+ # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+ # can be used to strip a user-defined part of the path. Stripping is
+@@ -130,7 +130,7 @@
+ # relative paths, which will be relative from the directory where doxygen is
+ # started.
+-STRIP_FROM_PATH        =
++STRIP_FROM_PATH        = @PROJECT_SOURCE_DIR@
+ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+ # the path mentioned in the documentation of a class, which tells
diff --git a/patches/series b/patches/series
new file mode 100644 (file)
index 0000000..79e6a9e
--- /dev/null
@@ -0,0 +1,4 @@
+reproducible-doxygen
+drop-google-analytics
+add-only-tests-target
+use_debian_packaged_rapidjson.patch
diff --git a/patches/use_debian_packaged_rapidjson.patch b/patches/use_debian_packaged_rapidjson.patch
new file mode 100644 (file)
index 0000000..12f5fcc
--- /dev/null
@@ -0,0 +1,104 @@
+Author: Andreas Tille <tille@debian.org>
+Last-Update: Sat, 05 Dec 2020 17:12:21 +0100
+Bug-Debian: https://bugs.debian.org/976585
+Description: Include Debian packaged rapidjson
+Forwarded: not-needed
+--- a/include/cereal/archives/json.hpp
++++ b/include/cereal/archives/json.hpp
+@@ -41,30 +41,30 @@ namespace cereal
+ }
+ // Inform rapidjson that assert will throw
+-#ifndef CEREAL_RAPIDJSON_ASSERT_THROWS
+-#define CEREAL_RAPIDJSON_ASSERT_THROWS
+-#endif // CEREAL_RAPIDJSON_ASSERT_THROWS
++#ifndef RAPIDJSON_ASSERT_THROWS
++#define RAPIDJSON_ASSERT_THROWS
++#endif // RAPIDJSON_ASSERT_THROWS
+ // Override rapidjson assertions to throw exceptions by default
+-#ifndef CEREAL_RAPIDJSON_ASSERT
+-#define CEREAL_RAPIDJSON_ASSERT(x) if(!(x)){ \
++#ifndef RAPIDJSON_ASSERT
++#define RAPIDJSON_ASSERT(x) if(!(x)){ \
+   throw ::cereal::RapidJSONException("rapidjson internal assertion failure: " #x); }
+ #endif // RAPIDJSON_ASSERT
+ // Enable support for parsing of nan, inf, -inf
+-#ifndef CEREAL_RAPIDJSON_WRITE_DEFAULT_FLAGS
+-#define CEREAL_RAPIDJSON_WRITE_DEFAULT_FLAGS kWriteNanAndInfFlag
++#ifndef RAPIDJSON_WRITE_DEFAULT_FLAGS
++#define RAPIDJSON_WRITE_DEFAULT_FLAGS kWriteNanAndInfFlag
+ #endif
+ // Enable support for parsing of nan, inf, -inf
+-#ifndef CEREAL_RAPIDJSON_PARSE_DEFAULT_FLAGS
+-#define CEREAL_RAPIDJSON_PARSE_DEFAULT_FLAGS kParseFullPrecisionFlag | kParseNanAndInfFlag
++#ifndef RAPIDJSON_PARSE_DEFAULT_FLAGS
++#define RAPIDJSON_PARSE_DEFAULT_FLAGS kParseFullPrecisionFlag | kParseNanAndInfFlag
+ #endif
+-#include "cereal/external/rapidjson/prettywriter.h"
+-#include "cereal/external/rapidjson/ostreamwrapper.h"
+-#include "cereal/external/rapidjson/istreamwrapper.h"
+-#include "cereal/external/rapidjson/document.h"
++#include "rapidjson/prettywriter.h"
++#include "rapidjson/ostreamwrapper.h"
++#include "rapidjson/istreamwrapper.h"
++#include "rapidjson/document.h"
+ #include "cereal/external/base64.hpp"
+ #include <limits>
+@@ -107,8 +107,8 @@ namespace cereal
+   {
+     enum class NodeType { StartObject, InObject, StartArray, InArray };
+-    using WriteStream = CEREAL_RAPIDJSON_NAMESPACE::OStreamWrapper;
+-    using JSONWriter = CEREAL_RAPIDJSON_NAMESPACE::PrettyWriter<WriteStream>;
++    using WriteStream = RAPIDJSON_NAMESPACE::OStreamWrapper;
++    using JSONWriter = RAPIDJSON_NAMESPACE::PrettyWriter<WriteStream>;
+     public:
+       /*! @name Common Functionality
+@@ -255,7 +255,7 @@ namespace cereal
+       //! Saves a double to the current node
+       void saveValue(double d)              { itsWriter.Double(d);                                                       }
+       //! Saves a string to the current node
+-      void saveValue(std::string const & s) { itsWriter.String(s.c_str(), static_cast<CEREAL_RAPIDJSON_NAMESPACE::SizeType>( s.size() )); }
++      void saveValue(std::string const & s) { itsWriter.String(s.c_str(), static_cast<RAPIDJSON_NAMESPACE::SizeType>( s.size() )); }
+       //! Saves a const char * to the current node
+       void saveValue(char const * s)        { itsWriter.String(s);                                                       }
+       //! Saves a nullptr to the current node
+@@ -419,11 +419,11 @@ namespace cereal
+   class JSONInputArchive : public InputArchive<JSONInputArchive>, public traits::TextArchive
+   {
+     private:
+-      using ReadStream = CEREAL_RAPIDJSON_NAMESPACE::IStreamWrapper;
+-      typedef CEREAL_RAPIDJSON_NAMESPACE::GenericValue<CEREAL_RAPIDJSON_NAMESPACE::UTF8<>> JSONValue;
++      using ReadStream = RAPIDJSON_NAMESPACE::IStreamWrapper;
++      typedef RAPIDJSON_NAMESPACE::GenericValue<RAPIDJSON_NAMESPACE::UTF8<>> JSONValue;
+       typedef JSONValue::ConstMemberIterator MemberIterator;
+       typedef JSONValue::ConstValueIterator ValueIterator;
+-      typedef CEREAL_RAPIDJSON_NAMESPACE::Document::GenericValue GenericValue;
++      typedef RAPIDJSON_NAMESPACE::Document::GenericValue GenericValue;
+     public:
+       /*! @name Common Functionality
+@@ -652,7 +652,7 @@ namespace cereal
+       //! Loads a value from the current node - string overload
+       void loadValue(std::string & val) { search(); val = itsIteratorStack.back().value().GetString(); ++itsIteratorStack.back(); }
+       //! Loads a nullptr from the current node
+-      void loadValue(std::nullptr_t&)   { search(); CEREAL_RAPIDJSON_ASSERT(itsIteratorStack.back().value().IsNull()); ++itsIteratorStack.back(); }
++      void loadValue(std::nullptr_t&)   { search(); RAPIDJSON_ASSERT(itsIteratorStack.back().value().IsNull()); ++itsIteratorStack.back(); }
+       // Special cases to handle various flavors of long, which tend to conflict with
+       // the int32_t or int64_t on various compiler/OS combinations.  MSVC doesn't need any of this.
+@@ -732,7 +732,7 @@ namespace cereal
+       const char * itsNextName;               //!< Next name set by NVP
+       ReadStream itsReadStream;               //!< Rapidjson write stream
+       std::vector<Iterator> itsIteratorStack; //!< 'Stack' of rapidJSON iterators
+-      CEREAL_RAPIDJSON_NAMESPACE::Document itsDocument; //!< Rapidjson document
++      RAPIDJSON_NAMESPACE::Document itsDocument; //!< Rapidjson document
+   };
+   // ######################################################################
diff --git a/rules b/rules
new file mode 100755 (executable)
index 0000000..63774a8
--- /dev/null
+++ b/rules
@@ -0,0 +1,18 @@
+#!/usr/bin/make -f
+
+ifneq (,$(filter $(DEB_HOST_ARCH),armel m68k mips mipsel powerpc sh4))
+  EXTRA=-DCMAKE_CXX_STANDARD_LIBRARIES=-latomic
+endif
+
+%:
+       dh $@
+
+override_dh_auto_configure:
+       dh_auto_configure -- -DSKIP_PORTABILITY_TEST=on $(EXTRA)
+
+override_dh_auto_build:
+       dh_auto_build -- all doc
+
+override_dh_install:
+       dh_install --exclude license
+       find debian/*/usr/share/doc -name CMakeLists.txt -exec sed -i '/add_subdirectory(doc)/d' \{\} \;
diff --git a/salsa-ci.yml b/salsa-ci.yml
new file mode 100644 (file)
index 0000000..33c3a64
--- /dev/null
@@ -0,0 +1,4 @@
+---
+include:
+  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
diff --git a/source/format b/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/tests/control b/tests/control
new file mode 100644 (file)
index 0000000..199fb5e
--- /dev/null
@@ -0,0 +1,3 @@
+Tests: run-unit-test
+Depends: @, @builddeps@
+Restrictions: allow-stderr
diff --git a/tests/run-unit-test b/tests/run-unit-test
new file mode 100755 (executable)
index 0000000..765bdc5
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+pkg=libcereal-dev
+
+if [ "$AUTOPKGTEST_TMP" = "" ] ; then
+  AUTOPKGTEST_TMP=`mktemp -d /tmp/${pkg}-test.XXXXXX`
+  trap "rm -rf $AUTOPKGTEST_TMP" 0 INT QUIT ABRT PIPE TERM
+fi
+
+cd $AUTOPKGTEST_TMP
+
+cp -rs /usr/share/doc/${pkg}/tests/* .
+for file in `find . -name "*.gz"`; do gunzip < ${file} > ${file%%.gz}; done
+cmake -DONLY_TEST=on -DSKIP_PORTABILITY_TEST=on .
+make
diff --git a/upstream/metadata b/upstream/metadata
new file mode 100644 (file)
index 0000000..5b7b9b2
--- /dev/null
@@ -0,0 +1,4 @@
+Bug-Database: https://github.com/USCiLab/cereal/issues
+Bug-Submit: https://github.com/USCiLab/cereal/issues/new
+Repository: https://github.com/USCiLab/cereal.git
+Repository-Browse: https://github.com/USCiLab/cereal
diff --git a/watch b/watch
new file mode 100644 (file)
index 0000000..5bbfdfb
--- /dev/null
+++ b/watch
@@ -0,0 +1,4 @@
+version=4
+
+opts="repacksuffix=+dfsg,dversionmangle=auto,repack,compression=xz,filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/libcereal-$1\.tar\.gz/" \
+  https://github.com/USCiLab/cereal/releases .*/archive/v(\d[\d.-]+)\.(?:tar(?:\.gz|\.bz2)?|tgz)