# # spec file for package jemalloc # # Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define lname libjemalloc2 Name: jemalloc Version: 4.1.1 Release: 0 Summary: General-purpose scalable concurrent malloc implementation License: BSD-2-Clause Group: Development/Libraries/C and C++ Url: http://canonware.com/jemalloc/ #Git-Clone: git://canonware.com/jemalloc Source: http://www.canonware.com/download/jemalloc/jemalloc-%{version}.tar.bz2 BuildRequires: docbook-xsl-stylesheets BuildRequires: libxslt BuildRequires: pkg-config Requires: %{lname} = %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} == 1110 BuildRequires: gcc48 %endif %description jemalloc is a general-purpose scalable concurrent malloc(3) implementation. This package provides a shell wrapper script to run programs using jemalloc. %package -n %{lname} Summary: General-purpose scalable concurrent malloc implementation Group: System/Libraries %description -n %{lname} General-purpose scalable concurrent malloc(3) implementation. This distribution is the stand-alone "portable" version of jemalloc. %package devel Summary: Development files for jemalloc Group: Development/Libraries/C and C++ Requires: %{lname} = %{version} %description devel Headers for jemalloc, general-purpose scalable concurrent malloc(3) implementation. %package devel-static Summary: Static libraries for jemalloc Group: Development/Libraries/C and C++ Requires: %{name}-devel = %{version} %description devel-static Static libraries of jemalloc, general-purpose scalable concurrent malloc(3) implementation. %prep %setup -q %build export EXTRA_CFLAGS="%{optflags} -std=gnu99" %if 0%{?suse_version} == 1110 if [ -f "%{_bindir}/gcc-4.6" ]; then export CC=gcc-4.6 fi if [ -f "%{_bindir}/gcc-4.7" ]; then export CC=gcc-4.7 fi if [ -f "%{_bindir}/gcc-4.8" ]; then export CC=gcc-4.8 fi %endif %configure --enable-cc-silence \ --enable-prof make %{?_smp_mflags} %install b=%{buildroot} make install DESTDIR="$b" chmod -x "%{buildroot}/%{_libdir}"/*.a if [ "%{_docdir}" != "%{_datadir}/doc" ]; then # stupid Makefile does not allow to set it mkdir -p "$b/%{_docdir}" mv "$b/%{_datadir}/doc/jemalloc" "$b/%{_docdir}/%{name}" fi %check export LD_LIBRARY_PATH="$PWD/lib:$LD_LIBRARY_PATH" make %{?_smp_mflags} check %post -n %{lname} -p /sbin/ldconfig %postun -n %{lname} -p /sbin/ldconfig %files %defattr(-,root,root) %{_bindir}/jemalloc.sh %{_bindir}/jemalloc-config %{_bindir}/jeprof %{_mandir}/man*/* %{_docdir}/%{name} %files -n %{lname} %defattr(-,root,root) %doc ChangeLog COPYING README %{_libdir}/libjemalloc.so.2* %files devel %defattr(-,root,root) %{_includedir}/jemalloc %{_libdir}/libjemalloc.so %{_libdir}/pkgconfig/jemalloc.pc %files devel-static %defattr(-,root,root) %{_libdir}/libjemalloc*.a %changelog