svn commit: r492292 - in head/devel/google-perftools: . files
Yuri Victorovich
yuri at FreeBSD.org
Wed Feb 6 08:02:45 UTC 2019
Author: yuri
Date: Wed Feb 6 08:02:43 2019
New Revision: 492292
URL: https://svnweb.freebsd.org/changeset/ports/492292
Log:
devel/google-perftools: fix build with GCC-based architectures
PR: 235498
Submitted by: Piotr Kubaj <pkubaj at anongoth.pl>
Added:
head/devel/google-perftools/files/patch-configure (contents, props changed)
head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h (contents, props changed)
Modified:
head/devel/google-perftools/Makefile
Modified: head/devel/google-perftools/Makefile
==============================================================================
--- head/devel/google-perftools/Makefile Wed Feb 6 07:58:35 2019 (r492291)
+++ head/devel/google-perftools/Makefile Wed Feb 6 08:02:43 2019 (r492292)
@@ -14,13 +14,9 @@ COMMENT= Fast, multi-threaded malloc() and nifty perfo
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/COPYING
-BROKEN_powerpc= fails to build: assembly not supported, see PR\#94: http://code.google.com/p/google-perftools/issues/detail?id=94&can=1
-BROKEN_powerpc64= fails to build: assembly not supported, see PR\#94: http://code.google.com/p/google-perftools/issues/detail?id=94&can=1
-BROKEN_sparc64= fails to build: assembly not supported, see PR\#94: http://code.google.com/p/google-perftools/issues/detail?id=94&can=1
-
DOCSDIR= ${PREFIX}/share/doc/gperftools
-USES= compiler gmake libtool
+USES= compiler:c11 gmake libtool
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
TEST_TARGET= check
Added: head/devel/google-perftools/files/patch-configure
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/google-perftools/files/patch-configure Wed Feb 6 08:02:43 2019 (r492292)
@@ -0,0 +1,10 @@
+--- configure.orig 2018-04-30 06:05:33 UTC
++++ configure
+@@ -18110,6 +18110,7 @@ $as_echo_n "checking how to access the program counter
+ pc_fields="$pc_fields uc_mcontext.arm_pc" # Linux (arm arch 5)
+ pc_fields="$pc_fields uc_mcontext.gp_regs[PT_NIP]" # Suse SLES 11 (ppc64)
+ pc_fields="$pc_fields uc_mcontext.mc_eip" # FreeBSD (i386)
++ pc_fields="$pc_fields uc_mcontext.mc_srr0" # FreeBSD (powerpc, powerpc64)
+ pc_fields="$pc_fields uc_mcontext.mc_rip" # FreeBSD (x86_64 [untested])
+ pc_fields="$pc_fields uc_mcontext.__gregs[_REG_EIP]" # NetBSD (i386)
+ pc_fields="$pc_fields uc_mcontext.__gregs[_REG_RIP]" # NetBSD (x86_64)
Added: head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h Wed Feb 6 08:02:43 2019 (r492292)
@@ -0,0 +1,14 @@
+--- src/stacktrace_powerpc-darwin-inl.h.orig 2016-08-25 05:12:24 UTC
++++ src/stacktrace_powerpc-darwin-inl.h
+@@ -97,7 +97,11 @@ int GET_STACK_TRACE_OR_FRAMES {
+ // different asm syntax. I don't know quite the best way to discriminate
+ // systems using the old as from the new one; I've gone with __APPLE__.
+ // TODO(csilvers): use autoconf instead, to look for 'as --version' == 1 or 2
++#ifdef __FreeBSD__
++ __asm__ volatile ("mr %0,1" : "=r" (sp));
++#else
+ __asm__ volatile ("mr %0,r1" : "=r" (sp));
++#endif
+
+ // On PowerPC, the "Link Register" or "Link Record" (LR), is a stack
+ // entry that holds the return address of the subroutine call (what
More information about the svn-ports-all
mailing list