summaryrefslogtreecommitdiffabout
path: root/configure.ac
authorMichael Krelin <hacker@klever.net>2007-12-27 00:08:36 (UTC)
committer Michael Krelin <hacker@klever.net>2008-01-04 18:17:46 (UTC)
commited6883769a03b36402c2c78b1dcee0c7efeb70bc (patch) (side-by-side diff)
treeec96f9c7feeb02d2822ec9872b937b54ab82fb8a /configure.ac
parente63de16a9885641b5070ec834225cb562bc2042f (diff)
downloadlibopkele-ed6883769a03b36402c2c78b1dcee0c7efeb70bc.zip
libopkele-ed6883769a03b36402c2c78b1dcee0c7efeb70bc.tar.gz
libopkele-ed6883769a03b36402c2c78b1dcee0c7efeb70bc.tar.bz2
changed auto_ptr to shared_ptr
Signed-off-by: Michael Krelin <hacker@klever.net>
Diffstat (limited to 'configure.ac') (more/less context) (ignore whitespace changes)
-rw-r--r--configure.ac32
1 files changed, 32 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 1bd1873..c4e9a74 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,6 +26,37 @@ AC_MSG_RESULT([$PACKAGE_SRC_VERSION])
AC_SUBST([PACKAGE_SRC_VERSION])
AC_DEFINE_UNQUOTED([PACKAGE_SRC_VERSION],["$PACKAGE_SRC_VERSION"],[more or less precise source tree version])
+tr1_mem_std="false"
+tr1_mem_boost="false"
+AC_CHECK_SHAREDPTR(std::tr1,tr1/memory,[ tr1_mem_std=true ])
+AC_CHECK_SHAREDPTR(boost,boost/shared_ptr.hpp,[ tr1_mem_boost=true ])
+tr1_mem=""
+AC_ARG_WITH([tr1-memory],
+ AC_HELP_STRING([--with-tr1-memory=<boost|std>],[select tr1/memory (shared_ptr<>) implementation to use]),
+ [ tr1_mem="$withval" ]
+)
+AC_MSG_CHECKING([for tr1/memory implementation to use])
+test -z "$tr1_mem" && $tr1_mem_std && tr1_mem=std
+test -z "$tr1_mem" && $tr1_mem_boost && tr1_mem=boost
+test -z "$tr1_mem" && AC_MSG_RESULT([none found]) || AC_MSG_RESULT([$tr1_mem])
+case "$tr1_mem" in
+ std)
+ $tr1_mem_std || AC_MSG_ERROR([std implementation requested, but not found])
+ OPKELE_TR1_MEM_NS=std::tr1
+ OPKELE_TR1_MEM_HEADER=tr1/memory
+ ;;
+ boost)
+ $tr1_mem_boost || AC_MSG_ERROR([boost implementation requested, but not found])
+ OPKELE_TR1_MEM_NS=boost
+ OPKELE_TR1_MEM_HEADER=boost/shared_ptr.hpp
+ ;;
+ *)
+ AC_MSG_ERROR([no shared_ptr<> implementation found])
+ ;;
+esac
+AC_SUBST([OPKELE_TR1_MEM_NS])
+AC_SUBST([OPKELE_TR1_MEM_HEADER])
+
PKG_CHECK_MODULES([OPENSSL],[openssl],,[
AC_MSG_ERROR([no openssl library found. get one from http://www.openssl.org/])
])
@@ -144,6 +175,7 @@ AC_CONFIG_FILES([
libopkele.pc
Doxyfile
include/Makefile
+ include/opkele/tr1-mem.h
lib/Makefile
test/Makefile
])