couchbase-memcached 1.2.8
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.
- data.tar.gz.sig +2 -0
- data/BENCHMARKS +134 -0
- data/CHANGELOG +127 -0
- data/LICENSE +184 -0
- data/Manifest +535 -0
- data/README +118 -0
- data/Rakefile +83 -0
- data/TODO +4 -0
- data/couchbase-memcached.gemspec +33 -0
- data/ext/extconf-make.rb +25 -0
- data/ext/extconf.rb +91 -0
- data/ext/libmemcached-0.50/AUTHORS +11 -0
- data/ext/libmemcached-0.50/COPYING +33 -0
- data/ext/libmemcached-0.50/ChangeLog +392 -0
- data/ext/libmemcached-0.50/Makefile.am +114 -0
- data/ext/libmemcached-0.50/Makefile.in +4232 -0
- data/ext/libmemcached-0.50/NEWS +1 -0
- data/ext/libmemcached-0.50/README +43 -0
- data/ext/libmemcached-0.50/README.FIRST +31 -0
- data/ext/libmemcached-0.50/README.win32 +25 -0
- data/ext/libmemcached-0.50/THANKS +14 -0
- data/ext/libmemcached-0.50/TODO +11 -0
- data/ext/libmemcached-0.50/aclocal.m4 +1077 -0
- data/ext/libmemcached-0.50/clients/client_options.h +45 -0
- data/ext/libmemcached-0.50/clients/execute.cc +131 -0
- data/ext/libmemcached-0.50/clients/execute.h +30 -0
- data/ext/libmemcached-0.50/clients/generator.cc +96 -0
- data/ext/libmemcached-0.50/clients/generator.h +36 -0
- data/ext/libmemcached-0.50/clients/include.am +116 -0
- data/ext/libmemcached-0.50/clients/memaslap.c +908 -0
- data/ext/libmemcached-0.50/clients/memcapable.cc +2094 -0
- data/ext/libmemcached-0.50/clients/memcat.cc +242 -0
- data/ext/libmemcached-0.50/clients/memcp.cc +317 -0
- data/ext/libmemcached-0.50/clients/memdump.cc +183 -0
- data/ext/libmemcached-0.50/clients/memerror.cc +102 -0
- data/ext/libmemcached-0.50/clients/memflush.cc +154 -0
- data/ext/libmemcached-0.50/clients/memparse.cc +68 -0
- data/ext/libmemcached-0.50/clients/memrm.cc +177 -0
- data/ext/libmemcached-0.50/clients/memslap.cc +495 -0
- data/ext/libmemcached-0.50/clients/memstat.cc +349 -0
- data/ext/libmemcached-0.50/clients/ms_atomic.h +69 -0
- data/ext/libmemcached-0.50/clients/ms_conn.c +3413 -0
- data/ext/libmemcached-0.50/clients/ms_conn.h +241 -0
- data/ext/libmemcached-0.50/clients/ms_memslap.h +132 -0
- data/ext/libmemcached-0.50/clients/ms_setting.c +1068 -0
- data/ext/libmemcached-0.50/clients/ms_setting.h +181 -0
- data/ext/libmemcached-0.50/clients/ms_sigsegv.c +126 -0
- data/ext/libmemcached-0.50/clients/ms_sigsegv.h +34 -0
- data/ext/libmemcached-0.50/clients/ms_stats.c +307 -0
- data/ext/libmemcached-0.50/clients/ms_stats.h +69 -0
- data/ext/libmemcached-0.50/clients/ms_task.c +1114 -0
- data/ext/libmemcached-0.50/clients/ms_task.h +94 -0
- data/ext/libmemcached-0.50/clients/ms_thread.c +351 -0
- data/ext/libmemcached-0.50/clients/ms_thread.h +78 -0
- data/ext/libmemcached-0.50/clients/utilities.cc +231 -0
- data/ext/libmemcached-0.50/clients/utilities.h +64 -0
- data/ext/libmemcached-0.50/config.h.in +647 -0
- data/ext/libmemcached-0.50/config/autorun.sh +126 -0
- data/ext/libmemcached-0.50/config/compile +143 -0
- data/ext/libmemcached-0.50/config/config.guess +1517 -0
- data/ext/libmemcached-0.50/config/config.rpath +666 -0
- data/ext/libmemcached-0.50/config/config.sub +1760 -0
- data/ext/libmemcached-0.50/config/depcomp +630 -0
- data/ext/libmemcached-0.50/config/install-sh +520 -0
- data/ext/libmemcached-0.50/config/ltmain.sh +9642 -0
- data/ext/libmemcached-0.50/config/missing +376 -0
- data/ext/libmemcached-0.50/config/pandora-plugin +752 -0
- data/ext/libmemcached-0.50/config/uncrustify.cfg +1112 -0
- data/ext/libmemcached-0.50/configure +27103 -0
- data/ext/libmemcached-0.50/configure.ac +186 -0
- data/ext/libmemcached-0.50/docs/conf.py.in +354 -0
- data/ext/libmemcached-0.50/docs/include.am +240 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_clone.3 +88 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_crc32.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_create.3 +88 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_fnv1_32.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_fnv1_64.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_fnv1a_32.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_fnv1a_64.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_free.3 +88 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_functions.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_hsieh.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_is_allocated.3 +88 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_jenkins.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_md5.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_murmur.3 +105 -0
- data/ext/libmemcached-0.50/docs/man/hashkit_value.3 +66 -0
- data/ext/libmemcached-0.50/docs/man/libhashkit.3 +57 -0
- data/ext/libmemcached-0.50/docs/man/libmemcached.3 +208 -0
- data/ext/libmemcached-0.50/docs/man/libmemcached_check_configuration.3 +293 -0
- data/ext/libmemcached-0.50/docs/man/libmemcached_configuration.3 +293 -0
- data/ext/libmemcached-0.50/docs/man/libmemcached_examples.3 +144 -0
- data/ext/libmemcached-0.50/docs/man/libmemcachedutil.3 +68 -0
- data/ext/libmemcached-0.50/docs/man/memaslap.1 +1222 -0
- data/ext/libmemcached-0.50/docs/man/memcached.3 +293 -0
- data/ext/libmemcached-0.50/docs/man/memcached_add.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_add_by_key.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_analyze.3 +77 -0
- data/ext/libmemcached-0.50/docs/man/memcached_append.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_append_by_key.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_behavior_get.3 +333 -0
- data/ext/libmemcached-0.50/docs/man/memcached_behavior_set.3 +333 -0
- data/ext/libmemcached-0.50/docs/man/memcached_callback_get.3 +159 -0
- data/ext/libmemcached-0.50/docs/man/memcached_callback_set.3 +159 -0
- data/ext/libmemcached-0.50/docs/man/memcached_cas.3 +91 -0
- data/ext/libmemcached-0.50/docs/man/memcached_cas_by_key.3 +91 -0
- data/ext/libmemcached-0.50/docs/man/memcached_clone.3 +99 -0
- data/ext/libmemcached-0.50/docs/man/memcached_create.3 +99 -0
- data/ext/libmemcached-0.50/docs/man/memcached_decrement.3 +124 -0
- data/ext/libmemcached-0.50/docs/man/memcached_decrement_with_initial.3 +124 -0
- data/ext/libmemcached-0.50/docs/man/memcached_delete.3 +83 -0
- data/ext/libmemcached-0.50/docs/man/memcached_delete_by_key.3 +83 -0
- data/ext/libmemcached-0.50/docs/man/memcached_destroy_sasl_auth_data.3 +95 -0
- data/ext/libmemcached-0.50/docs/man/memcached_dump.3 +77 -0
- data/ext/libmemcached-0.50/docs/man/memcached_fetch.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_fetch_execute.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_fetch_result.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_flush_buffers.3 +72 -0
- data/ext/libmemcached-0.50/docs/man/memcached_free.3 +99 -0
- data/ext/libmemcached-0.50/docs/man/memcached_generate_hash.3 +85 -0
- data/ext/libmemcached-0.50/docs/man/memcached_generate_hash_value.3 +85 -0
- data/ext/libmemcached-0.50/docs/man/memcached_get.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_get_by_key.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_get_memory_allocators.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_get_sasl_callbacks.3 +95 -0
- data/ext/libmemcached-0.50/docs/man/memcached_get_user_data.3 +79 -0
- data/ext/libmemcached-0.50/docs/man/memcached_increment.3 +124 -0
- data/ext/libmemcached-0.50/docs/man/memcached_increment_with_initial.3 +124 -0
- data/ext/libmemcached-0.50/docs/man/memcached_lib_version.3 +76 -0
- data/ext/libmemcached-0.50/docs/man/memcached_mget.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_mget_by_key.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_mget_execute.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_mget_execute_by_key.3 +174 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_behavior_get.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_behavior_set.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_create.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_destroy.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_pop.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_push.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_pool_st.3 +139 -0
- data/ext/libmemcached-0.50/docs/man/memcached_prepend.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_prepend_by_key.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_quit.3 +74 -0
- data/ext/libmemcached-0.50/docs/man/memcached_replace.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_replace_by_key.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_sasl_set_auth_data.3 +95 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_add.3 +141 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_count.3 +141 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_cursor.3 +141 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_list.3 +141 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_list_append.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_list_count.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_list_free.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_server_push.3 +141 -0
- data/ext/libmemcached-0.50/docs/man/memcached_servers_parse.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_set.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_set_by_key.3 +132 -0
- data/ext/libmemcached-0.50/docs/man/memcached_set_memory_allocators.3 +111 -0
- data/ext/libmemcached-0.50/docs/man/memcached_set_sasl_callbacks.3 +95 -0
- data/ext/libmemcached-0.50/docs/man/memcached_set_user_data.3 +79 -0
- data/ext/libmemcached-0.50/docs/man/memcached_stat.3 +116 -0
- data/ext/libmemcached-0.50/docs/man/memcached_stat_execute.3 +116 -0
- data/ext/libmemcached-0.50/docs/man/memcached_stat_get_keys.3 +116 -0
- data/ext/libmemcached-0.50/docs/man/memcached_stat_get_value.3 +116 -0
- data/ext/libmemcached-0.50/docs/man/memcached_stat_servername.3 +116 -0
- data/ext/libmemcached-0.50/docs/man/memcached_strerror.3 +69 -0
- data/ext/libmemcached-0.50/docs/man/memcached_verbosity.3 +66 -0
- data/ext/libmemcached-0.50/docs/man/memcached_version.3 +76 -0
- data/ext/libmemcached-0.50/docs/man/memcapable.1 +92 -0
- data/ext/libmemcached-0.50/docs/man/memcat.1 +71 -0
- data/ext/libmemcached-0.50/docs/man/memcp.1 +77 -0
- data/ext/libmemcached-0.50/docs/man/memdump.1 +66 -0
- data/ext/libmemcached-0.50/docs/man/memerror.1 +65 -0
- data/ext/libmemcached-0.50/docs/man/memflush.1 +73 -0
- data/ext/libmemcached-0.50/docs/man/memrm.1 +72 -0
- data/ext/libmemcached-0.50/docs/man/memslap.1 +59 -0
- data/ext/libmemcached-0.50/docs/man/memstat.1 +70 -0
- data/ext/libmemcached-0.50/example/include.am +24 -0
- data/ext/libmemcached-0.50/example/interface_v0.c +594 -0
- data/ext/libmemcached-0.50/example/interface_v1.c +411 -0
- data/ext/libmemcached-0.50/example/memcached_light.c +474 -0
- data/ext/libmemcached-0.50/example/memcached_light.h +7 -0
- data/ext/libmemcached-0.50/example/storage.c +172 -0
- data/ext/libmemcached-0.50/example/storage.h +27 -0
- data/ext/libmemcached-0.50/example/storage_innodb.c +535 -0
- data/ext/libmemcached-0.50/libhashkit/algorithm.cc +69 -0
- data/ext/libmemcached-0.50/libhashkit/algorithm.h +96 -0
- data/ext/libmemcached-0.50/libhashkit/behavior.cc +9 -0
- data/ext/libmemcached-0.50/libhashkit/behavior.h +26 -0
- data/ext/libmemcached-0.50/libhashkit/common.h +33 -0
- data/ext/libmemcached-0.50/libhashkit/configure.h.in +19 -0
- data/ext/libmemcached-0.50/libhashkit/crc32.cc +86 -0
- data/ext/libmemcached-0.50/libhashkit/digest.cc +62 -0
- data/ext/libmemcached-0.50/libhashkit/digest.h +30 -0
- data/ext/libmemcached-0.50/libhashkit/fnv.cc +75 -0
- data/ext/libmemcached-0.50/libhashkit/function.cc +156 -0
- data/ext/libmemcached-0.50/libhashkit/function.h +44 -0
- data/ext/libmemcached-0.50/libhashkit/hashkit.cc +100 -0
- data/ext/libmemcached-0.50/libhashkit/hashkit.h +95 -0
- data/ext/libmemcached-0.50/libhashkit/hashkit.hpp +97 -0
- data/ext/libmemcached-0.50/libhashkit/hsieh.cc +70 -0
- data/ext/libmemcached-0.50/libhashkit/include.am +69 -0
- data/ext/libmemcached-0.50/libhashkit/jenkins.cc +214 -0
- data/ext/libmemcached-0.50/libhashkit/ketama.cc +164 -0
- data/ext/libmemcached-0.50/libhashkit/md5.cc +367 -0
- data/ext/libmemcached-0.50/libhashkit/murmur.cc +77 -0
- data/ext/libmemcached-0.50/libhashkit/one_at_a_time.cc +34 -0
- data/ext/libmemcached-0.50/libhashkit/str_algorithm.cc +58 -0
- data/ext/libmemcached-0.50/libhashkit/str_algorithm.h +48 -0
- data/ext/libmemcached-0.50/libhashkit/strerror.cc +25 -0
- data/ext/libmemcached-0.50/libhashkit/strerror.h +23 -0
- data/ext/libmemcached-0.50/libhashkit/types.h +90 -0
- data/ext/libmemcached-0.50/libhashkit/visibility.h +48 -0
- data/ext/libmemcached-0.50/libmemcached/allocators.cc +119 -0
- data/ext/libmemcached-0.50/libmemcached/allocators.h +87 -0
- data/ext/libmemcached-0.50/libmemcached/analyze.cc +110 -0
- data/ext/libmemcached-0.50/libmemcached/analyze.h +66 -0
- data/ext/libmemcached-0.50/libmemcached/array.c +128 -0
- data/ext/libmemcached-0.50/libmemcached/array.h +75 -0
- data/ext/libmemcached-0.50/libmemcached/auto.cc +383 -0
- data/ext/libmemcached-0.50/libmemcached/auto.h +111 -0
- data/ext/libmemcached-0.50/libmemcached/basic_string.h +55 -0
- data/ext/libmemcached-0.50/libmemcached/behavior.cc +590 -0
- data/ext/libmemcached-0.50/libmemcached/behavior.h +86 -0
- data/ext/libmemcached-0.50/libmemcached/byteorder.cc +90 -0
- data/ext/libmemcached-0.50/libmemcached/byteorder.h +52 -0
- data/ext/libmemcached-0.50/libmemcached/callback.cc +160 -0
- data/ext/libmemcached-0.50/libmemcached/callback.h +61 -0
- data/ext/libmemcached-0.50/libmemcached/common.h +182 -0
- data/ext/libmemcached-0.50/libmemcached/configure.h.in +52 -0
- data/ext/libmemcached-0.50/libmemcached/connect.cc +626 -0
- data/ext/libmemcached-0.50/libmemcached/constants.h +167 -0
- data/ext/libmemcached-0.50/libmemcached/delete.cc +266 -0
- data/ext/libmemcached-0.50/libmemcached/delete.h +57 -0
- data/ext/libmemcached-0.50/libmemcached/do.cc +100 -0
- data/ext/libmemcached-0.50/libmemcached/do.hpp +49 -0
- data/ext/libmemcached-0.50/libmemcached/dump.cc +107 -0
- data/ext/libmemcached-0.50/libmemcached/dump.h +51 -0
- data/ext/libmemcached-0.50/libmemcached/error.cc +419 -0
- data/ext/libmemcached-0.50/libmemcached/error.h +61 -0
- data/ext/libmemcached-0.50/libmemcached/error.hpp +87 -0
- data/ext/libmemcached-0.50/libmemcached/exception.hpp +63 -0
- data/ext/libmemcached-0.50/libmemcached/fetch.cc +267 -0
- data/ext/libmemcached-0.50/libmemcached/fetch.h +53 -0
- data/ext/libmemcached-0.50/libmemcached/flush.cc +149 -0
- data/ext/libmemcached-0.50/libmemcached/flush.h +49 -0
- data/ext/libmemcached-0.50/libmemcached/flush_buffers.cc +66 -0
- data/ext/libmemcached-0.50/libmemcached/flush_buffers.h +49 -0
- data/ext/libmemcached-0.50/libmemcached/get.cc +842 -0
- data/ext/libmemcached-0.50/libmemcached/get.h +135 -0
- data/ext/libmemcached-0.50/libmemcached/hash.cc +178 -0
- data/ext/libmemcached-0.50/libmemcached/hash.h +68 -0
- data/ext/libmemcached-0.50/libmemcached/hosts.cc +516 -0
- data/ext/libmemcached-0.50/libmemcached/include.am +183 -0
- data/ext/libmemcached-0.50/libmemcached/initialize_query.cc +70 -0
- data/ext/libmemcached-0.50/libmemcached/initialize_query.h +51 -0
- data/ext/libmemcached-0.50/libmemcached/internal.h +46 -0
- data/ext/libmemcached-0.50/libmemcached/io.cc +920 -0
- data/ext/libmemcached-0.50/libmemcached/io.h +119 -0
- data/ext/libmemcached-0.50/libmemcached/is.h +48 -0
- data/ext/libmemcached-0.50/libmemcached/key.cc +23 -0
- data/ext/libmemcached-0.50/libmemcached/libmemcached_probes.d +30 -0
- data/ext/libmemcached-0.50/libmemcached/libmemcached_probes.h +118 -0
- data/ext/libmemcached-0.50/libmemcached/memcached.cc +437 -0
- data/ext/libmemcached-0.50/libmemcached/memcached.h +214 -0
- data/ext/libmemcached-0.50/libmemcached/memcached.hpp +799 -0
- data/ext/libmemcached-0.50/libmemcached/memcached/README.txt +7 -0
- data/ext/libmemcached-0.50/libmemcached/memcached/protocol_binary.h +726 -0
- data/ext/libmemcached-0.50/libmemcached/memcached/vbucket.h +26 -0
- data/ext/libmemcached-0.50/libmemcached/memcached_util.h +44 -0
- data/ext/libmemcached-0.50/libmemcached/memory.h +79 -0
- data/ext/libmemcached-0.50/libmemcached/options.cc +178 -0
- data/ext/libmemcached-0.50/libmemcached/options.h +49 -0
- data/ext/libmemcached-0.50/libmemcached/options.hpp +56 -0
- data/ext/libmemcached-0.50/libmemcached/options/context.h +151 -0
- data/ext/libmemcached-0.50/libmemcached/options/include.am +19 -0
- data/ext/libmemcached-0.50/libmemcached/options/parser.am +0 -0
- data/ext/libmemcached-0.50/libmemcached/options/parser.cc +2324 -0
- data/ext/libmemcached-0.50/libmemcached/options/parser.h +122 -0
- data/ext/libmemcached-0.50/libmemcached/options/scanner.cc +3203 -0
- data/ext/libmemcached-0.50/libmemcached/options/scanner.h +479 -0
- data/ext/libmemcached-0.50/libmemcached/options/server.h +60 -0
- data/ext/libmemcached-0.50/libmemcached/options/symbol.h +57 -0
- data/ext/libmemcached-0.50/libmemcached/parse.cc +110 -0
- data/ext/libmemcached-0.50/libmemcached/parse.h +23 -0
- data/ext/libmemcached-0.50/libmemcached/platform.h +56 -0
- data/ext/libmemcached-0.50/libmemcached/prefix_key.cc +65 -0
- data/ext/libmemcached-0.50/libmemcached/prefix_key.h +49 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/ascii_handler.c +963 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/ascii_handler.h +40 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/binary_handler.c +1121 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/binary_handler.h +47 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/cache.c +149 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/cache.h +116 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/callback.h +418 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/common.h +163 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/include.am +26 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/pedantic.c +202 -0
- data/ext/libmemcached-0.50/libmemcached/protocol/protocol_handler.c +365 -0
- data/ext/libmemcached-0.50/libmemcached/protocol_handler.h +215 -0
- data/ext/libmemcached-0.50/libmemcached/purge.cc +90 -0
- data/ext/libmemcached-0.50/libmemcached/quit.cc +139 -0
- data/ext/libmemcached-0.50/libmemcached/quit.h +55 -0
- data/ext/libmemcached-0.50/libmemcached/response.cc +619 -0
- data/ext/libmemcached-0.50/libmemcached/response.h +57 -0
- data/ext/libmemcached-0.50/libmemcached/result.cc +173 -0
- data/ext/libmemcached-0.50/libmemcached/result.h +100 -0
- data/ext/libmemcached-0.50/libmemcached/return.h +98 -0
- data/ext/libmemcached-0.50/libmemcached/sasl.c +408 -0
- data/ext/libmemcached-0.50/libmemcached/sasl.h +86 -0
- data/ext/libmemcached-0.50/libmemcached/server.cc +351 -0
- data/ext/libmemcached-0.50/libmemcached/server.h +169 -0
- data/ext/libmemcached-0.50/libmemcached/server_list.cc +88 -0
- data/ext/libmemcached-0.50/libmemcached/server_list.h +77 -0
- data/ext/libmemcached-0.50/libmemcached/stats.cc +623 -0
- data/ext/libmemcached-0.50/libmemcached/stats.h +96 -0
- data/ext/libmemcached-0.50/libmemcached/storage.cc +567 -0
- data/ext/libmemcached-0.50/libmemcached/storage.h +133 -0
- data/ext/libmemcached-0.50/libmemcached/strerror.cc +189 -0
- data/ext/libmemcached-0.50/libmemcached/strerror.h +50 -0
- data/ext/libmemcached-0.50/libmemcached/string.cc +253 -0
- data/ext/libmemcached-0.50/libmemcached/string.h +121 -0
- data/ext/libmemcached-0.50/libmemcached/touch.cc +106 -0
- data/ext/libmemcached-0.50/libmemcached/touch.h +59 -0
- data/ext/libmemcached-0.50/libmemcached/types.h +117 -0
- data/ext/libmemcached-0.50/libmemcached/util.h +40 -0
- data/ext/libmemcached-0.50/libmemcached/util/flush.cc +61 -0
- data/ext/libmemcached-0.50/libmemcached/util/flush.h +50 -0
- data/ext/libmemcached-0.50/libmemcached/util/include.am +34 -0
- data/ext/libmemcached-0.50/libmemcached/util/ping.cc +62 -0
- data/ext/libmemcached-0.50/libmemcached/util/ping.h +49 -0
- data/ext/libmemcached-0.50/libmemcached/util/pool.cc +392 -0
- data/ext/libmemcached-0.50/libmemcached/util/pool.h +78 -0
- data/ext/libmemcached-0.50/libmemcached/util/version.cc +87 -0
- data/ext/libmemcached-0.50/libmemcached/util/version.h +53 -0
- data/ext/libmemcached-0.50/libmemcached/verbosity.cc +97 -0
- data/ext/libmemcached-0.50/libmemcached/verbosity.h +50 -0
- data/ext/libmemcached-0.50/libmemcached/version.cc +214 -0
- data/ext/libmemcached-0.50/libmemcached/version.h +52 -0
- data/ext/libmemcached-0.50/libmemcached/virtual_bucket.c +118 -0
- data/ext/libmemcached-0.50/libmemcached/virtual_bucket.h +59 -0
- data/ext/libmemcached-0.50/libmemcached/visibility.h +51 -0
- data/ext/libmemcached-0.50/libmemcached/watchpoint.h +110 -0
- data/ext/libmemcached-0.50/libtest/callbacks.h +21 -0
- data/ext/libmemcached-0.50/libtest/collection.h +19 -0
- data/ext/libmemcached-0.50/libtest/common.h +50 -0
- data/ext/libmemcached-0.50/libtest/core.h +11 -0
- data/ext/libmemcached-0.50/libtest/error.h +18 -0
- data/ext/libmemcached-0.50/libtest/failed.h +52 -0
- data/ext/libmemcached-0.50/libtest/framework.cc +57 -0
- data/ext/libmemcached-0.50/libtest/framework.h +137 -0
- data/ext/libmemcached-0.50/libtest/get.h +22 -0
- data/ext/libmemcached-0.50/libtest/include.am +52 -0
- data/ext/libmemcached-0.50/libtest/runner.h +19 -0
- data/ext/libmemcached-0.50/libtest/server.c +355 -0
- data/ext/libmemcached-0.50/libtest/server.h +43 -0
- data/ext/libmemcached-0.50/libtest/stats.h +30 -0
- data/ext/libmemcached-0.50/libtest/strerror.h +14 -0
- data/ext/libmemcached-0.50/libtest/test.cc +319 -0
- data/ext/libmemcached-0.50/libtest/test.h +162 -0
- data/ext/libmemcached-0.50/libtest/test.hpp +46 -0
- data/ext/libmemcached-0.50/libtest/visibility.h +69 -0
- data/ext/libmemcached-0.50/m4/ac_cxx_header_stdcxx_98.m4 +83 -0
- data/ext/libmemcached-0.50/m4/acx_pthread.m4 +271 -0
- data/ext/libmemcached-0.50/m4/byteorder.m4 +19 -0
- data/ext/libmemcached-0.50/m4/deprecated.m4 +17 -0
- data/ext/libmemcached-0.50/m4/eagain.m4 +28 -0
- data/ext/libmemcached-0.50/m4/enable_utillib.m4 +16 -0
- data/ext/libmemcached-0.50/m4/gettext.m4 +379 -0
- data/ext/libmemcached-0.50/m4/hsieh.m4 +18 -0
- data/ext/libmemcached-0.50/m4/iconv.m4 +214 -0
- data/ext/libmemcached-0.50/m4/lib-ld.m4 +110 -0
- data/ext/libmemcached-0.50/m4/lib-link.m4 +767 -0
- data/ext/libmemcached-0.50/m4/lib-prefix.m4 +221 -0
- data/ext/libmemcached-0.50/m4/libtool.m4 +7851 -0
- data/ext/libmemcached-0.50/m4/ltoptions.m4 +369 -0
- data/ext/libmemcached-0.50/m4/ltsugar.m4 +123 -0
- data/ext/libmemcached-0.50/m4/ltversion.m4 +23 -0
- data/ext/libmemcached-0.50/m4/lt~obsolete.m4 +98 -0
- data/ext/libmemcached-0.50/m4/memaslap.m4 +9 -0
- data/ext/libmemcached-0.50/m4/memcached.m4 +31 -0
- data/ext/libmemcached-0.50/m4/murmur.m4 +18 -0
- data/ext/libmemcached-0.50/m4/pandora_64bit.m4 +60 -0
- data/ext/libmemcached-0.50/m4/pandora_bison.m4 +33 -0
- data/ext/libmemcached-0.50/m4/pandora_canonical.m4 +418 -0
- data/ext/libmemcached-0.50/m4/pandora_check_compiler_version.m4 +37 -0
- data/ext/libmemcached-0.50/m4/pandora_check_cxx_standard.m4 +23 -0
- data/ext/libmemcached-0.50/m4/pandora_cinttypes.m4 +39 -0
- data/ext/libmemcached-0.50/m4/pandora_clock_gettime.m4 +15 -0
- data/ext/libmemcached-0.50/m4/pandora_compile_stdcxx_0x.m4 +103 -0
- data/ext/libmemcached-0.50/m4/pandora_cstdint.m4 +38 -0
- data/ext/libmemcached-0.50/m4/pandora_cxx_demangle.m4 +27 -0
- data/ext/libmemcached-0.50/m4/pandora_enable_dtrace.m4 +60 -0
- data/ext/libmemcached-0.50/m4/pandora_ensure_gcc_version.m4 +62 -0
- data/ext/libmemcached-0.50/m4/pandora_extensions.m4 +16 -0
- data/ext/libmemcached-0.50/m4/pandora_fdatasync.m4 +25 -0
- data/ext/libmemcached-0.50/m4/pandora_flex.m4 +33 -0
- data/ext/libmemcached-0.50/m4/pandora_have_better_malloc.m4 +66 -0
- data/ext/libmemcached-0.50/m4/pandora_have_boost.m4 +93 -0
- data/ext/libmemcached-0.50/m4/pandora_have_gcc_atomics.m4 +37 -0
- data/ext/libmemcached-0.50/m4/pandora_have_innodb.m4 +41 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libaio.m4 +56 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libavahi.m4 +41 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libbdb.m4 +40 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_date_time.m4 +46 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_filesystem.m4 +47 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_iostreams.m4 +49 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_options.m4 +47 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_regex.m4 +54 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_test.m4 +45 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libboost_thread.m4 +54 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libcassandra.m4 +44 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libcurl.m4 +62 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libdl.m4 +51 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libdrizzle.m4 +61 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libevent.m4 +66 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libgearman.m4 +41 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libgtest.m4 +47 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libhaildb.m4 +43 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libhashkit.m4 +42 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libinnodb.m4 +64 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libldap.m4 +73 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libmemcached.m4 +106 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libmysqlclient.m4 +146 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libndbclient.m4 +80 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libpcre.m4 +73 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libpq.m4 +46 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libpqxx.m4 +44 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libsqlite3.m4 +42 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libtokyocabinet.m4 +54 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libuuid.m4 +55 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libvbucket.m4 +40 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libxml2.m4 +52 -0
- data/ext/libmemcached-0.50/m4/pandora_have_libz.m4 +51 -0
- data/ext/libmemcached-0.50/m4/pandora_have_protobuf.m4 +82 -0
- data/ext/libmemcached-0.50/m4/pandora_have_sasl.m4 +133 -0
- data/ext/libmemcached-0.50/m4/pandora_have_thrift.m4 +45 -0
- data/ext/libmemcached-0.50/m4/pandora_header_assert.m4 +23 -0
- data/ext/libmemcached-0.50/m4/pandora_header_stdcxx_98.m4 +83 -0
- data/ext/libmemcached-0.50/m4/pandora_intltool.m4 +225 -0
- data/ext/libmemcached-0.50/m4/pandora_libtool.m4 +25 -0
- data/ext/libmemcached-0.50/m4/pandora_optimize.m4 +75 -0
- data/ext/libmemcached-0.50/m4/pandora_platform.m4 +117 -0
- data/ext/libmemcached-0.50/m4/pandora_plugins.m4 +62 -0
- data/ext/libmemcached-0.50/m4/pandora_print_callstack.m4 +61 -0
- data/ext/libmemcached-0.50/m4/pandora_pthread.m4 +258 -0
- data/ext/libmemcached-0.50/m4/pandora_python3_devel.m4 +236 -0
- data/ext/libmemcached-0.50/m4/pandora_run_cpplint.m4 +8 -0
- data/ext/libmemcached-0.50/m4/pandora_sasl.m4 +133 -0
- data/ext/libmemcached-0.50/m4/pandora_shared_ptr.m4 +59 -0
- data/ext/libmemcached-0.50/m4/pandora_stack_direction.m4 +39 -0
- data/ext/libmemcached-0.50/m4/pandora_stl_hash.m4 +94 -0
- data/ext/libmemcached-0.50/m4/pandora_swig.m4 +39 -0
- data/ext/libmemcached-0.50/m4/pandora_use_pipe.m4 +36 -0
- data/ext/libmemcached-0.50/m4/pandora_vc_build.m4 +168 -0
- data/ext/libmemcached-0.50/m4/pandora_version.m4 +11 -0
- data/ext/libmemcached-0.50/m4/pandora_visibility.m4 +75 -0
- data/ext/libmemcached-0.50/m4/pandora_warnings.m4 +447 -0
- data/ext/libmemcached-0.50/m4/pandora_with_gettext.m4 +44 -0
- data/ext/libmemcached-0.50/m4/pandora_with_lua.m4 +55 -0
- data/ext/libmemcached-0.50/m4/pandora_with_memcached.m4 +41 -0
- data/ext/libmemcached-0.50/m4/pandora_with_perl.m4 +81 -0
- data/ext/libmemcached-0.50/m4/pandora_with_php.m4 +56 -0
- data/ext/libmemcached-0.50/m4/pandora_with_python.m4 +37 -0
- data/ext/libmemcached-0.50/m4/pandora_with_python3.m4 +44 -0
- data/ext/libmemcached-0.50/m4/pandora_with_r.m4 +33 -0
- data/ext/libmemcached-0.50/m4/pandora_with_ruby.m4 +79 -0
- data/ext/libmemcached-0.50/m4/pandora_with_valgrind.m4 +17 -0
- data/ext/libmemcached-0.50/m4/pkg.m4 +157 -0
- data/ext/libmemcached-0.50/m4/po.m4 +449 -0
- data/ext/libmemcached-0.50/m4/progtest.m4 +92 -0
- data/ext/libmemcached-0.50/m4/protocol_binary.m4 +36 -0
- data/ext/libmemcached-0.50/m4/setsockopt.m4 +73 -0
- data/ext/libmemcached-0.50/m4/socket_send_flags.m4 +66 -0
- data/ext/libmemcached-0.50/poll/include.am +8 -0
- data/ext/libmemcached-0.50/poll/poll.c +77 -0
- data/ext/libmemcached-0.50/poll/poll.h +45 -0
- data/ext/libmemcached-0.50/support/include.am +11 -0
- data/ext/libmemcached-0.50/support/libmemcached-fc.spec.in +105 -0
- data/ext/libmemcached-0.50/support/libmemcached.pc.in +10 -0
- data/ext/libmemcached-0.50/support/libmemcached.spec.in +281 -0
- data/ext/libmemcached-0.50/support/set_benchmark.sh +5 -0
- data/ext/libmemcached-0.50/tests/atomsmasher.cc +295 -0
- data/ext/libmemcached-0.50/tests/basic.cc +134 -0
- data/ext/libmemcached-0.50/tests/basic.h +66 -0
- data/ext/libmemcached-0.50/tests/cpp_example.cc +195 -0
- data/ext/libmemcached-0.50/tests/deprecated.cc +72 -0
- data/ext/libmemcached-0.50/tests/deprecated.h +49 -0
- data/ext/libmemcached-0.50/tests/error_conditions.cc +63 -0
- data/ext/libmemcached-0.50/tests/error_conditions.h +48 -0
- data/ext/libmemcached-0.50/tests/hash_plus.cc +225 -0
- data/ext/libmemcached-0.50/tests/hash_results.h +127 -0
- data/ext/libmemcached-0.50/tests/hashkit_functions.cc +619 -0
- data/ext/libmemcached-0.50/tests/include.am +342 -0
- data/ext/libmemcached-0.50/tests/ketama_test_cases.h +121 -0
- data/ext/libmemcached-0.50/tests/ketama_test_cases_spy.h +118 -0
- data/ext/libmemcached-0.50/tests/libmemcached_world.h +205 -0
- data/ext/libmemcached-0.50/tests/mem_functions.cc +6648 -0
- data/ext/libmemcached-0.50/tests/mem_udp.cc +510 -0
- data/ext/libmemcached-0.50/tests/output_plus.res +5 -0
- data/ext/libmemcached-0.50/tests/parser.cc +599 -0
- data/ext/libmemcached-0.50/tests/parser.h +109 -0
- data/ext/libmemcached-0.50/tests/plus.cpp +240 -0
- data/ext/libmemcached-0.50/tests/pool.cc +78 -0
- data/ext/libmemcached-0.50/tests/pool.h +49 -0
- data/ext/libmemcached-0.50/tests/print.cc +58 -0
- data/ext/libmemcached-0.50/tests/print.h +51 -0
- data/ext/libmemcached-0.50/tests/replication.cc +333 -0
- data/ext/libmemcached-0.50/tests/replication.h +64 -0
- data/ext/libmemcached-0.50/tests/start.cc +29 -0
- data/ext/libmemcached-0.50/tests/string.cc +174 -0
- data/ext/libmemcached-0.50/tests/string.h +67 -0
- data/ext/libmemcached-0.50/tests/virtual_buckets.cc +143 -0
- data/ext/libmemcached-0.50/tests/virtual_buckets.h +51 -0
- data/ext/libmemcached-0.50/win32/include.am +11 -0
- data/ext/libmemcached-0.50/win32/wrappers.h +55 -0
- data/ext/rlibmemcached.i +263 -0
- data/ext/rlibmemcached_wrap.c +16732 -0
- data/lib/memcached.rb +32 -0
- data/lib/memcached/auth.rb +16 -0
- data/lib/memcached/behaviors.rb +77 -0
- data/lib/memcached/exceptions.rb +84 -0
- data/lib/memcached/experimental.rb +48 -0
- data/lib/memcached/memcached.rb +660 -0
- data/lib/memcached/rails.rb +133 -0
- data/test/profile/benchmark.rb +245 -0
- data/test/profile/c_profiler.rb +14 -0
- data/test/profile/exercise.rb +185 -0
- data/test/profile/rb_profiler.rb +21 -0
- data/test/profile/valgrind.rb +10 -0
- data/test/setup.rb +30 -0
- data/test/teardown.rb +0 -0
- data/test/test_helper.rb +19 -0
- data/test/unit/binding_test.rb +8 -0
- data/test/unit/memcached_experimental_test.rb +274 -0
- data/test/unit/memcached_test.rb +1293 -0
- data/test/unit/rails_test.rb +122 -0
- metadata +650 -0
- metadata.gz.sig +0 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
dnl ---------------------------------------------------------------------------
|
|
2
|
+
dnl Macro: ENABLE_HSIEH_HASH
|
|
3
|
+
dnl ---------------------------------------------------------------------------
|
|
4
|
+
AC_DEFUN([ENABLE_HSIEH_HASH],
|
|
5
|
+
[AC_ARG_ENABLE([hsieh_hash],
|
|
6
|
+
[AS_HELP_STRING([--enable-hsieh_hash],
|
|
7
|
+
[build with support for hsieh hashing. @<:@default=off@:>@])],
|
|
8
|
+
[ac_cv_enable_hsieh_hash=yes],
|
|
9
|
+
[ac_cv_enable_hsieh_hash=no])
|
|
10
|
+
|
|
11
|
+
AS_IF([test "$ac_cv_enable_hsieh_hash" = "yes"],
|
|
12
|
+
[AC_DEFINE([HAVE_HSIEH_HASH], [1], [Enables hsieh hashing support])])
|
|
13
|
+
|
|
14
|
+
AM_CONDITIONAL([INCLUDE_HSIEH_SRC], [test "$ac_cv_enable_hsieh_hash" = "yes"])
|
|
15
|
+
])
|
|
16
|
+
dnl ---------------------------------------------------------------------------
|
|
17
|
+
dnl End Macro: ENABLE_HSIEH_HASH
|
|
18
|
+
dnl ---------------------------------------------------------------------------
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# iconv.m4 serial 11 (gettext-0.18.1)
|
|
2
|
+
dnl Copyright (C) 2000-2002, 2007-2010 Free Software Foundation, Inc.
|
|
3
|
+
dnl This file is free software; the Free Software Foundation
|
|
4
|
+
dnl gives unlimited permission to copy and/or distribute it,
|
|
5
|
+
dnl with or without modifications, as long as this notice is preserved.
|
|
6
|
+
|
|
7
|
+
dnl From Bruno Haible.
|
|
8
|
+
|
|
9
|
+
AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
|
|
10
|
+
[
|
|
11
|
+
dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
|
|
12
|
+
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
|
|
13
|
+
AC_REQUIRE([AC_LIB_RPATH])
|
|
14
|
+
|
|
15
|
+
dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
|
|
16
|
+
dnl accordingly.
|
|
17
|
+
AC_LIB_LINKFLAGS_BODY([iconv])
|
|
18
|
+
])
|
|
19
|
+
|
|
20
|
+
AC_DEFUN([AM_ICONV_LINK],
|
|
21
|
+
[
|
|
22
|
+
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
|
|
23
|
+
dnl those with the standalone portable GNU libiconv installed).
|
|
24
|
+
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
|
|
25
|
+
|
|
26
|
+
dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
|
|
27
|
+
dnl accordingly.
|
|
28
|
+
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
|
|
29
|
+
|
|
30
|
+
dnl Add $INCICONV to CPPFLAGS before performing the following checks,
|
|
31
|
+
dnl because if the user has installed libiconv and not disabled its use
|
|
32
|
+
dnl via --without-libiconv-prefix, he wants to use it. The first
|
|
33
|
+
dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
|
|
34
|
+
am_save_CPPFLAGS="$CPPFLAGS"
|
|
35
|
+
AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
|
|
36
|
+
|
|
37
|
+
AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [
|
|
38
|
+
am_cv_func_iconv="no, consider installing GNU libiconv"
|
|
39
|
+
am_cv_lib_iconv=no
|
|
40
|
+
AC_TRY_LINK([#include <stdlib.h>
|
|
41
|
+
#include <iconv.h>],
|
|
42
|
+
[iconv_t cd = iconv_open("","");
|
|
43
|
+
iconv(cd,NULL,NULL,NULL,NULL);
|
|
44
|
+
iconv_close(cd);],
|
|
45
|
+
[am_cv_func_iconv=yes])
|
|
46
|
+
if test "$am_cv_func_iconv" != yes; then
|
|
47
|
+
am_save_LIBS="$LIBS"
|
|
48
|
+
LIBS="$LIBS $LIBICONV"
|
|
49
|
+
AC_TRY_LINK([#include <stdlib.h>
|
|
50
|
+
#include <iconv.h>],
|
|
51
|
+
[iconv_t cd = iconv_open("","");
|
|
52
|
+
iconv(cd,NULL,NULL,NULL,NULL);
|
|
53
|
+
iconv_close(cd);],
|
|
54
|
+
[am_cv_lib_iconv=yes]
|
|
55
|
+
[am_cv_func_iconv=yes])
|
|
56
|
+
LIBS="$am_save_LIBS"
|
|
57
|
+
fi
|
|
58
|
+
])
|
|
59
|
+
if test "$am_cv_func_iconv" = yes; then
|
|
60
|
+
AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [
|
|
61
|
+
dnl This tests against bugs in AIX 5.1, HP-UX 11.11, Solaris 10.
|
|
62
|
+
am_save_LIBS="$LIBS"
|
|
63
|
+
if test $am_cv_lib_iconv = yes; then
|
|
64
|
+
LIBS="$LIBS $LIBICONV"
|
|
65
|
+
fi
|
|
66
|
+
AC_TRY_RUN([
|
|
67
|
+
#include <iconv.h>
|
|
68
|
+
#include <string.h>
|
|
69
|
+
int main ()
|
|
70
|
+
{
|
|
71
|
+
/* Test against AIX 5.1 bug: Failures are not distinguishable from successful
|
|
72
|
+
returns. */
|
|
73
|
+
{
|
|
74
|
+
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
|
|
75
|
+
if (cd_utf8_to_88591 != (iconv_t)(-1))
|
|
76
|
+
{
|
|
77
|
+
static const char input[] = "\342\202\254"; /* EURO SIGN */
|
|
78
|
+
char buf[10];
|
|
79
|
+
const char *inptr = input;
|
|
80
|
+
size_t inbytesleft = strlen (input);
|
|
81
|
+
char *outptr = buf;
|
|
82
|
+
size_t outbytesleft = sizeof (buf);
|
|
83
|
+
size_t res = iconv (cd_utf8_to_88591,
|
|
84
|
+
(char **) &inptr, &inbytesleft,
|
|
85
|
+
&outptr, &outbytesleft);
|
|
86
|
+
if (res == 0)
|
|
87
|
+
return 1;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/* Test against Solaris 10 bug: Failures are not distinguishable from
|
|
91
|
+
successful returns. */
|
|
92
|
+
{
|
|
93
|
+
iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
|
|
94
|
+
if (cd_ascii_to_88591 != (iconv_t)(-1))
|
|
95
|
+
{
|
|
96
|
+
static const char input[] = "\263";
|
|
97
|
+
char buf[10];
|
|
98
|
+
const char *inptr = input;
|
|
99
|
+
size_t inbytesleft = strlen (input);
|
|
100
|
+
char *outptr = buf;
|
|
101
|
+
size_t outbytesleft = sizeof (buf);
|
|
102
|
+
size_t res = iconv (cd_ascii_to_88591,
|
|
103
|
+
(char **) &inptr, &inbytesleft,
|
|
104
|
+
&outptr, &outbytesleft);
|
|
105
|
+
if (res == 0)
|
|
106
|
+
return 1;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
#if 0 /* This bug could be worked around by the caller. */
|
|
110
|
+
/* Test against HP-UX 11.11 bug: Positive return value instead of 0. */
|
|
111
|
+
{
|
|
112
|
+
iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
|
|
113
|
+
if (cd_88591_to_utf8 != (iconv_t)(-1))
|
|
114
|
+
{
|
|
115
|
+
static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
|
|
116
|
+
char buf[50];
|
|
117
|
+
const char *inptr = input;
|
|
118
|
+
size_t inbytesleft = strlen (input);
|
|
119
|
+
char *outptr = buf;
|
|
120
|
+
size_t outbytesleft = sizeof (buf);
|
|
121
|
+
size_t res = iconv (cd_88591_to_utf8,
|
|
122
|
+
(char **) &inptr, &inbytesleft,
|
|
123
|
+
&outptr, &outbytesleft);
|
|
124
|
+
if ((int)res > 0)
|
|
125
|
+
return 1;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
#endif
|
|
129
|
+
/* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
|
|
130
|
+
provided. */
|
|
131
|
+
if (/* Try standardized names. */
|
|
132
|
+
iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
|
|
133
|
+
/* Try IRIX, OSF/1 names. */
|
|
134
|
+
&& iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
|
|
135
|
+
/* Try AIX names. */
|
|
136
|
+
&& iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
|
|
137
|
+
/* Try HP-UX names. */
|
|
138
|
+
&& iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
|
|
139
|
+
return 1;
|
|
140
|
+
return 0;
|
|
141
|
+
}], [am_cv_func_iconv_works=yes], [am_cv_func_iconv_works=no],
|
|
142
|
+
[case "$host_os" in
|
|
143
|
+
aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
|
|
144
|
+
*) am_cv_func_iconv_works="guessing yes" ;;
|
|
145
|
+
esac])
|
|
146
|
+
LIBS="$am_save_LIBS"
|
|
147
|
+
])
|
|
148
|
+
case "$am_cv_func_iconv_works" in
|
|
149
|
+
*no) am_func_iconv=no am_cv_lib_iconv=no ;;
|
|
150
|
+
*) am_func_iconv=yes ;;
|
|
151
|
+
esac
|
|
152
|
+
else
|
|
153
|
+
am_func_iconv=no am_cv_lib_iconv=no
|
|
154
|
+
fi
|
|
155
|
+
if test "$am_func_iconv" = yes; then
|
|
156
|
+
AC_DEFINE([HAVE_ICONV], [1],
|
|
157
|
+
[Define if you have the iconv() function and it works.])
|
|
158
|
+
fi
|
|
159
|
+
if test "$am_cv_lib_iconv" = yes; then
|
|
160
|
+
AC_MSG_CHECKING([how to link with libiconv])
|
|
161
|
+
AC_MSG_RESULT([$LIBICONV])
|
|
162
|
+
else
|
|
163
|
+
dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
|
|
164
|
+
dnl either.
|
|
165
|
+
CPPFLAGS="$am_save_CPPFLAGS"
|
|
166
|
+
LIBICONV=
|
|
167
|
+
LTLIBICONV=
|
|
168
|
+
fi
|
|
169
|
+
AC_SUBST([LIBICONV])
|
|
170
|
+
AC_SUBST([LTLIBICONV])
|
|
171
|
+
])
|
|
172
|
+
|
|
173
|
+
dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to
|
|
174
|
+
dnl avoid warnings like
|
|
175
|
+
dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required".
|
|
176
|
+
dnl This is tricky because of the way 'aclocal' is implemented:
|
|
177
|
+
dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN.
|
|
178
|
+
dnl Otherwise aclocal's initial scan pass would miss the macro definition.
|
|
179
|
+
dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions.
|
|
180
|
+
dnl Otherwise aclocal would emit many "Use of uninitialized value $1"
|
|
181
|
+
dnl warnings.
|
|
182
|
+
m4_define([gl_iconv_AC_DEFUN],
|
|
183
|
+
m4_version_prereq([2.64],
|
|
184
|
+
[[AC_DEFUN_ONCE(
|
|
185
|
+
[$1], [$2])]],
|
|
186
|
+
[[AC_DEFUN(
|
|
187
|
+
[$1], [$2])]]))
|
|
188
|
+
gl_iconv_AC_DEFUN([AM_ICONV],
|
|
189
|
+
[
|
|
190
|
+
AM_ICONV_LINK
|
|
191
|
+
if test "$am_cv_func_iconv" = yes; then
|
|
192
|
+
AC_MSG_CHECKING([for iconv declaration])
|
|
193
|
+
AC_CACHE_VAL([am_cv_proto_iconv], [
|
|
194
|
+
AC_TRY_COMPILE([
|
|
195
|
+
#include <stdlib.h>
|
|
196
|
+
#include <iconv.h>
|
|
197
|
+
extern
|
|
198
|
+
#ifdef __cplusplus
|
|
199
|
+
"C"
|
|
200
|
+
#endif
|
|
201
|
+
#if defined(__STDC__) || defined(__cplusplus)
|
|
202
|
+
size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
|
|
203
|
+
#else
|
|
204
|
+
size_t iconv();
|
|
205
|
+
#endif
|
|
206
|
+
], [], [am_cv_proto_iconv_arg1=""], [am_cv_proto_iconv_arg1="const"])
|
|
207
|
+
am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
|
|
208
|
+
am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
|
|
209
|
+
AC_MSG_RESULT([
|
|
210
|
+
$am_cv_proto_iconv])
|
|
211
|
+
AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1],
|
|
212
|
+
[Define as const if the declaration of iconv() needs const.])
|
|
213
|
+
fi
|
|
214
|
+
])
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# lib-ld.m4 serial 3 (gettext-0.13)
|
|
2
|
+
dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
|
|
3
|
+
dnl This file is free software; the Free Software Foundation
|
|
4
|
+
dnl gives unlimited permission to copy and/or distribute it,
|
|
5
|
+
dnl with or without modifications, as long as this notice is preserved.
|
|
6
|
+
|
|
7
|
+
dnl Subroutines of libtool.m4,
|
|
8
|
+
dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
|
|
9
|
+
dnl with libtool.m4.
|
|
10
|
+
|
|
11
|
+
dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
|
|
12
|
+
AC_DEFUN([AC_LIB_PROG_LD_GNU],
|
|
13
|
+
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
|
|
14
|
+
[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
|
|
15
|
+
case `$LD -v 2>&1 </dev/null` in
|
|
16
|
+
*GNU* | *'with BFD'*)
|
|
17
|
+
acl_cv_prog_gnu_ld=yes ;;
|
|
18
|
+
*)
|
|
19
|
+
acl_cv_prog_gnu_ld=no ;;
|
|
20
|
+
esac])
|
|
21
|
+
with_gnu_ld=$acl_cv_prog_gnu_ld
|
|
22
|
+
])
|
|
23
|
+
|
|
24
|
+
dnl From libtool-1.4. Sets the variable LD.
|
|
25
|
+
AC_DEFUN([AC_LIB_PROG_LD],
|
|
26
|
+
[AC_ARG_WITH(gnu-ld,
|
|
27
|
+
[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
|
|
28
|
+
test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
|
|
29
|
+
AC_REQUIRE([AC_PROG_CC])dnl
|
|
30
|
+
AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
|
31
|
+
# Prepare PATH_SEPARATOR.
|
|
32
|
+
# The user is always right.
|
|
33
|
+
if test "${PATH_SEPARATOR+set}" != set; then
|
|
34
|
+
echo "#! /bin/sh" >conf$$.sh
|
|
35
|
+
echo "exit 0" >>conf$$.sh
|
|
36
|
+
chmod +x conf$$.sh
|
|
37
|
+
if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
|
|
38
|
+
PATH_SEPARATOR=';'
|
|
39
|
+
else
|
|
40
|
+
PATH_SEPARATOR=:
|
|
41
|
+
fi
|
|
42
|
+
rm -f conf$$.sh
|
|
43
|
+
fi
|
|
44
|
+
ac_prog=ld
|
|
45
|
+
if test "$GCC" = yes; then
|
|
46
|
+
# Check if gcc -print-prog-name=ld gives a path.
|
|
47
|
+
AC_MSG_CHECKING([for ld used by GCC])
|
|
48
|
+
case $host in
|
|
49
|
+
*-*-mingw*)
|
|
50
|
+
# gcc leaves a trailing carriage return which upsets mingw
|
|
51
|
+
ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
|
|
52
|
+
*)
|
|
53
|
+
ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
|
|
54
|
+
esac
|
|
55
|
+
case $ac_prog in
|
|
56
|
+
# Accept absolute paths.
|
|
57
|
+
[[\\/]* | [A-Za-z]:[\\/]*)]
|
|
58
|
+
[re_direlt='/[^/][^/]*/\.\./']
|
|
59
|
+
# Canonicalize the path of ld
|
|
60
|
+
ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
|
|
61
|
+
while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
|
|
62
|
+
ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
|
|
63
|
+
done
|
|
64
|
+
test -z "$LD" && LD="$ac_prog"
|
|
65
|
+
;;
|
|
66
|
+
"")
|
|
67
|
+
# If it fails, then pretend we aren't using GCC.
|
|
68
|
+
ac_prog=ld
|
|
69
|
+
;;
|
|
70
|
+
*)
|
|
71
|
+
# If it is relative, then search for the first ld in PATH.
|
|
72
|
+
with_gnu_ld=unknown
|
|
73
|
+
;;
|
|
74
|
+
esac
|
|
75
|
+
elif test "$with_gnu_ld" = yes; then
|
|
76
|
+
AC_MSG_CHECKING([for GNU ld])
|
|
77
|
+
else
|
|
78
|
+
AC_MSG_CHECKING([for non-GNU ld])
|
|
79
|
+
fi
|
|
80
|
+
AC_CACHE_VAL(acl_cv_path_LD,
|
|
81
|
+
[if test -z "$LD"; then
|
|
82
|
+
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
|
|
83
|
+
for ac_dir in $PATH; do
|
|
84
|
+
test -z "$ac_dir" && ac_dir=.
|
|
85
|
+
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
|
|
86
|
+
acl_cv_path_LD="$ac_dir/$ac_prog"
|
|
87
|
+
# Check to see if the program is GNU ld. I'd rather use --version,
|
|
88
|
+
# but apparently some GNU ld's only accept -v.
|
|
89
|
+
# Break only if it was the GNU/non-GNU ld that we prefer.
|
|
90
|
+
case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
|
|
91
|
+
*GNU* | *'with BFD'*)
|
|
92
|
+
test "$with_gnu_ld" != no && break ;;
|
|
93
|
+
*)
|
|
94
|
+
test "$with_gnu_ld" != yes && break ;;
|
|
95
|
+
esac
|
|
96
|
+
fi
|
|
97
|
+
done
|
|
98
|
+
IFS="$ac_save_ifs"
|
|
99
|
+
else
|
|
100
|
+
acl_cv_path_LD="$LD" # Let the user override the test with a path.
|
|
101
|
+
fi])
|
|
102
|
+
LD="$acl_cv_path_LD"
|
|
103
|
+
if test -n "$LD"; then
|
|
104
|
+
AC_MSG_RESULT($LD)
|
|
105
|
+
else
|
|
106
|
+
AC_MSG_RESULT(no)
|
|
107
|
+
fi
|
|
108
|
+
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
|
|
109
|
+
AC_LIB_PROG_LD_GNU
|
|
110
|
+
])
|
|
@@ -0,0 +1,767 @@
|
|
|
1
|
+
# lib-link.m4 serial 18 (gettext-0.18)
|
|
2
|
+
dnl Copyright (C) 2001-2009 Free Software Foundation, Inc.
|
|
3
|
+
dnl This file is free software; the Free Software Foundation
|
|
4
|
+
dnl gives unlimited permission to copy and/or distribute it,
|
|
5
|
+
dnl with or without modifications, as long as this notice is preserved.
|
|
6
|
+
|
|
7
|
+
dnl From Bruno Haible.
|
|
8
|
+
|
|
9
|
+
AC_PREREQ([2.54])
|
|
10
|
+
|
|
11
|
+
dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
|
|
12
|
+
dnl the libraries corresponding to explicit and implicit dependencies.
|
|
13
|
+
dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
|
|
14
|
+
dnl augments the CPPFLAGS variable.
|
|
15
|
+
dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
|
|
16
|
+
dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
|
|
17
|
+
AC_DEFUN([AC_LIB_LINKFLAGS],
|
|
18
|
+
[
|
|
19
|
+
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
|
|
20
|
+
AC_REQUIRE([AC_LIB_RPATH])
|
|
21
|
+
pushdef([Name],[translit([$1],[./-], [___])])
|
|
22
|
+
pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
|
|
23
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
24
|
+
AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
|
|
25
|
+
AC_LIB_LINKFLAGS_BODY([$1], [$2])
|
|
26
|
+
ac_cv_lib[]Name[]_libs="$LIB[]NAME"
|
|
27
|
+
ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
|
|
28
|
+
ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
|
|
29
|
+
ac_cv_lib[]Name[]_prefix="$LIB[]NAME[]_PREFIX"
|
|
30
|
+
])
|
|
31
|
+
LIB[]NAME="$ac_cv_lib[]Name[]_libs"
|
|
32
|
+
LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
|
|
33
|
+
INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
|
|
34
|
+
LIB[]NAME[]_PREFIX="$ac_cv_lib[]Name[]_prefix"
|
|
35
|
+
AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
|
|
36
|
+
AC_SUBST([LIB]NAME)
|
|
37
|
+
AC_SUBST([LTLIB]NAME)
|
|
38
|
+
AC_SUBST([LIB]NAME[_PREFIX])
|
|
39
|
+
dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
|
|
40
|
+
dnl results of this search when this library appears as a dependency.
|
|
41
|
+
HAVE_LIB[]NAME=yes
|
|
42
|
+
popdef([NAME])
|
|
43
|
+
popdef([Name])
|
|
44
|
+
])
|
|
45
|
+
|
|
46
|
+
dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode, [system])
|
|
47
|
+
dnl searches for libname and the libraries corresponding to explicit and
|
|
48
|
+
dnl implicit dependencies, together with the specified include files and
|
|
49
|
+
dnl the ability to compile and link the specified testcode. If found, it
|
|
50
|
+
dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
|
|
51
|
+
dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
|
|
52
|
+
dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
|
|
53
|
+
dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
|
|
54
|
+
dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
|
|
55
|
+
dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
|
|
56
|
+
AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
|
|
57
|
+
[
|
|
58
|
+
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
|
|
59
|
+
AC_REQUIRE([AC_LIB_RPATH])
|
|
60
|
+
pushdef([Name],[translit([$1],[./-], [___])])
|
|
61
|
+
pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
|
|
62
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
63
|
+
|
|
64
|
+
dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
|
|
65
|
+
dnl accordingly.
|
|
66
|
+
AC_LIB_LINKFLAGS_BODY([$1], [$2], [$5])
|
|
67
|
+
|
|
68
|
+
dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
|
|
69
|
+
dnl because if the user has installed lib[]Name and not disabled its use
|
|
70
|
+
dnl via --without-lib[]Name-prefix, he wants to use it.
|
|
71
|
+
ac_save_CPPFLAGS="$CPPFLAGS"
|
|
72
|
+
AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
|
|
73
|
+
|
|
74
|
+
AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
|
|
75
|
+
ac_save_LIBS="$LIBS"
|
|
76
|
+
LIBS="$LIBS $LIB[]NAME"
|
|
77
|
+
AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
|
|
78
|
+
LIBS="$ac_save_LIBS"
|
|
79
|
+
])
|
|
80
|
+
if test "$ac_cv_lib[]Name" = yes; then
|
|
81
|
+
HAVE_LIB[]NAME=yes
|
|
82
|
+
AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
|
|
83
|
+
AC_MSG_CHECKING([how to link with lib[]$1])
|
|
84
|
+
AC_MSG_RESULT([$LIB[]NAME])
|
|
85
|
+
else
|
|
86
|
+
HAVE_LIB[]NAME=no
|
|
87
|
+
dnl If $LIB[]NAME didn't lead to a usable library, we don't need
|
|
88
|
+
dnl $INC[]NAME either.
|
|
89
|
+
CPPFLAGS="$ac_save_CPPFLAGS"
|
|
90
|
+
LIB[]NAME=
|
|
91
|
+
LTLIB[]NAME=
|
|
92
|
+
LIB[]NAME[]_PREFIX=
|
|
93
|
+
fi
|
|
94
|
+
AC_SUBST([HAVE_LIB]NAME)
|
|
95
|
+
AC_SUBST([LIB]NAME)
|
|
96
|
+
AC_SUBST([LTLIB]NAME)
|
|
97
|
+
AC_SUBST([LIB]NAME[_PREFIX])
|
|
98
|
+
popdef([NAME])
|
|
99
|
+
popdef([Name])
|
|
100
|
+
])
|
|
101
|
+
|
|
102
|
+
dnl Determine the platform dependent parameters needed to use rpath:
|
|
103
|
+
dnl acl_libext,
|
|
104
|
+
dnl acl_shlibext,
|
|
105
|
+
dnl acl_hardcode_libdir_flag_spec,
|
|
106
|
+
dnl acl_hardcode_libdir_separator,
|
|
107
|
+
dnl acl_hardcode_direct,
|
|
108
|
+
dnl acl_hardcode_minus_L.
|
|
109
|
+
AC_DEFUN([AC_LIB_RPATH],
|
|
110
|
+
[
|
|
111
|
+
dnl Tell automake >= 1.10 to complain if config.rpath is missing.
|
|
112
|
+
m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
|
|
113
|
+
AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
|
|
114
|
+
AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
|
|
115
|
+
AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
|
|
116
|
+
AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
|
|
117
|
+
AC_CACHE_CHECK([for shared library run path origin], [acl_cv_rpath], [
|
|
118
|
+
CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
|
|
119
|
+
${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
|
|
120
|
+
. ./conftest.sh
|
|
121
|
+
rm -f ./conftest.sh
|
|
122
|
+
acl_cv_rpath=done
|
|
123
|
+
])
|
|
124
|
+
wl="$acl_cv_wl"
|
|
125
|
+
acl_libext="$acl_cv_libext"
|
|
126
|
+
acl_shlibext="$acl_cv_shlibext"
|
|
127
|
+
acl_libname_spec="$acl_cv_libname_spec"
|
|
128
|
+
acl_library_names_spec="$acl_cv_library_names_spec"
|
|
129
|
+
acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
|
|
130
|
+
acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
|
|
131
|
+
acl_hardcode_direct="$acl_cv_hardcode_direct"
|
|
132
|
+
acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
|
|
133
|
+
dnl Determine whether the user wants rpath handling at all.
|
|
134
|
+
AC_ARG_ENABLE([rpath],
|
|
135
|
+
[ --disable-rpath do not hardcode runtime library paths],
|
|
136
|
+
:, enable_rpath=yes)
|
|
137
|
+
])
|
|
138
|
+
|
|
139
|
+
dnl AC_LIB_FROMPACKAGE(name, package)
|
|
140
|
+
dnl declares that libname comes from the given package. The configure file
|
|
141
|
+
dnl will then not have a --with-libname-prefix option but a
|
|
142
|
+
dnl --with-package-prefix option. Several libraries can come from the same
|
|
143
|
+
dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar
|
|
144
|
+
dnl macro call that searches for libname.
|
|
145
|
+
AC_DEFUN([AC_LIB_FROMPACKAGE],
|
|
146
|
+
[
|
|
147
|
+
pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
|
|
148
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
149
|
+
define([acl_frompackage_]NAME, [$2])
|
|
150
|
+
popdef([NAME])
|
|
151
|
+
pushdef([PACK],[$2])
|
|
152
|
+
pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-],
|
|
153
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
154
|
+
define([acl_libsinpackage_]PACKUP,
|
|
155
|
+
m4_ifdef([acl_libsinpackage_]PACKUP, [acl_libsinpackage_]PACKUP[[, ]],)[lib$1])
|
|
156
|
+
popdef([PACKUP])
|
|
157
|
+
popdef([PACK])
|
|
158
|
+
])
|
|
159
|
+
|
|
160
|
+
dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies, system]) searches for
|
|
161
|
+
dnl libname and the libraries corresponding to explicit and implicit
|
|
162
|
+
dnl dependencies.
|
|
163
|
+
dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
|
|
164
|
+
dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found
|
|
165
|
+
dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
|
|
166
|
+
dnl If system==system, -isystem is used instead of -I
|
|
167
|
+
AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
|
|
168
|
+
[
|
|
169
|
+
AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
|
|
170
|
+
pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
|
|
171
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
172
|
+
pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])])
|
|
173
|
+
pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-],
|
|
174
|
+
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
|
|
175
|
+
pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])])
|
|
176
|
+
dnl Autoconf >= 2.61 supports dots in --with options.
|
|
177
|
+
pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[translit(PACK,[.],[_])],PACK)])
|
|
178
|
+
dnl By default, look in $includedir and $libdir.
|
|
179
|
+
use_additional=yes
|
|
180
|
+
if test "x$GCC" = "xyes" -a "x$3" = "xsystem"
|
|
181
|
+
then
|
|
182
|
+
i_system="-isystem "
|
|
183
|
+
else
|
|
184
|
+
i_system="-I"
|
|
185
|
+
fi
|
|
186
|
+
|
|
187
|
+
AC_LIB_WITH_FINAL_PREFIX([
|
|
188
|
+
eval additional_includedir=\"$includedir\"
|
|
189
|
+
eval additional_libdir=\"$libdir\"
|
|
190
|
+
])
|
|
191
|
+
AC_ARG_WITH(P_A_C_K[-prefix],
|
|
192
|
+
[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib
|
|
193
|
+
--without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]],
|
|
194
|
+
[
|
|
195
|
+
if test "X$withval" = "Xno"; then
|
|
196
|
+
use_additional=no
|
|
197
|
+
else
|
|
198
|
+
if test "X$withval" = "X"; then
|
|
199
|
+
AC_LIB_WITH_FINAL_PREFIX([
|
|
200
|
+
eval additional_includedir=\"$includedir\"
|
|
201
|
+
eval additional_libdir=\"$libdir\"
|
|
202
|
+
])
|
|
203
|
+
else
|
|
204
|
+
additional_includedir="$withval/include"
|
|
205
|
+
additional_libdir="$withval/$acl_libdirstem"
|
|
206
|
+
if test "$acl_libdirstem2" != "$acl_libdirstem" \
|
|
207
|
+
&& ! test -d "$withval/$acl_libdirstem"; then
|
|
208
|
+
additional_libdir="$withval/$acl_libdirstem2"
|
|
209
|
+
fi
|
|
210
|
+
fi
|
|
211
|
+
fi
|
|
212
|
+
])
|
|
213
|
+
dnl Search the library and its dependencies in $additional_libdir and
|
|
214
|
+
dnl $LDFLAGS. Using breadth-first-seach.
|
|
215
|
+
LIB[]NAME=
|
|
216
|
+
LTLIB[]NAME=
|
|
217
|
+
INC[]NAME=
|
|
218
|
+
LIB[]NAME[]_PREFIX=
|
|
219
|
+
rpathdirs=
|
|
220
|
+
ltrpathdirs=
|
|
221
|
+
names_already_handled=
|
|
222
|
+
names_next_round='$1 $2'
|
|
223
|
+
while test -n "$names_next_round"; do
|
|
224
|
+
names_this_round="$names_next_round"
|
|
225
|
+
names_next_round=
|
|
226
|
+
for name in $names_this_round; do
|
|
227
|
+
already_handled=
|
|
228
|
+
for n in $names_already_handled; do
|
|
229
|
+
if test "$n" = "$name"; then
|
|
230
|
+
already_handled=yes
|
|
231
|
+
break
|
|
232
|
+
fi
|
|
233
|
+
done
|
|
234
|
+
if test -z "$already_handled"; then
|
|
235
|
+
names_already_handled="$names_already_handled $name"
|
|
236
|
+
dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
|
|
237
|
+
dnl or AC_LIB_HAVE_LINKFLAGS call.
|
|
238
|
+
uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
|
|
239
|
+
eval value=\"\$HAVE_LIB$uppername\"
|
|
240
|
+
if test -n "$value"; then
|
|
241
|
+
if test "$value" = yes; then
|
|
242
|
+
eval value=\"\$LIB$uppername\"
|
|
243
|
+
test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
|
|
244
|
+
eval value=\"\$LTLIB$uppername\"
|
|
245
|
+
test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
|
|
246
|
+
else
|
|
247
|
+
dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
|
|
248
|
+
dnl that this library doesn't exist. So just drop it.
|
|
249
|
+
:
|
|
250
|
+
fi
|
|
251
|
+
else
|
|
252
|
+
dnl Search the library lib$name in $additional_libdir and $LDFLAGS
|
|
253
|
+
dnl and the already constructed $LIBNAME/$LTLIBNAME.
|
|
254
|
+
found_dir=
|
|
255
|
+
found_la=
|
|
256
|
+
found_so=
|
|
257
|
+
found_a=
|
|
258
|
+
eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
|
|
259
|
+
if test -n "$acl_shlibext"; then
|
|
260
|
+
shrext=".$acl_shlibext" # typically: shrext=.so
|
|
261
|
+
else
|
|
262
|
+
shrext=
|
|
263
|
+
fi
|
|
264
|
+
if test $use_additional = yes; then
|
|
265
|
+
dir="$additional_libdir"
|
|
266
|
+
dnl The same code as in the loop below:
|
|
267
|
+
dnl First look for a shared library.
|
|
268
|
+
if test -n "$acl_shlibext"; then
|
|
269
|
+
if test -f "$dir/$libname$shrext"; then
|
|
270
|
+
found_dir="$dir"
|
|
271
|
+
found_so="$dir/$libname$shrext"
|
|
272
|
+
else
|
|
273
|
+
if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
|
|
274
|
+
ver=`(cd "$dir" && \
|
|
275
|
+
for f in "$libname$shrext".*; do echo "$f"; done \
|
|
276
|
+
| sed -e "s,^$libname$shrext\\\\.,," \
|
|
277
|
+
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
|
|
278
|
+
| sed 1q ) 2>/dev/null`
|
|
279
|
+
if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
|
|
280
|
+
found_dir="$dir"
|
|
281
|
+
found_so="$dir/$libname$shrext.$ver"
|
|
282
|
+
fi
|
|
283
|
+
else
|
|
284
|
+
eval library_names=\"$acl_library_names_spec\"
|
|
285
|
+
for f in $library_names; do
|
|
286
|
+
if test -f "$dir/$f"; then
|
|
287
|
+
found_dir="$dir"
|
|
288
|
+
found_so="$dir/$f"
|
|
289
|
+
break
|
|
290
|
+
fi
|
|
291
|
+
done
|
|
292
|
+
fi
|
|
293
|
+
fi
|
|
294
|
+
fi
|
|
295
|
+
dnl Then look for a static library.
|
|
296
|
+
if test "X$found_dir" = "X"; then
|
|
297
|
+
if test -f "$dir/$libname.$acl_libext"; then
|
|
298
|
+
found_dir="$dir"
|
|
299
|
+
found_a="$dir/$libname.$acl_libext"
|
|
300
|
+
fi
|
|
301
|
+
fi
|
|
302
|
+
if test "X$found_dir" != "X"; then
|
|
303
|
+
if test -f "$dir/$libname.la"; then
|
|
304
|
+
found_la="$dir/$libname.la"
|
|
305
|
+
fi
|
|
306
|
+
fi
|
|
307
|
+
fi
|
|
308
|
+
if test "X$found_dir" = "X"; then
|
|
309
|
+
for x in $LDFLAGS $LTLIB[]NAME; do
|
|
310
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
311
|
+
case "$x" in
|
|
312
|
+
-L*)
|
|
313
|
+
dir=`echo "X$x" | sed -e 's/^X-L//'`
|
|
314
|
+
dnl First look for a shared library.
|
|
315
|
+
if test -n "$acl_shlibext"; then
|
|
316
|
+
if test -f "$dir/$libname$shrext"; then
|
|
317
|
+
found_dir="$dir"
|
|
318
|
+
found_so="$dir/$libname$shrext"
|
|
319
|
+
else
|
|
320
|
+
if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
|
|
321
|
+
ver=`(cd "$dir" && \
|
|
322
|
+
for f in "$libname$shrext".*; do echo "$f"; done \
|
|
323
|
+
| sed -e "s,^$libname$shrext\\\\.,," \
|
|
324
|
+
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
|
|
325
|
+
| sed 1q ) 2>/dev/null`
|
|
326
|
+
if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
|
|
327
|
+
found_dir="$dir"
|
|
328
|
+
found_so="$dir/$libname$shrext.$ver"
|
|
329
|
+
fi
|
|
330
|
+
else
|
|
331
|
+
eval library_names=\"$acl_library_names_spec\"
|
|
332
|
+
for f in $library_names; do
|
|
333
|
+
if test -f "$dir/$f"; then
|
|
334
|
+
found_dir="$dir"
|
|
335
|
+
found_so="$dir/$f"
|
|
336
|
+
break
|
|
337
|
+
fi
|
|
338
|
+
done
|
|
339
|
+
fi
|
|
340
|
+
fi
|
|
341
|
+
fi
|
|
342
|
+
dnl Then look for a static library.
|
|
343
|
+
if test "X$found_dir" = "X"; then
|
|
344
|
+
if test -f "$dir/$libname.$acl_libext"; then
|
|
345
|
+
found_dir="$dir"
|
|
346
|
+
found_a="$dir/$libname.$acl_libext"
|
|
347
|
+
fi
|
|
348
|
+
fi
|
|
349
|
+
if test "X$found_dir" != "X"; then
|
|
350
|
+
if test -f "$dir/$libname.la"; then
|
|
351
|
+
found_la="$dir/$libname.la"
|
|
352
|
+
fi
|
|
353
|
+
fi
|
|
354
|
+
;;
|
|
355
|
+
esac
|
|
356
|
+
if test "X$found_dir" != "X"; then
|
|
357
|
+
break
|
|
358
|
+
fi
|
|
359
|
+
done
|
|
360
|
+
fi
|
|
361
|
+
if test "X$found_dir" != "X"; then
|
|
362
|
+
dnl Found the library.
|
|
363
|
+
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
|
|
364
|
+
if test "X$found_so" != "X"; then
|
|
365
|
+
dnl Linking with a shared library. We attempt to hardcode its
|
|
366
|
+
dnl directory into the executable's runpath, unless it's the
|
|
367
|
+
dnl standard /usr/lib.
|
|
368
|
+
if test "$enable_rpath" = no \
|
|
369
|
+
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
|
|
370
|
+
|| test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
|
|
371
|
+
dnl No hardcoding is needed.
|
|
372
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
|
|
373
|
+
else
|
|
374
|
+
dnl Use an explicit option to hardcode DIR into the resulting
|
|
375
|
+
dnl binary.
|
|
376
|
+
dnl Potentially add DIR to ltrpathdirs.
|
|
377
|
+
dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
|
|
378
|
+
haveit=
|
|
379
|
+
for x in $ltrpathdirs; do
|
|
380
|
+
if test "X$x" = "X$found_dir"; then
|
|
381
|
+
haveit=yes
|
|
382
|
+
break
|
|
383
|
+
fi
|
|
384
|
+
done
|
|
385
|
+
if test -z "$haveit"; then
|
|
386
|
+
ltrpathdirs="$ltrpathdirs $found_dir"
|
|
387
|
+
fi
|
|
388
|
+
dnl The hardcoding into $LIBNAME is system dependent.
|
|
389
|
+
if test "$acl_hardcode_direct" = yes; then
|
|
390
|
+
dnl Using DIR/libNAME.so during linking hardcodes DIR into the
|
|
391
|
+
dnl resulting binary.
|
|
392
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
|
|
393
|
+
else
|
|
394
|
+
if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
|
|
395
|
+
dnl Use an explicit option to hardcode DIR into the resulting
|
|
396
|
+
dnl binary.
|
|
397
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
|
|
398
|
+
dnl Potentially add DIR to rpathdirs.
|
|
399
|
+
dnl The rpathdirs will be appended to $LIBNAME at the end.
|
|
400
|
+
haveit=
|
|
401
|
+
for x in $rpathdirs; do
|
|
402
|
+
if test "X$x" = "X$found_dir"; then
|
|
403
|
+
haveit=yes
|
|
404
|
+
break
|
|
405
|
+
fi
|
|
406
|
+
done
|
|
407
|
+
if test -z "$haveit"; then
|
|
408
|
+
rpathdirs="$rpathdirs $found_dir"
|
|
409
|
+
fi
|
|
410
|
+
else
|
|
411
|
+
dnl Rely on "-L$found_dir".
|
|
412
|
+
dnl But don't add it if it's already contained in the LDFLAGS
|
|
413
|
+
dnl or the already constructed $LIBNAME
|
|
414
|
+
haveit=
|
|
415
|
+
for x in $LDFLAGS $LIB[]NAME; do
|
|
416
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
417
|
+
if test "X$x" = "X-L$found_dir"; then
|
|
418
|
+
haveit=yes
|
|
419
|
+
break
|
|
420
|
+
fi
|
|
421
|
+
done
|
|
422
|
+
if test -z "$haveit"; then
|
|
423
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
|
|
424
|
+
fi
|
|
425
|
+
if test "$acl_hardcode_minus_L" != no; then
|
|
426
|
+
dnl FIXME: Not sure whether we should use
|
|
427
|
+
dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
|
|
428
|
+
dnl here.
|
|
429
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
|
|
430
|
+
else
|
|
431
|
+
dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH
|
|
432
|
+
dnl here, because this doesn't fit in flags passed to the
|
|
433
|
+
dnl compiler. So give up. No hardcoding. This affects only
|
|
434
|
+
dnl very old systems.
|
|
435
|
+
dnl FIXME: Not sure whether we should use
|
|
436
|
+
dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
|
|
437
|
+
dnl here.
|
|
438
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
|
|
439
|
+
fi
|
|
440
|
+
fi
|
|
441
|
+
fi
|
|
442
|
+
fi
|
|
443
|
+
else
|
|
444
|
+
if test "X$found_a" != "X"; then
|
|
445
|
+
dnl Linking with a static library.
|
|
446
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
|
|
447
|
+
else
|
|
448
|
+
dnl We shouldn't come here, but anyway it's good to have a
|
|
449
|
+
dnl fallback.
|
|
450
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
|
|
451
|
+
fi
|
|
452
|
+
fi
|
|
453
|
+
dnl Assume the include files are nearby.
|
|
454
|
+
additional_includedir=
|
|
455
|
+
case "$found_dir" in
|
|
456
|
+
*/$acl_libdirstem | */$acl_libdirstem/)
|
|
457
|
+
basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
|
|
458
|
+
if test "$name" = '$1'; then
|
|
459
|
+
LIB[]NAME[]_PREFIX="$basedir"
|
|
460
|
+
fi
|
|
461
|
+
additional_includedir="$basedir/include"
|
|
462
|
+
;;
|
|
463
|
+
*/$acl_libdirstem2 | */$acl_libdirstem2/)
|
|
464
|
+
basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'`
|
|
465
|
+
if test "$name" = '$1'; then
|
|
466
|
+
LIB[]NAME[]_PREFIX="$basedir"
|
|
467
|
+
fi
|
|
468
|
+
additional_includedir="$basedir/include"
|
|
469
|
+
;;
|
|
470
|
+
esac
|
|
471
|
+
if test "X$additional_includedir" != "X"; then
|
|
472
|
+
dnl Potentially add $additional_includedir to $INCNAME.
|
|
473
|
+
dnl But don't add it
|
|
474
|
+
dnl 1. if it's the standard /usr/include,
|
|
475
|
+
dnl 2. if it's /usr/local/include and we are using GCC on Linux,
|
|
476
|
+
dnl 3. if it's already present in $CPPFLAGS or the already
|
|
477
|
+
dnl constructed $INCNAME,
|
|
478
|
+
dnl 4. if it doesn't exist as a directory.
|
|
479
|
+
if test "X$additional_includedir" != "X/usr/include"; then
|
|
480
|
+
haveit=
|
|
481
|
+
if test "X$additional_includedir" = "X/usr/local/include"; then
|
|
482
|
+
if test -n "$GCC"; then
|
|
483
|
+
case $host_os in
|
|
484
|
+
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
|
|
485
|
+
esac
|
|
486
|
+
fi
|
|
487
|
+
fi
|
|
488
|
+
if test -z "$haveit"; then
|
|
489
|
+
for x in $CPPFLAGS $INC[]NAME; do
|
|
490
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
491
|
+
if test "X$x" = "X${i_system}$additional_includedir"; then
|
|
492
|
+
haveit=yes
|
|
493
|
+
break
|
|
494
|
+
fi
|
|
495
|
+
done
|
|
496
|
+
if test -z "$haveit"; then
|
|
497
|
+
if test -d "$additional_includedir"; then
|
|
498
|
+
dnl Really add $additional_includedir to $INCNAME.
|
|
499
|
+
INC[]NAME="${INC[]NAME}${INC[]NAME:+ }${i_system}$additional_includedir"
|
|
500
|
+
fi
|
|
501
|
+
fi
|
|
502
|
+
fi
|
|
503
|
+
fi
|
|
504
|
+
fi
|
|
505
|
+
dnl Look for dependencies.
|
|
506
|
+
if test -n "$found_la"; then
|
|
507
|
+
dnl Read the .la file. It defines the variables
|
|
508
|
+
dnl dlname, library_names, old_library, dependency_libs, current,
|
|
509
|
+
dnl age, revision, installed, dlopen, dlpreopen, libdir.
|
|
510
|
+
save_libdir="$libdir"
|
|
511
|
+
case "$found_la" in
|
|
512
|
+
*/* | *\\*) . "$found_la" ;;
|
|
513
|
+
*) . "./$found_la" ;;
|
|
514
|
+
esac
|
|
515
|
+
libdir="$save_libdir"
|
|
516
|
+
dnl We use only dependency_libs.
|
|
517
|
+
for dep in $dependency_libs; do
|
|
518
|
+
case "$dep" in
|
|
519
|
+
-L*)
|
|
520
|
+
additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
|
|
521
|
+
dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
|
|
522
|
+
dnl But don't add it
|
|
523
|
+
dnl 1. if it's the standard /usr/lib,
|
|
524
|
+
dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
|
|
525
|
+
dnl 3. if it's already present in $LDFLAGS or the already
|
|
526
|
+
dnl constructed $LIBNAME,
|
|
527
|
+
dnl 4. if it doesn't exist as a directory.
|
|
528
|
+
if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
|
|
529
|
+
&& test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
|
|
530
|
+
haveit=
|
|
531
|
+
if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
|
|
532
|
+
|| test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
|
|
533
|
+
if test -n "$GCC"; then
|
|
534
|
+
case $host_os in
|
|
535
|
+
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
|
|
536
|
+
esac
|
|
537
|
+
fi
|
|
538
|
+
fi
|
|
539
|
+
if test -z "$haveit"; then
|
|
540
|
+
haveit=
|
|
541
|
+
for x in $LDFLAGS $LIB[]NAME; do
|
|
542
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
543
|
+
if test "X$x" = "X-L$additional_libdir"; then
|
|
544
|
+
haveit=yes
|
|
545
|
+
break
|
|
546
|
+
fi
|
|
547
|
+
done
|
|
548
|
+
if test -z "$haveit"; then
|
|
549
|
+
if test -d "$additional_libdir"; then
|
|
550
|
+
dnl Really add $additional_libdir to $LIBNAME.
|
|
551
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
|
|
552
|
+
fi
|
|
553
|
+
fi
|
|
554
|
+
haveit=
|
|
555
|
+
for x in $LDFLAGS $LTLIB[]NAME; do
|
|
556
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
557
|
+
if test "X$x" = "X-L$additional_libdir"; then
|
|
558
|
+
haveit=yes
|
|
559
|
+
break
|
|
560
|
+
fi
|
|
561
|
+
done
|
|
562
|
+
if test -z "$haveit"; then
|
|
563
|
+
if test -d "$additional_libdir"; then
|
|
564
|
+
dnl Really add $additional_libdir to $LTLIBNAME.
|
|
565
|
+
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
|
|
566
|
+
fi
|
|
567
|
+
fi
|
|
568
|
+
fi
|
|
569
|
+
fi
|
|
570
|
+
;;
|
|
571
|
+
-R*)
|
|
572
|
+
dir=`echo "X$dep" | sed -e 's/^X-R//'`
|
|
573
|
+
if test "$enable_rpath" != no; then
|
|
574
|
+
dnl Potentially add DIR to rpathdirs.
|
|
575
|
+
dnl The rpathdirs will be appended to $LIBNAME at the end.
|
|
576
|
+
haveit=
|
|
577
|
+
for x in $rpathdirs; do
|
|
578
|
+
if test "X$x" = "X$dir"; then
|
|
579
|
+
haveit=yes
|
|
580
|
+
break
|
|
581
|
+
fi
|
|
582
|
+
done
|
|
583
|
+
if test -z "$haveit"; then
|
|
584
|
+
rpathdirs="$rpathdirs $dir"
|
|
585
|
+
fi
|
|
586
|
+
dnl Potentially add DIR to ltrpathdirs.
|
|
587
|
+
dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
|
|
588
|
+
haveit=
|
|
589
|
+
for x in $ltrpathdirs; do
|
|
590
|
+
if test "X$x" = "X$dir"; then
|
|
591
|
+
haveit=yes
|
|
592
|
+
break
|
|
593
|
+
fi
|
|
594
|
+
done
|
|
595
|
+
if test -z "$haveit"; then
|
|
596
|
+
ltrpathdirs="$ltrpathdirs $dir"
|
|
597
|
+
fi
|
|
598
|
+
fi
|
|
599
|
+
;;
|
|
600
|
+
-l*)
|
|
601
|
+
dnl Handle this in the next round.
|
|
602
|
+
names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
|
|
603
|
+
;;
|
|
604
|
+
*.la)
|
|
605
|
+
dnl Handle this in the next round. Throw away the .la's
|
|
606
|
+
dnl directory; it is already contained in a preceding -L
|
|
607
|
+
dnl option.
|
|
608
|
+
names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
|
|
609
|
+
;;
|
|
610
|
+
*)
|
|
611
|
+
dnl Most likely an immediate library name.
|
|
612
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
|
|
613
|
+
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
|
|
614
|
+
;;
|
|
615
|
+
esac
|
|
616
|
+
done
|
|
617
|
+
fi
|
|
618
|
+
else
|
|
619
|
+
dnl Didn't find the library; assume it is in the system directories
|
|
620
|
+
dnl known to the linker and runtime loader. (All the system
|
|
621
|
+
dnl directories known to the linker should also be known to the
|
|
622
|
+
dnl runtime loader, otherwise the system is severely misconfigured.)
|
|
623
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
|
|
624
|
+
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
|
|
625
|
+
fi
|
|
626
|
+
fi
|
|
627
|
+
fi
|
|
628
|
+
done
|
|
629
|
+
done
|
|
630
|
+
if test "X$rpathdirs" != "X"; then
|
|
631
|
+
if test -n "$acl_hardcode_libdir_separator"; then
|
|
632
|
+
dnl Weird platform: only the last -rpath option counts, the user must
|
|
633
|
+
dnl pass all path elements in one option. We can arrange that for a
|
|
634
|
+
dnl single library, but not when more than one $LIBNAMEs are used.
|
|
635
|
+
alldirs=
|
|
636
|
+
for found_dir in $rpathdirs; do
|
|
637
|
+
alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
|
|
638
|
+
done
|
|
639
|
+
dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl.
|
|
640
|
+
acl_save_libdir="$libdir"
|
|
641
|
+
libdir="$alldirs"
|
|
642
|
+
eval flag=\"$acl_hardcode_libdir_flag_spec\"
|
|
643
|
+
libdir="$acl_save_libdir"
|
|
644
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
|
|
645
|
+
else
|
|
646
|
+
dnl The -rpath options are cumulative.
|
|
647
|
+
for found_dir in $rpathdirs; do
|
|
648
|
+
acl_save_libdir="$libdir"
|
|
649
|
+
libdir="$found_dir"
|
|
650
|
+
eval flag=\"$acl_hardcode_libdir_flag_spec\"
|
|
651
|
+
libdir="$acl_save_libdir"
|
|
652
|
+
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
|
|
653
|
+
done
|
|
654
|
+
fi
|
|
655
|
+
fi
|
|
656
|
+
if test "X$ltrpathdirs" != "X"; then
|
|
657
|
+
dnl When using libtool, the option that works for both libraries and
|
|
658
|
+
dnl executables is -R. The -R options are cumulative.
|
|
659
|
+
for found_dir in $ltrpathdirs; do
|
|
660
|
+
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
|
|
661
|
+
done
|
|
662
|
+
fi
|
|
663
|
+
popdef([P_A_C_K])
|
|
664
|
+
popdef([PACKLIBS])
|
|
665
|
+
popdef([PACKUP])
|
|
666
|
+
popdef([PACK])
|
|
667
|
+
popdef([NAME])
|
|
668
|
+
])
|
|
669
|
+
|
|
670
|
+
dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
|
|
671
|
+
dnl unless already present in VAR.
|
|
672
|
+
dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
|
|
673
|
+
dnl contains two or three consecutive elements that belong together.
|
|
674
|
+
AC_DEFUN([AC_LIB_APPENDTOVAR],
|
|
675
|
+
[
|
|
676
|
+
for element in [$2]; do
|
|
677
|
+
haveit=
|
|
678
|
+
for x in $[$1]; do
|
|
679
|
+
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
|
|
680
|
+
if test "X$x" = "X$element"; then
|
|
681
|
+
haveit=yes
|
|
682
|
+
break
|
|
683
|
+
fi
|
|
684
|
+
done
|
|
685
|
+
if test -z "$haveit"; then
|
|
686
|
+
[$1]="${[$1]}${[$1]:+ }$element"
|
|
687
|
+
fi
|
|
688
|
+
done
|
|
689
|
+
])
|
|
690
|
+
|
|
691
|
+
dnl For those cases where a variable contains several -L and -l options
|
|
692
|
+
dnl referring to unknown libraries and directories, this macro determines the
|
|
693
|
+
dnl necessary additional linker options for the runtime path.
|
|
694
|
+
dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL])
|
|
695
|
+
dnl sets LDADDVAR to linker options needed together with LIBSVALUE.
|
|
696
|
+
dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed,
|
|
697
|
+
dnl otherwise linking without libtool is assumed.
|
|
698
|
+
AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
|
|
699
|
+
[
|
|
700
|
+
AC_REQUIRE([AC_LIB_RPATH])
|
|
701
|
+
AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
|
|
702
|
+
$1=
|
|
703
|
+
if test "$enable_rpath" != no; then
|
|
704
|
+
if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
|
|
705
|
+
dnl Use an explicit option to hardcode directories into the resulting
|
|
706
|
+
dnl binary.
|
|
707
|
+
rpathdirs=
|
|
708
|
+
next=
|
|
709
|
+
for opt in $2; do
|
|
710
|
+
if test -n "$next"; then
|
|
711
|
+
dir="$next"
|
|
712
|
+
dnl No need to hardcode the standard /usr/lib.
|
|
713
|
+
if test "X$dir" != "X/usr/$acl_libdirstem" \
|
|
714
|
+
&& test "X$dir" != "X/usr/$acl_libdirstem2"; then
|
|
715
|
+
rpathdirs="$rpathdirs $dir"
|
|
716
|
+
fi
|
|
717
|
+
next=
|
|
718
|
+
else
|
|
719
|
+
case $opt in
|
|
720
|
+
-L) next=yes ;;
|
|
721
|
+
-L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
|
|
722
|
+
dnl No need to hardcode the standard /usr/lib.
|
|
723
|
+
if test "X$dir" != "X/usr/$acl_libdirstem" \
|
|
724
|
+
&& test "X$dir" != "X/usr/$acl_libdirstem2"; then
|
|
725
|
+
rpathdirs="$rpathdirs $dir"
|
|
726
|
+
fi
|
|
727
|
+
next= ;;
|
|
728
|
+
*) next= ;;
|
|
729
|
+
esac
|
|
730
|
+
fi
|
|
731
|
+
done
|
|
732
|
+
if test "X$rpathdirs" != "X"; then
|
|
733
|
+
if test -n ""$3""; then
|
|
734
|
+
dnl libtool is used for linking. Use -R options.
|
|
735
|
+
for dir in $rpathdirs; do
|
|
736
|
+
$1="${$1}${$1:+ }-R$dir"
|
|
737
|
+
done
|
|
738
|
+
else
|
|
739
|
+
dnl The linker is used for linking directly.
|
|
740
|
+
if test -n "$acl_hardcode_libdir_separator"; then
|
|
741
|
+
dnl Weird platform: only the last -rpath option counts, the user
|
|
742
|
+
dnl must pass all path elements in one option.
|
|
743
|
+
alldirs=
|
|
744
|
+
for dir in $rpathdirs; do
|
|
745
|
+
alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir"
|
|
746
|
+
done
|
|
747
|
+
acl_save_libdir="$libdir"
|
|
748
|
+
libdir="$alldirs"
|
|
749
|
+
eval flag=\"$acl_hardcode_libdir_flag_spec\"
|
|
750
|
+
libdir="$acl_save_libdir"
|
|
751
|
+
$1="$flag"
|
|
752
|
+
else
|
|
753
|
+
dnl The -rpath options are cumulative.
|
|
754
|
+
for dir in $rpathdirs; do
|
|
755
|
+
acl_save_libdir="$libdir"
|
|
756
|
+
libdir="$dir"
|
|
757
|
+
eval flag=\"$acl_hardcode_libdir_flag_spec\"
|
|
758
|
+
libdir="$acl_save_libdir"
|
|
759
|
+
$1="${$1}${$1:+ }$flag"
|
|
760
|
+
done
|
|
761
|
+
fi
|
|
762
|
+
fi
|
|
763
|
+
fi
|
|
764
|
+
fi
|
|
765
|
+
fi
|
|
766
|
+
AC_SUBST([$1])
|
|
767
|
+
])
|