summaryrefslogtreecommitdiff
path: root/sys-devel/multilib-gcc-wrapper
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-devel/multilib-gcc-wrapper
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-devel/multilib-gcc-wrapper')
-rw-r--r--sys-devel/multilib-gcc-wrapper/Manifest4
-rw-r--r--sys-devel/multilib-gcc-wrapper/metadata.xml12
-rw-r--r--sys-devel/multilib-gcc-wrapper/multilib-gcc-wrapper-0.ebuild71
3 files changed, 87 insertions, 0 deletions
diff --git a/sys-devel/multilib-gcc-wrapper/Manifest b/sys-devel/multilib-gcc-wrapper/Manifest
new file mode 100644
index 000000000000..626134508d13
--- /dev/null
+++ b/sys-devel/multilib-gcc-wrapper/Manifest
@@ -0,0 +1,4 @@
+EBUILD multilib-gcc-wrapper-0.ebuild 1523 SHA256 51096f1558d3adc47efa427a7107260bea35d59d85ff4f4a8f452b477aa3f525 SHA512 3c52476f072da9c8626868ab44b5147fafcf05f07eced28268a45b000fc2bd8e82744f4a368d155f06b32af6f6126486f357a84f51986e3c6f146f85dcff0c61 WHIRLPOOL c6868206c8ae0a1987c2e42efe71d8e358d1451dc669f3af2952304876a5ea733bffdd4b421c954eb16e7500ebc32958ae13f0f2a8d5e4a2fc501c4068ae52fe
+MISC ChangeLog 2241 SHA256 3697f694f7420a789b2da3e78dbfc5ec92934ce97e4ca6f26c4ef022d6c2bf08 SHA512 c0b5952120c92c58dd4765d5f749ac4ac4ea8c69ab1509bf3ce542727736e713f4889b069b445089eec40ee104e5421a7c0ea767fd0f4af1c0a48530c2711563 WHIRLPOOL e9deadac5b4c8ffa9ff43062f1b2ebbe318f0ac09c403eb0679dd9b83a133006407a588b270d72eabacb843cab85d71bab4a296e80be4b3afb20ca1d5bb2999f
+MISC ChangeLog-2015 404 SHA256 8bc0acad4b480d0810d9bfa8738863b23aa3006efd4545541af8e4da257b153f SHA512 ce8596eb82b84e6e94fc1d0022ab593551681e4aaf6ca77df164d998fedc9f11068dd0e6d9b219b91522db009c0ae6675d9121bd3c546e5550431a530ed8352d WHIRLPOOL c9a8f84e62dd76638bae80501c616983a0befe754450be6467b9a90772dcc961ed64c4f8b08b74e7c8d1f9cb8b8709e4c088c69f88280fa23bc3cffca5ec5c42
+MISC metadata.xml 362 SHA256 cf8dc713cfb0488cd9b30dba49d9cc73ecd5c79738c56a77376cd391b893d7a2 SHA512 7960a5447f1c6f22a9096eb667fcc700facbab5734896bc492ef7cd5ec7d25fad4d6bdbca6f8be3390762d0dbb57052f10b1ce00616553218f63f67936fa1d1b WHIRLPOOL 96be1ddd7295aea94897fcdb72d30aa10428f399cf7cec9840cfe9805ed7c5629136a90785245cbd43cfa16b97ce1a0e8e4ee4f6f5d78a360e94278db0618373
diff --git a/sys-devel/multilib-gcc-wrapper/metadata.xml b/sys-devel/multilib-gcc-wrapper/metadata.xml
new file mode 100644
index 000000000000..d1c3b3b043a8
--- /dev/null
+++ b/sys-devel/multilib-gcc-wrapper/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>multilib@gentoo.org</email>
+ <name>gx86 multilib team</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-devel/multilib-gcc-wrapper/multilib-gcc-wrapper-0.ebuild b/sys-devel/multilib-gcc-wrapper/multilib-gcc-wrapper-0.ebuild
new file mode 100644
index 000000000000..8094a33d1a12
--- /dev/null
+++ b/sys-devel/multilib-gcc-wrapper/multilib-gcc-wrapper-0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Wrappers for gcc tools to be used on non-native CHOSTs"
+HOMEPAGE="https://www.gentoo.org"
+SRC_URI=""
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND="sys-devel/gcc:="
+
+S=${WORKDIR}
+
+mkwrap() {
+ einfo " ${2}"
+
+ cat > "${T}"/wrapper <<-_EOF_
+ #!${EPREFIX}/bin/sh
+ exec ${1} $(get_abi_CFLAGS) "\${@}"
+ _EOF_
+
+ newbin "${T}"/wrapper "${2}"
+}
+
+src_install() {
+ local host_prefix=${CHOST}
+ # stolen from sys-devel/gcc-config
+ # TODO: check if all of them actually support $(get_ABI_CFLAGS)
+ local tools=(
+ cpp cc gcc c++ g++ f77 g77 gcj gcjh gdc gdmd gfortran gccgo
+ )
+
+ cd "${EROOT%/}"/usr/bin || die
+ eshopts_push -s nullglob
+
+ # same as toolchain.eclass
+ : ${TARGET_DEFAULT_ABI:=${DEFAULT_ABI}}
+ : ${TARGET_MULTILIB_ABIS:=${MULTILIB_ABIS}}
+ local ABI t e
+ for ABI in $(get_all_abis TARGET); do
+ [[ ${ABI} == ${TARGET_DEFAULT_ABI} ]] && continue
+
+ einfo "Creating wrappers for ${ABI} ..."
+ for t in "${tools[@]}"; do
+ # look for both plain *-gcc and e.g. *-gcc-4.8.3
+ # (but avoid *-gcc-nm)
+ # note: nullglob applied above
+ for e in ${host_prefix}[-]${t}{,-[0-9]*}; do
+ local newname=$(get_abi_CHOST)-${e#${host_prefix}-}
+
+ einfo " ${newname}"
+
+ cat > "${T}"/wrapper <<-_EOF_
+ #!${EPREFIX}/bin/sh
+ exec ${e} $(get_abi_CFLAGS) "\${@}"
+ _EOF_
+
+ newbin "${T}"/wrapper "${newname}"
+ done
+ done
+ done
+
+ eshopts_pop
+}