mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-16 14:29:05 -07:00
dev-libs/crypto++: cleanup old
Signed-off-by: Alon Bar-Lev <alonbl@gentoo.org> Package-Manager: Portage-2.3.62, Repoman-2.3.11
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST cryptopp565.zip 4220843 BLAKE2B 0c42da3564cdd175c2f2c5c4272caf826f21e47d2271c7f54acab86f5f79dcdad8d6cb946bc88f55fde6189bb2d24ad8fb03dda6b3b8c6f105434b55b8b217d0 SHA512 f13718d02ca69b0129aaf9e767c9d2e0333aa7538355f9c63d9eaf1ff369062084a18dc01489439ebf37797b3ea81b01beb072057d47ec962bfb824ddc72abc7
|
||||
DIST cryptopp700.zip 7296665 BLAKE2B 1b1a60e240a9d94b4edfea16beef0ec48ec26c61f7f9a3d89d29bd2e77b13a83ce942f81467bb90d3086253560a3c4acd6b89178dcb416ed4328340ad5222dfd SHA512 8fd8d680e5ceaf10b3c32cb1504bda4b32abc9fcaa2c6e61e3b5e67aca805c792579884bc6a749c29a99105304c421d03d7fe7909fc58f750b3155c7c5cec8ec
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="C++ class library of cryptographic schemes"
|
||||
HOMEPAGE="https://cryptopp.com"
|
||||
SRC_URI="https://www.cryptopp.com/cryptopp${PV//.}.zip"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="0/5.6" # subslot is so version
|
||||
KEYWORDS="alpha amd64 ~arm arm64 hppa ppc ppc64 sparc x86 ~x64-macos"
|
||||
IUSE="static-libs"
|
||||
|
||||
BDEPEND="app-arch/unzip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-5.6.4-nonative.patch"
|
||||
"${FILESDIR}/${P}-CVE-2017-9434.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
export CXX="$(tc-getCXX)"
|
||||
export LIBDIR="${EPREFIX}/usr/$(get_libdir)"
|
||||
export PREFIX="${EPREFIX}/usr"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# higher optimizations cause problems
|
||||
replace-flags -O3 -O2
|
||||
# ASM isn't Darwin/Mach-O ready, #479554, buildsys doesn't grok CPPFLAGS
|
||||
[[ ${CHOST} == *-darwin* ]] && append-cxxflags -DCRYPTOPP_DISABLE_ASM
|
||||
|
||||
emake -f GNUmakefile all shared
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
# remove leftovers as build system sucks
|
||||
rm -fr "${ED}"/usr/bin "${ED}"/usr/share/cryptopp
|
||||
use static-libs || rm -f "${ED}${EPREFIX}"/usr/$(get_libdir)/*.a
|
||||
|
||||
# compatibility
|
||||
dosym cryptopp "${EPREFIX}"/usr/include/crypto++
|
||||
for f in "${ED}${EPREFIX}"/usr/$(get_libdir)/*; do
|
||||
ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')" || die
|
||||
done
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# we switched directory to symlink
|
||||
# make sure portage digests that
|
||||
rm -fr "${EROOT}/usr/include/crypto++"
|
||||
rm -fr "${EROOT}/usr/include/cryptopp"
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
Index: work/GNUmakefile
|
||||
===================================================================
|
||||
--- work.orig/GNUmakefile
|
||||
+++ work/GNUmakefile
|
||||
@@ -125,23 +125,6 @@ ifeq ($(IS_X86)$(IS_X32)$(IS_CYGWIN)$(IS
|
||||
endif
|
||||
endif
|
||||
|
||||
-# Guard use of -march=native
|
||||
-ifeq ($(GCC42_OR_LATER)$(IS_NETBSD),10)
|
||||
- CXXFLAGS += -march=native
|
||||
-else ifneq ($(CLANG_COMPILER)$(INTEL_COMPILER),00)
|
||||
- CXXFLAGS += -march=native
|
||||
-else
|
||||
- # GCC 3.3 and "unknown option -march="
|
||||
- # Ubuntu GCC 4.1 compiler crash with -march=native
|
||||
- # NetBSD GCC 4.8 compiler and "bad value (native) for -march= switch"
|
||||
- # Sun compiler is handled below
|
||||
- ifeq ($(SUN_COMPILER)$(IS_X64),01)
|
||||
- CXXFLAGS += -m64
|
||||
- else ifeq ($(SUN_COMPILER)$(IS_X86),01)
|
||||
- CXXFLAGS += -m32
|
||||
- endif # X86/X32/X64
|
||||
-endif
|
||||
-
|
||||
# Aligned access required for -O3 and above due to vectorization
|
||||
UNALIGNED_ACCESS := $(shell $(EGREP) -c "^[[:space:]]*//[[:space:]]*\#[[:space:]]*define[[:space:]]*CRYPTOPP_NO_UNALIGNED_DATA_ACCESS" config.h)
|
||||
ifneq ($(UNALIGNED_ACCESS),0)
|
||||
@@ -1,45 +0,0 @@
|
||||
From 07dbcc3d9644b18e05c1776db2a57fe04d780965 Mon Sep 17 00:00:00 2001
|
||||
From: Jeffrey Walton <noloader@gmail.com>
|
||||
Date: Wed, 10 May 2017 18:17:12 -0400
|
||||
Subject: [PATCH] Add Inflator::BadDistanceErr exception (Issue 414) The
|
||||
improved validation and excpetion clears the Address Sanitizer and Undefined
|
||||
Behavior Sanitizer findings
|
||||
|
||||
---
|
||||
zinflate.cpp | 8 +++++++-
|
||||
zinflate.h | 4 ++++
|
||||
3 files changed, 14 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/zinflate.cpp b/zinflate.cpp
|
||||
index 664efe6..fbd7505 100644
|
||||
--- a/zinflate.cpp
|
||||
+++ b/zinflate.cpp
|
||||
@@ -550,12 +550,16 @@ bool Inflator::DecodeBody()
|
||||
break;
|
||||
}
|
||||
case DISTANCE_BITS:
|
||||
+ if (m_distance >= COUNTOF(distanceExtraBits))
|
||||
+ throw BadDistanceErr();
|
||||
bits = distanceExtraBits[m_distance];
|
||||
if (!m_reader.FillBuffer(bits))
|
||||
{
|
||||
m_nextDecode = DISTANCE_BITS;
|
||||
break;
|
||||
}
|
||||
+ if (m_distance >= COUNTOF(distanceStarts))
|
||||
+ throw BadDistanceErr();
|
||||
m_distance = m_reader.GetBits(bits) + distanceStarts[m_distance];
|
||||
OutputPast(m_literal, m_distance);
|
||||
}
|
||||
diff --git a/zinflate.h b/zinflate.h
|
||||
index e2fd237..c47d2f6 100644
|
||||
--- a/zinflate.h
|
||||
+++ b/zinflate.h
|
||||
@@ -96,6 +96,7 @@ public:
|
||||
};
|
||||
class UnexpectedEndErr : public Err {public: UnexpectedEndErr() : Err(INVALID_DATA_FORMAT, "Inflator: unexpected end of compressed block") {}};
|
||||
class BadBlockErr : public Err {public: BadBlockErr() : Err(INVALID_DATA_FORMAT, "Inflator: error in compressed block") {}};
|
||||
+ class BadDistanceErr : public Err {public: BadDistanceErr() : Err(INVALID_DATA_FORMAT, "Inflator: error in bit distance") {}};
|
||||
|
||||
//! \brief RFC 1951 Decompressor
|
||||
//! \param attachment the filter's attached transformation
|
||||
Reference in New Issue
Block a user