1.1 --- a/memcached/memcached.spec Tue Aug 28 18:35:40 2012 +0200 1.2 +++ b/memcached/memcached.spec Tue Aug 28 18:35:45 2012 +0200 1.3 @@ -22,8 +22,8 @@ 1.4 ## 1.5 1.6 # package versions 1.7 -%define V_memcached 1.4.6 1.8 -%define V_libmemcached 0.48 1.9 +%define V_memcached 1.4.14 1.10 +%define V_libmemcached 1.0.10 1.11 %define V_cache_memcached 1.28 1.12 1.13 # package information 1.14 @@ -37,7 +37,7 @@ 1.15 Group: System 1.16 License: GPL 1.17 Version: %{V_memcached} 1.18 -Release: 20110914 1.19 +Release: 20120800 1.20 1.21 # list of sources 1.22 Source0: http://memcached.googlecode.com/files/memcached-%{V_memcached}.tar.gz 1.23 @@ -47,17 +47,13 @@ 1.24 Patch0: memcached.patch 1.25 1.26 # build information 1.27 -Prefix: %{l_prefix} 1.28 -BuildRoot: %{l_buildroot} 1.29 -BuildPreReq: OpenPKG, openpkg >= 20060823, gcc, make, perl, perl-openpkg 1.30 -PreReq: OpenPKG, openpkg >= 20060823 1.31 -BuildPreReq: libevent, sasl 1.32 -PreReq: libevent, sasl 1.33 -AutoReq: no 1.34 -AutoReqProv: no 1.35 +BuildPreReq: OpenPKG, openpkg >= 20100101, gcc, make, perl, perl-openpkg 1.36 +PreReq: OpenPKG, openpkg >= 20100101 1.37 +BuildPreReq: libevent, sasl, libexecinfo 1.38 +PreReq: libevent, sasl, libexecinfo 1.39 1.40 %description 1.41 - Memcached is a high-performance, distributed memory object caching 1.42 + Memcached is a high performance, distributed memory object caching 1.43 system, generic in nature, but intended for use in speeding up 1.44 dynamic web applications by alleviating database load. Additionally, 1.45 this package contains Perl and C client APIs to memcached. 1.46 @@ -85,6 +81,9 @@ 1.47 %setup -q -T -D -a 2 1.48 %patch -p0 1.49 %{l_shtool} subst \ 1.50 + -e 's/b = \(__sync_sub_and_fetch(\&a, 2);\)/return \1/' \ 1.51 + memcached-%{V_memcached}/configure 1.52 + %{l_shtool} subst \ 1.53 -e 's; *-Werror;;g' \ 1.54 memcached-%{V_memcached}/configure 1.55 %{l_shtool} subst \ 1.56 @@ -114,11 +113,19 @@ 1.57 1.58 # build C client API 1.59 ( cd libmemcached-%{V_libmemcached} 1.60 + ( echo "ac_cv_func_malloc_0_nonnull=yes" 1.61 + echo "ac_cv_func_realloc_0_nonnull=yes" 1.62 + echo "ac_cv_env_CXXFLAGS_set=barf" 1.63 + echo "ac_cv_env_CFLAGS_set=barf" 1.64 + echo "ac_cv_header_priv_h=no" 1.65 + echo "ac_cv_header_umem_h=no" 1.66 + ) >config.cache 1.67 CC="%{l_cc}" \ 1.68 CFLAGS="%{l_cflags -O}" \ 1.69 CPPFLAGS="%{l_cppflags}" \ 1.70 LDFLAGS="%{l_ldflags}" \ 1.71 ./configure \ 1.72 + --cache-file=./config.cache \ 1.73 --prefix=%{l_prefix} \ 1.74 --mandir=%{l_prefix}/man \ 1.75 --without-memcached \ 1.76 @@ -136,9 +143,6 @@ 1.77 %{l_prefix}/bin/perl-openpkg -d Cache-Memcached-%{V_cache_memcached} configure build 1.78 1.79 %install 1.80 - # remove build cruft 1.81 - rm -rf $RPM_BUILD_ROOT 1.82 - 1.83 # install daemon 1.84 ( cd memcached-%{V_memcached} 1.85 %{l_shtool} mkdir -f -p -m 775 \ 1.86 @@ -152,20 +156,30 @@ 1.87 1.88 # install C client API 1.89 ( cd libmemcached-%{V_libmemcached} 1.90 - %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT" 1.91 + %{l_make} %{l_mflags} install DESTDIR="$RPM_BUILD_ROOT" 1.92 + ) || exit $? 1.93 + 1.94 + # correct header names and references 1.95 + ( cd $RPM_BUILD_ROOT%{l_prefix}/include 1.96 + mv libmemcachedutil-[0-9]* libmemcachedutil 1.97 + mv libmemcachedprotocol-[0-9]* libmemcachedprotocol 1.98 + rm -rf libhashkit && mv libhashkit-[0-9]* libhashkit 1.99 + rm -rf libmemcached && mv libmemcached-[0-9]* libmemcached 1.100 + find . -type f -print | xargs %{l_shtool} subst \ 1.101 + -e 's;\(#include <lib[^\-][^\-]*\)-[0-9\.][0-9\.]*;\1;g' 1.102 ) || exit $? 1.103 1.104 # install Perl client API 1.105 %{l_prefix}/bin/perl-openpkg -d Cache-Memcached-%{V_cache_memcached} install 1.106 %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup 1.107 1.108 - # install daemon run-command script 1.109 + # install daemon runcommand script 1.110 %{l_shtool} mkdir -f -p -m 755 \ 1.111 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d 1.112 %{l_shtool} install -c -m 755 %{l_value -s -a} \ 1.113 %{SOURCE rc.memcached} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ 1.114 1.115 - # install daemon run-command script 1.116 + # create directory hierarchy for daemon 1.117 %{l_shtool} mkdir -f -p -m 755 \ 1.118 $RPM_BUILD_ROOT%{l_prefix}/var/memcached 1.119 1.120 @@ -177,7 +191,6 @@ 1.121 %files -f files 1.122 1.123 %clean 1.124 - rm -rf $RPM_BUILD_ROOT 1.125 1.126 %post 1.127 # after upgrade, restart service