From: Michael Lee Date: Wed, 20 Apr 2016 22:54:54 +0000 (-0700) Subject: Define more pieces of portability/GFlags X-Git-Tag: 2016.07.26~335 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=0ed00b64e837ec76fcdade3e816d5e38eda3757f;p=folly.git Define more pieces of portability/GFlags Summary: Add more compatibility for missing gflags Reviewed By: yfeldblum Differential Revision: D3202560 fb-gh-sync-id: d25e4abfe8ceee9fb329c9ba12d259d1d03d4974 fbshipit-source-id: d25e4abfe8ceee9fb329c9ba12d259d1d03d4974 --- diff --git a/folly/Benchmark.h b/folly/Benchmark.h index 0a384b40..fe4fc239 100644 --- a/folly/Benchmark.h +++ b/folly/Benchmark.h @@ -19,6 +19,7 @@ #include #include // for FB_ANONYMOUS_VARIABLE #include +#include #include #include @@ -26,7 +27,6 @@ #include #include #include -#include #include #include diff --git a/folly/futures/test/Benchmark.cpp b/folly/futures/test/Benchmark.cpp index 7de25b56..b92f90fd 100644 --- a/folly/futures/test/Benchmark.cpp +++ b/folly/futures/test/Benchmark.cpp @@ -14,13 +14,12 @@ * limitations under the License. */ -#include - -#include #include +#include #include -#include #include +#include +#include #include #include diff --git a/folly/portability/GFlags.h b/folly/portability/GFlags.h index d28c6a28..3bbcf119 100644 --- a/folly/portability/GFlags.h +++ b/folly/portability/GFlags.h @@ -21,5 +21,25 @@ #if FOLLY_HAVE_LIBGFLAGS #include #else -#define DEFINE_int32(_name, _default, _description) int FLAGS_##_name = _default +#define FOLLY_DECLARE_FLAG(_type, _name) extern _type FLAGS_##_name +#define DECLARE_bool(_name) FOLLY_DECLARE_FLAG(bool, _name) +#define DECLARE_double(_name) FOLLY_DECLARE_FLAG(double, _name) +#define DECLARE_int32(_name) FOLLY_DECLARE_FLAG(int, _name) +#define DECLARE_int64(_name) FOLLY_DECLARE_FLAG(long long, _name) +#define DECLARE_uint64(_name) FOLLY_DECLARE_FLAG(unsigned long long, _name) +#define DECLARE_string(_name) FOLLY_DECLARE_FLAG(std::string, _name) + +#define FOLLY_DEFINE_FLAG(_type, _name, _default) _type FLAGS_##_name = _default +#define DEFINE_bool(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(bool, _name, _default) +#define DEFINE_double(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(double, _name, _default) +#define DEFINE_int32(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(int, _name, _default) +#define DEFINE_int64(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(long long, _name, _default) +#define DEFINE_uint64(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(unsigned long long, _name, _default) +#define DEFINE_string(_name, _default, _description) \ + FOLLY_DEFINE_FLAG(std::string, _name, _default) #endif