diff options
author | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-08-03 13:36:36 -0300 |
---|---|---|
committer | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-08-03 13:36:36 -0300 |
commit | 8c1cd392b43a7018099ce64f9359b76c2de14640 (patch) | |
tree | b3c0d54454025b6bc478768a07b9cf7bdcca2289 /extra/memcached | |
parent | 5a01c45ea1ee67df43e376e2e4aa1833edd2ff30 (diff) | |
parent | 991d38faccf4e1fb27f31f236ad58ee840103734 (diff) |
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts:
community/apvlv/PKGBUILD
community/i3-wm/PKGBUILD
community/jack2/PKGBUILD
community/perl-list-moreutils/PKGBUILD
community/qc-usb-messenger/PKGBUILD
community/sword/PKGBUILD
community/virtualbox/PKGBUILD
community/vuze/PKGBUILD
extra/archboot/PKGBUILD
extra/ardour/PKGBUILD
extra/boost/PKGBUILD
extra/digikam/PKGBUILD
extra/jack/PKGBUILD
extra/kdebase-konsole/PKGBUILD
extra/kdebase-runtime/PKGBUILD
extra/kdebindings-kimono/PKGBUILD
extra/kdebindings-korundum/PKGBUILD
extra/kdebindings-kross/PKGBUILD
extra/kdebindings-perlkde/PKGBUILD
extra/kdebindings-perlqt/PKGBUILD
extra/kdebindings-python/PKGBUILD
extra/kdebindings-qtruby/PKGBUILD
extra/kdebindings-qyoto/PKGBUILD
extra/kdebindings-smokegen/PKGBUILD
extra/kdebindings-smokekde/PKGBUILD
extra/kdebindings-smokeqt/PKGBUILD
extra/kdebindings/PKGBUILD
extra/kdeedu-blinken/PKGBUILD
extra/kdeedu-blinken/kdeedu-blinken.install
extra/kdeedu-cantor/PKGBUILD
extra/kdeedu-cantor/kdeedu-cantor.install
extra/kdeedu-kalgebra/PKGBUILD
extra/kdeedu-kalgebra/kdeedu-kalgebra.install
extra/kdeedu-kalzium/PKGBUILD
extra/kdeedu-kalzium/kdeedu-kalzium.install
extra/kdeedu-kanagram/PKGBUILD
extra/kdeedu-kanagram/kdeedu-kanagram.install
extra/kdeedu-kbruch/PKGBUILD
extra/kdeedu-kbruch/kdeedu-kbruch.install
extra/kdeedu-kgeography/PKGBUILD
extra/kdeedu-kgeography/kdeedu-kgeography.install
extra/kdeedu-khangman/PKGBUILD
extra/kdeedu-khangman/kdeedu-khangman.install
extra/kdeedu-kig/PKGBUILD
extra/kdeedu-kig/kdeedu-kig.install
extra/kdeedu-kiten/PKGBUILD
extra/kdeedu-kiten/kdeedu-kiten.install
extra/kdeedu-klettres/PKGBUILD
extra/kdeedu-klettres/kdeedu-klettres.install
extra/kdeedu-kmplot/PKGBUILD
extra/kdeedu-kmplot/kdeedu-kmplot.install
extra/kdeedu-kstars/PKGBUILD
extra/kdeedu-kstars/kdeedu-kstars.install
extra/kdeedu-ktouch/PKGBUILD
extra/kdeedu-ktouch/kdeedu-ktouch.install
extra/kdeedu-kturtle/PKGBUILD
extra/kdeedu-kturtle/kdeedu-kturtle.install
extra/kdeedu-kwordquiz/PKGBUILD
extra/kdeedu-kwordquiz/kdeedu-kwordquiz.install
extra/kdeedu-marble/PKGBUILD
extra/kdeedu-marble/gpsd-2.96.patch
extra/kdeedu-marble/kdeedu-marble.install
extra/kdeedu-parley/PKGBUILD
extra/kdeedu-parley/kdeedu-parley.install
extra/kdeedu-rocs/PKGBUILD
extra/kdeedu-step/PKGBUILD
extra/kdeedu-step/kdeedu-step.install
extra/kdegraphics-gwenview/PKGBUILD
extra/kdegraphics-gwenview/kdegraphics-gwenview.install
extra/kdegraphics-kamera/PKGBUILD
extra/kdegraphics-kcolorchooser/PKGBUILD
extra/kdegraphics-kcolorchooser/kdegraphics-kcolorchooser.install
extra/kdegraphics-kgamma/PKGBUILD
extra/kdegraphics-kolourpaint/PKGBUILD
extra/kdegraphics-kolourpaint/kdegraphics-kolourpaint.install
extra/kdegraphics-kruler/PKGBUILD
extra/kdegraphics-kruler/kdegraphics-kruler.install
extra/kdegraphics-ksaneplugin/PKGBUILD
extra/kdegraphics-ksnapshot/PKGBUILD
extra/kdegraphics-ksnapshot/kdegraphics-ksnapshot.install
extra/kdegraphics-okular/PKGBUILD
extra/kdegraphics-okular/kdegraphics-okular.install
extra/kdegraphics-strigi-analyzer/PKGBUILD
extra/kdegraphics-svgpart/PKGBUILD
extra/kdegraphics-thumbnailers/PKGBUILD
extra/kdegraphics/PKGBUILD
extra/kdelibs/PKGBUILD
extra/kdemultimedia/PKGBUILD
extra/kdepim-runtime/PKGBUILD
extra/kdeplasma-addons/PKGBUILD
extra/kdesdk-kate/PKGBUILD
extra/kdesdk-kate/kdebase-kwrite.install
extra/kdesdk-kate/kdesdk-kate.install
extra/kdesdk-kate/pkgbuild-syntax-highlight.patch
extra/kdeutils/PKGBUILD
extra/kipi-plugins/PKGBUILD
extra/koffice/PKGBUILD
extra/konq-plugins/PKGBUILD
extra/libkdcraw/PKGBUILD
extra/libkdcraw/libkdcraw.install
extra/libkdeedu/PKGBUILD
extra/libkdeedu/libkdeedu.install
extra/libkexiv2/PKGBUILD
extra/libkipi/PKGBUILD
extra/libkipi/libkipi.install
extra/libksane/PKGBUILD
extra/libksane/libksane.install
extra/liblrdf/PKGBUILD
extra/maxima/PKGBUILD
extra/mysql/PKGBUILD
extra/partitionmanager/PKGBUILD
extra/pygobject/PKGBUILD
extra/samba/PKGBUILD
extra/sbcl/PKGBUILD
extra/texlive-bin/PKGBUILD
kde-unstable/kdebase-workspace/PKGBUILD
multilib-testing/lib32-mesa/PKGBUILD
multilib/lib32-freetype2/PKGBUILD
multilib/lib32-jack/PKGBUILD
multilib/lib32-libsndfile/PKGBUILD
testing/mesa/PKGBUILD
~fauno/notmuch/PKGBUILD
Diffstat (limited to 'extra/memcached')
-rw-r--r-- | extra/memcached/PKGBUILD | 28 | ||||
-rw-r--r-- | extra/memcached/fix-type-punning-issues.patch | 73 |
2 files changed, 12 insertions, 89 deletions
diff --git a/extra/memcached/PKGBUILD b/extra/memcached/PKGBUILD index 49187e522..458f173f9 100644 --- a/extra/memcached/PKGBUILD +++ b/extra/memcached/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 109292 2011-02-07 17:22:01Z ibiru $ +# $Id: PKGBUILD 133031 2011-07-27 01:25:28Z dan $ # Maintainer: Dan McGee <dan@archlinux.org> # Contributor: Michael Irwin <6d6469@gmail.com> pkgname=memcached -pkgver=1.4.5 -pkgrel=3 +pkgver=1.4.6 +pkgrel=1 pkgdesc="A distributed memory object caching system" arch=(i686 x86_64 'mips64el') url="http://memcached.org/" @@ -14,26 +14,22 @@ optdepends=('perl: for memcached-tool usage') backup=('etc/conf.d/memcached') source=(http://memcached.googlecode.com/files/$pkgname-$pkgver.tar.gz memcached.conf - memcached.sh - fix-type-punning-issues.patch) + memcached.sh) changelog=ChangeLog +sha256sums=('4dba55457e4e7f5a3e8255325671bf1e1efbe89ee224fcc6993fcd659956d3f7' + '0e57a0f528b387f1f04f628ec74856c615d82d44f4d6bc041c33b3814ce13d0a' + '72efa639c5a39c7c14f07cc51731ebbf82299870d9cf31cf3aaa981bc084b4eb') build() { - cd $srcdir/$pkgname-$pkgver - patch -Np1 < $srcdir/fix-type-punning-issues.patch + cd "$srcdir/$pkgname-$pkgver" ./configure --prefix=/usr make } package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install install -D -m 755 scripts/memcached-tool $pkgdir/usr/bin/memcached-tool - install -D -m 644 $srcdir/$pkgname.conf $pkgdir/etc/conf.d/$pkgname - install -D -m 755 $srcdir/$pkgname.sh $pkgdir/etc/rc.d/$pkgname + install -D -m 644 "$srcdir/memcached.conf" $pkgdir/etc/conf.d/memcached + install -D -m 755 "$srcdir/memcached.sh" $pkgdir/etc/rc.d/memcached } - -md5sums=('583441a25f937360624024f2881e5ea8' - 'bf15619930dadf0c08669566e4aa809c' - '65f88b69cf3112b178725af121327765' - 'c4f6da682cb4e7599fede4904021f4ae') diff --git a/extra/memcached/fix-type-punning-issues.patch b/extra/memcached/fix-type-punning-issues.patch deleted file mode 100644 index 60bb94110..000000000 --- a/extra/memcached/fix-type-punning-issues.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit df15887584f0025e7b188e408dd3c9f638d68518 -Author: Dan McGee <dan@archlinux.org> -Date: Tue Nov 2 18:43:00 2010 -0500 - - Fix type-punning issues exposed with GCC 4.5.1 - - The errors below are due to pointer magic that isn't allowed if following C - strict-aliasing rules: - - memcached.c: In function ‘complete_incr_bin’: - memcached.c:1023:16: error: dereferencing type-punned pointer will break - strict-aliasing rules - memcached.c:1044:13: error: dereferencing type-punned pointer will break - strict-aliasing rules - memcached.c:1061:17: error: dereferencing type-punned pointer will break - strict-aliasing rules - - Fix this by introducing a union type that allows access to the uint64_t - member as necessary, but doesn't add any additional length to the structure. - The size remains the same before and after; the only difference is explict - casts are now refactored into union member accesses and all compilers should - be happy. - - Signed-off-by: Dan McGee <dan@archlinux.org> - -diff --git a/memcached.h b/memcached.h -index 4a7295b..74a6592 100644 ---- a/memcached.h -+++ b/memcached.h -@@ -77,18 +77,22 @@ - #define TAIL_REPAIR_TIME (3 * 3600) - - /* warning: don't use these macros with a function, as it evals its arg twice */ --#define ITEM_get_cas(i) ((uint64_t)(((i)->it_flags & ITEM_CAS) ? \ -- *(uint64_t*)&((i)->end[0]) : 0x0)) --#define ITEM_set_cas(i,v) { if ((i)->it_flags & ITEM_CAS) { \ -- *(uint64_t*)&((i)->end[0]) = v; } } -+#define ITEM_get_cas(i) (((i)->it_flags & ITEM_CAS) ? \ -+ (i)->data->cas : (uint64_t)0) - --#define ITEM_key(item) (((char*)&((item)->end[0])) \ -+#define ITEM_set_cas(i,v) { \ -+ if ((i)->it_flags & ITEM_CAS) { \ -+ (i)->data->cas = v; \ -+ } \ -+} -+ -+#define ITEM_key(item) (((char*)&((item)->data)) \ - + (((item)->it_flags & ITEM_CAS) ? sizeof(uint64_t) : 0)) - --#define ITEM_suffix(item) ((char*) &((item)->end[0]) + (item)->nkey + 1 \ -+#define ITEM_suffix(item) ((char*) &((item)->data) + (item)->nkey + 1 \ - + (((item)->it_flags & ITEM_CAS) ? sizeof(uint64_t) : 0)) - --#define ITEM_data(item) ((char*) &((item)->end[0]) + (item)->nkey + 1 \ -+#define ITEM_data(item) ((char*) &((item)->data) + (item)->nkey + 1 \ - + (item)->nsuffix \ - + (((item)->it_flags & ITEM_CAS) ? sizeof(uint64_t) : 0)) - -@@ -302,7 +306,12 @@ typedef struct _stritem { - uint8_t it_flags; /* ITEM_* above */ - uint8_t slabs_clsid;/* which slab class we're in */ - uint8_t nkey; /* key length, w/terminating null and padding */ -- void * end[]; -+ /* this odd type prevents type-punning issues when we do -+ * the little shuffle to save space when not using CAS. */ -+ union { -+ uint64_t cas; -+ char end; -+ } data[]; - /* if it_flags & ITEM_CAS we have 8 bytes CAS */ - /* then null-terminated key */ - /* then " flags length\r\n" (no terminating null) */ |