|
|
|
|
##
|
|
|
|
|
## jemalloc.spec -- OpenPKG RPM Package Specification
|
|
|
|
|
## Copyright (c) 2000-2016 OpenPKG Foundation e.V. <http://openpkg.net/>
|
|
|
|
|
##
|
|
|
|
|
## Permission to use, copy, modify, and distribute this software for
|
|
|
|
|
## any purpose with or without fee is hereby granted, provided that
|
|
|
|
|
## the above copyright notice and this permission notice appear in all
|
|
|
|
|
## copies.
|
|
|
|
|
##
|
|
|
|
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
|
|
|
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
|
|
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
|
|
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
|
|
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
|
|
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
|
|
|
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
|
## SUCH DAMAGE.
|
|
|
|
|
##
|
|
|
|
|
|
|
|
|
|
# package information
|
|
|
|
|
Name: jemalloc
|
|
|
|
|
Summary: Jason Evans' Memory Allocation Library
|
|
|
|
|
URL: http://www.canonware.com/jemalloc/
|
|
|
|
|
Vendor: Jason Evans
|
|
|
|
|
Packager: OpenPKG Foundation e.V.
|
|
|
|
|
Distribution: OpenPKG Community
|
|
|
|
|
Class: EVAL
|
|
|
|
|
Group: Libraries
|
|
|
|
|
License: BSD
|
|
|
|
|
Version: 4.0.4
|
|
|
|
|
Release: 20151219
|
|
|
|
|
|
|
|
|
|
# list of sources
|
|
|
|
|
Source0: http://www.canonware.com/download/jemalloc/jemalloc-%{version}.tar.bz2
|
|
|
|
|
Patch0: jemalloc.patch
|
|
|
|
|
|
|
|
|
|
# build information
|
|
|
|
|
BuildPreReq: OpenPKG, openpkg >= 20160101
|
|
|
|
|
PreReq: OpenPKG, openpkg >= 20160101
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
|
jemalloc is a general purpose malloc(3) implementation that
|
|
|
|
|
emphasizes fragmentation avoidance and scalable concurrency support.
|
|
|
|
|
jemalloc first came into use as the FreeBSD libc allocator in 2005,
|
|
|
|
|
and since then it has found its way into numerous applications that
|
|
|
|
|
rely on its predictable behavior. In 2010 jemalloc development
|
|
|
|
|
efforts broadened to include developer support features such as heap
|
|
|
|
|
profiling, Valgrind integration, and extensive monitoring/tuning
|
|
|
|
|
hooks. Modern jemalloc releases continue to be integrated back
|
|
|
|
|
into FreeBSD, and therefore versatility remains critical. Ongoing
|
|
|
|
|
development efforts trend toward making jemalloc among the best
|
|
|
|
|
allocators for a broad range of demanding applications, and
|
|
|
|
|
eliminating/mitigating weaknesses that have practical repercussions
|
|
|
|
|
for real world applications.
|
|
|
|
|
|
|
|
|
|
%track
|
|
|
|
|
prog jemalloc = {
|
|
|
|
|
version = %{version}
|
|
|
|
|
url = http://www.canonware.com/jemalloc/download.html
|
|
|
|
|
regex = jemalloc-(__VER__)\.tar\.gz
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
%setup -q
|
|
|
|
|
%patch -p0
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
CC="%{l_cc}" \
|
|
|
|
|
CFLAGS="%{l_cflags -O}" \
|
|
|
|
|
CPPFLAGS="%{l_cppflags}" \
|
|
|
|
|
LDFLAGS="%{l_ldflags}" \
|
|
|
|
|
./configure \
|
|
|
|
|
--prefix=%{l_prefix} \
|
|
|
|
|
--mandir=%{l_prefix}/man
|
|
|
|
|
%{l_make} %{l_mflags} \
|
|
|
|
|
build_lib_static
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
%{l_make} %{l_mflags} \
|
|
|
|
|
install_bin \
|
|
|
|
|
install_include \
|
|
|
|
|
install_lib_static \
|
|
|
|
|
install_doc_man \
|
|
|
|
|
DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
|
|
|
|
|
|
|
|
|
|
%files -f files
|
|
|
|
|
|
|
|
|
|
%clean
|
|
|
|
|
|