This atomic feature is not a gcc4 feature, there are only three archs which provide it.

Pointed out and fix suggestion by Piotr Sikora < piotr.sikora _AT_ frickle.com >, who
also provided an initial port, where the part of the port regarding the atomic was taken from.

OK landry@
This commit is contained in:
sebastia 2010-10-05 08:40:44 +00:00
parent cfc679c579
commit c98fade553
2 changed files with 4 additions and 16 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.1.1.1 2010/10/01 09:32:36 sebastia Exp $
# $OpenBSD: Makefile,v 1.2 2010/10/05 08:40:44 sebastia Exp $
COMMENT= C C++ API for memcached
@ -32,14 +32,11 @@ LIB_DEPENDS= ::security/cyrus-sasl2
REGRESS_DEPENDS= ::misc/memcached
# XXX Build memslap (benchmark tool) only on systems with GCC atomic built-ins.
# which are the GCC4_ARCHS
.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "hppa" || \
${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH:Mmips64*} || \
${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" || \
${MACHINE_ARCH} == "sparc64"
PKG_ARGS+= -Datomic=1
.else
PKG_ARGS+= -Datomic=0
PATCH_LIST= patch-* no-atomic-*
pre-configure:
@perl -pi -e 's|am__append_14 |#am__append_14 |g' ${WRKSRC}/Makefile.in
@perl -pi -e 's|am__EXEEXT_1 |#am__EXEEXT_1 |g' ${WRKSRC}/Makefile.in

View File

@ -1,4 +1,4 @@
$OpenBSD: no-atomic-patch-Makefile_in,v 1.1.1.1 2010/10/01 09:32:36 sebastia Exp $
$OpenBSD: patch-Makefile_in,v 1.1 2010/10/05 08:40:44 sebastia Exp $
link against libsasl2
this patch prevents building memslap on gcc4 archs
@ -22,12 +22,3 @@ this patch prevents building memslap on gcc4 archs
@BUILD_WIN32_WRAPPERS_FALSE@@HAVE_LIBEVENT_TRUE@am__append_15 = clients/memslap
@BUILD_BYTEORDER_TRUE@am__append_16 = libmemcached/libbyteorder.la
@INCLUDE_HSIEH_SRC_TRUE@am__append_17 = libhashkit/hsieh.c
@@ -389,7 +389,7 @@ tests_libserver_la_OBJECTS = $(am_tests_libserver_la_O
tests_libtest_la_LIBADD =
am_tests_libtest_la_OBJECTS = tests/test.lo
tests_libtest_la_OBJECTS = $(am_tests_libtest_la_OBJECTS)
-@BUILD_WIN32_WRAPPERS_FALSE@@HAVE_LIBEVENT_TRUE@am__EXEEXT_1 = clients/memslap$(EXEEXT)
+@BUILD_WIN32_WRAPPERS_FALSE@@HAVE_LIBEVENT_TRUE@#am__EXEEXT_1 = clients/memslap$(EXEEXT)
@HAVE_LIBGTEST_TRUE@am__EXEEXT_2 = unittests/unittests$(EXEEXT)
@HAVE_LIBEVENT_TRUE@am__EXEEXT_3 = example/memcached_light$(EXEEXT)
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)