diff --git a/docs/installing-solidity.rst b/docs/installing-solidity.rst index 1b6ac6635450..8c2830451c2d 100644 --- a/docs/installing-solidity.rst +++ b/docs/installing-solidity.rst @@ -319,9 +319,10 @@ The following are dependencies for all builds of Solidity: +-----------------------------------+-------------------------------------------------------+ | Software | Notes | +===================================+=======================================================+ -| `CMake`_ (version 3.13+) | Cross-platform build file generator. | +| `CMake`_ (version 3.21.3+ on | Cross-platform build file generator. | +| Windows, 3.13+ otherwise) | | +-----------------------------------+-------------------------------------------------------+ -| `Boost`_ (version 1.77+ on | C++ libraries. | +| `Boost`_ (version 1.77 on | C++ libraries. | | Windows, 1.65+ otherwise) | | +-----------------------------------+-------------------------------------------------------+ | `Git`_ | Command-line tool for retrieving source code. | @@ -408,7 +409,7 @@ You need to install the following dependencies for Windows builds of Solidity: +-----------------------------------+-------------------------------------------------------+ | `Visual Studio 2019`_ (Optional) | C++ compiler and dev environment. | +-----------------------------------+-------------------------------------------------------+ -| `Boost`_ (version 1.77+) | C++ libraries. | +| `Boost`_ (version 1.77) | C++ libraries. | +-----------------------------------+-------------------------------------------------------+ If you already have one IDE and only need the compiler and libraries, diff --git a/libsolidity/lsp/LanguageServer.cpp b/libsolidity/lsp/LanguageServer.cpp index 2d85c08b0ef9..aaa63b7f84ff 100644 --- a/libsolidity/lsp/LanguageServer.cpp +++ b/libsolidity/lsp/LanguageServer.cpp @@ -220,8 +220,12 @@ vector LanguageServer::allSolidityFilesFromProject() co // We explicitly decided against including all files from include paths but leave the possibility // open for a future PR to enable such a feature to be optionally enabled (default disabled). - + // Note: Newer versions of boost have deprecated symlink_option::recurse +#if (BOOST_VERSION < 107200) + auto directoryIterator = fs::recursive_directory_iterator(m_fileRepository.basePath(), fs::symlink_option::recurse); +#else auto directoryIterator = fs::recursive_directory_iterator(m_fileRepository.basePath(), fs::directory_options::follow_directory_symlink); +#endif for (fs::directory_entry const& dirEntry: directoryIterator) if ( dirEntry.path().extension() == ".sol" && diff --git a/libsolutil/Common.h b/libsolutil/Common.h index 5c781461376d..eea9dacd5451 100644 --- a/libsolutil/Common.h +++ b/libsolutil/Common.h @@ -41,9 +41,6 @@ #include #include -#if (BOOST_VERSION < 106500) -#error "Unsupported Boost version. At least 1.65 required." -#endif #include #include diff --git a/libsolutil/Numeric.h b/libsolutil/Numeric.h index c0f33e490653..be9f0bea243a 100644 --- a/libsolutil/Numeric.h +++ b/libsolutil/Numeric.h @@ -25,9 +25,6 @@ #include #include -#if (BOOST_VERSION < 106500) -#error "Unsupported Boost version. At least 1.65 required." -#endif // TODO: do this only conditionally as soon as a boost version with gcc 12 support is released. #if defined(__GNUC__) && !defined(__clang__) && (__GNUC__ >= 12)