diff options
author | Tupone Alfredo <tupone@gentoo.org> | 2017-11-20 21:51:55 +0100 |
---|---|---|
committer | Tupone Alfredo <tupone@gentoo.org> | 2017-11-20 21:51:55 +0100 |
commit | b3c3fb418d57285b4f5974a72aa28aaf1998eef9 (patch) | |
tree | c34dbdde85c475244cc436d5dd379a162a988e14 /dev-ada | |
parent | app-text/tree: Bump to EAPI=6 (diff) | |
download | gentoo-b3c3fb418d57285b4f5974a72aa28aaf1998eef9.tar.gz gentoo-b3c3fb418d57285b4f5974a72aa28aaf1998eef9.tar.bz2 gentoo-b3c3fb418d57285b4f5974a72aa28aaf1998eef9.zip |
dev-ada/libadalang: Adding libadalang to the tree
Package-Manager: Portage-2.3.13, Repoman-2.3.3
Diffstat (limited to 'dev-ada')
-rw-r--r-- | dev-ada/libadalang/Manifest | 3 | ||||
-rw-r--r-- | dev-ada/libadalang/files/libadalang-2017-gentoo.patch | 32 | ||||
-rw-r--r-- | dev-ada/libadalang/libadalang-2017.ebuild | 73 | ||||
-rw-r--r-- | dev-ada/libadalang/metadata.xml | 18 |
4 files changed, 126 insertions, 0 deletions
diff --git a/dev-ada/libadalang/Manifest b/dev-ada/libadalang/Manifest new file mode 100644 index 000000000000..ee26ebc2f652 --- /dev/null +++ b/dev-ada/libadalang/Manifest @@ -0,0 +1,3 @@ +DIST langkit-gps-src-2017.tar.gz 364589 SHA256 eb5e344aba3c1ed59120d788db76bb17af13fda0a0ee23d44e7c323a18b96d98 SHA512 1c86e60710e4def3d430372eed11bf1a27bf82e84c7b787c5a0be15229b6e5f786dbdf830a311423dd7539841de3076d370afc8b4c1b0cddd1bc379372dcdc95 WHIRLPOOL 2d8a5dee96bad2a019e87ed48f9ebee2433dd37c425913512d33bea8b6f4eabf46c10ea686ab1a7076247c8758b67c59d85bbc78cb1a88aadda6dc2a3014ea2e +DIST libadalang-2017-src.tar.gz 1862217 SHA256 5f837e76e2a74bd3df551cf080e35d80c6bf9de6fde21fc2b9edf4260c6484f6 SHA512 c8663a7214c3c1dd73a6589a6db10d219fcd2db39ba2ce184eea85272c5f206ab0aa8d13b0e19b08a5996906c7fbddd479795363ec22e889dfceda9967c346c7 WHIRLPOOL 501b9f36eebdda3535381fc27dfeb514c380b62431f3124a8a72ea20060dd56a2765e2b5bd449416c53f1eadf8d30113429a38e3f5e1aec13c955ffd138090fe +DIST quex-0.65.4.tar.gz 2202154 SHA256 42245d5795d03ca053741947733660ac4a0d6d54abdd7d2fa9997a9f2bd4ef3f SHA512 0b11d7e5c5165674626fbbe7f54853656c579c63b78bd2fef2f5a9b316171dc647812d9a37df4e7c49c05de11a307b6425089f4ab281affb6c03a9cf09e2a035 WHIRLPOOL a8103ae3c2adb1c3b0524f2d64b8043464e87a69741e6fb3735163bd58773e75c12ba464ecb08a91b6f465c5830adf1a45e4171fa72d0f738fbedaec5f764ea6 diff --git a/dev-ada/libadalang/files/libadalang-2017-gentoo.patch b/dev-ada/libadalang/files/libadalang-2017-gentoo.patch new file mode 100644 index 000000000000..a54f0cf98583 --- /dev/null +++ b/dev-ada/libadalang/files/libadalang-2017-gentoo.patch @@ -0,0 +1,32 @@ +--- work/langkit-gps-src/langkit/templates/project_file.mako.old 2017-07-11 14:19:12.841221846 +0200 ++++ work/langkit-gps-src/langkit/templates/project_file.mako 2017-07-11 14:12:39.104981170 +0200 +@@ -82,9 +82,9 @@ + for Default_Switches ("Ada") use + Common_Ada_Cargs & ("-g", "-O0", "-gnatwe", "-gnata"); + +- for Default_Switches ("C") use Common_C_Cargs & ("-g3", "-O0"); ++ for Default_Switches ("C") use Common_C_Cargs & ("-g3", "-O0", "-fPIC"); + +- for Switches ("quex_lexer.c") use Common_C_Cargs & ("-g0", "-O0"); ++ for Switches ("quex_lexer.c") use Common_C_Cargs & ("-g0", "-O0", "-fPIC"); + -- This file is *huge* and the debugging information for it harms + -- Valgrind runs. We almost never have to debug this file so + -- this is acceptable. +@@ -111,6 +111,7 @@ + -- ... and this prevents OOM on other platforms + end case; + end case; ++ for Driver ("C") use External ("GCC", "gcc"); + end Compiler; + + package Binder is +--- work/libadalang-gps-src/ada/testsuite/testsuite_support/capi_driver.py 2017-07-30 16:01:31.495287196 +0200 ++++ work/libadalang-gps-src/ada/testsuite/testsuite_support/capi_driver.py.old 2017-07-30 16:00:08.104464440 +0200 +@@ -72,6 +72,7 @@ + -- different default standard. + + "-I{support_include_dir}", "-g"); ++ for Driver ("C") use External ("GCC", "gcc"); + end Compiler; + end P; + '''.format(main_source=compile_units[0], diff --git a/dev-ada/libadalang/libadalang-2017.ebuild b/dev-ada/libadalang/libadalang-2017.ebuild new file mode 100644 index 000000000000..5a0a5cfba07e --- /dev/null +++ b/dev-ada/libadalang/libadalang-2017.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) + +inherit python-single-r1 + +DESCRIPTION="high performance semantic engine for the Ada programming language" +HOMEPAGE="https://libre.adacore.com/" +SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed042 + -> ${P}-src.tar.gz + mirror://sourceforge/quex/quex-0.65.4.tar.gz + http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed044 + -> langkit-gps-src-${PV}.tar.gz" + +LICENSE="GPL-3 gcc-runtime-library-exception-3.1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="gnat_2016 gnat_2017" + +RDEPEND="dev-python/pyyaml + ${PYTHON_DEPS}" +DEPEND="${RDEPEND} + dev-python/virtualenv + dev-ada/gnatcoll[projects,shared,gnat_2016=,gnat_2017=] + dev-python/docutils + dev-python/mako + dev-python/enum34 + dev-python/funcy" +#REQUIRED_USE="gnat_2016 !gnat_2017 ${PYTHON_REQUIRED_USE}" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}" + +PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) + +src_prepare() { + default + rm -r ${PN}-gps-src/ada/testsuite/tests/{acats_parse,stylechecks} || die +} + +src_compile() { + cd ${PN}-gps-src + mkdir bin + ln -sf /usr/bin/gnatbind-4.9.4 bin/gnatbind + PATH=$PATH:${PWD}/bin \ + QUEX_PATH="${WORKDIR}"/quex-0.65.4 \ + PYTHONPATH=${PYTHONPATH}:"${WORKDIR}"/langkit-gps-src \ + GCC=${CHOST}-gcc-4.9.4 ada/manage.py make || die +} + +src_test () { + local myDir="${WORKDIR}"/${PN}-gps-src + cd ${PN}-gps-src/ada/testsuite + ln -sf "${myDir}"/build/include/libadalang.h c_support/libadalang.h + #./testsuite.py --show-error-output |& grep FAILED && die "Test failed" + GPR_PROJECT_PATH="${myDir}"/build/lib/gnat \ + LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:"${myDir}"/build/lib/libadalang.relocatable \ + PYTHONPATH="${myDir}"/build/python \ + PATH=${PATH}:"${myDir}"/build/bin ./testsuite.py --show-error-output + rm c_support/libadalang.h + cd - +} + +src_install () { + cd ${PN}-gps-src + QUEX_PATH="${WORKDIR}"/quex-0.65.4 \ + PYTHONPATH=${PYTHONPATH}:"${WORKDIR}"/langkit-gps-src \ + ada/manage.py install "${D}"usr + python_domodule build/python/libadalang.py +} diff --git a/dev-ada/libadalang/metadata.xml b/dev-ada/libadalang/metadata.xml new file mode 100644 index 000000000000..31ddba84751f --- /dev/null +++ b/dev-ada/libadalang/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>tupone@gentoo.org</email> + <name>Tupone Alfredo</name> + </maintainer> + <use> + <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag> + <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag> + </use> + <longdescription lang="en"> + Libadalang is a project to build a high performance semantic engine for + the Ada programming language. It is meant to provide a basis to write + Ada tooling, including tools working on potentially changing and + incorrect code, such as IDEs. + </longdescription> +</pkgmetadata> |