public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Alfredo Tupone" <tupone@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/gnat-gpl/, dev-lang/gnat-gpl/files/
Date: Sat, 17 Jun 2017 15:43:47 +0000 (UTC)	[thread overview]
Message-ID: <1497714209.cf7037d9a1c39a48f60c200cd9272b207af952f8.tupone@gentoo> (raw)

commit:     cf7037d9a1c39a48f60c200cd9272b207af952f8
Author:     Tupone Alfredo <tupone <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 17 15:43:29 2017 +0000
Commit:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
CommitDate: Sat Jun 17 15:43:29 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf7037d9

dev-lang/gnat-gpl: Adding version 2017

Package-Manager: Portage-2.3.5, Repoman-2.3.1

 dev-lang/gnat-gpl/Manifest                         |   5 +
 dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch |  14 ++
 dev-lang/gnat-gpl/gnat-gpl-2017.ebuild             | 184 +++++++++++++++++++++
 dev-lang/gnat-gpl/metadata.xml                     |   2 +
 4 files changed, 205 insertions(+)

diff --git a/dev-lang/gnat-gpl/Manifest b/dev-lang/gnat-gpl/Manifest
index e5c33083836..373a07ec5c0 100644
--- a/dev-lang/gnat-gpl/Manifest
+++ b/dev-lang/gnat-gpl/Manifest
@@ -5,6 +5,11 @@ DIST gcc-4.9.4-patches-1.0.tar.bz2 22266 SHA256 1a394abb77c75e2212896ad3a62ae1f6
 DIST gcc-4.9.4-piepatches-v0.6.4.tar.bz2 14414 SHA256 c67b56f04c653e6a19e36abed8391f8b6bed426bfcfc907237cc37f02dbb5015 SHA512 243fa272ea0e49f700a76508bab3e03bbb353bcb930581b2f87f9a47df5cd3880e29f20b71612b21190adc463849e1e6ac2a38a49c0002b562d93d436f538285 WHIRLPOOL 1e5959441210af6f690398efab96444ab11d136238a9428912e8441eaf0509fe6db359a8aca92a446fce0c75777385475af73b20165a8593f9969e3a25fd0b0f
 DIST gcc-4.9.4-uclibc-patches-1.0.tar.bz2 2618 SHA256 95f290d0b68114d835515afc424d6096476a45665671784aa71a7a506296e465 SHA512 5a1f44caa9261f4947101379628143869b31dec67fa28605e8e1f3894d4b7120c3f68ba6deb59da7a74fa906e27ab32cd3767761837dc3dfebc37865d349d6db WHIRLPOOL e46b08737cfdc235bfb80117e0389f3969167adf59bcba2a0a1094a20eab2b62f0c952dac44781e43957cb1507cd4e80f37bd8aecbc55dbda6382d93b3a4cf94
 DIST gcc-4.9.4.tar.bz2 90097606 SHA256 6c11d292cd01b294f9f84c9a59c230d80e9e4a47e5c6355f046bb36d4f358092 SHA512 93abb78e16277454f41a8e9810f41f66c0fdffdc539a762ff6b67d3037f78db971378683fd2ebf707d1d51c059fad2161fe42d110c330027f40214b7db0f3efe WHIRLPOOL e20045126c21a3edea1fa4a2185ec2bc5feec77ddf967ab9d1e8c33322ad4eafe013bfcaab1ed4e35971d3b70ef373ea3585ebb089c9bbf91bbfca1f1da71236
+DIST gcc-6-gpl-2017-src.tar.gz 88045488 SHA256 6a45ffc4096772aeb8d7cf673dde8cfb6ae270855fb4ee4b325fe88c61cce90e SHA512 bf8f786b5ad28a6b7d184fb5263424b7ed62154e308e259b61c24a577efdae56939fbaabc1fc53a0f467702c1e6d8598dc6e489ce074724799130a793cfb146e WHIRLPOOL 8ca2ca993a606b4b0e9182809aca9ece2afa4e49f7510a1fca6e73faa78e8c05c4eaeca605a295dd8851ef57d584c2197dd93ad08f4a7a1b5de117187c5f50aa
+DIST gcc-6.3.0-patches-1.0.tar.bz2 7596 SHA256 6c880468ffa4ad2b324fd18c762dbdf10646089c8ab865c228e166f99a0e049c SHA512 8fc96086bd3da3726687ee9d180d3b5d0a7d5814141d44eac8eb01566a783ec780c8fb8f55f75d6e9c9006b2e407e20cdb5835d541b0b66a47dd60642861734c WHIRLPOOL b1bce94d6134db6c9aff4298c6c7af003e39d0411aa40cd027d2c7d6a256971c81fb557e85b25f1107e9a474cb7d772c3bc62a7a4ab7ff7fca5eeae5b2ca0c94
+DIST gcc-6.3.0.tar.bz2 99903185 SHA256 f06ae7f3f790fbf0f018f6d40e844451e6bc3b7bc96e128e63b09825c1f8b29f SHA512 234dd9b1bdc9a9c6e352216a7ef4ccadc6c07f156006a59759c5e0e6a69f0abcdc14630eff11e3826dd6ba5933a8faa43043f3d1d62df6bd5ab1e82862f9bf78 WHIRLPOOL e79a2d6ad199396b6efd835c1129d049a367174ea33dd3b6247d72461f117c2dd81e5a66f3dd6427ce500e768d3a4453efd0debcb56966d00c7df79d05d54b7d
 DIST gcc-interface-4.9-gpl-2016-src.tar.gz 339037 SHA256 56d7a90c80ff33aa99960b959b281567fd2d9692db78fc07b2827d2905780e20 SHA512 507df314d1890c228c19f458bd51197377deaaa2d6082fe1e71b62b683252ee5fba4adfe2386246e14618b1c77288e0dcb5bf501e2daaca249b6299462c2f6bd WHIRLPOOL e889172210928849cb704562ed2b229748a6779842ebaa29d77dd282a0dee9509b70483bbfe25e0e2137eba00dbb4fedb4ebabfa7639bda25791c52176c50215
+DIST gcc-interface-6-gpl-2017-src.tar.gz 347016 SHA256 dbc4f1cae33fb82d21284af5ea05746e7240f0c9a9a6313c1b69a75ba7a903e2 SHA512 5833303fce5bf812ccbc71f3d3726c0cb877937d75327edb15097c0b7dba58024a52688392906695ab92fb4e5d7a6623671eac9a05d17937dc0270bafcde920a WHIRLPOOL d3e51c9ff876c11c9a15235d8fa7e0d52d36b3e27dc2f2cdaf956511b26d481b25fee25ee7d741c3dcc0334c5f6ce5ec1517d1aac5e1b626dba40d5a1f4299a7
 DIST gnat-gpl-2014-x86_64-linux-bin.tar.gz 236253400 SHA256 8063a8c94df556991474af0f6b479868db7fcea0118f49bc7606db36faeab733 SHA512 5e40a251baac3d0ace78352956ca21a7d294d902d344a9ed7a8d376e900468c283721ebfb773adfedbf4d623ace02536505c0147815a0c1908933ad611ea085e WHIRLPOOL 7287a0cf19ea770dfce492c216850eeaa95edd1846ce813fb44542a5681afc9bacb710ad6bc41cb43d56087d08bb93d525808274ee36f45e66a7ca9da39907b2
 DIST gnat-gpl-2016-src.tar.gz 8857249 SHA256 b23780ab981e3b981c668b79b066ce56bab62a950b83f10c60a2bd5ac0fcb6d5 SHA512 4a5cb58ede5b4ae2887e64f0f2e12e0e06470d320796f06d02f7ddd932ff0d3b40e6d3e98a81138fff6906548a55153c2a186ff4a6e3d23b9dbe01ca582da1f8 WHIRLPOOL b0a7c7ba0de0cc5ca439bba7ed94f597004343b5cecb0b3be76e332e8d90a3e5265dbfee421b1d117f13031082636f364de3f989689562a824dd27a567dd8bd0
+DIST gnat-gpl-2017-src.tar.gz 8783473 SHA256 91c9733fb8f8ca4c42fbcab3bc8a54fc83083126f6e6b630c9a36f3654537c29 SHA512 ae7314a2241107ed4d962dce08306eeb34c5f11e26183935bbb1ccf3a5eb011d6457c1b6fcded93dd0ee9ba31d791971ebe2a5a5a0ae04ff80d87a670325a098 WHIRLPOOL cf98ed36553ddfb54502f10898016017e387920bea074395c3a84047c2ec707734a9299de8c5f2f1931a53e04c24e67f8ab017437fbee7b7a658a6c0bca46e35

diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch
new file mode 100644
index 00000000000..e3a68c8f509
--- /dev/null
+++ b/dev-lang/gnat-gpl/files/gnat-gpl-2017-gentoo.patch
@@ -0,0 +1,14 @@
+--- patch/13_all_default-ssp-fix.patch.old	2017-06-14 11:29:28.997183865 +0200
++++ patch/13_all_default-ssp-fix.patch	2017-06-14 12:24:15.042271863 +0200
+@@ -39,9 +39,9 @@
+   %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
+   %{fsyntax-only:-o %j} %{-param*}\
+ + %{nostdlib:-nostdlib}\
+-  %{coverage:-fprofile-arcs -ftest-coverage}";
++  %{coverage:-fprofile-arcs -ftest-coverage}\
++  %{fdump-scos:-fpreserve-decisions-generic}";
+  
+- static const char *asm_options =
+ --- a/gcc/params.def	2016-03-30 09:47:40.000000000 +0200
+ +++ b/gcc/params.def	2016-09-19 12:56:58.443179039 +0200
+ @@ -673,7 +673,7 @@ DEFPARAM (PARAM_INTEGER_SHARE_LIMIT,

diff --git a/dev-lang/gnat-gpl/gnat-gpl-2017.ebuild b/dev-lang/gnat-gpl/gnat-gpl-2017.ebuild
new file mode 100644
index 00000000000..0cddce16ba0
--- /dev/null
+++ b/dev-lang/gnat-gpl/gnat-gpl-2017.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCH_VER="1.0"
+#UCLIBC_VER="1.0"
+
+TOOLCHAIN_GCC_PV=6.3.0
+GCC_FILESDIR=${PORTDIR}/sys-devel/gcc/files
+
+inherit eutils toolchain-funcs toolchain
+
+REL=6
+MYP=gcc-${REL}-gpl-${PV}-src
+
+DESCRIPTION="GNAT Ada Compiler - GPL version"
+HOMEPAGE="http://libre.adacore.com/"
+SRC_URI+="
+	http://mirrors.cdn.adacore.com/art/591adbb4c7a4473fcc4532a3
+		-> ${P}-src.tar.gz
+	http://mirrors.cdn.adacore.com/art/591adb65c7a4473fcbb153ac
+		-> ${MYP}.tar.gz
+	http://mirrors.cdn.adacore.com/art/591adbc5c7a4473fcbb153ae
+		-> gcc-interface-${REL}-gpl-${PV}-src.tar.gz
+	bootstrap? (
+		http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
+			gnat-gpl-2014-x86_64-linux-bin.tar.gz
+	)"
+
+LICENSE+=" GPL-2 GPL-3"
+SLOT="${TOOLCHAIN_GCC_PV}"
+KEYWORDS="~amd64"
+IUSE="bootstrap"
+
+RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
+DEPEND="${RDEPEND}
+	elibc_glibc? ( >=sys-libs/glibc-2.13 )
+	>=sys-devel/binutils-2.20"
+
+S="${WORKDIR}"/${MYP}
+PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
+FSFGCC=gcc-${TOOLCHAIN_GCC_PV}
+
+pkg_setup() {
+	toolchain_pkg_setup
+	if use bootstrap; then
+		GCC="${WORKDIR}"/gnat-gpl-2014-x86_64-linux-bin/bin/gcc
+	else
+		GCC=${ADA:-$(tc-getCC)}
+	fi
+
+	gnatbase=$(basename ${GCC})
+	gnatpath=$(dirname ${GCC})
+
+	GNATMAKE=${gnatbase/gcc/gnatmake}
+	if [[ ${gnatpath} != "." ]] ; then
+		GNATMAKE="${gnatpath}/${GNATMAKE}"
+	fi
+
+	if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
+		eerror "You need a gcc compiler that provides the Ada Compiler:"
+		eerror "1) use gcc-config to select the right compiler or"
+		eerror "2) set the bootstrap use flag"
+		die "ada compiler not available"
+	fi
+}
+
+src_unpack() {
+	GCC_A_FAKEIT="
+		${P}-src.tar.gz
+		${MYP}.tar.gz
+		gcc-interface-${REL}-gpl-${PV}-src.tar.gz"
+	if use bootstrap; then
+		GCC_A_FAKEIT="${GCC_A_FAKEIT} gnat-gpl-2014-x86_64-linux-bin.tar.gz"
+	fi
+
+	toolchain_src_unpack
+	if use bootstrap; then
+		rm gnat-gpl-2014-x86_64-linux-bin/libexec/gcc/x86_64-pc-linux-gnu/4.7.4/ld || die
+	fi
+}
+
+src_prepare() {
+	sed "${FILESDIR}"/${PN}.xml \
+		-e "s:@VER@:${PV}:g" \
+		> ${P}.xml || die
+
+	CC=${GCC}
+	CXX="${gnatbase/gcc/g++}"
+	GNATBIND="${gnatbase/gcc/gnatbind}"
+	GNATLINK="${gnatbase/gcc/gnatlink}"
+	GNATLS="${gnatbase/gcc/gnatls}"
+	if [[ ${gnatpath} != "." ]] ; then
+		CXX="${gnatpath}/${CXX}"
+		GNATBIND="${gnatpath}/${GNATBIND}"
+		GNATLINK="${gnatpath}/${GNATLINK}"
+		GNATLS="${gnatpath}/${GNATLS}"
+	fi
+	mkdir bin || die
+	ln -s $(which ${GCC}) bin/gcc || die
+	ln -s $(which ${CXX}) bin/g++ || die
+	ln -s $(which ${GNATMAKE}) bin/gnatmake || die
+	ln -s $(which ${GNATBIND}) bin/gnatbind || die
+	ln -s $(which ${GNATLINK}) bin/gnatlink || die
+	ln -s $(which ${GNATLS}) bin/gnatls || die
+
+	echo ${TOOLCHAIN_GCC_PV} > gcc/BASE-VER
+
+	cd ..
+	mv gnat-gpl-${PV}-src/src/ada ${MYP}/gcc/ || die
+	mv gcc-interface-${REL}-gpl-${PV}-src ${MYP}/gcc/ada/gcc-interface || die
+	epatch "${FILESDIR}"/${P}-gentoo.patch
+	cd -
+	sed -i \
+		-e 's:$(P) ::g' \
+		gcc/ada/gcc-interface/Makefile.in \
+		|| die "sed failed"
+	toolchain_src_prepare
+}
+
+src_configure() {
+	export PATH=${PWD}/bin:${PATH}
+	local trueGCC_BRANCH_VER=${GCC_BRANCH_VER}
+	GCC_BRANCH_VER=$(gcc-version)
+	downgrade_arch_flags
+	GCC_BRANCH_VER=${trueGCC_BRANCH_VER}
+	toolchain_src_configure \
+		--enable-languages=ada \
+		--disable-libada
+}
+
+src_compile() {
+	unset ADAFLAGS
+	toolchain_src_compile
+	gcc_do_make "-C gcc gnatlib-shared"
+	ln -s gcc ../build/prev-gcc || die
+	ln -s x86_64-pc-linux-gnu ../build/prev-x86_64-pc-linux-gnu || die
+	gcc_do_make "-C gcc gnattools"
+}
+
+src_install() {
+	insinto /usr/share/gprconfig
+	doins ${P}.xml
+	toolchain_src_install
+	cd "${D}"${BINPATH}
+	for x in gnat*; do
+		# For some reason, g77 gets made instead of ${CTARGET}-g77...
+		# this should take care of that
+		if [[ -f ${x} ]] ; then
+			# In case they're hardlinks, clear out the target first
+			# otherwise the mv below will complain.
+			rm -f ${CTARGET}-${x}
+			mv ${x} ${CTARGET}-${x}
+		fi
+
+		if [[ -f ${CTARGET}-${x} ]] ; then
+			if ! is_crosscompile ; then
+				ln -sf ${CTARGET}-${x} ${x}
+				dosym ${BINPATH#${EPREFIX}}/${CTARGET}-${x} \
+					/usr/bin/${x}-${GCC_CONFIG_VER}
+			fi
+			# Create versioned symlinks
+			dosym ${BINPATH#${EPREFIX}}/${CTARGET}-${x} \
+				/usr/bin/${CTARGET}-${x}-${GCC_CONFIG_VER}
+		fi
+
+		if [[ -f ${CTARGET}-${x}-${GCC_CONFIG_VER} ]] ; then
+			rm -f ${CTARGET}-${x}-${GCC_CONFIG_VER}
+			ln -sf ${CTARGET}-${x} ${CTARGET}-${x}-${GCC_CONFIG_VER}
+		fi
+	done
+}
+
+pkg_postinst () {
+	toolchain_pkg_postinst
+	einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
+	einfo "Set the ADA variables to ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV} in"
+	einfo "your make.conf"
+	einfo "Even if the c/c++ compilers are using almost the same patched"
+	einfo "source as the sys-devel/gcc package its use is not extensively"
+	einfo "tested, and not supported for updating your system, except for ada"
+	einfo "related packages"
+}

diff --git a/dev-lang/gnat-gpl/metadata.xml b/dev-lang/gnat-gpl/metadata.xml
index 0267c7c7849..93f13769808 100644
--- a/dev-lang/gnat-gpl/metadata.xml
+++ b/dev-lang/gnat-gpl/metadata.xml
@@ -15,6 +15,7 @@
 		<flag name="go">Build the GCC Go language frontend.</flag>
 		<flag name="graphite">Add support for the framework for loop
 			optimizations based on a polyhedral intermediate representation</flag>
+		<flag name="mpx">Enable support for Intel Memory Protection Extensions (MPX)</flag>
 		<flag name="libssp">Build SSP support into a dedicated library rather
 			than use the code in the C library (DO NOT ENABLE THIS IF YOU DON'T
 			KNOW WHAT IT DOES)</flag>
@@ -28,6 +29,7 @@
 		<flag name="regression-test">Run the testsuite and install the results
 			(requires FEATURES=test)</flag>
 		<flag name="sanitize">Build support for various sanitizer functions (ASAN/TSAN/etc...)</flag>
+		<flag name="ssp">Build packages with stack smashing protector on by default</flag>
 		<flag name="vtv">Build support for virtual table verification (a C++ hardening feature)</flag>
 	</use>
 </pkgmetadata>


             reply	other threads:[~2017-06-17 15:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-17 15:43 Alfredo Tupone [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-11-26 19:47 [gentoo-commits] repo/gentoo:master commit in: dev-lang/gnat-gpl/, dev-lang/gnat-gpl/files/ Alfredo Tupone
2022-01-01 21:44 Alfredo Tupone
2021-07-11 16:52 Alfredo Tupone
2020-06-21 20:37 Sergei Trofimovich
2020-06-21 17:31 Sergei Trofimovich
2019-11-20 20:42 Alfredo Tupone
2019-11-20 19:38 Alfredo Tupone
2019-05-29 17:08 Alfredo Tupone
2018-11-17 14:08 Alfredo Tupone
2017-03-26 19:04 Alfredo Tupone
2017-03-11 20:46 Alfredo Tupone

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1497714209.cf7037d9a1c39a48f60c200cd9272b207af952f8.tupone@gentoo \
    --to=tupone@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox