{ lua, writeText, toLuaModule }: { disabled ? false , propagatedBuildInputs ? [ ] , makeFlags ? [ ] , ... } @ attrs: if disabled then throw "${attrs.name} not supported by interpreter lua-${lua.luaversion}" else toLuaModule (lua.stdenv.mkDerivation ( attrs // { name = "lua${lua.luaversion}-" + attrs.pname + "-" + attrs.version; makeFlags = [ "PREFIX=$(out)" "LUA_INC=-I${lua}/include" "LUA_LIBDIR=$(out)/lib/lua/${lua.luaversion}" "LUA_VERSION=${lua.luaversion}" ] ++ makeFlags; propagatedBuildInputs = propagatedBuildInputs ++ [ lua # propagate it for its setup-hook ]; } ))