vinted-memcached 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. checksums.yaml +7 -0
  2. data/BENCHMARKS +142 -0
  3. data/CHANGELOG +176 -0
  4. data/Gemfile +11 -0
  5. data/Gemfile.lock +45 -0
  6. data/LICENSE +184 -0
  7. data/Manifest +209 -0
  8. data/README.rdoc +124 -0
  9. data/Rakefile +134 -0
  10. data/TODO +1 -0
  11. data/ext/extconf-make.rb +25 -0
  12. data/ext/extconf.rb +78 -0
  13. data/ext/libmemcached-0.32/AUTHORS +7 -0
  14. data/ext/libmemcached-0.32/COPYING +32 -0
  15. data/ext/libmemcached-0.32/ChangeLog +303 -0
  16. data/ext/libmemcached-0.32/INSTALL +302 -0
  17. data/ext/libmemcached-0.32/Makefile.am +36 -0
  18. data/ext/libmemcached-0.32/Makefile.in +911 -0
  19. data/ext/libmemcached-0.32/NEWS +1 -0
  20. data/ext/libmemcached-0.32/README +33 -0
  21. data/ext/libmemcached-0.32/THANKS +14 -0
  22. data/ext/libmemcached-0.32/TODO +11 -0
  23. data/ext/libmemcached-0.32/aclocal.m4 +2108 -0
  24. data/ext/libmemcached-0.32/clients/Makefile.am +80 -0
  25. data/ext/libmemcached-0.32/clients/Makefile.in +773 -0
  26. data/ext/libmemcached-0.32/clients/client_options.h +32 -0
  27. data/ext/libmemcached-0.32/clients/execute.c +64 -0
  28. data/ext/libmemcached-0.32/clients/execute.h +5 -0
  29. data/ext/libmemcached-0.32/clients/generator.c +74 -0
  30. data/ext/libmemcached-0.32/clients/generator.h +20 -0
  31. data/ext/libmemcached-0.32/clients/memcat.c +178 -0
  32. data/ext/libmemcached-0.32/clients/memcp.c +251 -0
  33. data/ext/libmemcached-0.32/clients/memdump.c +170 -0
  34. data/ext/libmemcached-0.32/clients/memerror.c +80 -0
  35. data/ext/libmemcached-0.32/clients/memflush.c +143 -0
  36. data/ext/libmemcached-0.32/clients/memrm.c +160 -0
  37. data/ext/libmemcached-0.32/clients/memslap.c +441 -0
  38. data/ext/libmemcached-0.32/clients/memstat.c +326 -0
  39. data/ext/libmemcached-0.32/clients/utilities.c +207 -0
  40. data/ext/libmemcached-0.32/clients/utilities.h +41 -0
  41. data/ext/libmemcached-0.32/config/compile +143 -0
  42. data/ext/libmemcached-0.32/config/config.guess +1561 -0
  43. data/ext/libmemcached-0.32/config/config.rpath +666 -0
  44. data/ext/libmemcached-0.32/config/config.sub +1686 -0
  45. data/ext/libmemcached-0.32/config/depcomp +630 -0
  46. data/ext/libmemcached-0.32/config/install-sh +520 -0
  47. data/ext/libmemcached-0.32/config/ltmain.sh +9636 -0
  48. data/ext/libmemcached-0.32/config/missing +376 -0
  49. data/ext/libmemcached-0.32/config.h.in +254 -0
  50. data/ext/libmemcached-0.32/configure +23843 -0
  51. data/ext/libmemcached-0.32/configure.ac +120 -0
  52. data/ext/libmemcached-0.32/libmemcached/Makefile.am +111 -0
  53. data/ext/libmemcached-0.32/libmemcached/Makefile.in +1069 -0
  54. data/ext/libmemcached-0.32/libmemcached/byteorder.c +31 -0
  55. data/ext/libmemcached-0.32/libmemcached/common.h +189 -0
  56. data/ext/libmemcached-0.32/libmemcached/crc.c +86 -0
  57. data/ext/libmemcached-0.32/libmemcached/hsieh_hash.c +68 -0
  58. data/ext/libmemcached-0.32/libmemcached/jenkins_hash.c +213 -0
  59. data/ext/libmemcached-0.32/libmemcached/libmemcached.ver +1 -0
  60. data/ext/libmemcached-0.32/libmemcached/libmemcached_probes.d +30 -0
  61. data/ext/libmemcached-0.32/libmemcached/libmemcached_probes.h +82 -0
  62. data/ext/libmemcached-0.32/libmemcached/md5.c +354 -0
  63. data/ext/libmemcached-0.32/libmemcached/memcached/README.txt +7 -0
  64. data/ext/libmemcached-0.32/libmemcached/memcached/protocol_binary.h +385 -0
  65. data/ext/libmemcached-0.32/libmemcached/memcached.c +153 -0
  66. data/ext/libmemcached-0.32/libmemcached/memcached.h +305 -0
  67. data/ext/libmemcached-0.32/libmemcached/memcached.hpp +799 -0
  68. data/ext/libmemcached-0.32/libmemcached/memcached_allocators.c +72 -0
  69. data/ext/libmemcached-0.32/libmemcached/memcached_analyze.c +100 -0
  70. data/ext/libmemcached-0.32/libmemcached/memcached_auto.c +207 -0
  71. data/ext/libmemcached-0.32/libmemcached/memcached_behavior.c +290 -0
  72. data/ext/libmemcached-0.32/libmemcached/memcached_callback.c +175 -0
  73. data/ext/libmemcached-0.32/libmemcached/memcached_configure.h.in +23 -0
  74. data/ext/libmemcached-0.32/libmemcached/memcached_connect.c +371 -0
  75. data/ext/libmemcached-0.32/libmemcached/memcached_constants.h +146 -0
  76. data/ext/libmemcached-0.32/libmemcached/memcached_delete.c +0 -0
  77. data/ext/libmemcached-0.32/libmemcached/memcached_do.c +72 -0
  78. data/ext/libmemcached-0.32/libmemcached/memcached_dump.c +79 -0
  79. data/ext/libmemcached-0.32/libmemcached/memcached_exist.c +114 -0
  80. data/ext/libmemcached-0.32/libmemcached/memcached_exist.h +20 -0
  81. data/ext/libmemcached-0.32/libmemcached/memcached_fetch.c +102 -0
  82. data/ext/libmemcached-0.32/libmemcached/memcached_flush.c +89 -0
  83. data/ext/libmemcached-0.32/libmemcached/memcached_flush_buffers.c +23 -0
  84. data/ext/libmemcached-0.32/libmemcached/memcached_get.c +494 -0
  85. data/ext/libmemcached-0.32/libmemcached/memcached_get.h +87 -0
  86. data/ext/libmemcached-0.32/libmemcached/memcached_hash.c +252 -0
  87. data/ext/libmemcached-0.32/libmemcached/memcached_hosts.c +510 -0
  88. data/ext/libmemcached-0.32/libmemcached/memcached_internal.h +31 -0
  89. data/ext/libmemcached-0.32/libmemcached/memcached_io.c +594 -0
  90. data/ext/libmemcached-0.32/libmemcached/memcached_io.h +72 -0
  91. data/ext/libmemcached-0.32/libmemcached/memcached_key.c +28 -0
  92. data/ext/libmemcached-0.32/libmemcached/memcached_parse.c +74 -0
  93. data/ext/libmemcached-0.32/libmemcached/memcached_pool.h +38 -0
  94. data/ext/libmemcached-0.32/libmemcached/memcached_purge.c +76 -0
  95. data/ext/libmemcached-0.32/libmemcached/memcached_quit.c +75 -0
  96. data/ext/libmemcached-0.32/libmemcached/memcached_response.c +529 -0
  97. data/ext/libmemcached-0.32/libmemcached/memcached_result.c +57 -0
  98. data/ext/libmemcached-0.32/libmemcached/memcached_result.h +59 -0
  99. data/ext/libmemcached-0.32/libmemcached/memcached_sasl.c +225 -0
  100. data/ext/libmemcached-0.32/libmemcached/memcached_sasl.h +44 -0
  101. data/ext/libmemcached-0.32/libmemcached/memcached_server.c +159 -0
  102. data/ext/libmemcached-0.32/libmemcached/memcached_server.h +93 -0
  103. data/ext/libmemcached-0.32/libmemcached/memcached_stats.c +437 -0
  104. data/ext/libmemcached-0.32/libmemcached/memcached_storage.c +514 -0
  105. data/ext/libmemcached-0.32/libmemcached/memcached_storage.h +107 -0
  106. data/ext/libmemcached-0.32/libmemcached/memcached_strerror.c +92 -0
  107. data/ext/libmemcached-0.32/libmemcached/memcached_string.c +138 -0
  108. data/ext/libmemcached-0.32/libmemcached/memcached_string.h +53 -0
  109. data/ext/libmemcached-0.32/libmemcached/memcached_touch.c +60 -0
  110. data/ext/libmemcached-0.32/libmemcached/memcached_touch.h +31 -0
  111. data/ext/libmemcached-0.32/libmemcached/memcached_types.h +44 -0
  112. data/ext/libmemcached-0.32/libmemcached/memcached_util.h +15 -0
  113. data/ext/libmemcached-0.32/libmemcached/memcached_verbosity.c +36 -0
  114. data/ext/libmemcached-0.32/libmemcached/memcached_version.c +112 -0
  115. data/ext/libmemcached-0.32/libmemcached/memcached_watchpoint.h +38 -0
  116. data/ext/libmemcached-0.32/libmemcached/murmur_hash.c +76 -0
  117. data/ext/libmemcached-0.32/libmemcached/visibility.h +51 -0
  118. data/ext/libmemcached-0.32/libmemcachedutil/Makefile.am +11 -0
  119. data/ext/libmemcached-0.32/libmemcachedutil/Makefile.in +604 -0
  120. data/ext/libmemcached-0.32/libmemcachedutil/libmemcachedutil.ver +1 -0
  121. data/ext/libmemcached-0.32/libmemcachedutil/memcached_pool.c +170 -0
  122. data/ext/libmemcached-0.32/m4/ac_cxx_compile_stdcxx_0x.m4 +103 -0
  123. data/ext/libmemcached-0.32/m4/ac_cxx_header_stdcxx_98.m4 +67 -0
  124. data/ext/libmemcached-0.32/m4/acx_pthread.m4 +276 -0
  125. data/ext/libmemcached-0.32/m4/byteorder.m4 +40 -0
  126. data/ext/libmemcached-0.32/m4/deprecated.m4 +17 -0
  127. data/ext/libmemcached-0.32/m4/enable_utillib.m4 +16 -0
  128. data/ext/libmemcached-0.32/m4/extensions.m4 +94 -0
  129. data/ext/libmemcached-0.32/m4/hsieh.m4 +18 -0
  130. data/ext/libmemcached-0.32/m4/lib-prefix.m4 +221 -0
  131. data/ext/libmemcached-0.32/m4/libtool.m4 +7831 -0
  132. data/ext/libmemcached-0.32/m4/ltoptions.m4 +369 -0
  133. data/ext/libmemcached-0.32/m4/ltsugar.m4 +123 -0
  134. data/ext/libmemcached-0.32/m4/ltversion.m4 +23 -0
  135. data/ext/libmemcached-0.32/m4/lt~obsolete.m4 +98 -0
  136. data/ext/libmemcached-0.32/m4/memcached.m4 +30 -0
  137. data/ext/libmemcached-0.32/m4/pandora_64bit.m4 +55 -0
  138. data/ext/libmemcached-0.32/m4/pandora_canonical.m4 +151 -0
  139. data/ext/libmemcached-0.32/m4/pandora_check_compiler_version.m4 +37 -0
  140. data/ext/libmemcached-0.32/m4/pandora_check_cxx_standard.m4 +16 -0
  141. data/ext/libmemcached-0.32/m4/pandora_enable_dtrace.m4 +41 -0
  142. data/ext/libmemcached-0.32/m4/pandora_ensure_gcc_version.m4 +36 -0
  143. data/ext/libmemcached-0.32/m4/pandora_have_better_malloc.m4 +54 -0
  144. data/ext/libmemcached-0.32/m4/pandora_have_sasl.m4 +133 -0
  145. data/ext/libmemcached-0.32/m4/pandora_header_assert.m4 +23 -0
  146. data/ext/libmemcached-0.32/m4/pandora_libtool.m4 +15 -0
  147. data/ext/libmemcached-0.32/m4/pandora_optimize.m4 +79 -0
  148. data/ext/libmemcached-0.32/m4/pandora_shared_ptr.m4 +56 -0
  149. data/ext/libmemcached-0.32/m4/pandora_vc_build.m4 +32 -0
  150. data/ext/libmemcached-0.32/m4/pandora_warnings.m4 +262 -0
  151. data/ext/libmemcached-0.32/m4/pod2man.m4 +7 -0
  152. data/ext/libmemcached-0.32/m4/protocol_binary.m4 +23 -0
  153. data/ext/libmemcached-0.32/m4/setsockopt.m4 +57 -0
  154. data/ext/libmemcached-0.32/m4/visibility.m4 +52 -0
  155. data/ext/libmemcached-0.32/support/Makefile.am +4 -0
  156. data/ext/libmemcached-0.32/support/Makefile.in +487 -0
  157. data/ext/libmemcached-0.32/support/libmemcached-fc.spec.in +105 -0
  158. data/ext/libmemcached-0.32/support/libmemcached.pc.in +10 -0
  159. data/ext/libmemcached-0.32/support/libmemcached.spec +105 -0
  160. data/ext/libmemcached-0.32/support/libmemcached.spec.in +105 -0
  161. data/ext/libmemcached-0.32/support/set_benchmark.sh +5 -0
  162. data/ext/libmemcached-0.32/tests/Makefile.am +113 -0
  163. data/ext/libmemcached-0.32/tests/Makefile.in +762 -0
  164. data/ext/libmemcached-0.32/tests/atomsmasher.c +245 -0
  165. data/ext/libmemcached-0.32/tests/function.c +4904 -0
  166. data/ext/libmemcached-0.32/tests/ketama_test_cases.h +108 -0
  167. data/ext/libmemcached-0.32/tests/output.cmp +7 -0
  168. data/ext/libmemcached-0.32/tests/output.res +7 -0
  169. data/ext/libmemcached-0.32/tests/output2.res +46 -0
  170. data/ext/libmemcached-0.32/tests/plus.cpp +293 -0
  171. data/ext/libmemcached-0.32/tests/r/memcat.res +19 -0
  172. data/ext/libmemcached-0.32/tests/r/memcp.res +27 -0
  173. data/ext/libmemcached-0.32/tests/r/memrm.res +19 -0
  174. data/ext/libmemcached-0.32/tests/r/memslap.res +33 -0
  175. data/ext/libmemcached-0.32/tests/r/memstat.res +33 -0
  176. data/ext/libmemcached-0.32/tests/server.c +118 -0
  177. data/ext/libmemcached-0.32/tests/server.h +25 -0
  178. data/ext/libmemcached-0.32/tests/start.c +16 -0
  179. data/ext/libmemcached-0.32/tests/t/memcat.test +4 -0
  180. data/ext/libmemcached-0.32/tests/t/memcp.test +3 -0
  181. data/ext/libmemcached-0.32/tests/t/memrm.test +3 -0
  182. data/ext/libmemcached-0.32/tests/t/memslap.test +5 -0
  183. data/ext/libmemcached-0.32/tests/t/memstat.test +3 -0
  184. data/ext/libmemcached-0.32/tests/test.c +137 -0
  185. data/ext/libmemcached-0.32/tests/test.h +46 -0
  186. data/ext/libmemcached-0.32/tests/udp.c +76 -0
  187. data/ext/rlibmemcached.i +258 -0
  188. data/ext/rlibmemcached_wrap.c +13917 -0
  189. data/lib/memcached/auth.rb +16 -0
  190. data/lib/memcached/behaviors.rb +78 -0
  191. data/lib/memcached/exceptions.rb +84 -0
  192. data/lib/memcached/experimental.rb +48 -0
  193. data/lib/memcached/marshal_codec.rb +10 -0
  194. data/lib/memcached/memcached.rb +732 -0
  195. data/lib/memcached/rails.rb +250 -0
  196. data/lib/memcached.rb +33 -0
  197. data/memcached.gemspec +0 -0
  198. data/test/profile/benchmark.rb +280 -0
  199. data/test/profile/c_profiler.rb +14 -0
  200. data/test/profile/exercise.rb +185 -0
  201. data/test/profile/rb_profiler.rb +21 -0
  202. data/test/profile/valgrind.rb +10 -0
  203. data/test/setup.rb +30 -0
  204. data/test/teardown.rb +0 -0
  205. data/test/test_helper.rb +18 -0
  206. data/test/unit/binding_test.rb +8 -0
  207. data/test/unit/memcached_experimental_test.rb +272 -0
  208. data/test/unit/memcached_test.rb +1487 -0
  209. data/test/unit/rails_test.rb +330 -0
  210. metadata +336 -0
@@ -0,0 +1,151 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ dnl Which version of the canonical setup we're using
7
+ AC_DEFUN([PANDORA_CANONICAL_VERSION],[0.22])
8
+
9
+ AC_DEFUN([PANDORA_FORCE_DEPEND_TRACKING],[
10
+ dnl Force dependency tracking on for Sun Studio builds
11
+ AS_IF([test "x${enable_dependency_tracking}" = "x"],[
12
+ enable_dependency_tracking=yes
13
+ ])
14
+ ])
15
+
16
+ dnl The standard setup for how we build Pandora projects
17
+ AC_DEFUN([PANDORA_CANONICAL_TARGET],[
18
+ AC_REQUIRE([PANDORA_FORCE_DEPEND_TRACKING])
19
+ ifdef([m4_define],,[define([m4_define], defn([define]))])
20
+ ifdef([m4_undefine],,[define([m4_undefine], defn([undefine]))])
21
+ m4_define([PCT_ALL_ARGS],[$*])
22
+ m4_define([PCT_USE_GNULIB],[no])
23
+ m4_define([PCT_REQUIRE_CXX],[no])
24
+ m4_define([PCT_IGNORE_SHARED_PTR],[no])
25
+ m4_define([PCT_FORCE_GCC42],[no])
26
+ m4_foreach([pct_arg],[$*],[
27
+ m4_case(pct_arg,
28
+ [use-gnulib], [
29
+ m4_undefine([PCT_USE_GNULIB])
30
+ m4_define([PCT_USE_GNULIB],[yes])
31
+ ],
32
+ [require-cxx], [
33
+ m4_undefine([PCT_REQUIRE_CXX])
34
+ m4_define([PCT_REQUIRE_CXX],[yes])
35
+ ],
36
+ [ignore-shared-ptr], [
37
+ m4_undefine([PCT_IGNORE_SHARED_PTR])
38
+ m4_define([PCT_IGNORE_SHARED_PTR],[yes])
39
+ ],
40
+ [force-gcc42], [
41
+ m4_undefine([PCT_FORCE_GCC42])
42
+ m4_define([PCT_FORCE_GCC42],[yes])
43
+ ])
44
+ ])
45
+
46
+ # We need to prevent canonical target
47
+ # from injecting -O2 into CFLAGS - but we won't modify anything if we have
48
+ # set CFLAGS on the command line, since that should take ultimate precedence
49
+ AS_IF([test "x${ac_cv_env_CFLAGS_set}" = "x"],
50
+ [CFLAGS=""])
51
+ AS_IF([test "x${ac_cv_env_CXXFLAGS_set}" = "x"],
52
+ [CXXFLAGS=""])
53
+
54
+ AC_CANONICAL_TARGET
55
+
56
+ AM_INIT_AUTOMAKE(-Wall -Werror nostdinc subdir-objects)
57
+
58
+ m4_if(PCT_USE_GNULIB,yes,[ gl_EARLY ])
59
+
60
+ AC_REQUIRE([AC_PROG_CC])
61
+ AC_REQUIRE([PANDORA_MAC_GCC42])
62
+ AC_REQUIRE([PANDORA_64BIT])
63
+
64
+ dnl Once we can use a modern autoconf, we can use this
65
+ dnl AC_PROG_CC_C99
66
+ AC_PROG_CXX
67
+ AC_PROG_CPP
68
+ AM_PROG_CC_C_O
69
+
70
+
71
+ gl_USE_SYSTEM_EXTENSIONS
72
+ m4_if(PCT_FORCE_GCC42, [yes], [
73
+ AS_IF([test "$GCC" = "yes"], PANDORA_ENSURE_GCC_VERSION)
74
+ ])
75
+
76
+ AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
77
+ AC_CHECK_DECL([__ICC], [INTELCC="yes"], [INTELCC="no"])
78
+ AS_IF([test "x$INTELCC" = "xyes"], [enable_rpath=no])
79
+
80
+ PANDORA_LIBTOOL
81
+
82
+ dnl autoconf doesn't automatically provide a fail-if-no-C++ macro
83
+ dnl so we check c++98 features and fail if we don't have them, mainly
84
+ dnl for that reason
85
+ PANDORA_CHECK_CXX_STANDARD
86
+ m4_if(PCT_REQUIRE_CXX, [yes], [
87
+ AS_IF([test "$ac_cv_cxx_stdcxx_98" = "no"],[
88
+ AC_MSG_ERROR([No working C++ Compiler has been found. ${PACKAGE} requires a C++ compiler that can handle C++98])
89
+ ])
90
+ ])
91
+
92
+ PANDORA_SHARED_PTR
93
+ m4_if(PCT_IGNORE_SHARED_PTR, [no], [
94
+ AS_IF([test "$ac_cv_shared_ptr_namespace" = "missing"],[
95
+ AC_MSG_WARN([a usable shared_ptr implementation was not found. Let someone know what your platform is.])
96
+ ])
97
+ ])
98
+
99
+ m4_if(PCT_USE_GNULIB, [yes], [gl_INIT])
100
+
101
+ AC_C_BIGENDIAN
102
+ AC_C_CONST
103
+ AC_C_INLINE
104
+ AC_C_VOLATILE
105
+ AC_C_RESTRICT
106
+
107
+ AC_HEADER_TIME
108
+ AC_TYPE_SIZE_T
109
+ AC_SYS_LARGEFILE
110
+
111
+
112
+ PANDORA_CHECK_C_VERSION
113
+ PANDORA_CHECK_CXX_VERSION
114
+
115
+ PANDORA_OPTIMIZE
116
+
117
+ dnl We need to inject error into the cflags to test if visibility works or not
118
+ save_CFLAGS="${CFLAGS}"
119
+ CFLAGS="${CFLAGS} -Werror"
120
+ gl_VISIBILITY
121
+ CFLAGS="${save_CFLAGS}"
122
+
123
+ PANDORA_HEADER_ASSERT
124
+
125
+ PANDORA_WARNINGS(PCT_ALL_ARGS)
126
+
127
+ PANDORA_ENABLE_DTRACE
128
+
129
+ AC_LIB_PREFIX
130
+ PANDORA_HAVE_BETTER_MALLOC
131
+
132
+ AC_CHECK_PROGS([DOXYGEN], [doxygen])
133
+ AC_CHECK_PROGS([PERL], [perl])
134
+
135
+ AS_IF([test "x${gl_LIBOBJS}" != "x"],[
136
+ AS_IF([test "$GCC" = "yes"],[
137
+ AM_CPPFLAGS="-isystem \$(top_srcdir)/gnulib -isystem \$(top_builddir)/gnulib ${AM_CPPFLAGS}"
138
+ ],[
139
+ AM_CPPFLAGS="-I\$(top_srcdir)/gnulib -I\$(top_builddir)/gnulib ${AM_CPPFLAGS}"
140
+ ])
141
+ ])
142
+
143
+ AM_CPPFLAGS="-I\${top_srcdir} -I\${top_builddir} ${AM_CPPFLAGS}"
144
+ AM_CFLAGS="${AM_CFLAGS} ${CC_WARNINGS} ${CC_PROFILING} ${CC_COVERAGE}"
145
+ AM_CXXFLAGS="${AM_CXXFLAGS} ${CXX_WARNINGS} ${CC_PROFILING} ${CC_COVERAGE}"
146
+
147
+ AC_SUBST([AM_CFLAGS])
148
+ AC_SUBST([AM_CXXFLAGS])
149
+ AC_SUBST([AM_CPPFLAGS])
150
+
151
+ ])
@@ -0,0 +1,37 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+
7
+ AC_DEFUN([PANDORA_CHECK_C_VERSION],[
8
+
9
+ dnl Print version of C compiler
10
+ AC_MSG_CHECKING("C Compiler version--$GCC")
11
+ AS_IF([test "$GCC" = "yes"],[
12
+ CC_VERSION=`$CC --version | sed 1q`
13
+ ],[AS_IF([test "$SUNCC" = "yes"],[
14
+ CC_VERSION=`$CC -V 2>&1 | sed 1q`
15
+ ],[
16
+ CC_VERSION=""
17
+ ])
18
+ ])
19
+ AC_MSG_RESULT("$CC_VERSION")
20
+ AC_SUBST(CC_VERSION)
21
+ ])
22
+
23
+
24
+ AC_DEFUN([PANDORA_CHECK_CXX_VERSION], [
25
+ dnl Print version of CXX compiler
26
+ AC_MSG_CHECKING("C++ Compiler version")
27
+ AS_IF([test "$GCC" = "yes"],[
28
+ CXX_VERSION=`$CXX --version | sed 1q`
29
+ ],[AS_IF([test "$SUNCC" = "yes"],[
30
+ CXX_VERSION=`$CXX -V 2>&1 | sed 1q`
31
+ ],[
32
+ CXX_VERSION=""
33
+ ])
34
+ ])
35
+ AC_MSG_RESULT("$CXX_VERSION")
36
+ AC_SUBST(CXX_VERSION)
37
+ ])
@@ -0,0 +1,16 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([PANDORA_CHECK_CXX_STANDARD],[
7
+ AC_REQUIRE([AC_CXX_COMPILE_STDCXX_0X])
8
+ AS_IF([test "$GCC" = "yes"],
9
+ [AS_IF([test "$ac_cv_cxx_compile_cxx0x_native" = "yes"],[],
10
+ [AS_IF([test "$ac_cv_cxx_compile_cxx0x_gxx" = "yes"],
11
+ [CXXFLAGS="-std=gnu++0x ${CXXFLAGS}"],
12
+ [CXXFLAGS="-std=gnu++98"])
13
+ ])
14
+ ])
15
+ AC_CXX_HEADER_STDCXX_98
16
+ ])
@@ -0,0 +1,41 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ dnl ---------------------------------------------------------------------------
7
+ dnl Macro: PANDORA_ENABLE_DTRACE
8
+ dnl ---------------------------------------------------------------------------
9
+ AC_DEFUN([PANDORA_ENABLE_DTRACE],[
10
+ AC_ARG_ENABLE([dtrace],
11
+ [AS_HELP_STRING([--enable-dtrace],
12
+ [Build with support for the DTRACE. @<:@default=off@:>@])],
13
+ [ac_cv_enable_dtrace="yes"],
14
+ [ac_cv_enable_dtrace="no"])
15
+
16
+ AS_IF([test "$ac_cv_enable_dtrace" = "yes"],[
17
+ AC_CHECK_PROGS([DTRACE], [dtrace])
18
+ AS_IF([test "x$ac_cv_prog_DTRACE" = "xdtrace"],[
19
+ AC_DEFINE([HAVE_DTRACE], [1], [Enables DTRACE Support])
20
+ dnl DTrace on MacOSX does not use -G option
21
+ cat >conftest.d <<_ACEOF
22
+ provider Example {
23
+ probe increment(int);
24
+ };
25
+ _ACEOF
26
+ $DTRACE -G -o conftest.d.o -s conftest.d 2>/dev/zero
27
+ AS_IF([test $? -eq 0],[ac_cv_dtrace_needs_objects=yes])
28
+ rm -f conftest.d.o conftest.d
29
+
30
+ AC_SUBST(DTRACEFLAGS) dnl TODO: test for -G on OSX
31
+ ac_cv_have_dtrace=yes
32
+ ])])
33
+
34
+ AM_CONDITIONAL([HAVE_DTRACE], [test "x$ac_cv_have_dtrace" = "xyes"])
35
+ AM_CONDITIONAL([DTRACE_NEEDS_OBJECTS],
36
+ [test "x$ac_cv_dtrace_needs_objects" = "xyes"])
37
+
38
+ ])
39
+ dnl ---------------------------------------------------------------------------
40
+ dnl End Macro: PANDORA_ENABLE_DTRACE
41
+ dnl ---------------------------------------------------------------------------
@@ -0,0 +1,36 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ dnl If the user is on a Mac and didn't ask for a specific compiler
7
+ dnl You're gonna get 4.2.
8
+ AC_DEFUN([PANDORA_MAC_GCC42],
9
+ [AS_IF([test "$GCC" = "yes"],[
10
+ AS_IF([test "$host_vendor" = "apple" -a "x${ac_cv_env_CC_set}" = "x"],[
11
+ AS_IF([test -f /usr/bin/gcc-4.2],
12
+ [
13
+ CPP="/usr/bin/gcc-4.2 -E"
14
+ CC=/usr/bin/gcc-4.2
15
+ CXX=/usr/bin/g++-4.2
16
+ ])
17
+ ])
18
+ ])
19
+ ])
20
+
21
+ dnl
22
+ AC_DEFUN([PANDORA_ENSURE_GCC_VERSION],[
23
+ AC_REQUIRE([PANDORA_MAC_GCC42])
24
+ AC_CACHE_CHECK([if GCC is recent enough], [ac_cv_gcc_recent],
25
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
26
+ #if !defined(__GNUC__) || (__GNUC__ < 4) || ((__GNUC__ >= 4) && (__GNUC_MINOR__ < 1))
27
+ # error GCC is Too Old!
28
+ #endif
29
+ ]])],
30
+ [ac_cv_gcc_recent=yes],
31
+ [ac_cv_gcc_recent=no])])
32
+ AS_IF([test "$ac_cv_gcc_recent" = "no" -a "$host_vendor" = "apple"],
33
+ AC_MSG_ERROR([Your version of GCC is too old. At least version 4.2 is required on OSX. You may need to install a version of XCode >= 3.1.2]))
34
+ AS_IF([test "$ac_cv_gcc_recent" = "no"],
35
+ AC_MSG_ERROR([Your version of GCC is too old. At least version 4.1 is required]))
36
+ ])
@@ -0,0 +1,54 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([PANDORA_HAVE_BETTER_MALLOC],[
7
+ AC_REQUIRE([AC_FUNC_MALLOC])
8
+ AC_REQUIRE([AC_FUNC_REALLOC])
9
+ AC_REQUIRE([AC_LIB_PREFIX])
10
+
11
+ AC_ARG_ENABLE([umem],
12
+ [AS_HELP_STRING([--enable-umem],
13
+ [Enable linking with libumem @<:@default=off@:>@])],
14
+ [ac_enable_umem="$enableval"],
15
+ [ac_enable_umem="no"])
16
+
17
+ AC_ARG_ENABLE([tcmalloc],
18
+ [AS_HELP_STRING([--enable-tcmalloc],
19
+ [Enable linking with tcmalloc @<:@default=off@:>@])],
20
+ [ac_enable_tcmalloc="$enableval"],
21
+ [ac_enable_tcmalloc="no"])
22
+
23
+ AC_ARG_ENABLE([mtmalloc],
24
+ [AS_HELP_STRING([--disable-mtmalloc],
25
+ [Enable linking with mtmalloc @<:@default=on@:>@])],
26
+ [ac_enable_mtmalloc="$enableval"],
27
+ [ac_enable_mtmalloc="yes"])
28
+
29
+ save_LIBS="${LIBS}"
30
+ LIBS=
31
+ AS_IF([test "x$ac_enable_umem" = "xyes"],[
32
+ AC_CHECK_LIB(umem,malloc,[],[])
33
+ ],[
34
+ case "$target_os" in
35
+ *linux*)
36
+ AS_IF([test "x$ac_enable_tcmalloc" != "xno"],[
37
+ AC_CHECK_LIB(tcmalloc-minimal,malloc,[],[])
38
+ AS_IF([test "x$ac_cv_lib_tcmalloc_minimal_malloc" != "xyes"],[
39
+ AC_CHECK_LIB(tcmalloc,malloc,[],[])
40
+ ])
41
+ ])
42
+ ;;
43
+ *solaris*)
44
+ AS_IF([test "x$ac_enable_mtmalloc" != "xno"],[
45
+ AC_CHECK_LIB(mtmalloc,malloc,[],[])
46
+ ])
47
+ ;;
48
+ esac
49
+ ])
50
+ BETTER_MALLOC_LIBS="${LIBS}"
51
+ LIBS="${save_LIBS}"
52
+ AC_SUBST([BETTER_MALLOC_LIBS])
53
+
54
+ ])
@@ -0,0 +1,133 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([_PANDORA_SEARCH_SASL],[
7
+ AC_REQUIRE([AC_LIB_PREFIX])
8
+
9
+ dnl --------------------------------------------------------------------
10
+ dnl Check for sasl
11
+ dnl --------------------------------------------------------------------
12
+ AC_ARG_ENABLE([sasl],
13
+ [AS_HELP_STRING([--disable-sasl],
14
+ [Build with sasl support @<:@default=on@:>@])],
15
+ [ac_enable_sasl="$enableval"],
16
+ [ac_enable_sasl="yes"])
17
+
18
+ AS_IF([test "x$ac_enable_sasl" = "xyes"],
19
+ [
20
+ AC_LIB_HAVE_LINKFLAGS(sasl,,[
21
+ #include <stdlib.h>
22
+ #include <sasl/sasl.h>
23
+ ],[
24
+ sasl_server_init(NULL, NULL);
25
+ ])
26
+
27
+ AS_IF([test "x${ac_cv_libsasl}" != "xyes" ],
28
+ [
29
+ AC_LIB_HAVE_LINKFLAGS(sasl2,,[
30
+ #include <stdlib.h>
31
+ #include <sasl/sasl.h>
32
+ ],[
33
+ sasl_server_init(NULL, NULL);
34
+ ])
35
+ HAVE_LIBSASL="$HAVE_LIBSASL2"
36
+ LIBSASL="$LIBSASL2"
37
+ LIBSASL_PREFIX="$LIBSASL2_PREFIX"
38
+ LTLIBSASL="$LTLIBSASL2"
39
+ ])
40
+ ])
41
+
42
+ AS_IF([test "x${ac_cv_libsasl}" = "xyes" -o "x${ac_cv_libsasl2}" = "xyes"],
43
+ [ac_cv_sasl=yes],
44
+ [ac_cv_sasl=no])
45
+
46
+ AM_CONDITIONAL(HAVE_LIBSASL, [test "x${ac_cv_libsasl}" = "xyes"])
47
+ AM_CONDITIONAL(HAVE_LIBSASL2, [test "x${ac_cv_libsasl2}" = "xyes"])
48
+ AM_CONDITIONAL(HAVE_SASL, [test "x${ac_cv_sasl}" = "xyes"])
49
+ ])
50
+
51
+ AC_DEFUN([PANDORA_HAVE_SASL],[
52
+ AC_REQUIRE([_PANDORA_SEARCH_SASL])
53
+ ])
54
+
55
+ AC_DEFUN([PANDORA_REQUIRE_SASL],[
56
+ AC_REQUIRE([_PANDORA_SEARCH_SASL])
57
+ AS_IF([test "x${ac_cv_sasl}" = "xno"],
58
+ AC_MSG_ERROR([SASL (libsasl or libsasl2) is required for ${PACKAGE}]))
59
+ ])
60
+
61
+ AC_DEFUN([_PANDORA_SEARCH_LIBSASL],[
62
+ AC_REQUIRE([AC_LIB_PREFIX])
63
+
64
+ dnl --------------------------------------------------------------------
65
+ dnl Check for libsasl
66
+ dnl --------------------------------------------------------------------
67
+
68
+ AC_ARG_ENABLE([libsasl],
69
+ [AS_HELP_STRING([--disable-libsasl],
70
+ [Build with libsasl support @<:@default=on@:>@])],
71
+ [ac_enable_libsasl="$enableval"],
72
+ [ac_enable_libsasl="yes"])
73
+
74
+ AS_IF([test "x$ac_enable_libsasl" = "xyes"],[
75
+ AC_LIB_HAVE_LINKFLAGS(sasl,,[
76
+ #include <stdlib.h>
77
+ #include <sasl/sasl.h>
78
+ ],[
79
+ sasl_server_init(NULL, NULL);
80
+ ])
81
+ ],[
82
+ ac_cv_libsasl="no"
83
+ ])
84
+
85
+ AM_CONDITIONAL(HAVE_LIBSASL, [test "x${ac_cv_libsasl}" = "xyes"])
86
+ ])
87
+
88
+ AC_DEFUN([PANDORA_HAVE_LIBSASL],[
89
+ AC_REQUIRE([_PANDORA_SEARCH_LIBSASL])
90
+ ])
91
+
92
+ AC_DEFUN([PANDORA_REQUIRE_LIBSASL],[
93
+ AC_REQUIRE([_PANDORA_SEARCH_LIBSASL])
94
+ AS_IF([test "x${ac_cv_libsasl}" = "xno"],
95
+ AC_MSG_ERROR([libsasl is required for ${PACKAGE}]))
96
+ ])
97
+
98
+ AC_DEFUN([_PANDORA_SEARCH_LIBSASL2],[
99
+ AC_REQUIRE([AC_LIB_PREFIX])
100
+
101
+ dnl --------------------------------------------------------------------
102
+ dnl Check for libsasl2
103
+ dnl --------------------------------------------------------------------
104
+
105
+ AC_ARG_ENABLE([libsasl2],
106
+ [AS_HELP_STRING([--disable-libsasl2],
107
+ [Build with libsasl2 support @<:@default=on@:>@])],
108
+ [ac_enable_libsasl2="$enableval"],
109
+ [ac_enable_libsasl2="yes"])
110
+
111
+ AS_IF([test "x$ac_enable_libsasl2" = "xyes"],[
112
+ AC_LIB_HAVE_LINKFLAGS(sasl2,,[
113
+ #include <stdlib.h>
114
+ #include <sasl2/sasl2.h>
115
+ ],[
116
+ sasl2_server_init(NULL, NULL);
117
+ ])
118
+ ],[
119
+ ac_cv_libsasl2="no"
120
+ ])
121
+
122
+ AM_CONDITIONAL(HAVE_LIBSASL2, [test "x${ac_cv_libsasl2}" = "xyes"])
123
+ ])
124
+
125
+ AC_DEFUN([PANDORA_HAVE_LIBSASL2],[
126
+ AC_REQUIRE([_PANDORA_SEARCH_LIBSASL2])
127
+ ])
128
+
129
+ AC_DEFUN([PANDORA_REQUIRE_LIBSASL2],[
130
+ AC_REQUIRE([_PANDORA_SEARCH_LIBSASL2])
131
+ AS_IF([test "x${ac_cv_libsasl2}" = "xno"],
132
+ AC_MSG_ERROR([libsasl2 is required for ${PACKAGE}]))
133
+ ])
@@ -0,0 +1,23 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ dnl PANDORA_HEADER_ASSERT
7
+ dnl ----------------
8
+ dnl Check whether to enable assertions.
9
+ AC_DEFUN([PANDORA_HEADER_ASSERT],
10
+ [
11
+ AC_MSG_CHECKING([whether to enable assertions])
12
+ AC_ARG_ENABLE([assert],
13
+ [AS_HELP_STRING([--disable-assert],
14
+ [Turn off assertions])],
15
+ [ac_cv_assert="no"],
16
+ [ac_cv_assert="yes"])
17
+ AC_MSG_RESULT([$ac_cv_assert])
18
+
19
+ AS_IF([test "$ac_cv_assert" = "yes"],
20
+ [AC_CHECK_HEADERS(assert.h)],
21
+ [AC_DEFINE(NDEBUG, 1, [Define to 1 if assertions should be disabled.])])
22
+ ])
23
+
@@ -0,0 +1,15 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([PANDORA_LIBTOOL],[
7
+ AC_REQUIRE([AC_PROG_LIBTOOL])
8
+ dnl By requiring AC_PROG_LIBTOOL, we should force the macro system to read
9
+ dnl libtool.m4, where in 2.2 AC_PROG_LIBTOOL is an alias for LT_INIT
10
+ dnl Then, if we're on 2.2, we should have LT_LANG, so we'll call it.
11
+ m4_ifdef([LT_LANG],[
12
+ LT_LANG(C)
13
+ LT_LANG(C++)
14
+ ])
15
+ ])
@@ -0,0 +1,79 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([PANDORA_OPTIMIZE],[
7
+ dnl Build optimized or debug version ?
8
+ dnl First check for gcc and g++
9
+ AS_IF([test "$GCC" = "yes" -a "$INTELCC" = "no"],[
10
+
11
+ dnl The following is required for portable results of floating point
12
+ dnl calculations on PowerPC. The same must also be done for IA-64, but
13
+ dnl this options is missing in the IA-64 gcc backend.
14
+ case "$target_cpu" in
15
+ *ppc* | *powerpc*)
16
+ AM_CFLAGS="-mno-fused-madd ${AM_CFLAGS}"
17
+ AM_CXXFLAGS="-mno-fused-madd ${AM_CXXFLAGS}"
18
+ ;;
19
+ esac
20
+
21
+ dnl Once we can use a modern autoconf, we can replace the std=gnu99 here
22
+ dnl with using AC_CC_STD_C99 above
23
+ CC="${CC} -std=gnu99"
24
+
25
+ AM_CPPFLAGS="-ggdb3 ${AM_CPPFLAGS}"
26
+
27
+ DEBUG_CFLAGS="-O0"
28
+ DEBUG_CXXFLAGS="-O0"
29
+
30
+ OPTIMIZE_CFLAGS="-O3"
31
+ OPTIMIZE_CXXFLAGS="-O3"
32
+ ])
33
+ AS_IF([test "$INTELCC" = "yes"],[
34
+ dnl Once we can use a modern autoconf, we can replace the std=gnu99 here
35
+ dnl with using AC_CC_STD_C99 above
36
+ CC="${CC} -std=c99"
37
+
38
+ AM_CPPFLAGS="-g ${AM_CPPFLAGS}"
39
+
40
+ DEBUG_CFLAGS="-O0"
41
+ DEBUG_CXXFLAGS="-O0"
42
+
43
+ OPTIMIZE_CFLAGS="-xHOST -O3 -no-prec-div -static"
44
+ OPTIMIZE_CXXFLAGS="${OPTIMIZE_CFLAGS}"
45
+
46
+ ])
47
+ AS_IF([test "$SUNCC" = "yes"],[
48
+ dnl Once we can use a modern autoconf, we can replace the -xc99=all here
49
+ dnl with using AC_CC_STD_C99 above
50
+ CC="${CC} -xc99=all"
51
+ CXX="${CXX} -xlang=c99"
52
+
53
+ AM_CFLAGS="-g -mt -xstrconst -Xa ${AM_CFLAGS}"
54
+ AM_CXXFLAGS="-mt -compat=5 -library=stlport4 -template=no%extdef ${AM_CXXFLAGS}"
55
+
56
+ DEBUG_CXXFLAGS="-g"
57
+
58
+ dnl TODO: Make a test for -xO4 usability here
59
+ OPTIMIZE_FLAGS="-xO3 -xlibmil -xdepend -xbuiltin"
60
+ OPTIMIZE_CFLAGS="${OPTIMIZE_FLAGS}"
61
+ OPTIMIZE_CXXFLAGS="-g0 ${OPTIMIZE_FLAGS}"
62
+
63
+ ])
64
+
65
+ AC_ARG_WITH([debug],
66
+ [AS_HELP_STRING([--with-debug],
67
+ [Add debug code/turns off optimizations (yes|no) @<:@default=no@:>@])],
68
+ [with_debug=$withval],
69
+ [with_debug=no])
70
+ AS_IF([test "$with_debug" = "yes"],[
71
+ # Debugging. No optimization.
72
+ AM_CFLAGS="${AM_CFLAGS} ${DEBUG_CFLAGS} -DDEBUG"
73
+ AM_CXXFLAGS="${AM_CXXFLAGS} ${DEBUG_CXXFLAGS} -DDEBUG"
74
+ ],[
75
+ # Optimized version. No debug
76
+ AM_CFLAGS="${AM_CFLAGS} ${OPTIMIZE_CFLAGS}"
77
+ AM_CXXFLAGS="${AM_CXXFLAGS} ${OPTIMIZE_CXXFLAGS}"
78
+ ])
79
+ ])
@@ -0,0 +1,56 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ dnl We check two things: where is the memory include file, and in what
7
+ dnl namespace does shared_ptr reside.
8
+ dnl We include AC_COMPILE_IFELSE for all the combinations we've seen in the
9
+ dnl wild:
10
+ dnl
11
+ dnl GCC 4.3: namespace: std:: #include <memory>
12
+ dnl GCC 4.2: namespace: tr1:: #include <tr1/memory>
13
+ dnl GCC 4.2: namespace: boost:: #include <boost/shared_ptr.hpp>
14
+ dnl
15
+ dnl We define one of HAVE_HAVE_TR1_SHARED_PTR or HAVE_BOOST_SHARED_PTR
16
+ dnl depending on location, and SHARED_PTR_NAMESPACE to be the namespace in
17
+ dnl which shared_ptr is defined.
18
+ dnl
19
+
20
+ AC_DEFUN([PANDORA_SHARED_PTR],[
21
+ AC_REQUIRE([PANDORA_CHECK_CXX_STANDARD])
22
+ AC_LANG_PUSH(C++)
23
+ AC_CHECK_HEADERS(memory tr1/memory boost/shared_ptr.hpp)
24
+ AC_CACHE_CHECK([the location of shared_ptr header file],
25
+ [ac_cv_shared_ptr_h],[
26
+ for namespace in std tr1 std::tr1 boost
27
+ do
28
+ AC_COMPILE_IFELSE(
29
+ [AC_LANG_PROGRAM([[
30
+ #if defined(HAVE_MEMORY)
31
+ # include <memory>
32
+ #endif
33
+ #if defined(HAVE_TR1_MEMORY)
34
+ # include <tr1/memory>
35
+ #endif
36
+ #if defined(HAVE_BOOST_SHARED_PTR_HPP)
37
+ # include <boost/shared_ptr.hpp>
38
+ #endif
39
+ #include <string>
40
+
41
+ using $namespace::shared_ptr;
42
+ using namespace std;
43
+ ]],[[
44
+ shared_ptr<string> test_ptr(new string("test string"));
45
+ ]])],
46
+ [
47
+ ac_cv_shared_ptr_namespace="${namespace}"
48
+ break
49
+ ],[ac_cv_shared_ptr_namespace=missing])
50
+ done
51
+ ])
52
+ AC_DEFINE_UNQUOTED([SHARED_PTR_NAMESPACE],
53
+ ${ac_cv_shared_ptr_namespace},
54
+ [The namespace in which SHARED_PTR can be found])
55
+ AC_LANG_POP()
56
+ ])
@@ -0,0 +1,32 @@
1
+ dnl Copyright (C) 2009 Sun Microsystems
2
+ dnl This file is free software; Sun Microsystems
3
+ dnl gives unlimited permission to copy and/or distribute it,
4
+ dnl with or without modifications, as long as this notice is preserved.
5
+
6
+ AC_DEFUN([PANDORA_BUILDING_FROM_VC],[
7
+
8
+ ac_cv_building_from_vc=no
9
+
10
+ AS_IF([test -d "${srcdir}/.bzr"],[
11
+ ac_cv_building_from_bzr=yes
12
+ ac_cv_building_from_vc=yes
13
+ ],[
14
+ ac_cv_building_from_bzr=no
15
+ ])
16
+
17
+ AS_IF([test -d "${srcdir}/.svn"],[
18
+ ac_cv_building_from_svn=yes
19
+ ac_cv_building_from_vc=yes
20
+ ],[
21
+ ac_cv_building_from_svn=no
22
+ ])
23
+
24
+ AS_IF([test -d "${srcdir}/.hg"],[
25
+ ac_cv_building_from_hg=yes
26
+ ac_cv_building_from_vc=yes
27
+ ],[
28
+ ac_cv_building_from_hg=no
29
+ ])
30
+
31
+ ])
32
+