Index: head/devel/google-perftools/Makefile =================================================================== --- head/devel/google-perftools/Makefile (revision 492291) +++ head/devel/google-perftools/Makefile (revision 492292) @@ -1,81 +1,77 @@ # Created by: Yuri Victorovich # $FreeBSD$ PORTNAME= google-perftools DISTVERSIONPREFIX= gperftools- DISTVERSION= 2.7 CATEGORIES= devel MASTER_SITES= https://github.com/gperftools/gperftools/releases/download/gperftools-${PORTVERSION}/ DISTNAME= gperftools-${PORTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= Fast, multi-threaded malloc() and nifty performance analysis tools 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 LIBS+= -lexecinfo PLIST_SUB= SHL3=4.5.3 SHL1=4 OPTIONS_DEFINE= DOCS OPTIONS_SINGLE= PAGESIZE ALIGN OPTIONS_SINGLE_ALIGN= ALIGN8 ALIGN16 OPTIONS_SINGLE_PAGESIZE= PAGE8K PAGE32K PAGE64K OPTIONS_DEFAULT= PAGE8K ALIGN16 ALIGN_DESC= The tcmalloc allocation alignment ALIGN8_DESC= 8 bytes allocation alignment ALIGN16_DESC= 16 bytes allocation alignment PAGESIZE_DESC= The tcmalloc internal page size PAGE8K_DESC= 8K page size PAGE32K_DESC= 32K page size PAGE64K_DESC= 64K page size ALIGN8_CONFIGURE_ON= --with-tcmalloc-alignment=8 ALIGN16_CONFIGURE_ON= --with-tcmalloc-alignment=16 PAGE8K_CONFIGURE_ON= --with-tcmalloc-pagesize=8 PAGE32K_CONFIGURE_ON= --with-tcmalloc-pagesize=32 PAGE64K_CONFIGURE_ON= --with-tcmalloc-pagesize=64 PORTDOCS= * .include .if ${COMPILER_TYPE} == "clang" && !defined(USE_GCC) # clang cannot disable builtins individually CXXFLAGS+= -fno-builtin .endif .if ${ARCH} == "amd64" CONFIGURE_ARGS+=--enable-frame-pointers .endif # keep in sync with all platforms where libunwind is available .if (${ARCH} == amd64 || ${ARCH} == i386) LIB_DEPENDS+= libunwind.so:devel/libunwind .endif post-build: @${ECHO} @${ECHO} "Please run 'make check' (requires bash)." @${ECHO} "Two testcases are known to fail. Testsuite is known to be" @${ECHO} "unreliable and give false positives and negatives (PR#661)." @${ECHO} post-install: ${MV} ${STAGEDIR}${PREFIX}/bin/pprof ${STAGEDIR}${PREFIX}/bin/perftools-pprof @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib*.so.* .include Index: head/devel/google-perftools/files/patch-configure =================================================================== --- head/devel/google-perftools/files/patch-configure (nonexistent) +++ head/devel/google-perftools/files/patch-configure (revision 492292) @@ -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) Property changes on: head/devel/google-perftools/files/patch-configure ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h =================================================================== --- head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h (nonexistent) +++ head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h (revision 492292) @@ -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 Property changes on: head/devel/google-perftools/files/patch-src_stacktrace__powerpc-darwin-inl.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property