diff --git a/lang/solidity/Makefile b/lang/solidity/Makefile index 682189e3a31d..59c84e1dfdb9 100644 --- a/lang/solidity/Makefile +++ b/lang/solidity/Makefile @@ -1,48 +1,43 @@ PORTNAME= solidity -PORTVERSION= 0.8.27 +PORTVERSION= 0.8.30 CATEGORIES= lang MASTER_SITES= https://github.com/ethereum/solidity/releases/download/v${PORTVERSION}/ DISTNAME= ${PORTNAME}_${PORTVERSION} MAINTAINER= ale@FreeBSD.org COMMENT= Solidity Contract-Oriented Programming Language WWW= https://github.com/ethereum/solidity LICENSE= GPLv3 NOT_FOR_ARCHS= powerpc powerpc64 powerpcspe NOT_FOR_ARCHS_REASON= solidity currently does not support big endian systems BUILD_DEPENDS= boost-libs>=0:devel/boost-libs \ libfmt>=0:devel/libfmt \ nlohmann-json>=0:devel/nlohmann-json \ range-v3>=0:devel/range-v3 USES= cmake compiler:c++14-lang cpe CPE_VENDOR= ${PORTNAME}lang OPTIONS_DEFINE= Z3 CVC5 OPTIONS_DEFAULT=Z3 -OPTIONS_EXCLUDE_i386= Z3 Z3_DESC= SMT Checker via Z3 CVC5_DESC= SMT Checker via CVC5 -Z3_LIB_DEPENDS= libz3.so:math/z3 +Z3_RUN_DEPENDS= z3:math/z3 CVC5_RUN_DEPENDS= cvc5:math/cvc5 -Z3_CMAKE_OFF= USE_Z3 -CMAKE_ARGS+= -DUSE_LD_GOLD=OFF -DTESTS=OFF \ - -DIGNORE_VENDORED_DEPENDENCIES=ON \ - -DRANGE_V3_INCLUDE_DIR="${LOCALBASE}/include" \ - -DSTRICT_NLOHMANN_JSON_VERSION=OFF \ - -DSTRICT_Z3_VERSION=OFF +CMAKE_ARGS+= -DTESTS=OFF \ + -DIGNORE_VENDORED_DEPENDENCIES=ON PLIST_FILES= bin/solc \ bin/yul-phaser .include .if ${OPSYS} == FreeBSD CXXFLAGS+= -Wno-unqualified-std-cast-call .endif .include diff --git a/lang/solidity/distinfo b/lang/solidity/distinfo index ec2be3e84ea4..aca0f0d894e6 100644 --- a/lang/solidity/distinfo +++ b/lang/solidity/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1725531164 -SHA256 (solidity_0.8.27.tar.gz) = b015e05468f3da791c8b252eb201fa5cb1f62642d6285ed2a845b142f96fc8a6 -SIZE (solidity_0.8.27.tar.gz) = 12616162 +TIMESTAMP = 1746720051 +SHA256 (solidity_0.8.30.tar.gz) = 5e8d58dff551a18205e325c22f1a3b194058efbdc128853afd75d31b0568216d +SIZE (solidity_0.8.30.tar.gz) = 12807705 diff --git a/lang/solidity/files/patch-CMakeLists.txt b/lang/solidity/files/patch-CMakeLists.txt index b1905e3dd572..1d9953551df8 100644 --- a/lang/solidity/files/patch-CMakeLists.txt +++ b/lang/solidity/files/patch-CMakeLists.txt @@ -1,27 +1,12 @@ --- CMakeLists.txt.orig 2024-09-04 09:02:02 UTC +++ CMakeLists.txt -@@ -52,15 +52,21 @@ mark_as_advanced(ONLY_BUILD_SOLIDITY_LIBRARIES) +@@ -52,9 +52,6 @@ mark_as_advanced(ONLY_BUILD_SOLIDITY_LIBRARIES) mark_as_advanced(IGNORE_VENDORED_DEPENDENCIES) mark_as_advanced(ONLY_BUILD_SOLIDITY_LIBRARIES) -# Setup cccache. -include(EthCcache) - # Let's find our dependencies include(EthDependencies) if (NOT IGNORE_VENDORED_DEPENDENCIES) - include(fmtlib) - include(nlohmann-json) - include(range-v3) -+else() -+ # fmtlib -+ find_package(fmt REQUIRED) -+ # nlohmann-json -+ find_package(nlohmann_json REQUIRED) -+ # range-v3 -+ add_library(range-v3 INTERFACE IMPORTED) -+ set_target_properties(range-v3 PROPERTIES -+ INTERFACE_INCLUDE_DIRECTORIES ${RANGE_V3_INCLUDE_DIR}) - endif() - - find_package(Threads) diff --git a/lang/solidity/files/patch-libevmasm_Assembly.cpp b/lang/solidity/files/patch-libevmasm_Assembly.cpp index 21c549fb8adc..4a2ede8b79b0 100644 --- a/lang/solidity/files/patch-libevmasm_Assembly.cpp +++ b/lang/solidity/files/patch-libevmasm_Assembly.cpp @@ -1,11 +1,11 @@ ---- libevmasm/Assembly.cpp.orig 2024-05-21 09:44:13 UTC +--- libevmasm/Assembly.cpp.orig 2025-05-07 10:46:47 UTC +++ libevmasm/Assembly.cpp -@@ -54,6 +54,8 @@ std::map> Assembly::s_sharedSourceNames; +#undef MSIZE // remove MSIZE definition from , included by boost 1.66.0 + AssemblyItem const& Assembly::append(AssemblyItem _i) { assertThrow(m_deposit >= 0, AssemblyException, "Stack underflow."); diff --git a/lang/solidity/files/patch-libevmasm_Instruction.h b/lang/solidity/files/patch-libevmasm_Instruction.h index 36f47c312bee..3368d6e3f5df 100644 --- a/lang/solidity/files/patch-libevmasm_Instruction.h +++ b/lang/solidity/files/patch-libevmasm_Instruction.h @@ -1,11 +1,11 @@ ---- libevmasm/Instruction.h.orig 2023-07-19 09:24:46 UTC +--- libevmasm/Instruction.h.orig 2025-05-07 10:46:47 UTC +++ libevmasm/Instruction.h -@@ -27,6 +27,8 @@ - #include +@@ -28,6 +28,8 @@ #include + #include +#undef MSIZE // remove MSIZE definition from , included by boost 1.66.0 + namespace solidity::evmasm { diff --git a/lang/solidity/files/patch-libyul_backends_evm_EVMDialect.cpp b/lang/solidity/files/patch-libyul_backends_evm_EVMDialect.cpp new file mode 100644 index 000000000000..5fc20b2ae032 --- /dev/null +++ b/lang/solidity/files/patch-libyul_backends_evm_EVMDialect.cpp @@ -0,0 +1,11 @@ +--- libyul/backends/evm/EVMDialect.cpp.orig 2025-05-08 16:10:03 UTC ++++ libyul/backends/evm/EVMDialect.cpp +@@ -56,6 +56,8 @@ std::tuple constexpr verbatimIndexToAr + return std::make_tuple(_index - numRets * EVMDialect::verbatimMaxInputSlots, numRets); + } + ++#undef MSIZE // remove MSIZE definition from , included by boost 1.66.0 ++ + BuiltinFunctionForEVM createEVMFunction( + langutil::EVMVersion _evmVersion, + std::string const& _name,