Compare commits
24 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
078b6814f9 | ||
|
751651e676 | ||
|
ebb33c955b | ||
|
269f60eced | ||
|
137b2efb26 | ||
|
601f584430 | ||
|
b808a24876 | ||
|
f12167f3fe | ||
|
a6655264f9 | ||
|
469491bc54 | ||
|
1089db9e24 | ||
|
e300a0c466 | ||
|
662ab34dc5 | ||
|
d7fb926967 | ||
|
723c0d5a96 | ||
|
37c8cddcb5 | ||
|
2d12dacdc3 | ||
|
823a4bb53c | ||
|
d83b778087 | ||
|
de051cb77f | ||
|
c1b9c95df2 | ||
|
9aae3152ec | ||
|
bdcfdc5e8e | ||
|
7be4d9f9f7 |
5
.gitignore
vendored
5
.gitignore
vendored
@ -1,4 +1 @@
|
|||||||
/gperftools-2.0.tar.gz
|
/gperftools-*.tar.gz
|
||||||
/gperftools-2.2.tar.gz
|
|
||||||
/gperftools-2.2.1.tar.gz
|
|
||||||
/gperftools-2.4.tar.gz
|
|
||||||
|
33
gperftools-2.6.1-aligned_alloc.patch
Normal file
33
gperftools-2.6.1-aligned_alloc.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
diff -up gperftools-2.6.1/Makefile.am.aa gperftools-2.6.1/Makefile.am
|
||||||
|
--- gperftools-2.6.1/Makefile.am.aa 2017-10-11 15:17:39.618807653 -0400
|
||||||
|
+++ gperftools-2.6.1/Makefile.am 2017-10-11 15:17:59.331338671 -0400
|
||||||
|
@@ -97,6 +97,7 @@ endif OSX
|
||||||
|
if HAVE_OBJCOPY_WEAKEN
|
||||||
|
WEAKEN = $(OBJCOPY) -W malloc -W free -W realloc -W calloc -W cfree \
|
||||||
|
-W memalign -W posix_memalign -W valloc -W pvalloc \
|
||||||
|
+ -W aligned_alloc \
|
||||||
|
-W malloc_stats -W mallopt -W mallinfo -W nallocx \
|
||||||
|
-W _Znwm -W _ZnwmRKSt9nothrow_t -W _Znam -W _ZnamRKSt9nothrow_t \
|
||||||
|
-W _ZdlPv -W _ZdaPv \
|
||||||
|
diff -up gperftools-2.6.1/src/libc_override_gcc_and_weak.h.aa gperftools-2.6.1/src/libc_override_gcc_and_weak.h
|
||||||
|
--- gperftools-2.6.1/src/libc_override_gcc_and_weak.h.aa 2017-10-11 15:18:32.234555868 -0400
|
||||||
|
+++ gperftools-2.6.1/src/libc_override_gcc_and_weak.h 2017-10-11 15:18:38.243412911 -0400
|
||||||
|
@@ -143,6 +143,7 @@ extern "C" {
|
||||||
|
void* calloc(size_t n, size_t size) __THROW ALIAS(tc_calloc);
|
||||||
|
void cfree(void* ptr) __THROW ALIAS(tc_cfree);
|
||||||
|
void* memalign(size_t align, size_t s) __THROW ALIAS(tc_memalign);
|
||||||
|
+ void* aligned_alloc(size_t align, size_t s) __THROW ALIAS(tc_memalign);
|
||||||
|
void* valloc(size_t size) __THROW ALIAS(tc_valloc);
|
||||||
|
void* pvalloc(size_t size) __THROW ALIAS(tc_pvalloc);
|
||||||
|
int posix_memalign(void** r, size_t a, size_t s) __THROW
|
||||||
|
diff -up gperftools-2.6.1/src/libc_override_redefine.h.aa gperftools-2.6.1/src/libc_override_redefine.h
|
||||||
|
--- gperftools-2.6.1/src/libc_override_redefine.h.aa 2017-10-11 15:18:55.012013968 -0400
|
||||||
|
+++ gperftools-2.6.1/src/libc_override_redefine.h 2017-10-11 15:19:20.528406906 -0400
|
||||||
|
@@ -71,6 +71,7 @@ extern "C" {
|
||||||
|
void* calloc(size_t n, size_t s) { return tc_calloc(n, s); }
|
||||||
|
void cfree(void* p) { tc_cfree(p); }
|
||||||
|
void* memalign(size_t a, size_t s) { return tc_memalign(a, s); }
|
||||||
|
+ void* aligned_alloc(size_t a, size_t s) { return tc_memalign(a, s); }
|
||||||
|
void* valloc(size_t s) { return tc_valloc(s); }
|
||||||
|
void* pvalloc(size_t s) { return tc_pvalloc(s); }
|
||||||
|
int posix_memalign(void** r, size_t a, size_t s) {
|
32
gperftools-2.6.1-disable-generic-dynamic-tls.patch
Normal file
32
gperftools-2.6.1-disable-generic-dynamic-tls.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
diff -up ./configure.ac.dynload ./configure.ac
|
||||||
|
--- ./configure.ac.dynload 2017-08-24 15:23:01.126622099 -0400
|
||||||
|
+++ ./configure.ac 2017-08-24 15:29:46.332132222 -0400
|
||||||
|
@@ -614,6 +614,16 @@ AC_COMPILE_IFELSE(
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[AC_MSG_RESULT([no])])
|
||||||
|
|
||||||
|
+default_enable_generic_dynamic_tls=yes
|
||||||
|
+AC_ARG_ENABLE([general-dynamic-tls],
|
||||||
|
+ [AS_HELP_STRING([--disable-general-dynamic-tls],
|
||||||
|
+ [Do not use the general dynamic TLS model])],
|
||||||
|
+ [],
|
||||||
|
+ [enable_generic_dynamic_tls="$default_enable_generic_dynamic_tls"])
|
||||||
|
+AS_IF([test "x$enable_generic_dynamic_tls" = xyes],
|
||||||
|
+ [AC_DEFINE([ENABLE_GENERIC_DYNAMIC_TLS], 1,
|
||||||
|
+ [Use the generic dynamic TLS model])])
|
||||||
|
+
|
||||||
|
# Write generated configuration file
|
||||||
|
AC_CONFIG_FILES([Makefile
|
||||||
|
src/gperftools/tcmalloc.h src/windows/gperftools/tcmalloc.h])
|
||||||
|
diff -up ./src/base/basictypes.h.dynload ./src/base/basictypes.h
|
||||||
|
--- ./src/base/basictypes.h.dynload 2017-08-24 15:30:30.210996293 -0400
|
||||||
|
+++ ./src/base/basictypes.h 2017-08-24 15:31:01.889176214 -0400
|
||||||
|
@@ -200,7 +200,7 @@ struct CompileAssert {
|
||||||
|
# define ATTRIBUTE_UNUSED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(HAVE___ATTRIBUTE__) && defined(HAVE_TLS)
|
||||||
|
+#if defined(HAVE___ATTRIBUTE__) && defined(HAVE_TLS) && defined(ENABLE_GENERIC_DYNAMIC_TLS)
|
||||||
|
#define ATTR_INITIAL_EXEC __attribute__ ((tls_model ("initial-exec")))
|
||||||
|
#else
|
||||||
|
#define ATTR_INITIAL_EXEC
|
13
gperftools-2.6.1-ppc64-ucontext-fix.patch
Normal file
13
gperftools-2.6.1-ppc64-ucontext-fix.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff -up gperftools-2.6.1/src/stacktrace_powerpc-linux-inl.h.ucontextfix gperftools-2.6.1/src/stacktrace_powerpc-linux-inl.h
|
||||||
|
--- gperftools-2.6.1/src/stacktrace_powerpc-linux-inl.h.ucontextfix 2017-07-17 15:57:42.066001611 -0400
|
||||||
|
+++ gperftools-2.6.1/src/stacktrace_powerpc-linux-inl.h 2017-07-17 15:58:04.610427563 -0400
|
||||||
|
@@ -53,7 +53,8 @@
|
||||||
|
#elif defined(HAVE_UCONTEXT_H)
|
||||||
|
#include <ucontext.h> // for ucontext_t
|
||||||
|
#endif
|
||||||
|
-typedef ucontext ucontext_t;
|
||||||
|
+// no ucontext typedef on ppc64
|
||||||
|
+// typedef ucontext ucontext_t;
|
||||||
|
|
||||||
|
// PowerPC64 Little Endian follows BE wrt. backchain, condition register,
|
||||||
|
// and LR save area, so no need to adjust the reading struct.
|
100
gperftools.spec
100
gperftools.spec
@ -3,19 +3,22 @@
|
|||||||
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
||||||
|
|
||||||
Name: gperftools
|
Name: gperftools
|
||||||
Version: 2.4
|
Version: 2.6.90
|
||||||
Release: 5%{?dist}
|
Release: 1%{?dist}
|
||||||
License: BSD
|
License: BSD
|
||||||
Group: Development/Tools
|
Group: Development/Tools
|
||||||
Summary: Very fast malloc and performance analysis tools
|
Summary: Very fast malloc and performance analysis tools
|
||||||
URL: http://code.google.com/p/gperftools/
|
URL: https://github.com/gperftools/gperftools
|
||||||
Source0: https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/%{name}-%{version}.tar.gz
|
Source0: https://github.com/gperftools/gperftools/releases/download/%{name}-%{version}/%{name}-%{version}.tar.gz
|
||||||
# https://code.google.com/p/gperftools/issues/detail?id=693
|
# Conditionalize generic dynamic tls model
|
||||||
Patch0: gperftools-arm-has-futex.patch
|
Patch1: gperftools-2.6.1-disable-generic-dynamic-tls.patch
|
||||||
ExcludeArch: s390 s390x
|
ExcludeArch: s390
|
||||||
%ifnarch ppc %{power64}
|
|
||||||
|
%ifnarch s390x
|
||||||
BuildRequires: libunwind-devel
|
BuildRequires: libunwind-devel
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: perl-generators
|
||||||
|
BuildRequires: autoconf, automake, libtool
|
||||||
Requires: gperftools-devel = %{version}-%{release}
|
Requires: gperftools-devel = %{version}-%{release}
|
||||||
Requires: pprof = %{version}-%{release}
|
Requires: pprof = %{version}-%{release}
|
||||||
|
|
||||||
@ -58,7 +61,7 @@ Pprof is a heap and CPU profiler tool, part of the gperftools suite.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1 -b .armfutex
|
%patch1 -p1 -b .dynload
|
||||||
|
|
||||||
# Fix end-of-line encoding
|
# Fix end-of-line encoding
|
||||||
sed -i 's/\r//' README_windows.txt
|
sed -i 's/\r//' README_windows.txt
|
||||||
@ -66,10 +69,17 @@ sed -i 's/\r//' README_windows.txt
|
|||||||
# No need to have exec permissions on source code
|
# No need to have exec permissions on source code
|
||||||
chmod -x src/*.h src/*.cc
|
chmod -x src/*.h src/*.cc
|
||||||
|
|
||||||
|
autoreconf -ifv
|
||||||
|
|
||||||
%build
|
%build
|
||||||
CFLAGS=`echo $RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs -DTCMALLOC_LARGE_PAGES | sed -e 's|-fexceptions||g'`
|
CFLAGS=`echo $RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs -DTCMALLOC_LARGE_PAGES | sed -e 's|-fexceptions||g'`
|
||||||
CXXFLAGS=`echo $RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs -DTCMALLOC_LARGE_PAGES | sed -e 's|-fexceptions||g'`
|
CXXFLAGS=`echo $RPM_OPT_FLAGS -fno-strict-aliasing -Wno-unused-local-typedefs -DTCMALLOC_LARGE_PAGES | sed -e 's|-fexceptions||g'`
|
||||||
%configure --disable-static
|
%configure \
|
||||||
|
%ifarch s390x aarch64
|
||||||
|
--disable-general-dynamic-tls \
|
||||||
|
%endif
|
||||||
|
--disable-dynamic-sized-delete-support \
|
||||||
|
--disable-static
|
||||||
|
|
||||||
# Bad rpath!
|
# Bad rpath!
|
||||||
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
|
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
|
||||||
@ -111,6 +121,76 @@ rm -rf %{buildroot}%{_pkgdocdir}/INSTALL
|
|||||||
%{_libdir}/*.so.*
|
%{_libdir}/*.so.*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Mar 25 2018 Tom Callaway <spot@fedoraproject.org> - 2.6.90-1
|
||||||
|
- update to 2.6.90
|
||||||
|
|
||||||
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.3-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jan 11 2018 Tom Callaway <spot@fedoraproject.org> - 2.6.3-1
|
||||||
|
- update to 2.6.3
|
||||||
|
|
||||||
|
* Wed Oct 11 2017 Tom Callaway <spot@fedoraproject.org> - 2.6.1-5
|
||||||
|
- add aligned_alloc support
|
||||||
|
|
||||||
|
* Thu Aug 24 2017 Tom Callaway <spot@fedoraproject.org> - 2.6.1-4
|
||||||
|
- add configure option to disable generic dynamic tls model
|
||||||
|
- disable generic dynamic tls model on s390x and aarch64
|
||||||
|
|
||||||
|
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.1-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jul 17 2017 Tom Callaway <spot@fedoraproject.org> - 2.6.1-1
|
||||||
|
- update to 2.6.1
|
||||||
|
|
||||||
|
* Tue May 23 2017 Tom Callaway <spot@fedoraproject.org> - 2.5.93-1
|
||||||
|
- update to 2.5.93
|
||||||
|
- disable dynamic sized delete (explicitly) always
|
||||||
|
|
||||||
|
* Mon May 22 2017 Tom Callaway <spot@fedoraproject.org> - 2.5.92-1
|
||||||
|
- update to 2.5.92
|
||||||
|
- disable dynamic sized delete support on powerpc64
|
||||||
|
|
||||||
|
* Mon May 22 2017 Richard W.M. Jones <rjones@redhat.com> - 2.5.91-2
|
||||||
|
- Bump release and rebuild to try to fix _ZdlPvm symbol (see RHBZ#1452813).
|
||||||
|
|
||||||
|
* Mon May 15 2017 Tom Callaway <spot@fedoraproject.org> - 2.5.91-1
|
||||||
|
- update to 2.5.91
|
||||||
|
|
||||||
|
* Tue Feb 21 2017 Dan Horák <dan[at]danny.cz> - 2.5-5
|
||||||
|
- fix s390x build
|
||||||
|
|
||||||
|
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jan 12 2017 Tom Callaway <spot@fedoraproject.org> - 2.5-3
|
||||||
|
- enable s390x
|
||||||
|
|
||||||
|
* Thu Apr 28 2016 Peter Robinson <pbrobinson@fedoraproject.org> 2.5-2
|
||||||
|
- Power64 has libunwind now
|
||||||
|
|
||||||
|
* Tue Apr 26 2016 Tom Callaway <spot@fedoraproject.org> - 2.5-1
|
||||||
|
- update to 2.5
|
||||||
|
|
||||||
|
* Tue Mar 8 2016 Tom Callaway <spot@fedoraproject.org> - 2.4.91-1
|
||||||
|
- update to 2.4.91
|
||||||
|
- re-enable hardened builds (upstream disabled dynamic sized delete by default)
|
||||||
|
|
||||||
|
* Fri Mar 04 2016 Than Ngo <than@redhat.com> - 2.4.90-3
|
||||||
|
- Disable hardened build on ppc64/ppc64le (RHBZ#1314483).
|
||||||
|
|
||||||
|
* Mon Feb 29 2016 Richard W.M. Jones <rjones@redhat.com> - 2.4.90-2
|
||||||
|
- Disable hardened build on 32 bit ARM (RHBZ#1312462).
|
||||||
|
|
||||||
|
* Mon Feb 22 2016 Tom Callaway <spot@fedoraproject.org> - 2.4.90-1
|
||||||
|
- update to 2.4.90
|
||||||
|
|
||||||
|
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-6
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||||
|
|
||||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4-5
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user