luabind: Fix build on darwin.

This commit is contained in:
Ag 2023-04-12 20:04:11 +05:30
parent ab73fe1370
commit 8ca6b762bf
4 changed files with 7 additions and 115 deletions

View file

@ -1,23 +0,0 @@
diff --git a/luabind/object.hpp b/luabind/object.hpp
index f7b7ca5..1c18e04 100644
--- a/luabind/object.hpp
+++ b/luabind/object.hpp
@@ -536,6 +536,8 @@ namespace detail
handle m_key;
};
+#if BOOST_VERSION < 105700
+
// Needed because of some strange ADL issues.
#define LUABIND_OPERATOR_ADL_WKND(op) \
@@ -557,7 +559,8 @@ namespace detail
LUABIND_OPERATOR_ADL_WKND(!=)
#undef LUABIND_OPERATOR_ADL_WKND
-
+
+#endif // BOOST_VERSION < 105700
} // namespace detail
namespace adl

View file

@ -1,22 +0,0 @@
diff --git a/Jamroot b/Jamroot
index 94494bf..83dfcbb 100755
--- a/Jamroot
+++ b/Jamroot
@@ -64,7 +64,7 @@ else if [ os.name ] in LINUX MACOSX FREEBSD
$(LUA_PATH) $(HOME)/Library/Frameworks /Library/Frameworks /usr /usr/local /opt/local /opt ;
local possible-suffixes =
- include/lua5.1 include/lua51 include/lua include ;
+ include/lua5.1 include/lua51 include/lua include include/luajit-2.0 ;
local includes = [ GLOB $(possible-prefixes)/$(possible-suffixes) : lua.h ] ;
@@ -83,7 +83,7 @@ else if [ os.name ] in LINUX MACOSX FREEBSD
local lib = $(prefix)/lib ;
- local names = liblua5.1 liblua51 liblua ;
+ local names = liblua5.1 liblua51 liblua libluajit-5.1 ;
local extensions = .a .so ;
library = [ GLOB $(lib)/lua51 $(lib)/lua5.1 $(lib)/lua $(lib) :

View file

@ -1,59 +0,0 @@
diff --git luabind-0.9.1/luabind/detail/call_function.hpp luabind-0.9.1-fixed/luabind/detail/call_function.hpp
index 1b45ec1..8f5afff 100644
--- luabind-0.9.1/luabind/detail/call_function.hpp
+++ luabind-0.9.1-fixed/luabind/detail/call_function.hpp
@@ -323,7 +323,8 @@ namespace luabind
#endif // LUABIND_CALL_FUNCTION_HPP_INCLUDED
-#elif BOOST_PP_ITERATION_FLAGS() == 1
+#else
+#if BOOST_PP_ITERATION_FLAGS() == 1
#define LUABIND_TUPLE_PARAMS(z, n, data) const A##n *
#define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n
@@ -440,4 +441,5 @@ namespace luabind
#endif
+#endif
diff --git luabind-0.9.1/luabind/detail/call_member.hpp luabind-0.9.1-fixed/luabind/detail/call_member.hpp
index de8d563..e63555b 100644
--- luabind-0.9.1/luabind/detail/call_member.hpp
+++ luabind-0.9.1-fixed/luabind/detail/call_member.hpp
@@ -316,7 +316,8 @@ namespace luabind
#endif // LUABIND_CALL_MEMBER_HPP_INCLUDED
-#elif BOOST_PP_ITERATION_FLAGS() == 1
+#else
+#if BOOST_PP_ITERATION_FLAGS() == 1
#define LUABIND_TUPLE_PARAMS(z, n, data) const A##n *
#define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n
@@ -360,4 +361,5 @@ namespace luabind
#undef LUABIND_TUPLE_PARAMS
#endif
+#endif
diff --git luabind-0.9.1/luabind/wrapper_base.hpp luabind-0.9.1-fixed/luabind/wrapper_base.hpp
index d54c668..0f88cc5 100755
--- luabind-0.9.1/luabind/wrapper_base.hpp
+++ luabind-0.9.1-fixed/luabind/wrapper_base.hpp
@@ -89,7 +89,8 @@ namespace luabind
#endif // LUABIND_WRAPPER_BASE_HPP_INCLUDED
-#elif BOOST_PP_ITERATION_FLAGS() == 1
+#else
+#if BOOST_PP_ITERATION_FLAGS() == 1
#define LUABIND_TUPLE_PARAMS(z, n, data) const A##n *
#define LUABIND_OPERATOR_PARAMS(z, n, data) const A##n & a##n
@@ -188,3 +189,4 @@ namespace luabind
#undef N
#endif
+#endif

View file

@ -1,26 +1,22 @@
{ lib, stdenv, fetchFromGitHub, boost-build, lua, boost }:
{ lib, stdenv, fetchFromGitHub, lua, boost, cmake }:
stdenv.mkDerivation rec {
pname = "luabind";
version = "0.9.1";
src = fetchFromGitHub {
owner = "luabind";
owner = "Oberon00";
repo = "luabind";
rev = "v${version}";
sha256 = "sha256-sK1ca2Oj9yXdmxyXeDO3k8YZ1g+HxIXLhvdTWdPDdag=";
rev = "49814f6b47ed99e273edc5198a6ebd7fa19e813a";
sha256 = "sha256-JcOsoQHRvdzF2rsZBW6egOwIy7+7C4wy0LiYmbV590Q";
};
patches = [ ./0.9.1_modern_boost_fix.patch ./0.9.1_boost_1.57_fix.patch ./0.9.1_discover_luajit.patch ];
nativeBuildInputs = [ cmake ];
buildInputs = [ boost-build lua boost ];
buildInputs = [ boost ];
propagatedBuildInputs = [ lua ];
buildPhase = "LUA_PATH=${lua} bjam release";
installPhase = "LUA_PATH=${lua} bjam --prefix=$out release install";
passthru = {
inherit lua;
};
@ -29,6 +25,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/luabind/luabind";
description = "A library that helps you create bindings between C++ and Lua";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
platforms = lib.platforms.unix;
};
}