Repository: conan-io/conan-center-index

Issue:
[package] boost/1.83.0 build failed with gcc==4.8
### Description

Build boost/1.83.0 failed with gcc==4.8.  

### Package and Environment Details

* Package Name/Version: **boost/1.83.0**
* Operating System+version: **Linux Ubuntu 16.04**
* Compiler+version: **GCC 4.8**
* Conan version: **conan 1.59.0**
* Python version: **Python 2.7.12**


### Conan profile

[settings]
arch=x86_64
arch_build=x86_64
build_type=Release
compiler=gcc
compiler.libcxx=libstdc++
compiler.version=4.8
os=Linux
os_build=Linux
[options]
[build_requires]
[env]


### Steps to reproduce

conan install -r conancenter boost/1.83.0@ -pr:b=default -pr:h=default

### Logs

![企业微信截图_17156010749901](https://github.com/conan-io/conan-center-index/assets/25975144/6cfb503e-e5d9-4c82-8f1d-1b253ed3eae0)


Discussion:
By examining the code, I have discovered that the issue is caused by an incorrect judgment.

```diff
index 48dad5b67..9154a553e 100644
--- a/recipes/boost/all/conanfile.py
+++ b/recipes/boost/all/conanfile.py
@@ -265,7 +265,7 @@ class BoostConan(ConanFile):
             return valid_min_cppstd(self, 11)
         compiler_version = self._min_compiler_version_default_cxx11
         if compiler_version:
-            return (Version(self.settings.compiler.version) >= compiler_version) or "11" in supported_cppstd(self)
+            return (Version(self.settings.compiler.version) >= compiler_version) and "11" in supported_cppstd(self)
 
     @property
     def _has_cppstd_14_supported(self):
```
I have fixed this issue by making the modifications mentioned above.

@Rickylss Thank you for providing an analyze over the case. I'll take a look on this. 

Resolving patch:
diff --git a/recipes/boost/all/conanfile.py b/recipes/boost/all/conanfile.py
--- a/recipes/boost/all/conanfile.py
+++ b/recipes/boost/all/conanfile.py
@@ -287,7 +287,7 @@ def _has_cppstd_14_supported(self):
     def _min_compiler_version_nowide(self):
         # Nowide needs c++11 + swappable std::fstream
         return {
-            "gcc": 5,
+            "gcc": 4.8,
             "clang": 5,
             "Visual Studio": 14,  # guess
             "msvc": 190,  # guess
@@ -435,6 +435,9 @@ def disable_math():
                     self.output.warning("Assuming the compiler supports c++11 by default")
                 elif not self._has_cppstd_11_supported:
                     disable_math()
+                # Boost.Math is not built when the compiler is GCC < 5 and uses C++11
+                elif self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "5":
+                    disable_math()
 
         if Version(self.version) >= "1.79.0":
             # Starting from 1.79.0, Boost.Wave requires a c++11 capable compiler
@@ -457,6 +460,9 @@ def disable_wave():
                     self.output.warning("Assuming the compiler supports c++11 by default")
                 elif not self._has_cppstd_11_supported:
                     disable_wave()
+                # Boost.Wave is not built when the compiler is GCC < 5 and uses C++11
+                elif self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "5":
+                    disable_wave()
 
         if Version(self.version) >= "1.81.0":
             # Starting from 1.81.0, Boost.Locale requires a c++11 capable compiler
@@ -479,6 +485,9 @@ def disable_locale():
                     self.output.warning("Assuming the compiler supports c++11 by default")
                 elif not self._has_cppstd_11_supported:
                     disable_locale()
+                # Boost.Locale is not built when the compiler is GCC < 5 and uses C++11
+                elif self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "5":
+                    disable_locale()
 
         if Version(self.version) >= "1.84.0":
             # Starting from 1.84.0, Boost.Cobalt requires a c++20 capable compiler


Test patch: