diff --git a/devel/google-perftools/Makefile b/devel/google-perftools/Makefile index 8955117cf6bd..cd21d6bcff71 100644 --- a/devel/google-perftools/Makefile +++ b/devel/google-perftools/Makefile @@ -1,78 +1,93 @@ # Created by: Yuri Victorovich PORTNAME= google-perftools DISTVERSIONPREFIX= gperftools- DISTVERSION= 2.10 +PORTREVISION= 1 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_aarch64= fails to compile: src/stacktrace.cc:230:2: Cannot calculate stack trace: will need to write for your environment BROKEN_riscv64= fails to compile: src/base/basictypes.h:387:5: Could not determine cache line length - unknown architecture USES= compiler:c11 gmake libtool localbase:ldflags GNU_CONFIGURE= yes USE_LDCONFIG= yes TEST_TARGET= check LIBS+= -lexecinfo DOCSDIR= ${PREFIX}/share/doc/gperftools -OPTIONS_DEFINE= DOCS +OPTIONS_DEFINE= DOCS PROFILER OPTIONS_SINGLE= PAGESIZE ALIGN OPTIONS_SINGLE_ALIGN= ALIGN8 ALIGN16 OPTIONS_SINGLE_PAGESIZE= PAGE8K PAGE32K PAGE64K OPTIONS_DEFAULT= PAGE8K ALIGN16 +OPTIONS_DEFAULT_amd64= PROFILER +OPTIONS_DEFINE_aarch64= PROFILER +OPTIONS_DEFINE_amd64= PROFILER +OPTIONS_DEFINE_armv6= # PROFILER is disabled: WARNING: Could not find the PC. Will not try to compile libprofiler. +OPTIONS_DEFINE_armv7= # PROFILER is disabled: WARNING: Could not find the PC. Will not try to compile libprofiler. +OPTIONS_DEFINE_i386= PROFILER +OPTIONS_DEFINE_powerpc= PROFILER +OPTIONS_DEFINE_powerpc64= PROFILER +OPTIONS_DEFINE_powerpc64le= PROFILER +OPTIONS_DEFINE_riscv64= PROFILER +OPTIONS_SUB= yes + +PROFILER_DESC= Enable CPU profiler +PROFILER_CONFIGURE_ENABLE= cpu-profiler 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} == aarch64 || ${ARCH} == amd64 || ${ARCH} == armv7 || ${ARCH} == i386 || ${ARCH} == powerpc64 || ${ARCH} == powerpc64le LIB_DEPENDS+= libunwind.so:devel/libunwind LIBS+= -lunwind .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 diff --git a/devel/google-perftools/pkg-plist b/devel/google-perftools/pkg-plist index f7d38a336a88..b84c09f06679 100644 --- a/devel/google-perftools/pkg-plist +++ b/devel/google-perftools/pkg-plist @@ -1,51 +1,51 @@ bin/perftools-pprof bin/pprof-symbolize include/google/heap-checker.h include/google/heap-profiler.h include/google/malloc_extension.h include/google/malloc_extension_c.h include/google/malloc_hook.h include/google/malloc_hook_c.h include/google/profiler.h include/google/stacktrace.h include/google/tcmalloc.h include/gperftools/heap-checker.h include/gperftools/heap-profiler.h include/gperftools/malloc_extension.h include/gperftools/malloc_extension_c.h include/gperftools/malloc_hook.h include/gperftools/malloc_hook_c.h include/gperftools/nallocx.h -include/gperftools/profiler.h +%%PROFILER%%include/gperftools/profiler.h include/gperftools/stacktrace.h include/gperftools/tcmalloc.h -lib/libprofiler.a -lib/libprofiler.so -lib/libprofiler.so.0 -lib/libprofiler.so.0.5.5 +%%PROFILER%%lib/libprofiler.a +%%PROFILER%%lib/libprofiler.so +%%PROFILER%%lib/libprofiler.so.0 +%%PROFILER%%lib/libprofiler.so.0.5.5 lib/libtcmalloc.a lib/libtcmalloc.so lib/libtcmalloc.so.4 lib/libtcmalloc.so.4.5.10 -lib/libtcmalloc_and_profiler.a -lib/libtcmalloc_and_profiler.so -lib/libtcmalloc_and_profiler.so.4 -lib/libtcmalloc_and_profiler.so.4.6.5 +%%PROFILER%%lib/libtcmalloc_and_profiler.a +%%PROFILER%%lib/libtcmalloc_and_profiler.so +%%PROFILER%%lib/libtcmalloc_and_profiler.so.4 +%%PROFILER%%lib/libtcmalloc_and_profiler.so.4.6.5 lib/libtcmalloc_debug.a lib/libtcmalloc_debug.so lib/libtcmalloc_debug.so.4 lib/libtcmalloc_debug.so.4.5.10 lib/libtcmalloc_minimal.a lib/libtcmalloc_minimal.so lib/libtcmalloc_minimal.so.4 lib/libtcmalloc_minimal.so.4.5.10 lib/libtcmalloc_minimal_debug.a lib/libtcmalloc_minimal_debug.so lib/libtcmalloc_minimal_debug.so.4 lib/libtcmalloc_minimal_debug.so.4.5.10 libdata/pkgconfig/libprofiler.pc libdata/pkgconfig/libtcmalloc.pc libdata/pkgconfig/libtcmalloc_debug.pc libdata/pkgconfig/libtcmalloc_minimal.pc libdata/pkgconfig/libtcmalloc_minimal_debug.pc man/man1/pprof.1.gz