toLua++
toLua++はtoLuaをc++でも使えるように拡張したもの、と言われても、まずtoLuaを知らんのですけど。
Lua自体はそもそもC言語との親和性が高いというのがウリで、ゲームのmodに使われていることが多く、私もLuaで書かれたゲームのmodに手を入れた事はあるのですが。
Luaのver.5.1までは普通にbuildできるのですが、HomebrewのLuaが現在ver. 5.2.4なので、今回はLua 5.2.4を使ってbuildしてますけれども、実際にver. 5.2.4でtoLua++が正常に動くのかは分からないです(ぉぃ。
class Toluaxx < Formula desc "ToLua++ is an extension of toLua, a tool to integrate C/Cpp code with Lua" homepage "http://www.codenix.com/~tolua/" url "https://github.com/LuaDist/toluapp/archive/1.0.93.tar.gz" sha256 "0a1ff87cb74e7531aec57e2a7cfdf282116647dea3b46223e3cc7c362b55b5bb" depends_on "cmake" => :build depends_on "lua" def install # Some functions were deflected in Lua 5.2. inreplace ["src/lib/tolua_map.c", "src/lib/tolua_event.c", "src/lib/tolua_push.c"], "lua_setfenv(", " lua_setuservalue(" inreplace ["src/lib/tolua_map.c", "src/lib/tolua_event.c"], "lua_getfenv(", "lua_getuservalue(" inreplace "src/lib/tolua_map.c", "lua_pushvalue(L,LUA_GLOBALSINDEX)", "lua_pushglobaltable(L)" inreplace "src/bin/tolua.c", "luaL_getn(", "lua_rawlen(" system "cmake", ".", "-DCMAKE_INSTALL_NAME_DIR:STRING=#{opt_lib}", *std_cmake_args system "make", "install" MachO::Tools.change_install_name("#{bin}/toluapp", "@executable_path/../lib/libtoluapp.dylib", "#{opt_lib}/libtoluapp.dylib") end test do system "#{bin}/toluapp", "-h" end end