We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
[package] clickhouse-cpp/*: fPIC option is not respected
In the recipe file fPIC option is always removed during configure stage, which can lead to not working static library.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `recipes/clickhouse-cpp/all/conanfile.py`
Content:
```
1 from conan import ConanFile
2 from conan.tools.cmake import CMake, CMakeToolchain,CMakeDeps, cmake_layout
3 from conan.tools.files import copy, get
4 from conan.tools.build import check_min_cppstd
5 from conan.errors import ConanInvalidConfiguration
6 from conan.tools.scm import Version
7 import os
8 
9 required_conan_version = ">=1.53.0"
10 
11 class ClickHouseCppConan(ConanFile):
12     name = "clickhouse-cpp"
13     homepage = "https://github.com/ClickHouse/clickhouse-cpp"
14     url = "https://github.com/conan-io/conan-center-index"
15     description = "ClickHouse C++ API"
16     license = "Apache-2.0"
17     topics = ("database", "db", "clickhouse")
18     settings = "os", "arch", "compiler", "build_type"
19     options = {
20         "shared": [True, False],
21         "fPIC": [True, False],
22         "enable_benchmark": [True, False],
23         "with_openssl": [True, False]
24     }
25     default_options = {
26         "shared": False,
27         "fPIC": True,
28         "enable_benchmark": False,
29         "with_openssl": False
30     }
31 
32     def requirements(self):
33 
34         self.requires("lz4/1.9.4")
35 
36         self.requires("abseil/20230125.3", transitive_headers=True)
37 
38         self.requires("cityhash/cci.20130801")
39         if self.options.with_openssl:
40             self.requires("openssl/[>=1.1 <4]")
41 
42     def build_requirements(self):
43         if self.options.enable_benchmark:
44             self.requires("benchmark/1.8.0")
45 
46     @property
47     def _min_cppstd(self):
48         return "17"
49 
50     @property
51     def _compilers_minimum_version(self):
52         return {
53             "Visual Studio": "15",
54             "msvc": "191",
55             "gcc": "7",
56             "clang": "6",
57         }
58 
59     @property
60     def _requires_compiler_rt(self):
61         return self.settings.compiler == "clang" and (( self.settings.compiler.libcxx in ["libstdc++", "libstdc++11"] and not self.options.shared) or  self.settings.compiler.libcxx == "libc++" )
62 
63     def validate(self):
64         if self.settings.compiler.get_safe("cppstd"):
65             check_min_cppstd(self, self._min_cppstd)
66         minimum_version = self._compilers_minimum_version.get(str(self.settings.compiler), False)
67         if minimum_version and Version(self.settings.compiler.version) < minimum_version:
68             raise ConanInvalidConfiguration(f"{self.ref} requires C++17, which your compiler does not support.")
69         if self.settings.os == "Windows" and self.options.shared:
70             raise ConanInvalidConfiguration("f{self.ref} does not support shared library on Windows.")
71             # look at https://github.com/ClickHouse/clickhouse-cpp/pull/226
72 
73     def config_options(self):
74         if self.settings.os == "Windows":
75             del self.options.fPIC
76 
77     def configure(self):
78         self.options.rm_safe("fPIC")
79 
80     def layout(self):
81         cmake_layout(self, src_folder="src")
82 
83     def source(self):
84         get(self, **self.conan_data["sources"][self.version],
85             destination=self.source_folder, strip_root=True)
86 
87     def generate(self):
88         tc = CMakeToolchain(self)
89         tc.variables["BUILD_BENCHMARK"] =  self.options.enable_benchmark
90         tc.cache_variables["BUILD_SHARED_LIBS"] = self.options.shared
91         tc.variables["WITH_OPENSSL"] = self.options.with_openssl
92         tc.cache_variables["WITH_SYSTEM_ABSEIL"] = True
93         tc.cache_variables["WITH_SYSTEM_LZ4"] = True
94         tc.cache_variables["WITH_SYSTEM_CITYHASH"] = True
95         tc.generate()
96 
97         cd = CMakeDeps(self)
98         cd.generate()
99 
100     def build(self):
101         cmake = CMake(self)
102         cmake.configure()
103         cmake.build()
104 
105     def package(self):
106         copy(self, "LICENSE", src=self.source_folder, dst=os.path.join(self.package_folder, "licenses"))
107         cmake = CMake(self)
108         cmake.install()
109 
110     def package_info(self):
111         self.cpp_info.libs.append("clickhouse-cpp-lib")
112         self.cpp_info.set_property("cmake_target_name", "clickhouse-cpp-lib::clickhouse-cpp-lib")
113 
114         if self._requires_compiler_rt:
115             ldflags = ["--rtlib=compiler-rt"]
116             self.cpp_info.exelinkflags = ldflags
117             self.cpp_info.sharedlinkflags = ldflags
118             self.cpp_info.system_libs.append("gcc_s")
119 
120         self.cpp_info.filenames["cmake_find_package"] = "clickhouse-cpp"
121         self.cpp_info.filenames["cmake_find_package_multi"] = "clickhouse-cpp"
122         self.cpp_info.names["cmake_find_package"] = "clickhouse-cpp-lib"
123         self.cpp_info.names["cmake_find_package_multi"] = "clickhouse-cpp-lib"
124 
125         if self.settings.os == 'Windows':
126             self.cpp_info.system_libs = ['ws2_32', 'wsock32']
127
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/recipes/clickhouse-cpp/all/conanfile.py b/recipes/clickhouse-cpp/all/conanfile.py
--- a/recipes/clickhouse-cpp/all/conanfile.py
+++ b/recipes/clickhouse-cpp/all/conanfile.py
@@ -75,7 +75,8 @@
             del self.options.fPIC
 
     def configure(self):
-        self.options.rm_safe("fPIC")
+        if self.options.shared:
+            self.options.rm_safe("fPIC")
 
     def layout(self):
         cmake_layout(self, src_folder="src")

{"golden_diff": "diff --git a/recipes/clickhouse-cpp/all/conanfile.py b/recipes/clickhouse-cpp/all/conanfile.py\n--- a/recipes/clickhouse-cpp/all/conanfile.py\n+++ b/recipes/clickhouse-cpp/all/conanfile.py\n@@ -75,7 +75,8 @@\n             del self.options.fPIC\n \n     def configure(self):\n-        self.options.rm_safe(\"fPIC\")\n+        if self.options.shared:\n+            self.options.rm_safe(\"fPIC\")\n \n     def layout(self):\n         cmake_layout(self, src_folder=\"src\")\n", "issue": "[package] clickhouse-cpp/*: fPIC option is not respected\nIn the recipe file fPIC option is always removed during configure stage, which can lead to not working static library.\n", "before_files": [{"content": "from conan import ConanFile\nfrom conan.tools.cmake import CMake, CMakeToolchain,CMakeDeps, cmake_layout\nfrom conan.tools.files import copy, get\nfrom conan.tools.build import check_min_cppstd\nfrom conan.errors import ConanInvalidConfiguration\nfrom conan.tools.scm import Version\nimport os\n\nrequired_conan_version = \">=1.53.0\"\n\nclass ClickHouseCppConan(ConanFile):\n    name = \"clickhouse-cpp\"\n    homepage = \"https://github.com/ClickHouse/clickhouse-cpp\"\n    url = \"https://github.com/conan-io/conan-center-index\"\n    description = \"ClickHouse C++ API\"\n    license = \"Apache-2.0\"\n    topics = (\"database\", \"db\", \"clickhouse\")\n    settings = \"os\", \"arch\", \"compiler\", \"build_type\"\n    options = {\n        \"shared\": [True, False],\n        \"fPIC\": [True, False],\n        \"enable_benchmark\": [True, False],\n        \"with_openssl\": [True, False]\n    }\n    default_options = {\n        \"shared\": False,\n        \"fPIC\": True,\n        \"enable_benchmark\": False,\n        \"with_openssl\": False\n    }\n\n    def requirements(self):\n\n        self.requires(\"lz4/1.9.4\")\n\n        self.requires(\"abseil/20230125.3\", transitive_headers=True)\n\n        self.requires(\"cityhash/cci.20130801\")\n        if self.options.with_openssl:\n            self.requires(\"openssl/[>=1.1 <4]\")\n\n    def build_requirements(self):\n        if self.options.enable_benchmark:\n            self.requires(\"benchmark/1.8.0\")\n\n    @property\n    def _min_cppstd(self):\n        return \"17\"\n\n    @property\n    def _compilers_minimum_version(self):\n        return {\n            \"Visual Studio\": \"15\",\n            \"msvc\": \"191\",\n            \"gcc\": \"7\",\n            \"clang\": \"6\",\n        }\n\n    @property\n    def _requires_compiler_rt(self):\n        return self.settings.compiler == \"clang\" and (( self.settings.compiler.libcxx in [\"libstdc++\", \"libstdc++11\"] and not self.options.shared) or  self.settings.compiler.libcxx == \"libc++\" )\n\n    def validate(self):\n        if self.settings.compiler.get_safe(\"cppstd\"):\n            check_min_cppstd(self, self._min_cppstd)\n        minimum_version = self._compilers_minimum_version.get(str(self.settings.compiler), False)\n        if minimum_version and Version(self.settings.compiler.version) < minimum_version:\n            raise ConanInvalidConfiguration(f\"{self.ref} requires C++17, which your compiler does not support.\")\n        if self.settings.os == \"Windows\" and self.options.shared:\n            raise ConanInvalidConfiguration(\"f{self.ref} does not support shared library on Windows.\")\n            # look at https://github.com/ClickHouse/clickhouse-cpp/pull/226\n\n    def config_options(self):\n        if self.settings.os == \"Windows\":\n            del self.options.fPIC\n\n    def configure(self):\n        self.options.rm_safe(\"fPIC\")\n\n    def layout(self):\n        cmake_layout(self, src_folder=\"src\")\n\n    def source(self):\n        get(self, **self.conan_data[\"sources\"][self.version],\n            destination=self.source_folder, strip_root=True)\n\n    def generate(self):\n        tc = CMakeToolchain(self)\n        tc.variables[\"BUILD_BENCHMARK\"] =  self.options.enable_benchmark\n        tc.cache_variables[\"BUILD_SHARED_LIBS\"] = self.options.shared\n        tc.variables[\"WITH_OPENSSL\"] = self.options.with_openssl\n        tc.cache_variables[\"WITH_SYSTEM_ABSEIL\"] = True\n        tc.cache_variables[\"WITH_SYSTEM_LZ4\"] = True\n        tc.cache_variables[\"WITH_SYSTEM_CITYHASH\"] = True\n        tc.generate()\n\n        cd = CMakeDeps(self)\n        cd.generate()\n\n    def build(self):\n        cmake = CMake(self)\n        cmake.configure()\n        cmake.build()\n\n    def package(self):\n        copy(self, \"LICENSE\", src=self.source_folder, dst=os.path.join(self.package_folder, \"licenses\"))\n        cmake = CMake(self)\n        cmake.install()\n\n    def package_info(self):\n        self.cpp_info.libs.append(\"clickhouse-cpp-lib\")\n        self.cpp_info.set_property(\"cmake_target_name\", \"clickhouse-cpp-lib::clickhouse-cpp-lib\")\n\n        if self._requires_compiler_rt:\n            ldflags = [\"--rtlib=compiler-rt\"]\n            self.cpp_info.exelinkflags = ldflags\n            self.cpp_info.sharedlinkflags = ldflags\n            self.cpp_info.system_libs.append(\"gcc_s\")\n\n        self.cpp_info.filenames[\"cmake_find_package\"] = \"clickhouse-cpp\"\n        self.cpp_info.filenames[\"cmake_find_package_multi\"] = \"clickhouse-cpp\"\n        self.cpp_info.names[\"cmake_find_package\"] = \"clickhouse-cpp-lib\"\n        self.cpp_info.names[\"cmake_find_package_multi\"] = \"clickhouse-cpp-lib\"\n\n        if self.settings.os == 'Windows':\n            self.cpp_info.system_libs = ['ws2_32', 'wsock32']\n", "path": "recipes/clickhouse-cpp/all/conanfile.py"}], "after_files": [{"content": "from conan import ConanFile\nfrom conan.tools.cmake import CMake, CMakeToolchain,CMakeDeps, cmake_layout\nfrom conan.tools.files import copy, get\nfrom conan.tools.build import check_min_cppstd\nfrom conan.errors import ConanInvalidConfiguration\nfrom conan.tools.scm import Version\nimport os\n\nrequired_conan_version = \">=1.53.0\"\n\nclass ClickHouseCppConan(ConanFile):\n    name = \"clickhouse-cpp\"\n    homepage = \"https://github.com/ClickHouse/clickhouse-cpp\"\n    url = \"https://github.com/conan-io/conan-center-index\"\n    description = \"ClickHouse C++ API\"\n    license = \"Apache-2.0\"\n    topics = (\"database\", \"db\", \"clickhouse\")\n    settings = \"os\", \"arch\", \"compiler\", \"build_type\"\n    options = {\n        \"shared\": [True, False],\n        \"fPIC\": [True, False],\n        \"enable_benchmark\": [True, False],\n        \"with_openssl\": [True, False]\n    }\n    default_options = {\n        \"shared\": False,\n        \"fPIC\": True,\n        \"enable_benchmark\": False,\n        \"with_openssl\": False\n    }\n\n    def requirements(self):\n\n        self.requires(\"lz4/1.9.4\")\n\n        self.requires(\"abseil/20230125.3\", transitive_headers=True)\n\n        self.requires(\"cityhash/cci.20130801\")\n        if self.options.with_openssl:\n            self.requires(\"openssl/[>=1.1 <4]\")\n\n    def build_requirements(self):\n        if self.options.enable_benchmark:\n            self.requires(\"benchmark/1.8.0\")\n\n    @property\n    def _min_cppstd(self):\n        return \"17\"\n\n    @property\n    def _compilers_minimum_version(self):\n        return {\n            \"Visual Studio\": \"15\",\n            \"msvc\": \"191\",\n            \"gcc\": \"7\",\n            \"clang\": \"6\",\n        }\n\n    @property\n    def _requires_compiler_rt(self):\n        return self.settings.compiler == \"clang\" and (( self.settings.compiler.libcxx in [\"libstdc++\", \"libstdc++11\"] and not self.options.shared) or  self.settings.compiler.libcxx == \"libc++\" )\n\n    def validate(self):\n        if self.settings.compiler.get_safe(\"cppstd\"):\n            check_min_cppstd(self, self._min_cppstd)\n        minimum_version = self._compilers_minimum_version.get(str(self.settings.compiler), False)\n        if minimum_version and Version(self.settings.compiler.version) < minimum_version:\n            raise ConanInvalidConfiguration(f\"{self.ref} requires C++17, which your compiler does not support.\")\n        if self.settings.os == \"Windows\" and self.options.shared:\n            raise ConanInvalidConfiguration(\"f{self.ref} does not support shared library on Windows.\")\n            # look at https://github.com/ClickHouse/clickhouse-cpp/pull/226\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            self.options.rm_safe(\"fPIC\")\n\n    def layout(self):\n        cmake_layout(self, src_folder=\"src\")\n\n    def source(self):\n        get(self, **self.conan_data[\"sources\"][self.version],\n            destination=self.source_folder, strip_root=True)\n\n    def generate(self):\n        tc = CMakeToolchain(self)\n        tc.variables[\"BUILD_BENCHMARK\"] =  self.options.enable_benchmark\n        tc.cache_variables[\"BUILD_SHARED_LIBS\"] = self.options.shared\n        tc.variables[\"WITH_OPENSSL\"] = self.options.with_openssl\n        tc.cache_variables[\"WITH_SYSTEM_ABSEIL\"] = True\n        tc.cache_variables[\"WITH_SYSTEM_LZ4\"] = True\n        tc.cache_variables[\"WITH_SYSTEM_CITYHASH\"] = True\n        tc.generate()\n\n        cd = CMakeDeps(self)\n        cd.generate()\n\n    def build(self):\n        cmake = CMake(self)\n        cmake.configure()\n        cmake.build()\n\n    def package(self):\n        copy(self, \"LICENSE\", src=self.source_folder, dst=os.path.join(self.package_folder, \"licenses\"))\n        cmake = CMake(self)\n        cmake.install()\n\n    def package_info(self):\n        self.cpp_info.libs.append(\"clickhouse-cpp-lib\")\n        self.cpp_info.set_property(\"cmake_target_name\", \"clickhouse-cpp-lib::clickhouse-cpp-lib\")\n\n        if self._requires_compiler_rt:\n            ldflags = [\"--rtlib=compiler-rt\"]\n            self.cpp_info.exelinkflags = ldflags\n            self.cpp_info.sharedlinkflags = ldflags\n            self.cpp_info.system_libs.append(\"gcc_s\")\n\n        self.cpp_info.filenames[\"cmake_find_package\"] = \"clickhouse-cpp\"\n        self.cpp_info.filenames[\"cmake_find_package_multi\"] = \"clickhouse-cpp\"\n        self.cpp_info.names[\"cmake_find_package\"] = \"clickhouse-cpp-lib\"\n        self.cpp_info.names[\"cmake_find_package_multi\"] = \"clickhouse-cpp-lib\"\n\n        if self.settings.os == 'Windows':\n            self.cpp_info.system_libs = ['ws2_32', 'wsock32']\n", "path": "recipes/clickhouse-cpp/all/conanfile.py"}]}