diff options
Diffstat (limited to 'dev-ada/gps/gps-2018-r1.ebuild')
-rw-r--r-- | dev-ada/gps/gps-2018-r1.ebuild | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/dev-ada/gps/gps-2018-r1.ebuild b/dev-ada/gps/gps-2018-r1.ebuild new file mode 100644 index 000000000000..6ca3b5d6eafb --- /dev/null +++ b/dev-ada/gps/gps-2018-r1.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +inherit python-single-r1 autotools desktop llvm multilib + +MYP=${PN}-gpl-${PV}-src + +DESCRIPTION="The GNAT Programming Studio" +HOMEPAGE="http://libre.adacore.com/tools/gps/" +SRC_URI="http://mirrors.cdn.adacore.com/art/5b0cf627c7a4475261f97ceb + -> ${MYP}.tar.gz + http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27a59 -> + libadalang-tools-gpl-2018-src.tar.gz + http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27a61 -> + gtk+-3.14.15-src.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gnat_2017 +gnat_2018" + +RDEPEND="${PYTHON_DEPS} + dev-ada/gnatcoll-db[gnat_2017=,gnat_2018=,gnatcoll_db2ada,gnatinspect,xref] + dev-ada/gnatcoll-bindings[gnat_2017=,gnat_2018=,python] + ~dev-ada/gtkada-2018[gnat_2017=,gnat_2017=] + dev-ada/libadalang[gnat_2017=,gnat_2018=] + dev-libs/gobject-introspection + dev-libs/libffi + gnat_2017? ( sys-devel/llvm:5 ) + gnat_2018? ( + || ( + sys-devel/llvm:6 + sys-devel/llvm:7 + ) + ) + sys-devel/clang:= + x11-themes/adwaita-icon-theme + x11-themes/hicolor-icon-theme + dev-python/pep8[${PYTHON_USEDEP}] + dev-python/jedi[${PYTHON_USEDEP}]" + +DEPEND="${RDEPEND}" + +RESTRICT="test" + +S="${WORKDIR}"/${MYP} + +PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) + +pkg_setup() { + if use gnat_2017; then + GCC_PV=6.3.0 + LLVM_MAX_SLOT=5 + else + GCC_PV=7.3.1 + LLVM_MAX_SLOT=7 + fi + GNATMAKE=gnatmake-${GCC_PV} + GNATDRV=gnat-${GCC_PV} + GNATLS=gnatls-${GCC_PV} + llvm_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + GCC_PV=7.3.1 + default + sed -i \ + -e "s:@GNATMAKE@:${CHOST}-${GNATMAKE}:g" \ + -e "s:@GNAT@:${CHOST}-${GNATDRV}:g" \ + -e "s:@GNATLS@:${CHOST}-${GNATLS}:g" \ + share/support/core/toolchains.py \ + share/support/core/projects.py \ + || die + mv "${WORKDIR}"/libadalang-tools-src laltools + echo "#!/bin/bash" > gps.sh + echo "export LD_LIBRARY_PATH=/usr/$(get_libdir)/gps" >> gps.sh + echo 'exec /usr/bin/gps_exe "$@"' >> gps.sh + cd ../gtk+-3.14.15-src + sed -i \ + -e "/^libadd/s:=.*$:= \\\:" \ + -e "/^deps/s:=.*$:= \\\:" \ + ../gtk+-3.14.15-src/gtk/Makefile.in +} + +src_configure() { + econf \ + GNATMAKE=/usr/bin/${GNATMAKE} \ + GNATDRV=/usr/bin/${GNATDRV} \ + --with-clang=$(llvm-config --libdir) + cd ../gtk+-3.14.15-src + econf --disable-cups +} + +src_compile() { + emake -C gps GPRBUILD_FLAGS="-v ${MAKEOPTS} \ + -XGPR_BUILD=relocatable" \ + Build=Production + gprbuild -v -p -Pcli/cli.gpr ${MAKEOPTS} -XLIBRARY_TYPE=relocatable \ + -XGPR_BUILD=relocatable -cargs:Ada ${ADAFLAGS} || die + cd ../gtk+-3.14.15-src + emake -C gtk/inspector + emake -C gtk gtk.gresource.xml gtkdbusgenerated.c gtkdbusgenerated.h + emake -C gtk libgtk-3.la +} + +src_install() { + default + make_desktop_entry "${PN}" "GPS" "${EPREFIX}/usr/share/gps/icons/hicolor/32x32/apps/gps_32.png" "Development;IDE;" + mv "${D}"/usr/bin/gps{,_exe} + newbin gps.sh gps + cd ../gtk+-3.14.15-src + emake -C gtk DESTDIR="${D}" install-libLTLIBRARIES + rm "${D}"/usr/$(get_libdir)/libgtk-3.{la,so,so.0} || die + dosym "${D}"/usr/$(get_libdir)/libgtk-3.so.0.* /usr/$(get_libdir)/gps/libgtk-3.so.0 +} |