summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2016-10-04 17:40:31 +0200
committerAlexis Ballier <aballier@gentoo.org>2016-10-04 17:40:43 +0200
commitc85538388f2e1ed476edd2917618fead3578b5d5 (patch)
treece373d090dd6af2a1dc139caff98afac2e65631d /dev-libs/crypto++
parentdev-util/android-studio: Unbundled some stuff, fixed bug (diff)
downloadgentoo-c85538388f2e1ed476edd2917618fead3578b5d5.tar.gz
gentoo-c85538388f2e1ed476edd2917618fead3578b5d5.tar.bz2
gentoo-c85538388f2e1ed476edd2917618fead3578b5d5.zip
dev-libs/crypto++: Drop forced usage of march=native.
This completely breaks for my usecases where I build binary packages for older CPUs. Package-Manager: portage-2.3.1
Diffstat (limited to 'dev-libs/crypto++')
-rw-r--r--dev-libs/crypto++/crypto++-5.6.4-r1.ebuild (renamed from dev-libs/crypto++/crypto++-5.6.4.ebuild)4
-rw-r--r--dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch28
2 files changed, 32 insertions, 0 deletions
diff --git a/dev-libs/crypto++/crypto++-5.6.4.ebuild b/dev-libs/crypto++/crypto++-5.6.4-r1.ebuild
index c632e0003cfb..6444560ef5b7 100644
--- a/dev-libs/crypto++/crypto++-5.6.4.ebuild
+++ b/dev-libs/crypto++/crypto++-5.6.4-r1.ebuild
@@ -18,6 +18,10 @@ IUSE="static-libs"
DEPEND="app-arch/unzip"
S="${WORKDIR}"
+PATCHES=(
+ # Building with -march=native breaks when one wants to build for older CPUs.
+ "${FILESDIR}/${P}-nonative.patch"
+)
src_configure() {
cp config.recommend config.h || die
diff --git a/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch b/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch
new file mode 100644
index 000000000000..77d74ee729e9
--- /dev/null
+++ b/dev-libs/crypto++/files/crypto++-5.6.4-nonative.patch
@@ -0,0 +1,28 @@
+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)