diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-08-27 12:00:02 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-08-27 12:00:02 +0100 |
commit | 345c02ca33341652116ddec6705530223af2de85 (patch) | |
tree | bcb9923530ba0703557f280b0a2bd1343bae857c /dev-lang/cxprolog | |
parent | f300354de9fe5d997850456a9e1f400193e6544f (diff) |
gentoo auto-resync : 27:08:2024 - 12:00:02
Diffstat (limited to 'dev-lang/cxprolog')
-rw-r--r-- | dev-lang/cxprolog/Manifest | 1 | ||||
-rw-r--r-- | dev-lang/cxprolog/cxprolog-0.98.2-r2.ebuild | 150 |
2 files changed, 151 insertions, 0 deletions
diff --git a/dev-lang/cxprolog/Manifest b/dev-lang/cxprolog/Manifest index 733a36875c93..6f7dcc3ff804 100644 --- a/dev-lang/cxprolog/Manifest +++ b/dev-lang/cxprolog/Manifest @@ -5,4 +5,5 @@ AUX cxprolog-0.98.2-printf-musl.patch 478 BLAKE2B 3ae4d3ad13f52023552adfcedc308c AUX cxprolog-0.98.2-test-io.patch 580 BLAKE2B 5a4844e4f3469270ab33889f07b812aa5b457f6cf0dc49c2b05c6360a91ea9809c26743566ea66c41e7ae0fa1aa3a05945245d234267b8b39f52ae452034bf73 SHA512 4c39bf891c0d7291b1f1ff926367f5613fed61455dd35747eb0fcd5bcdd0eb93fb86ca82b58b194e5ea2dbcf62e7f0179c5a97186f42e83c707a6022f829704d DIST cxprolog-0.98.2.src.tgz 548222 BLAKE2B e1e834384ff161efde961e7a319d9987cb368ed561fa613a4dd2ede353a099de9146de68dedab3d5e74bb5421c880f743b669eb43eb0b265112dbf938820b0ad SHA512 7e16ce238201da2520da3575311a8c56c9fc3926b290ef505e74ca208af9e6a070d4137ae21e708e1d6c9b83e44566ecd818d51a90f033c983c589b65bcbf2b1 EBUILD cxprolog-0.98.2-r1.ebuild 3406 BLAKE2B 0fd5f069e6b7f941ca2e39a99906d9131488c22b6531e78107194ac4f24d98d8253466e7efdaf917ba679de648b369969fb96acb67f67a28cf6966d53411a48c SHA512 0d7214fd1f988a638ac4f045150a274bd1aff55bea7bdcb8ec192aea3ec994bdbb7f6b6a40a1dbf0ce6976dfb1cb344b67da7537275a30f7e8773c693e29fe2d +EBUILD cxprolog-0.98.2-r2.ebuild 3522 BLAKE2B 2096ac0e2428c0c0a3cf6ced7889a2bed65712ba54ce333d3b547076f33de3b78889f23ec836955170d10ddec6a2ca5e3f621d3b75d3beacee596487fb26f6a6 SHA512 571959fd858f1b59b9cc0af68aa523dcc95ac93c2ca697d9a646cd47e4c770cfccc1b1bbfc52df152234460e306f69cbb19dd08efe157f0c19aa8ae40106f880 MISC metadata.xml 237 BLAKE2B d4347f2b84f6246e0bf64c19548b9bf8ad5094bf392fabb2b5add3bdb2af1e866aa34f67d4dad5fd6595daa79233456e962684b4d062bdc7be1f4ee1ef92d3ee SHA512 525172b6046cff15248158e173c764b9294cf0a8220914ef6b46ca4f15fdb79caca8089cb04ac0b1ca56e2496dc84d1f933b2d56e806007883cbc914a1a4eca5 diff --git a/dev-lang/cxprolog/cxprolog-0.98.2-r2.ebuild b/dev-lang/cxprolog/cxprolog-0.98.2-r2.ebuild new file mode 100644 index 000000000000..32ad5e2f536a --- /dev/null +++ b/dev-lang/cxprolog/cxprolog-0.98.2-r2.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +VIRTUALX_REQUIRED="manual" + +inherit flag-o-matic java-pkg-opt-2 java-pkg-simple toolchain-funcs virtualx wxwidgets + +DESCRIPTION="A WAM based Prolog system" +HOMEPAGE="http://ctp.di.fct.unl.pt/~amd/cxprolog/" +SRC_URI="http://ctp.di.fct.unl.pt/~amd/cxprolog/cxunix/${P}.src.tgz" +S="${WORKDIR}"/${P} + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples java +readline test wxwidgets" +RESTRICT="!test? ( test )" + +COMMON_DEP=" + readline? ( sys-libs/readline:= ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] ) +" + +DEPEND="${COMMON_DEP} + java? ( >=virtual/jdk-1.8:* ) + test? ( + java? ( ${VIRTUALX_DEPEND} ) + wxwidgets? ( ${VIRTUALX_DEPEND} ) + )" + +RDEPEND="${COMMON_DEP} + java? ( >=virtual/jre-1.8:* )" + +DOCS=( ChangeLog.txt MANUAL.txt README.txt ) +PATCHES=( + "${FILESDIR}"/${P}-portage.patch + "${FILESDIR}"/${P}-printf-musl.patch + "${FILESDIR}"/${P}-test-io.patch +) + +src_prepare() { + default #780585 + use java && java-pkg-opt-2_src_prepare && java-pkg_clean + + sed -i -e "s|lib/cxprolog|$(get_libdir)/cxprolog|" "${S}"/src/FileSys.c || die + cp "${FILESDIR}"/cx_dev_boot.pl "${S}"/cx_dev_boot.pl || die + rm -f "${S}"/pl/test_file_io_1.txt + + use wxwidgets && setup-wxwidgets +} + +src_compile() { + local CX_EXT_DEFINES + local CX_EXT_CFLAGS + local CX_EXT_LDFLAGS + local CX_EXT_LIBS + + if use readline; then + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_READLINE" + CX_EXT_LIBS="$CX_EXT_LIBS -lreadline" + fi + + if use java; then + local java_arch + use x86 && java_arch=i386 + use amd64 && java_arch=amd64 + local CX_JVM + for i in jre/lib/${java_arch}/server lib/server; do + [[ -f ${JAVA_HOME}/${i}/libjvm.so ]] && CX_JVM=${JAVA_HOME}/${i} + done + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_JAVA" + CX_EXT_CFLAGS="$CX_EXT_CFLAGS $(java-pkg_get-jni-cflags)" + CX_EXT_LDFLAGS="$CX_EXT_LDFLAGS -Wl,-rpath,${CX_JVM}" + CX_EXT_LIBS="$CX_EXT_LIBS -L${CX_JVM} -ljvm" + fi + + if use wxwidgets; then + CX_EXT_DEFINES="$CX_EXT_DEFINES -DUSE_WXWIDGETS" + CX_EXT_CFLAGS="$CX_EXT_CFLAGS $(${WX_CONFIG} --cflags)" + CX_EXT_LIBS="$CX_EXT_LIBS $(${WX_CONFIG} --libs)" + fi + + emake lib \ + PREFIX=/usr \ + TMP_DIR="${S}/tmp" \ + CC="$(tc-getCC)" \ + CPP="$(tc-getCXX)" \ + LD="$(tc-getLD)" \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + EXT_DEFINES="${CX_EXT_DEFINES}" \ + EXT_CFLAGS="-Wall ${CX_EXT_CFLAGS}" \ + EXT_LDFLAGS="${CX_EXT_LDFLAGS}" \ + EXT_LIBS="${CX_EXT_LIBS}" + + if use java; then + JAVA_SRC_DIR="${S}/lib/cxprolog/java" + java-pkg-simple_src_compile + fi +} + +cxprolog_src_test() { + cd "${S}"/pl + + if use java; then + local test_javadir="${S}"/pl/$(get_libdir)/cxprolog/java + mkdir -p "${test_javadir}" || die + ln -s "${S}"/cxprolog.jar "${test_javadir}"/prolog.jar || die + fi + + LD_LIBRARY_PATH="${S}" \ + "${S}"/cxprolog_shared \ + --boot "${S}"/cx_dev_boot.pl \ + --script "${S}"/pl/test_all.pl \ + | tee "${S}"/cxprolog_test.log +} + +src_test() { + if use java || use wxwidgets; then + virtx cxprolog_src_test + else + cxprolog_src_test + fi + + grep -q "ALL THE TESTS PASSED" "${S}"/cxprolog_test.log \ + || die "cxprolog unit tests failed" +} + +src_install() { + newbin cxprolog_shared cxprolog + dolib.so libcxprolog.so + + insinto /usr/$(get_libdir)/cxprolog + doins lib/cxprolog/lib.pl + + insinto /usr/share/${PN}/pl + doins pl/*.{pl,txt} + + if use java; then + java-pkg_jarinto /usr/$(get_libdir)/cxprolog/java + java-pkg_newjar cxprolog.jar prolog.jar + fi + + if use examples; then + dodoc -r examples + fi +} |