summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Haubenwallner <haubi@gentoo.org>2018-07-03 16:35:22 +0200
committerMichael Haubenwallner <haubi@gentoo.org>2018-07-03 16:36:24 +0200
commit0fc053670eaa8bbfd0660a36e1cf83b6dcf4df36 (patch)
tree83726e9c736bef5f22c63c8f793df35080ad2f0a /sys-devel/parity
parentwww-client/vivaldi-snapshot: Old. (diff)
downloadgentoo-0fc053670eaa8bbfd0660a36e1cf83b6dcf4df36.tar.gz
gentoo-0fc053670eaa8bbfd0660a36e1cf83b6dcf4df36.tar.bz2
gentoo-0fc053670eaa8bbfd0660a36e1cf83b6dcf4df36.zip
sys-devel/parity-9999: follow upstream development
Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'sys-devel/parity')
-rw-r--r--sys-devel/parity/metadata.xml13
-rw-r--r--sys-devel/parity/parity-9999.ebuild66
2 files changed, 53 insertions, 26 deletions
diff --git a/sys-devel/parity/metadata.xml b/sys-devel/parity/metadata.xml
index c0714eac500c..2d8ffbadd138 100644
--- a/sys-devel/parity/metadata.xml
+++ b/sys-devel/parity/metadata.xml
@@ -6,7 +6,18 @@
<name>Michael Haubenwallner</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge">parity</remote-id>
<remote-id type="github">haubi/parity</remote-id>
</upstream>
+ <use>
+ <flag name="vc7_0">Enable support for Visual Studio 2002</flag>
+ <flag name="vc7_1">Enable support for Visual Studio 2003</flag>
+ <flag name="vc8_0">Enable support for Visual Studio 2005</flag>
+ <flag name="vc9_0">Enable support for Visual Studio 2008</flag>
+ <flag name="vc10_0">Enable support for Visual Studio 2010</flag>
+ <flag name="vc11_0">Enable support for Visual Studio 2012</flag>
+ <flag name="vc12_0">Enable support for Visual Studio 2013</flag>
+ <flag name="vc14_0">Enable support for Visual Studio 2015</flag>
+ <flag name="vc15_0">Enable support for Visual Studio 2017</flag>
+ <flag name="vc_x86">Enable support for 32bit Visual Studio compilers</flag>
+ </use>
</pkgmetadata>
diff --git a/sys-devel/parity/parity-9999.ebuild b/sys-devel/parity/parity-9999.ebuild
index 381b4c753823..24a6582d4eab 100644
--- a/sys-devel/parity/parity-9999.ebuild
+++ b/sys-devel/parity/parity-9999.ebuild
@@ -14,9 +14,15 @@ fi
DESCRIPTION="A POSIX to native Win32 Cross-Compiler Tool (requires Visual Studio)"
HOMEPAGE="https://github.com/haubi/parity"
+parity-vcarchs() { echo x86 ; }
+parity-vcvers() { echo 7_0 7_1 8_0 9_0 10_0 11_0 12_0 14_0 15_0 ; }
+
LICENSE="LGPL-3"
SLOT="0"
-IUSE=""
+IUSE="$(
+ for a in $(parity-vcarchs); do echo "+vc_${a}"; done
+ for v in $(parity-vcvers); do echo "+vc${v}"; done
+)"
if [[ ${PV} == 9999 ]]; then
src_prepare() {
@@ -25,30 +31,40 @@ if [[ ${PV} == 9999 ]]; then
}
fi
-src_install() {
- emake DESTDIR="${D}" install || die "emake install failed"
-
- # create i586-pc-winnt-g[++|cc|..] links..
- local exeext=
-
- [[ -f ${ED}usr/bin/parity.gnu.gcc.exe ]] && exeext=.exe
-
- # create cross compiler syms, also for former versioned winnt profiles
- local v t
- for v in "" 5.2 6.1; do
- dosym /usr/bin/parity.gnu.gcc${exeext} /usr/bin/i586-pc-winnt${v}-c++
- dosym /usr/bin/parity.gnu.gcc${exeext} /usr/bin/i586-pc-winnt${v}-g++
- for t in gcc ld windres ar nm ranlib strip; do
- if [[ -e "${ED}"usr/bin/parity.gnu.${t}${exeext} ]]; then
- dosym /usr/bin/parity.gnu.${t}${exeext} /usr/bin/i586-pc-winnt${v}-${t}
- else
- dosym /usr/bin/parity.gnu.${t} /usr/bin/i586-pc-winnt${v}-${t}
- fi
- done
+parity-enabled-vcarchs() {
+ local enabled= a
+ for a in $(parity-vcarchs) ; do
+ if use vc_${a} ; then
+ enabled+=",${a}"
+ fi
+ done
+ echo ${enabled#,}
+}
+
+parity-enabled-vcvers() {
+ local enabled= v
+ for v in $(parity-vcvers) ; do
+ if use vc${v} ; then
+ enabled+=",${v/_/.}"
+ fi
done
+ echo ${enabled#,}
+}
+
+src_configure() {
+ local myconf=(
+ --enable-msvc-archs="$(parity-enabled-vcarchs)"
+ --enable-msvc-versions="$(parity-enabled-vcvers)"
+ --disable-default-msvc-version
+ )
+ econf "${myconf[@]}"
+}
- # we don't need the header files installed by parity... private
- # header files are supported with a patch from 2.1.0-r1 onwards,
- # so they won't be there anymore, but -f does the job in any case.
- rm -f "${ED}"/usr/include/*.h
+pkg_postinst() {
+ if [[ -n ${ROOT%/} ]] ; then
+ einfo "To enable all available MSVC versions, on the target machine please run:"
+ einfo " '${EPREFIX}/usr/bin/parity-setup' --enable-all"
+ else
+ "${EPREFIX}"/usr/bin/parity-setup --enable-all
+ fi
}