X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=libtest%2Fhas.cc;h=accadf9839bbf9a1973196d91d001dd1a79aff13;hb=3302041bbe7bda096d658e7032e77763ed6187f5;hp=699a1326a4364b96b46b78ed492d26277beed345;hpb=ab130c459a975d24628169901addb191ef2cdf87;p=awesomized%2Flibmemcached diff --git a/libtest/has.cc b/libtest/has.cc index 699a1326..accadf98 100644 --- a/libtest/has.cc +++ b/libtest/has.cc @@ -42,7 +42,7 @@ namespace libtest { -bool has_memcached_support(void) +bool has_libmemcached(void) { if (HAVE_LIBMEMCACHED) { @@ -64,8 +64,10 @@ bool has_libdrizzle(void) bool has_postgres_support(void) { - if (getenv("POSTGES_IS_RUNNING_AND_SETUP")) + char *getenv_ptr; + if (bool((getenv_ptr= getenv("POSTGES_IS_RUNNING_AND_SETUP")))) { + (void)(getenv_ptr); if (HAVE_LIBPQ) { return true; @@ -80,11 +82,14 @@ bool has_gearmand() { if (HAVE_GEARMAND_BINARY) { +#if defined(HAVE_GEARMAND_BINARY) && HAVE_GEARMAND_BINARY std::stringstream arg_buffer; - if (getenv("PWD")) + char *getenv_ptr; + if (bool((getenv_ptr= getenv("PWD"))) and + ((strcmp(GEARMAND_BINARY, "./gearmand/gearmand") == 0) or (strcmp(GEARMAND_BINARY, "gearmand/gearmand") == 0))) { - arg_buffer << getenv("PWD"); + arg_buffer << getenv_ptr; arg_buffer << "/"; } arg_buffer << GEARMAND_BINARY; @@ -93,6 +98,7 @@ bool has_gearmand() { return true; } +#endif } return false; @@ -100,6 +106,7 @@ bool has_gearmand() bool has_drizzled() { +#if defined(HAVE_DRIZZLED_BINARY) && HAVE_DRIZZLED_BINARY if (HAVE_DRIZZLED_BINARY) { if (access(DRIZZLED_BINARY, X_OK) == 0) @@ -107,6 +114,22 @@ bool has_drizzled() return true; } } +#endif + + return false; +} + +bool has_mysqld() +{ +#if defined(HAVE_MYSQLD_BUILD) && HAVE_MYSQLD_BUILD + if (HAVE_MYSQLD_BUILD) + { + if (access(MYSQLD_BINARY, X_OK) == 0) + { + return true; + } + } +#endif return false; } @@ -115,7 +138,18 @@ bool has_memcached() { if (HAVE_MEMCACHED_BINARY) { - if (access(MEMCACHED_BINARY, X_OK) == 0) + std::stringstream arg_buffer; + + + char *getenv_ptr; + if (bool((getenv_ptr= getenv("PWD"))) and strcmp(MEMCACHED_BINARY, "memcached/memcached") == 0) + { + arg_buffer << getenv_ptr; + arg_buffer << "/"; + } + arg_buffer << MEMCACHED_BINARY; + + if (access(arg_buffer.str().c_str(), X_OK) == 0) { return true; } @@ -126,6 +160,7 @@ bool has_memcached() bool has_memcached_sasl() { +#if defined(HAVE_MEMCACHED_SASL_BINARY) && HAVE_MEMCACHED_SASL_BINARY if (HAVE_MEMCACHED_SASL_BINARY) { if (access(MEMCACHED_SASL_BINARY, X_OK) == 0) @@ -133,6 +168,7 @@ bool has_memcached_sasl() return true; } } +#endif return false; }