Date: Wed, 15 Jan 2014 11:27:32 GMT From: Yuri <yuri@rawbw.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/185797: [MAINTAINER UPDATE] devel/google-perftools to 2.1 Message-ID: <201401151127.s0FBRW2o045505@oldred.freebsd.org> Resent-Message-ID: <201401151130.s0FBU0Fu035169@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 185797 >Category: ports >Synopsis: [MAINTAINER UPDATE] devel/google-perftools to 2.1 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 15 11:30:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Yuri >Release: 9.2 10 >Organization: n/a >Environment: >Description: Update to 2.1, also fixing build issues on 10 and 11 >How-To-Repeat: >Fix: Patch attached with submission follows: Index: Makefile =================================================================== --- Makefile (revision 338359) +++ Makefile (working copy) @@ -2,15 +2,22 @@ # $FreeBSD$ PORTNAME= google-perftools -PORTVERSION= 1.8.3 +PORTVERSION= 2.1 CATEGORIES= devel +PROJECTHOST= gperftools MASTER_SITES= ${MASTER_SITE_GOOGLE_CODE} \ ${MASTER_SITE_LOCAL} +DISTFILES= gperftools-${PORTVERSION}.tar.gz MASTER_SITE_SUBDIR= vd/${PORTNAME} +WRKSRC= ${WRKDIR}/gperftools-${PORTVERSION} + MAINTAINER= yuri@tsoft.com COMMENT= Fast, multi-threaded malloc() and nifty performance analysis tools +BUILD_DEPENDS+= ${LOCALBASE}/include/execinfo.h:${PORTSDIR}/devel/libexecinfo +LIB_DEPENDS+= execinfo:${PORTSDIR}/devel/libexecinfo + GNU_CONFIGURE= yes USE_LDCONFIG= yes MAN1= pprof.1 @@ -18,9 +25,8 @@ LICENSE= BSD LICENSE_FILE= ${WRKSRC}/COPYING -USES= pathfix +CONFIGURE_ARGS+=CXXFLAGS=-I${LOCALBASE}/include CPPFLAGS=-I${LOCALBASE}/include LIBS="-L$(DESTDIR)/lib -lexecinfo" LDFLAGS=-L${LOCALBASE}/lib -NO_STAGE= yes post-patch: .if defined(NOPORTDOCS) ${REINPLACE_CMD} -e \ @@ -30,7 +36,7 @@ post-build: @${ECHO} - @${ECHO} "Please run 'make check' and verify there are no failing testcases on your system." + @${ECHO} "Please run 'make check'. Two testcases are known to fail." @${ECHO} "Report any testcase failures to http://code.google.com/p/google-perftools/issues/list" @${ECHO} Index: distinfo =================================================================== --- distinfo (revision 338359) +++ distinfo (working copy) @@ -1,2 +1,2 @@ -SHA256 (google-perftools-1.8.3.tar.gz) = 6ad744b34abb24312631740d9912f4667993b02e5f59b91246c31a2a911a9d59 -SIZE (google-perftools-1.8.3.tar.gz) = 1265062 +SHA256 (gperftools-2.1.tar.gz) = f3ade29924f89409d8279ab39e00af7420593baa4941c318db42e70ead7e494f +SIZE (gperftools-2.1.tar.gz) = 1319896 Index: files/patch-malloc_hook_mmap_freebsd.h =================================================================== --- files/patch-malloc_hook_mmap_freebsd.h (revision 0) +++ files/patch-malloc_hook_mmap_freebsd.h (working copy) @@ -0,0 +1,58 @@ +--- src/malloc_hook_mmap_freebsd.h 2014-01-15 00:52:17.000000000 -0800 ++++ src/malloc_hook_mmap_freebsd.h 2014-01-15 01:12:48.000000000 -0800 +@@ -39,6 +39,7 @@ + #include <sys/syscall.h> + #include <sys/mman.h> + #include <errno.h> ++#include <dlfcn.h> + + // Make sure mmap doesn't get #define'd away by <sys/mman.h> + #undef mmap +@@ -73,43 +74,11 @@ + } + + static inline void* do_sbrk(intptr_t increment) { +- void* curbrk = 0; ++ static void *(*libc_sbrk)(intptr_t); ++ if (libc_sbrk == NULL) ++ libc_sbrk = (void *(*)(intptr_t))dlsym(RTLD_NEXT, "sbrk"); + +-#if defined(__x86_64__) || defined(__amd64__) +-# ifdef PIC +- __asm__ __volatile__( +- "movq .curbrk@GOTPCREL(%%rip), %%rdx;" +- "movq (%%rdx), %%rax;" +- "movq %%rax, %0;" +- : "=r" (curbrk) +- :: "%rdx", "%rax"); +-# else +- __asm__ __volatile__( +- "movq .curbrk(%%rip), %%rax;" +- "movq %%rax, %0;" +- : "=r" (curbrk) +- :: "%rax"); +-# endif +-#else +- __asm__ __volatile__( +- "movl .curbrk, %%eax;" +- "movl %%eax, %0;" +- : "=r" (curbrk) +- :: "%eax"); +-#endif +- +- if (increment == 0) { +- return curbrk; +- } +- +- char* prevbrk = static_cast<char*>(curbrk); +- void* newbrk = prevbrk + increment; +- +- if (brk(newbrk) == -1) { +- return reinterpret_cast<void*>(static_cast<intptr_t>(-1)); +- } +- +- return prevbrk; ++ return libc_sbrk(increment); + } + + Property changes on: files/patch-malloc_hook_mmap_freebsd.h ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property 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 Index: files/patch-pprof =================================================================== --- files/patch-pprof (revision 338359) +++ files/patch-pprof (working copy) @@ -1,6 +1,19 @@ ---- src/pprof.orig 2010-06-16 19:42:24.000000000 -0700 -+++ src/pprof 2010-06-16 19:43:19.000000000 -0700 -@@ -3369,7 +3369,7 @@ +--- src/pprof.orig 2012-02-03 15:39:48.000000000 -0800 ++++ src/pprof 2013-05-03 10:29:08.000000000 -0700 +@@ -752,10 +752,9 @@ + # (Stop once we find one.) + # Works best if the browser is already running. + my @alt = ( +- "/etc/alternatives/gnome-www-browser", +- "/etc/alternatives/x-www-browser", +- "google-chrome", ++ "chrome", + "firefox", ++ "opera" + ); + foreach my $b (@alt) { + if (system($b, $fname) == 0) { +@@ -4345,7 +4344,7 @@ my $finish; my $offset; my $lib; @@ -9,4 +22,3 @@ # Full line from /proc/self/maps. Example: # 40000000-40015000 r-xp 00000000 03:01 12845071 /lib/ld-2.3.2.so $start = HexExtend($1); - Index: files/patch-static_vars.cc =================================================================== --- files/patch-static_vars.cc (revision 0) +++ files/patch-static_vars.cc (working copy) @@ -0,0 +1,10 @@ +--- src/static_vars.cc 2014-01-14 17:23:28.000000000 -0800 ++++ src/static_vars.cc 2014-01-14 17:28:39.000000000 -0800 +@@ -37,6 +37,7 @@ + #include "common.h" + #include "sampler.h" // for Sampler + #include "base/googleinit.h" ++#include <pthread.h> + + namespace tcmalloc { + Property changes on: files/patch-static_vars.cc ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property 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 Index: pkg-plist =================================================================== --- pkg-plist (revision 338359) +++ pkg-plist (working copy) @@ -11,32 +11,32 @@ lib/libprofiler.a lib/libprofiler.la lib/libprofiler.so -lib/libprofiler.so.1 +lib/libprofiler.so.3 lib/libtcmalloc.a lib/libtcmalloc.la lib/libtcmalloc.so -lib/libtcmalloc.so.2 +lib/libtcmalloc.so.5 lib/libtcmalloc_and_profiler.a lib/libtcmalloc_and_profiler.la lib/libtcmalloc_and_profiler.so -lib/libtcmalloc_and_profiler.so.2 +lib/libtcmalloc_and_profiler.so.5 lib/libtcmalloc_debug.a lib/libtcmalloc_debug.la lib/libtcmalloc_debug.so -lib/libtcmalloc_debug.so.2 +lib/libtcmalloc_debug.so.5 lib/libtcmalloc_minimal.a lib/libtcmalloc_minimal.la lib/libtcmalloc_minimal.so -lib/libtcmalloc_minimal.so.2 +lib/libtcmalloc_minimal.so.5 lib/libtcmalloc_minimal_debug.a lib/libtcmalloc_minimal_debug.la lib/libtcmalloc_minimal_debug.so -lib/libtcmalloc_minimal_debug.so.2 -libdata/pkgconfig/libprofiler.pc -libdata/pkgconfig/libtcmalloc.pc -libdata/pkgconfig/libtcmalloc_debug.pc -libdata/pkgconfig/libtcmalloc_minimal.pc -libdata/pkgconfig/libtcmalloc_minimal_debug.pc +lib/libtcmalloc_minimal_debug.so.5 +lib/pkgconfig/libprofiler.pc +lib/pkgconfig/libtcmalloc.pc +lib/pkgconfig/libtcmalloc_debug.pc +lib/pkgconfig/libtcmalloc_minimal.pc +lib/pkgconfig/libtcmalloc_minimal_debug.pc %%PORTDOCS%%%%DOCSDIR%%/AUTHORS %%PORTDOCS%%%%DOCSDIR%%/ChangeLog %%PORTDOCS%%%%DOCSDIR%%/INSTALL >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401151127.s0FBRW2o045505>