35 lines
1.2 KiB
C++
35 lines
1.2 KiB
C++
// Copyright 2012 Google Inc. All Rights Reserved.
|
|
// Author: sameeragarwal@google.com (Sameer Agarwal)
|
|
//
|
|
// This shim file serves two purposes.
|
|
//
|
|
// 1. Translate the gflags includes used by the OSS version of Ceres
|
|
// so that it links into the google3 version.
|
|
//
|
|
// 2. Call InitGoogle when ParseCommandLineFlags is called. This is
|
|
// needed because while google3 binaries call InitGoogle and that call
|
|
// initializes the logging and command line handling amongst other
|
|
// things, the open source versions of gflags and glog are distributed
|
|
// separately and require separate initialization. By hijacking this
|
|
// function, and calling InitGoogle, we can compile all the example
|
|
// code that ships with Ceres without any modifications. This
|
|
// modification will have no impact on google3 binaries using Ceres,
|
|
// as they will never call google::ParseCommandLineFlags.
|
|
|
|
#ifndef GFLAGS_GFLAGS_H_
|
|
#define GFLAGS_GFLAGS_H_
|
|
|
|
#include "base/init_google.h"
|
|
#include "base/commandlineflags.h"
|
|
|
|
namespace google {
|
|
|
|
inline void ParseCommandLineFlags(int* argc,
|
|
char*** argv,
|
|
const bool remove_flags) {
|
|
InitGoogle(**argv, argc, argv, remove_flags);
|
|
}
|
|
|
|
} // namespace google
|
|
|
|
#endif // GFLAGS_GFLAGS_H_
|