prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  GLOG 0.4.0 : unresolved external symbol google::InitGoogleLogging
  
  Package Name/Version: **glog/0.4.0**
  Operating System+version: **Win 10**
  Compiler+version: **MSVS 2015 & MSVS 2019**
  Conan version: **1.28.0**
  cmake version:**3.18.0**
  Ninja version:**1.10.0**
  
  This may be similar to: https://github.com/conan-io/conan-center-index/issues/1691
  
  Using conan-cmake:
  ``` Bash
  conan_cmake_run(
              REQUIRES
                  glog/0.4.0
              IMPORTS
                  ${CONANIMPORTS}
              BASIC_SETUP
                  CMAKE_TARGETS
              )
  
  add_executable( ${PROJECT_NAME} ${SOURCES}   )
  target_link_libraries(${PROJECT_NAME} CONAN_PKG::glog)
  
  ```
  
  main.cpp is simple enough:
  
  ```Bash
  
  #include <glog/logging.h>
  
  int main(int argc, char* argv[]) {
  
  
       // Initialize Google's logging library.
       google::InitGoogleLogging(argv[0]);
  
       LOG(INFO) << "This is an info  message";
       LOG(WARNING) << "This is a warning message";
       LOG(ERROR) << "This is an error message";
       LOG(FATAL) << "This is a fatal message";
  
       return 0;
  }
  ```
  
  Log attached below.
  [Conan_GLOG_Fail.log](https://github.com/conan-io/conan-center-index/files/5062714/Conan_GLOG_Fail.log)
  
  </issue>
  <code>
  [start of recipes/glog/all/conanfile.py]
  1 from conans import ConanFile, CMake, tools
  2 import os
  3 
  4 
  5 class GlogConan(ConanFile):
  6     name = "glog"
  7     url = "https://github.com/conan-io/conan-center-index"
  8     homepage = "https://github.com/google/glog/"
  9     description = "Google logging library"
  10     topics = ("conan", "glog", "logging")
  11     license = "BSD 3-Clause"
  12     exports_sources = ["CMakeLists.txt", "patches/**"]
  13     generators = "cmake", "cmake_find_package"
  14     settings = "os", "arch", "compiler", "build_type"
  15     options = {"shared": [True, False], "fPIC": [True, False], "with_gflags": [True, False], "with_threads": [True, False]}
  16     default_options = {"shared": False, "fPIC": True, "with_gflags": True, "with_threads": True}
  17 
  18     _cmake = None
  19 
  20     @property
  21     def _source_subfolder(self):
  22         return "source_subfolder"
  23 
  24     def config_options(self):
  25         if self.settings.os == "Windows":
  26             del self.options.fPIC
  27 
  28     def configure(self):
  29         if self.options.shared:
  30             del self.options.fPIC
  31         if self.options.with_gflags:
  32             self.options["gflags"].shared = self.options.shared
  33 
  34     def requirements(self):
  35         if self.options.with_gflags:
  36             self.requires("gflags/2.2.2")
  37 
  38     def source(self):
  39         tools.get(**self.conan_data["sources"][self.version])
  40         extracted_dir = self.name + "-" + self.version
  41         os.rename(extracted_dir, self._source_subfolder)
  42 
  43     def _configure_cmake(self):
  44         if self._cmake:
  45             return self._cmake
  46         self._cmake = CMake(self)
  47         self._cmake.definitions["WITH_GFLAGS"] = self.options.with_gflags
  48         self._cmake.definitions["WITH_THREADS"] = self.options.with_threads
  49         self._cmake.definitions["BUILD_TESTING"] = False
  50         self._cmake.configure()
  51         return self._cmake
  52 
  53     def build(self):
  54         for patch in self.conan_data.get("patches", {}).get(self.version, []):
  55             tools.patch(**patch)
  56         cmake = self._configure_cmake()
  57         cmake.build()
  58 
  59     def package(self):
  60         self.copy("COPYING", dst="licenses", src=self._source_subfolder)
  61         cmake = self._configure_cmake()
  62         cmake.install()
  63         tools.rmdir(os.path.join(self.package_folder, "lib", "cmake"))
  64 
  65     def package_info(self):
  66         self.cpp_info.libs = tools.collect_libs(self)
  67         if self.settings.os == "Linux":
  68             self.cpp_info.system_libs.append("pthread")
  69
  [end of recipes/glog/all/conanfile.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/recipes/glog/all/conanfile.py b/recipes/glog/all/conanfile.py
  --- a/recipes/glog/all/conanfile.py
  +++ b/recipes/glog/all/conanfile.py
  @@ -8,7 +8,7 @@
       homepage = "https://github.com/google/glog/"
       description = "Google logging library"
       topics = ("conan", "glog", "logging")
  -    license = "BSD 3-Clause"
  +    license = "BSD-3-Clause"
       exports_sources = ["CMakeLists.txt", "patches/**"]
       generators = "cmake", "cmake_find_package"
       settings = "os", "arch", "compiler", "build_type"
  @@ -64,5 +64,12 @@
   
       def package_info(self):
           self.cpp_info.libs = tools.collect_libs(self)
  +        self.cpp_info.names["pkgconfig"] = ["libglog"]
           if self.settings.os == "Linux":
  -            self.cpp_info.system_libs.append("pthread")
  +            self.cpp_info.system_libs = ["pthread"]
  +        elif self.settings.os == "Windows":
  +            self.cpp_info.defines = ["GLOG_NO_ABBREVIATED_SEVERITIES"]
  +            decl = "__declspec(dllimport)" if self.options.shared else ""
  +            self.cpp_info.defines.append("GOOGLE_GLOG_DLL_DECL={}".format(decl))
  +        if self.options.with_gflags and not self.options.shared:
  +            self.cpp_info.defines.extend(["GFLAGS_DLL_DECLARE_FLAG=", "GFLAGS_DLL_DEFINE_FLAG="])
  
verification_info: {"golden_diff": "diff --git a/recipes/glog/all/conanfile.py b/recipes/glog/all/conanfile.py\n--- a/recipes/glog/all/conanfile.py\n+++ b/recipes/glog/all/conanfile.py\n@@ -8,7 +8,7 @@\n     homepage = \"https://github.com/google/glog/\"\n     description = \"Google logging library\"\n     topics = (\"conan\", \"glog\", \"logging\")\n-    license = \"BSD 3-Clause\"\n+    license = \"BSD-3-Clause\"\n     exports_sources = [\"CMakeLists.txt\", \"patches/**\"]\n     generators = \"cmake\", \"cmake_find_package\"\n     settings = \"os\", \"arch\", \"compiler\", \"build_type\"\n@@ -64,5 +64,12 @@\n \n     def package_info(self):\n         self.cpp_info.libs = tools.collect_libs(self)\n+        self.cpp_info.names[\"pkgconfig\"] = [\"libglog\"]\n         if self.settings.os == \"Linux\":\n-            self.cpp_info.system_libs.append(\"pthread\")\n+            self.cpp_info.system_libs = [\"pthread\"]\n+        elif self.settings.os == \"Windows\":\n+            self.cpp_info.defines = [\"GLOG_NO_ABBREVIATED_SEVERITIES\"]\n+            decl = \"__declspec(dllimport)\" if self.options.shared else \"\"\n+            self.cpp_info.defines.append(\"GOOGLE_GLOG_DLL_DECL={}\".format(decl))\n+        if self.options.with_gflags and not self.options.shared:\n+            self.cpp_info.defines.extend([\"GFLAGS_DLL_DECLARE_FLAG=\", \"GFLAGS_DLL_DEFINE_FLAG=\"])\n", "issue": "GLOG 0.4.0 : unresolved external symbol google::InitGoogleLogging\n\r\nPackage Name/Version: **glog/0.4.0**\r\nOperating System+version: **Win 10**\r\nCompiler+version: **MSVS 2015 & MSVS 2019**\r\nConan version: **1.28.0**\r\ncmake version:**3.18.0**\r\nNinja version:**1.10.0**\r\n\r\nThis may be similar to: https://github.com/conan-io/conan-center-index/issues/1691\r\n\r\nUsing conan-cmake:\r\n``` Bash\r\nconan_cmake_run(\r\n            REQUIRES\r\n                glog/0.4.0\r\n            IMPORTS\r\n                ${CONANIMPORTS}\r\n            BASIC_SETUP\r\n                CMAKE_TARGETS\r\n            )\r\n\r\nadd_executable( ${PROJECT_NAME} ${SOURCES}   )\r\ntarget_link_libraries(${PROJECT_NAME} CONAN_PKG::glog)\r\n\r\n```\r\n\r\nmain.cpp is simple enough:\r\n\r\n```Bash\r\n\r\n#include <glog/logging.h>\r\n\r\nint main(int argc, char* argv[]) {\r\n\r\n\r\n     // Initialize Google's logging library.\r\n     google::InitGoogleLogging(argv[0]);\r\n\r\n     LOG(INFO) << \"This is an info  message\";\r\n     LOG(WARNING) << \"This is a warning message\";\r\n     LOG(ERROR) << \"This is an error message\";\r\n     LOG(FATAL) << \"This is a fatal message\";\r\n\r\n     return 0;\r\n}\r\n```\r\n\r\nLog attached below.\r\n[Conan_GLOG_Fail.log](https://github.com/conan-io/conan-center-index/files/5062714/Conan_GLOG_Fail.log)\n", "before_files": [{"content": "from conans import ConanFile, CMake, tools\nimport os\n\n\nclass GlogConan(ConanFile):\n    name = \"glog\"\n    url = \"https://github.com/conan-io/conan-center-index\"\n    homepage = \"https://github.com/google/glog/\"\n    description = \"Google logging library\"\n    topics = (\"conan\", \"glog\", \"logging\")\n    license = \"BSD 3-Clause\"\n    exports_sources = [\"CMakeLists.txt\", \"patches/**\"]\n    generators = \"cmake\", \"cmake_find_package\"\n    settings = \"os\", \"arch\", \"compiler\", \"build_type\"\n    options = {\"shared\": [True, False], \"fPIC\": [True, False], \"with_gflags\": [True, False], \"with_threads\": [True, False]}\n    default_options = {\"shared\": False, \"fPIC\": True, \"with_gflags\": True, \"with_threads\": True}\n\n    _cmake = None\n\n    @property\n    def _source_subfolder(self):\n        return \"source_subfolder\"\n\n    def config_options(self):\n        if self.settings.os == \"Windows\":\n            del self.options.fPIC\n\n    def configure(self):\n        if self.options.shared:\n            del self.options.fPIC\n        if self.options.with_gflags:\n            self.options[\"gflags\"].shared = self.options.shared\n\n    def requirements(self):\n        if self.options.with_gflags:\n            self.requires(\"gflags/2.2.2\")\n\n    def source(self):\n        tools.get(**self.conan_data[\"sources\"][self.version])\n        extracted_dir = self.name + \"-\" + self.version\n        os.rename(extracted_dir, self._source_subfolder)\n\n    def _configure_cmake(self):\n        if self._cmake:\n            return self._cmake\n        self._cmake = CMake(self)\n        self._cmake.definitions[\"WITH_GFLAGS\"] = self.options.with_gflags\n        self._cmake.definitions[\"WITH_THREADS\"] = self.options.with_threads\n        self._cmake.definitions[\"BUILD_TESTING\"] = False\n        self._cmake.configure()\n        return self._cmake\n\n    def build(self):\n        for patch in self.conan_data.get(\"patches\", {}).get(self.version, []):\n            tools.patch(**patch)\n        cmake = self._configure_cmake()\n        cmake.build()\n\n    def package(self):\n        self.copy(\"COPYING\", dst=\"licenses\", src=self._source_subfolder)\n        cmake = self._configure_cmake()\n        cmake.install()\n        tools.rmdir(os.path.join(self.package_folder, \"lib\", \"cmake\"))\n\n    def package_info(self):\n        self.cpp_info.libs = tools.collect_libs(self)\n        if self.settings.os == \"Linux\":\n            self.cpp_info.system_libs.append(\"pthread\")\n", "path": "recipes/glog/all/conanfile.py"}]}