Glog/gflags: Reduce amount of local modifications

With better directory layout and more proper include
statements we can avoid several local modifications,
such as changing config.h for Windows Glog and the
ones related on pass-through statements in logging
headers in Glog.

This commit also makes unused functions not-a-warning
for external code.
This commit is contained in:
Sergey Sharybin 2018-03-23 14:32:18 +01:00
parent 60712d12eb
commit ab48e6355d
17 changed files with 22 additions and 60 deletions

@ -1294,7 +1294,7 @@ if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
if(WIN32) if(WIN32)
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows) set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src/windows)
else() else()
set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/src) set(GLOG_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/glog/include)
endif() endif()
endif() endif()
endif() endif()
@ -1431,6 +1431,7 @@ if(CMAKE_COMPILER_IS_GNUCC)
# flags to undo strict flags # flags to undo strict flags
ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations) ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter) ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_FUNCTION -Wno-unused-function)
if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0")) if(CMAKE_COMPILER_IS_GNUCC AND (NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_LESS "7.0"))
ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH -Wno-implicit-fallthrough) ADD_CHECK_C_COMPILER_FLAG(CC_REMOVE_STRICT_FLAGS C_WARN_NO_IMPLICIT_FALLTHROUGH -Wno-implicit-fallthrough)

@ -36,6 +36,8 @@ set(INC
set(INC_SYS set(INC_SYS
${EIGEN3_INCLUDE_DIRS} ${EIGEN3_INCLUDE_DIRS}
${GFLAGS_INCLUDE_DIRS}
${GLOG_INCLUDE_DIRS}
) )
set(SRC set(SRC
@ -303,16 +305,6 @@ else()
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION) add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
endif() endif()
if(WIN32)
list(APPEND INC
../glog/src/windows
)
else()
list(APPEND INC
../glog/src
)
endif()
add_definitions(${GFLAGS_DEFINES}) add_definitions(${GFLAGS_DEFINES})
add_definitions(${GLOG_DEFINES}) add_definitions(${GLOG_DEFINES})
add_definitions(${CERES_DEFINES}) add_definitions(${CERES_DEFINES})

@ -129,6 +129,8 @@ set(INC
set(INC_SYS set(INC_SYS
\${EIGEN3_INCLUDE_DIRS} \${EIGEN3_INCLUDE_DIRS}
\${GFLAGS_INCLUDE_DIRS}
\${GLOG_INCLUDE_DIRS}
) )
set(SRC set(SRC
@ -145,16 +147,6 @@ else()
add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION) add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION)
endif() endif()
if(WIN32)
list(APPEND INC
../glog/src/windows
)
else()
list(APPEND INC
../glog/src
)
endif()
add_definitions(\${GFLAGS_DEFINES}) add_definitions(\${GFLAGS_DEFINES})
add_definitions(\${GLOG_DEFINES}) add_definitions(\${GLOG_DEFINES})
add_definitions(\${CERES_DEFINES}) add_definitions(\${CERES_DEFINES})

@ -17,10 +17,5 @@ Local modifications:
- Applied some modifications from fork https://github.com/Nazg-Gul/gflags.git - Applied some modifications from fork https://github.com/Nazg-Gul/gflags.git
(see https://github.com/gflags/gflags/pull/129) (see https://github.com/gflags/gflags/pull/129)
- Made `google::{anonymous}::FlagValue::ValueSize() const` inlined, so it does
not trigger strict compiler warning.
- Did the same for CommandLineFlagParser::ValidateFlags().
- Ifdef-ed __attribute((unused)) in gflags.h. - Ifdef-ed __attribute((unused)) in gflags.h.
This file is compile-time configurable in upstream, so can not avoid change here. This file is compile-time configurable in upstream, so can not avoid change here.

@ -225,7 +225,7 @@ class FlagValue {
bool Equal(const FlagValue& x) const; bool Equal(const FlagValue& x) const;
FlagValue* New() const; // creates a new one with default value FlagValue* New() const; // creates a new one with default value
void CopyFrom(const FlagValue& x); void CopyFrom(const FlagValue& x);
inline int ValueSize() const; int ValueSize() const;
// Calls the given validate-fn on value_buffer_, and returns // Calls the given validate-fn on value_buffer_, and returns
// whatever it returns. But first casts validate_fn_proto to a // whatever it returns. But first casts validate_fn_proto to a
@ -485,7 +485,7 @@ void FlagValue::CopyFrom(const FlagValue& x) {
} }
} }
inline int FlagValue::ValueSize() const { int FlagValue::ValueSize() const {
if (type_ > FV_MAX_INDEX) { if (type_ > FV_MAX_INDEX) {
assert(false); // unknown type assert(false); // unknown type
return 0; return 0;
@ -1257,7 +1257,7 @@ void CommandLineFlagParser::ValidateFlags(bool all) {
} }
} }
inline void CommandLineFlagParser::ValidateAllFlags() { void CommandLineFlagParser::ValidateAllFlags() {
ValidateFlags(true); ValidateFlags(true);
} }

@ -55,8 +55,6 @@
#include <utility> #include <utility>
#include <vector> #include <vector>
#include "gflags_completions.h"
#include "config.h" #include "config.h"
#include "gflags/gflags.h" #include "gflags/gflags.h"
#include "gflags/gflags_completions.h" #include "gflags/gflags_completions.h"

@ -23,6 +23,7 @@
# ***** END GPL LICENSE BLOCK ***** # ***** END GPL LICENSE BLOCK *****
set(INC set(INC
src
../gflags/src ../gflags/src
) )
@ -70,24 +71,23 @@ if(WIN32)
list(APPEND INC list(APPEND INC
src/windows src/windows
src
) )
else() else()
list(APPEND INC list(APPEND INC
src include
) )
list(APPEND SRC list(APPEND SRC
src/demangle.cc src/demangle.cc
src/signalhandler.cc src/signalhandler.cc
src/symbolize.cc src/symbolize.cc
src/demangle.h src/demangle.h
src/glog/logging.h
src/glog/log_severity.h
src/glog/raw_logging.h
src/glog/vlog_is_on.h
src/symbolize.h src/symbolize.h
include/glog/logging.h
include/glog/log_severity.h
include/glog/raw_logging.h
include/glog/vlog_is_on.h
) )
endif() endif()

@ -5,3 +5,5 @@ Upstream version: 0.3.5, a6a166db069
Local modifications: Local modifications:
* Added per-platform config.h files so no configuration-time * Added per-platform config.h files so no configuration-time
checks for functions and so are needed. checks for functions and so are needed.
* Added special definitions of HAVE_SNPRINTF and HAVE_LIB_GFLAGS
in Windows' specific config.h.

@ -33,11 +33,6 @@
// Pretty much everybody needs to #include this file so that they can // Pretty much everybody needs to #include this file so that they can
// log various happenings. // log various happenings.
// //
#ifdef WIN32
# include "windows/glog/logging.h"
#else // WIN32
#ifndef _LOGGING_H_ #ifndef _LOGGING_H_
#define _LOGGING_H_ #define _LOGGING_H_
@ -1628,5 +1623,3 @@ GOOGLE_GLOG_DLL_DECL void InstallFailureWriter(
} }
#endif // _LOGGING_H_ #endif // _LOGGING_H_
#endif // WIN32

@ -33,10 +33,6 @@
// acquire any locks, and can therefore be used by low-level memory // acquire any locks, and can therefore be used by low-level memory
// allocation and synchronization code. // allocation and synchronization code.
#ifdef WIN32
# include "windows/glog/raw_logging.h"
#else // WIN32
#ifndef BASE_RAW_LOGGING_H_ #ifndef BASE_RAW_LOGGING_H_
#define BASE_RAW_LOGGING_H_ #define BASE_RAW_LOGGING_H_
@ -187,5 +183,3 @@ GOOGLE_GLOG_DLL_DECL void RawLog__SetLastTime(const struct tm& t, int usecs);
} }
#endif // BASE_RAW_LOGGING_H_ #endif // BASE_RAW_LOGGING_H_
#endif // WIN32

@ -44,10 +44,6 @@
// - GLOG_STL_LOGGING_FOR_EXT_SLIST - <ext/slist> // - GLOG_STL_LOGGING_FOR_EXT_SLIST - <ext/slist>
// //
#ifdef WIN32
# include "windows/glog/stl_logging.h"
#else // WIN32
#ifndef UTIL_GTL_STL_LOGGING_INL_H_ #ifndef UTIL_GTL_STL_LOGGING_INL_H_
#define UTIL_GTL_STL_LOGGING_INL_H_ #define UTIL_GTL_STL_LOGGING_INL_H_
@ -222,5 +218,3 @@ inline void PrintSequence(std::ostream& out, Iter begin, Iter end) {
namespace std { using ::operator<<; } namespace std { using ::operator<<; }
#endif // UTIL_GTL_STL_LOGGING_INL_H_ #endif // UTIL_GTL_STL_LOGGING_INL_H_
#endif // WIN32

@ -86,7 +86,7 @@
#include <inttypes.h> // a third place for uint16_t or u_int16_t #include <inttypes.h> // a third place for uint16_t or u_int16_t
#endif #endif
#if 1 #if 0
#include <gflags/gflags.h> #include <gflags/gflags.h>
#endif #endif

@ -18,6 +18,7 @@
#define __UTIL_LOGGING_H__ #define __UTIL_LOGGING_H__
#if defined(WITH_CYCLES_LOGGING) && !defined(__KERNEL_GPU__) #if defined(WITH_CYCLES_LOGGING) && !defined(__KERNEL_GPU__)
# include <gflags/gflags.h>
# include <glog/logging.h> # include <glog/logging.h>
#endif #endif

@ -45,7 +45,7 @@ if(WITH_LIBMV)
list(APPEND INC list(APPEND INC
${GFLAGS_INCLUDE_DIRS} ${GFLAGS_INCLUDE_DIRS}
../../extern/glog/src ${GLOG_INCLUDE_DIRS}
../../extern/ceres/include ../../extern/ceres/include
../../extern/ceres/config ../../extern/ceres/config
../guardedalloc ../guardedalloc

@ -124,7 +124,7 @@ if(WITH_LIBMV)
list(APPEND INC list(APPEND INC
\${GFLAGS_INCLUDE_DIRS} \${GFLAGS_INCLUDE_DIRS}
../../extern/glog/src \${GLOG_INCLUDE_DIRS}
../../extern/ceres/include ../../extern/ceres/include
../../extern/ceres/config ../../extern/ceres/config
../guardedalloc ../guardedalloc