Refactor logging code
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7cdbcaf..d0b1096 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,11 +10,6 @@
 SET_PROPERTY(CACHE CPUINFO_LIBRARY_TYPE PROPERTY STRINGS default static shared)
 SET(CPUINFO_RUNTIME_TYPE "default" CACHE STRING "Type of runtime library (shared, static, or default) to use")
 SET_PROPERTY(CACHE CPUINFO_RUNTIME_TYPE PROPERTY STRINGS default static shared)
-IF(ANDROID)
-  OPTION(CPUINFO_LOG_TO_STDIO "Log errors, warnings, and information to stdout/stderr" OFF)
-ELSE()
-  OPTION(CPUINFO_LOG_TO_STDIO "Log errors, warnings, and information to stdout/stderr" ON)
-ENDIF()
 OPTION(CPUINFO_BUILD_TOOLS "Build command-line tools" ON)
 OPTION(CPUINFO_BUILD_UNIT_TESTS "Build cpuinfo unit tests" ON)
 OPTION(CPUINFO_BUILD_MOCK_TESTS "Build cpuinfo mock tests" ON)
@@ -122,8 +117,7 @@
 # ---[ cpuinfo library
 SET(CPUINFO_SRCS
   src/init.c
-  src/api.c
-  src/log.c)
+  src/api.c)
 
 IF(CPUINFO_SUPPORTED_PLATFORM)
   IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i686|x86_64|AMD64)$")
@@ -232,9 +226,6 @@
   IF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
     TARGET_COMPILE_DEFINITIONS(cpuinfo PRIVATE _GNU_SOURCE=1)
   ENDIF()
-  IF(CMAKE_SYSTEM_NAME STREQUAL "Android")
-    TARGET_LINK_LIBRARIES(cpuinfo PRIVATE log)
-  ENDIF()
   IF(IOS)
     TARGET_LINK_LIBRARIES(cpuinfo INTERFACE "-framework OpenGLES")
     TARGET_LINK_LIBRARIES(cpuinfo INTERFACE "-framework Foundation")
@@ -243,6 +234,17 @@
   TARGET_COMPILE_DEFINITIONS(cpuinfo INTERFACE CPUINFO_SUPPORTED_PLATFORM=0)
 ENDIF()
 
+# ---[ cpuinfo dependencies: clog
+IF(NOT DEFINED CLOG_SOURCE_DIR)
+  SET(CLOG_SOURCE_DIR "${PROJECT_SOURCE_DIR}/deps/clog")
+ENDIF()
+IF(NOT TARGET clog)
+  SET(CLOG_BUILD_TESTS OFF CACHE BOOL "")
+  ADD_SUBDIRECTORY(
+    "${CLOG_SOURCE_DIR}")
+ENDIF()
+TARGET_LINK_LIBRARIES(cpuinfo PRIVATE clog)
+
 INSTALL(TARGETS cpuinfo
   LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
   ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
@@ -309,6 +311,7 @@
   IF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
     TARGET_COMPILE_DEFINITIONS(cpuinfo_mock PRIVATE _GNU_SOURCE=1)
   ENDIF()
+  TARGET_LINK_LIBRARIES(cpuinfo_mock PRIVATE clog)
 
   IF(CMAKE_SYSTEM_NAME STREQUAL "Android" AND CMAKE_SYSTEM_PROCESSOR MATCHES "^(armv5te|armv7-a)$")
     ADD_EXECUTABLE(atm7029b-tablet-test test/mock/atm7029b-tablet.cc)