11class OsrmBackend < Formula
22 desc "High performance routing engine"
33 homepage "https://project-osrm.org/"
4+ url "https://github.com/Project-OSRM/osrm-backend/archive/refs/tags/v6.0.0.tar.gz"
5+ sha256 "369192672c0041600740c623ce961ef856e618878b7d28ae5e80c9f6c2643031"
46 license "BSD-2-Clause"
5- revision 8
67 head "https://github.com/Project-OSRM/osrm-backend.git" , branch : "master"
78
8- # TODO: Remove `conflicts_with "mapnik"` in release that has following commit:
9- # https://github.com/Project-OSRM/osrm-backend/commit/c1ed73126dd467171dc7adb4ad07864909bcb90f
10- stable do
11- url "https://github.com/Project-OSRM/osrm-backend/archive/refs/tags/v5.27.1.tar.gz"
12- sha256 "52391580e0f92663dd7b21cbcc7b9064d6704470e2601bf3ec5c5170b471629a"
13-
14- # Backport commit to build with CMake 4. Remove in the next release
15- patch do
16- url "https://github.com/Project-OSRM/osrm-backend/commit/d691af4860350287041676178ceb511b240c336c.patch?full_index=1"
17- sha256 "216a143e58ee96abf4585b0f1d046469f7b42966e175b3b7b30350c232b48fff"
18- end
19-
20- # Backport fix for Boost 1.85.0. Remove in the next release.
21- # PR ref: https://github.com/Project-OSRM/osrm-backend/pull/6856
22- patch do
23- url "https://github.com/Project-OSRM/osrm-backend/commit/10ec6fc33547e4b96a5929c18db57fb701152c68.patch?full_index=1"
24- sha256 "4f475ed8a08aa95a2b626ba23c9d8ac3dc55d54c3f163e3d505d4a45c2d4e504"
25- end
26-
27- # Backport fix for missing include. Remove in the next release.
28- # Ref: https://github.com/Project-OSRM/osrm-backend/commit/565959b3896945a0eb437cc799b697be023121ef
29- #
30- # Also backport sol2.hpp workaround to avoid a Clang bug. Remove in the next release
31- # Ref: https://github.com/Project-OSRM/osrm-backend/commit/523ee762f077908d03b66d0976c877b52adf22fa
32- #
33- # Also add diff from open PR to support Boost 1.87.0
34- # Ref: https://github.com/Project-OSRM/osrm-backend/pull/7073
35- patch :DATA
36- end
37-
389 livecheck do
3910 url :stable
4011 regex ( /^v?(\d +(?:\. \d +)+)$/i )
4112 end
4213
4314 bottle do
44- sha256 cellar : :any , arm64_sequoia : "81bccb3ebd19507e9fd25afecce4ebef9226f4a2fdc7438c8cfd1f4e39d03932 "
45- sha256 cellar : :any , arm64_sonoma : "3d055a3ce881d4d191620dc35ea7d7fcc4c30578eb0ba9de126a6c53daeeed19 "
46- sha256 cellar : :any , arm64_ventura : "22e157f68d7694ee9f4e3be99e571dbb782a4322df6b5126bafacc8c68c25bd7 "
47- sha256 cellar : :any , sonoma : "1bbde2078ad5bf2dc875f06e5ce07725962e3e47263ed5e35b649beb3d25b7f7 "
48- sha256 cellar : :any , ventura : "4e3d544640bbfefb638be3bf2e098463db14f12ede06285d1a284a8446335e92 "
49- sha256 cellar : :any_skip_relocation , arm64_linux : "448c8a5d909afa8bd305ee80e5cbdeda34f1bebdc4df34b869ec8a85ab12fffd "
50- sha256 cellar : :any_skip_relocation , x86_64_linux : "1b010082cf4787ceec009ed78886362aded2f95eb0605a543328e92a3d38e758 "
15+ sha256 cellar : :any , arm64_sequoia : "d99d43985b7eb9874b9a854559a8dd7ba095653a0bc7991f540a9f691098f381 "
16+ sha256 cellar : :any , arm64_sonoma : "1238dc214ee091861d48367a2c78b5458ccdfdd6737404fd8184f4dd815e6d34 "
17+ sha256 cellar : :any , arm64_ventura : "af0a8f5ceb7d82b9aece2b378d98d9d2aefbd830a9cfbaba79d5433160540528 "
18+ sha256 cellar : :any , sonoma : "fb84337d531fe6c48eee4a7dd0abf33cc4ad0af6742abf9466880847e1470ba1 "
19+ sha256 cellar : :any , ventura : "2eeecffa84cf777cb0e381b6e6e61ce41fc32ca7aa7b5a8c0244410d585c7c8d "
20+ sha256 cellar : :any_skip_relocation , arm64_linux : "9aa04dc44e906b36396551a0acc0482eaad60ebb811243bafa85f2c39d2903c1 "
21+ sha256 cellar : :any_skip_relocation , x86_64_linux : "dc54945839a76c5d681129b99814b936674ef7caf365a7d9d45919d79710f160 "
5122 end
5223
5324 depends_on "cmake" => :build
25+ depends_on "pkgconf" => :build
5426
5527 depends_on "boost"
5628 depends_on "libstxxl"
@@ -63,16 +35,22 @@ class OsrmBackend < Formula
6335 uses_from_macos "expat"
6436 uses_from_macos "zlib"
6537
38+ on_linux do
39+ depends_on "gcc@12" if DevelopmentTools . gcc_version ( "gcc" ) < 12
40+
41+ fails_with :gcc do
42+ version "11"
43+ cause <<~CAUSE
44+ /usr/include/c++/11/type_traits:987:52: error: static assertion failed: template argument must be a complete class or an unbounded array
45+ static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
46+ CAUSE
47+ end
48+ end
49+
6650 conflicts_with "flatbuffers" , because : "both install flatbuffers headers"
6751 conflicts_with "mapnik" , because : "both install Mapbox Variant headers"
6852
6953 def install
70- # Workaround to build with CMake 4. Remove in the next release
71- if build . stable?
72- odie "Remove CMake 4 workaround!" if version >= 6
73- ENV [ "CMAKE_POLICY_VERSION_MINIMUM" ] = "3.5"
74- end
75-
7654 # Work around build failure: duplicate symbol 'boost::phoenix::placeholders::uarg9'
7755 # Issue ref: https://github.com/boostorg/phoenix/issues/111
7856 ENV . append_to_cflags "-DBOOST_PHOENIX_STL_TUPLE_H_"
@@ -129,67 +107,3 @@ def install
129107 assert_path_exists testpath /"test.osrm.names" , "osrm-extract generated no output!"
130108 end
131109end
132-
133- __END__
134- diff --git a/include/extractor/suffix_table.hpp b/include/extractor/suffix_table.hpp
135- index 5d16fe6..2c378bf 100644
136- --- a/include/extractor/suffix_table.hpp
137- +++ b/include/extractor/suffix_table.hpp
138- @@ -3,6 +3,7 @@
139-
140- #include <string>
141- #include <unordered_set>
142- +#include <vector>
143-
144- #include "util/string_view.hpp"
145-
146- diff --git a/third_party/sol2-3.3.0/include/sol/sol.hpp b/third_party/sol2-3.3.0/include/sol/sol.hpp
147- index 8b0b7d36ea4ef2a36133ce28476ae1620fcd72b5..d7da763f735434bf4a40b204ff735f4e464c1b13 100644
148- --- a/third_party/sol2-3.3.0/include/sol/sol.hpp
149- +++ b/third_party/sol2-3.3.0/include/sol/sol.hpp
150- @@ -19416,7 +19416,14 @@ namespace sol { namespace function_detail {
151- }
152-
153- template <bool is_yielding, bool no_trampoline>
154- - static int call(lua_State* L) noexcept(std::is_nothrow_copy_assignable_v<T>) {
155- + static int call(lua_State* L)
156- +// see https://github.com/ThePhD/sol2/issues/1581#issuecomment-2103463524
157- +#if SOL_IS_ON(SOL_COMPILER_CLANG)
158- + // apparent regression in clang 18 - llvm/llvm-project#91362
159- +#else
160- + noexcept(std::is_nothrow_copy_assignable_v<T>)
161- +#endif
162- + {
163- int nr;
164- if constexpr (no_trampoline) {
165- nr = real_call(L);
166- @@ -19456,7 +19463,14 @@ namespace sol { namespace function_detail {
167- }
168-
169- template <bool is_yielding, bool no_trampoline>
170- - static int call(lua_State* L) noexcept(std::is_nothrow_copy_assignable_v<T>) {
171- + static int call(lua_State* L)
172- +// see https://github.com/ThePhD/sol2/issues/1581#issuecomment-2103463524
173- +#if SOL_IS_ON(SOL_COMPILER_CLANG)
174- + // apparent regression in clang 18 - llvm/llvm-project#91362
175- +#else
176- + noexcept(std::is_nothrow_copy_assignable_v<T>)
177- +#endif
178- + {
179- int nr;
180- if constexpr (no_trampoline) {
181- nr = real_call(L);
182- diff --git a/include/server/server.hpp b/include/server/server.hpp
183- index 34b8982e67..02b0dda050 100644
184- --- a/include/server/server.hpp
185- +++ b/include/server/server.hpp
186- @@ -53,8 +53,7 @@ class Server
187- const auto port_string = std::to_string(port);
188-
189- boost::asio::ip::tcp::resolver resolver(io_context);
190- - boost::asio::ip::tcp::resolver::query query(address, port_string);
191- - boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(query);
192- + boost::asio::ip::tcp::endpoint endpoint = *resolver.resolve(address, port_string).begin();
193-
194- acceptor.open(endpoint.protocol());
195- #ifdef SO_REUSEPORT
0 commit comments