diff options
| author | Zac Medico <zmedico@gentoo.org> | 2025-09-08 19:08:46 -0700 |
|---|---|---|
| committer | Zac Medico <zmedico@gentoo.org> | 2025-09-08 19:10:51 -0700 |
| commit | b5dd72e3c87c81d05afd8b35eec768b301b8d4e3 (patch) | |
| tree | e4810945a77b7d6dc452ea50a67c023094753b3a /dev-lang/jerryscript/jerryscript-3.0.0.ebuild | |
| parent | 247c48d6111de76f40e16b057b78af60a9fc4e9e (diff) | |
| download | gentoo-b5dd72e3c87c81d05afd8b35eec768b301b8d4e3.tar.gz gentoo-b5dd72e3c87c81d05afd8b35eec768b301b8d4e3.tar.bz2 gentoo-b5dd72e3c87c81d05afd8b35eec768b301b8d4e3.zip | |
dev-lang/jerryscript: add 3.0.0
Closes: https://bugs.gentoo.org/962353
Bug: https://bugs.gentoo.org/795312
Bug: https://bugs.gentoo.org/905089
Bug: https://bugs.gentoo.org/918550
Signed-off-by: Zac Medico <zmedico@gentoo.org>
Diffstat (limited to 'dev-lang/jerryscript/jerryscript-3.0.0.ebuild')
| -rw-r--r-- | dev-lang/jerryscript/jerryscript-3.0.0.ebuild | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/dev-lang/jerryscript/jerryscript-3.0.0.ebuild b/dev-lang/jerryscript/jerryscript-3.0.0.ebuild new file mode 100644 index 000000000000..e34151cdc98a --- /dev/null +++ b/dev-lang/jerryscript/jerryscript-3.0.0.ebuild @@ -0,0 +1,74 @@ +# Copyright 2021-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake python-single-r1 + +DESCRIPTION="Ultra-lightweight JavaScript engine for the Internet of Things" +HOMEPAGE="https://github.com/jerryscript-project/jerryscript" +SRC_URI="https://github.com/jerryscript-project/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="debugger" +RDEPEND="debugger? ( ${PYTHON_DEPS} )" +BDEPEND="${RDEPEND}" +REQUIRED_USE="debugger? ( ${PYTHON_REQUIRED_USE} )" +RESTRICT="test" + +PATCHES=( + "${FILESDIR}/jerryscript-3.0.0-no-werror.patch" +) + +src_prepare() { + find . -name CMakeLists.txt -print0 | xargs -0 sed -i \ + -e "s:lib/pkgconfig:$(get_libdir)/pkgconfig:" \ + -e "s:DESTINATION lib):DESTINATION $(get_libdir)):" \ + || die + find . -name '*.pc.in' -print0 | xargs -0 sed -i \ + -e "s|/lib\$|/$(get_libdir)|" \ + || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_STRIP=OFF + -DJERRY_DEBUGGER=ON + -DJERRY_ERROR_MESSAGES=ON + -DJERRY_EXTERNAL_CONTEXT=ON + -DJERRY_LINE_INFO=ON + -DJERRY_LOGGING=ON + -DJERRY_PARSER_DUMP_BYTE_CODE=ON + -DJERRY_PARSER=ON + -DJERRY_REGEXP_DUMP_BYTE_CODE=ON + -DJERRY_SNAPSHOT_EXEC=ON + -DJERRY_SNAPSHOT_SAVE=ON + ) + cmake_src_configure +} + +src_install() { + local jerry_debugger_dir + cmake_src_install + + if use debugger; then + jerry_debugger_dir=/usr/$(get_libdir)/jerryscript/jerry-debugger + insinto "${jerry_debugger_dir}" + doins jerry-debugger/*.py + python_optimize "${ED}${jerry_debugger_dir}" + + cat <<-EOF > "${T}/jerry-debugger" + #!/usr/bin/python + import sys + sys.path.insert(0, "${EPREFIX}${jerry_debugger_dir}") + with open("${jerry_debugger_dir}/jerry_client.py") as f: + exec(f.read()) + EOF + + python_doscript "${T}"/jerry-debugger + fi +} |
