diff options
-rw-r--r-- | dev-lua/luadbi/luadbi-0.7.2-r1.ebuild | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/dev-lua/luadbi/luadbi-0.7.2-r1.ebuild b/dev-lua/luadbi/luadbi-0.7.2-r1.ebuild new file mode 100644 index 000000000000..2580d774ea53 --- /dev/null +++ b/dev-lua/luadbi/luadbi-0.7.2-r1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..4} luajit ) + +inherit lua toolchain-funcs + +DESCRIPTION="A database interface library for Lua" +HOMEPAGE="https://github.com/mwild1/luadbi" +SRC_URI="https://github.com/mwild1/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86" +IUSE="mysql postgres +sqlite test" +REQUIRED_USE=" + ${LUA_REQUIRED_USE} + || ( mysql postgres sqlite ) +" +RESTRICT="test" + +RDEPEND=" + ${LUA_DEPS} + mysql? ( dev-db/mysql-connector-c:0= ) + postgres? ( dev-db/postgresql:= ) + sqlite? ( dev-db/sqlite ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + virtual/pkgconfig + test? ( + dev-lua/busted[${LUA_USEDEP}] + dev-lua/luarocks + ) +" + +PATCHES=( "${FILESDIR}/${PN}-0.7.2-mysql-8.patch" ) + +src_prepare() { + default + + # Respect users CFLAGS + sed -e 's/-g //' -e 's/-O2 //g' -i Makefile || die + + lua_copy_sources +} + +lua_src_compile() { + pushd "${BUILD_DIR}" || die + + tc-export AR CC + + local myemakeargs=( + "LUA_INC=$(lua_get_CFLAGS)" + ) + + use mysql && emake ${myemakeargs} MYSQL_INC="-I$(mariadb_config --libs)" mysql + use postgres && emake ${myemakeargs} PSQL_INC="-I$(pg_config --libdir)" psql + use sqlite emake ${myemakeargs} SQLITE3_INC="-I/usr/include" sqlite + + popd +} + +src_compile() { + lua_foreach_impl lua_src_compile +} + +lua_src_test() { + pushd "${BUILD_DIR}" || die + cd "${S}"/tests && ${ELUA} run_tests.lua || die + popd +} + +src_test() { + lua_foreach_impl lua_src_test +} + +lua_src_install() { + pushd "${BUILD_DIR}" || die + + local myemakeargs=( + DESTDIR="${ED}" + LUA_CDIR="$(lua_get_cmod_dir)" + LUA_INC="$(lua_get_CFLAGS)" + LUA_LDIR="$(lua_get_lmod_dir)" + ) + + use mysql && emake ${myemakeargs[@]} install_mysql + use postgres && emake ${myemakeargs[@]} install_psql + use sqlite && emake ${myemakeargs[@]} install_sqlite3 + + popd +} + +src_install() { + lua_foreach_impl lua_src_install + + einstalldocs +} |