public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2015-08-14  7:50 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2015-08-14  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     a8787399e3f6a90431db404a82a7bf499aa1a4f8
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 14 07:49:20 2015 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Aug 14 07:49:47 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8787399

dev-util/mingw64-runtime: cleanup

Package-Manager: portage-2.2.20.1

 dev-util/mingw64-runtime/Manifest                  |  1 -
 .../mingw64-runtime/mingw64-runtime-2.0.8.ebuild   | 74 ----------------------
 2 files changed, 75 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 83e7e65..7a7a748 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,4 +1,3 @@
-DIST mingw-w64-v2.0.8.tar.gz 7017057 SHA256 1a5a2c57f90c7f1b5eb8402a52f93de645925a8af62c2cfe748f39ce66008cf4 SHA512 c526bad968c74d86e740862f5e492329b32a1782c69b3a22f7203ac7e38697ba2017f95ed7bf519b737328a92d7c1b4e519f9103d634550f30bdb4a21921303e WHIRLPOOL 913bc444941c4c9c630404847cfb9bb54083fcd366a240e47992d3ee65cfc4c86f340099970243d3d251d5a1e5a00005c09e9d1aecb884256e125155bbcfbd0e
 DIST mingw-w64-v3.0.0.tar.bz2 7012419 SHA256 ffd381a53cb774843667ccdaeb3a23f86be77b0344355e1a5947b3ceb8343c67 SHA512 7fc438908328ae4429f79dfaaae92bc7e88bc0f46517bdebdc3c45b3e8062ff6c27f166eb51103c2d49aae01851d82f33e0b031c8d98198baaeb119e19221989 WHIRLPOOL ea2820ab24dcd6f35fab0404b2bd26273b117731bb25e2e3ef753e9a3a9b6661564605cdae7ed5e6e4f9fc6b3c3d000761fa44afa19f79b5d6deaebca44f709c
 DIST mingw-w64-v3.1.0.tar.bz2 7021162 SHA256 ece7a7e7e1ab5e25d5ce469f8e4de7223696146fffa71c16e2a9b017d0e017d2 SHA512 9f418694aa0f072e2f08766fcee8929ac3022187750028781336243e050495b9709bb9ae87b4a83a8e9d3856478c525d8636277a4c219e282421b269dafa68d8 WHIRLPOOL 90a3a7056df7c4da2e605da1578e65b16e0f831370d8b1d399fed48945828604a94f9402b2d53bc4ca26623f1d34e6c45c862bf1f7590ddf9325fd4a053a18fb
 DIST mingw-w64-v3.2.0.tar.bz2 7053254 SHA256 78a0de610829a1145ae12c4a29603344963a0b8156ba39a9a31a0e79c3b29142 SHA512 dd483bcf7ba0e698a33a0b02a811b181e601cd344b87dafd0f6c477f68efb9a617a4109046fd06735242623f87833cf97688f057583e1378d6d84e7818927593 WHIRLPOOL 99ba5ddaa99c40309d12d75d3953deaf9cc31280ad2446793d1525702963edd1b33e91053e99bdfd06d37980049d30b7fb4e9f3a5358f8277c2fabe587c56037

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-2.0.8.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-2.0.8.ebuild
deleted file mode 100644
index 66af644..0000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-2.0.8.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit flag-o-matic eutils
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64-v${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only"
-RESTRICT="strip"
-
-S=${WORKDIR}/mingw-w64-v${PV}/mingw-w64-crt
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_unpack() {
-	unpack ${A}
-	find "${WORKDIR}" -type f -exec touch -r . {} +
-}
-
-src_compile() {
-	# install the local headers as the crt step wants latest
-	pushd ../mingw-w64-headers >/dev/null
-	CHOST=${CTARGET} econf --enable-sdk || die
-	emake install DESTDIR="${WORKDIR}/sysroot" || die
-	popd >/dev/null
-
-	just_headers && return 0
-
-	CHOST=${CTARGET} strip-unsupported-flags
-	append-cppflags -isystem "${WORKDIR}/sysroot/usr/${CTARGET}/include"
-	CHOST=${CTARGET} econf || die
-	emake || die
-}
-
-src_install() {
-	insinto /usr/${CTARGET}/usr/include
-	doins -r "${WORKDIR}"/sysroot/usr/${CTARGET}/include/* || die
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-	just_headers && return 0
-
-	emake install DESTDIR="${D}" || die
-	env -uRESTRICT CHOST=${CTARGET} prepallstrip
-	rm -rf "${D}"/usr/doc
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2015-08-14  7:50 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2015-08-14  7:50 UTC (permalink / raw
  To: gentoo-commits

commit:     15512c65f716c618a1b85b57f6c2afc0bc6612e4
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 14 07:48:14 2015 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Aug 14 07:49:43 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15512c65

dev-util/mingw64-runtime: version bump

Package-Manager: portage-2.2.20.1

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-4.0.4.ebuild   | 113 +++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 9911b6f..83e7e65 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -3,3 +3,4 @@ DIST mingw-w64-v3.0.0.tar.bz2 7012419 SHA256 ffd381a53cb774843667ccdaeb3a23f86be
 DIST mingw-w64-v3.1.0.tar.bz2 7021162 SHA256 ece7a7e7e1ab5e25d5ce469f8e4de7223696146fffa71c16e2a9b017d0e017d2 SHA512 9f418694aa0f072e2f08766fcee8929ac3022187750028781336243e050495b9709bb9ae87b4a83a8e9d3856478c525d8636277a4c219e282421b269dafa68d8 WHIRLPOOL 90a3a7056df7c4da2e605da1578e65b16e0f831370d8b1d399fed48945828604a94f9402b2d53bc4ca26623f1d34e6c45c862bf1f7590ddf9325fd4a053a18fb
 DIST mingw-w64-v3.2.0.tar.bz2 7053254 SHA256 78a0de610829a1145ae12c4a29603344963a0b8156ba39a9a31a0e79c3b29142 SHA512 dd483bcf7ba0e698a33a0b02a811b181e601cd344b87dafd0f6c477f68efb9a617a4109046fd06735242623f87833cf97688f057583e1378d6d84e7818927593 WHIRLPOOL 99ba5ddaa99c40309d12d75d3953deaf9cc31280ad2446793d1525702963edd1b33e91053e99bdfd06d37980049d30b7fb4e9f3a5358f8277c2fabe587c56037
 DIST mingw-w64-v4.0.1.tar.bz2 10803072 SHA256 89d2524a071b6337dfd9f3b6e6f46d8002b2633f928c833dc4e873a13e045b17 SHA512 a216a09a460c56c29208aee1e1cdb428e856f9c8d59dd399723ccf6d549368f0a13a6aacb046d211ddec7c0a1f1c227d5dd599e4f0c33ba4b6d9c92bd0a7fa1b WHIRLPOOL e021031e2820e918fe0f291624335fadc08641e811f6cf19d45b1586d2ac96c6bff4fb936bcd154a7b48711db9f5faabd27bfdced3a38073b4a20c8471a91915
+DIST mingw-w64-v4.0.4.tar.bz2 10812375 SHA256 89356a0aa8cf9f8b9dc8d92bc8dd01a131d4750c3acb30c6350a406316c42199 SHA512 06de6b592f776676184a9c50c63eb105c82a912965dee5d8217f9b5b325e0258c188f5d7d5e28aaeacf7bad44ce5d36bd837b9f1cbb91358754787738fb15146 WHIRLPOOL ff557b2aff821c1833ab6d5fdade4f256b71cb37e84a476d3e5a4cfe13f60db68c336d7e72f6e3eb13b3d127e1bac2cbfdde160ea2f7016867f10efa6a02914b

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild
new file mode 100644
index 0000000..f738c15
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-4.0.1-winpthreads.patch"
+	epatch "${FILESDIR}/${PN}-4.0.1-build.patch"
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	local extra_conf=()
+
+	case ${CTARGET} in
+	x86_64*) extra_conf+=( --disable-lib32 --enable-lib64 ) ;;
+	i?86*) extra_conf+=( --enable-lib32 --disable-lib64 ) ;;
+	*) die "Unsupported ${CTARGET}" ;;
+	esac
+
+	CHOST=${CTARGET} econf \
+		--prefix=/usr/${CTARGET} \
+		--includedir=/usr/${CTARGET}/usr/include \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl) \
+		$(crt_use_with libraries libraries winpthreads,libmangle) \
+		$(crt_use_with tools) \
+		"${extra_conf[@]}"
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2016-06-07 19:10 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2016-06-07 19:10 UTC (permalink / raw
  To: gentoo-commits

commit:     e0332cab49cb6bad39cba49adaf734c262555755
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Tue Jun  7 19:09:44 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Tue Jun  7 19:09:44 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0332cab

dev-util/mingw64-runtime: version bump

Alter the method to detect 32bit/64bit.

Bug: 584858

Package-Manager: portage-2.2.28

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-4.0.6.ebuild   | 109 +++++++++++++++++++++
 2 files changed, 110 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 7a7a748..613d77b 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -3,3 +3,4 @@ DIST mingw-w64-v3.1.0.tar.bz2 7021162 SHA256 ece7a7e7e1ab5e25d5ce469f8e4de722369
 DIST mingw-w64-v3.2.0.tar.bz2 7053254 SHA256 78a0de610829a1145ae12c4a29603344963a0b8156ba39a9a31a0e79c3b29142 SHA512 dd483bcf7ba0e698a33a0b02a811b181e601cd344b87dafd0f6c477f68efb9a617a4109046fd06735242623f87833cf97688f057583e1378d6d84e7818927593 WHIRLPOOL 99ba5ddaa99c40309d12d75d3953deaf9cc31280ad2446793d1525702963edd1b33e91053e99bdfd06d37980049d30b7fb4e9f3a5358f8277c2fabe587c56037
 DIST mingw-w64-v4.0.1.tar.bz2 10803072 SHA256 89d2524a071b6337dfd9f3b6e6f46d8002b2633f928c833dc4e873a13e045b17 SHA512 a216a09a460c56c29208aee1e1cdb428e856f9c8d59dd399723ccf6d549368f0a13a6aacb046d211ddec7c0a1f1c227d5dd599e4f0c33ba4b6d9c92bd0a7fa1b WHIRLPOOL e021031e2820e918fe0f291624335fadc08641e811f6cf19d45b1586d2ac96c6bff4fb936bcd154a7b48711db9f5faabd27bfdced3a38073b4a20c8471a91915
 DIST mingw-w64-v4.0.4.tar.bz2 10812375 SHA256 89356a0aa8cf9f8b9dc8d92bc8dd01a131d4750c3acb30c6350a406316c42199 SHA512 06de6b592f776676184a9c50c63eb105c82a912965dee5d8217f9b5b325e0258c188f5d7d5e28aaeacf7bad44ce5d36bd837b9f1cbb91358754787738fb15146 WHIRLPOOL ff557b2aff821c1833ab6d5fdade4f256b71cb37e84a476d3e5a4cfe13f60db68c336d7e72f6e3eb13b3d127e1bac2cbfdde160ea2f7016867f10efa6a02914b
+DIST mingw-w64-v4.0.6.tar.bz2 10853871 SHA256 0c407394b0d8635553f4fbca674cdfe446aac223e90b4010603d863e4bdd015c SHA512 c9ec75b10fe40d80e620b569ca8f452b1f78e9e4dd45ad087a2b69297dc661d06aa30255ea310786f28c042256c35a1d3e709ff7ea8bc19e7f4ea914c120f020 WHIRLPOOL 69015094c14f66e1102d343b220eb17cc245f24a66c1a39ffced2f155cae84315eabb9a843bd9aa8e7874a12e34297a4f7cfff06447972a17beecf070bc70b08

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
new file mode 100644
index 0000000..997eabf
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-4.0.1-winpthreads.patch"
+	epatch "${FILESDIR}/${PN}-4.0.1-build.patch"
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	CHOST=${CTARGET} econf \
+		--prefix=/usr/${CTARGET} \
+		--includedir=/usr/${CTARGET}/usr/include \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl) \
+		$(crt_use_with libraries libraries winpthreads,libmangle) \
+		$(crt_use_with tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2016-08-07 19:40 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2016-08-07 19:40 UTC (permalink / raw
  To: gentoo-commits

commit:     d3227bf4fa52a8dd64f444c7667248feb4186b2e
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  7 19:37:10 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sun Aug  7 19:40:26 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3227bf4

dev-util/mingw64-runtime - modify cpp execution

hopefully will support more cases.

Bug: 590484

Package-Manager: portage-2.2.28

 dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
index 997eabf..67e224b 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
@@ -81,7 +81,7 @@ src_configure() {
 		$(crt_use_with libraries libraries winpthreads,libmangle) \
 		$(crt_use_with tools) \
 		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM /dev/null | grep -q __MINGW64__ \
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
 				&& echo --disable-lib32 --enable-lib64 \
 				|| echo --enable-lib32 --disable-lib64
 		)


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2016-11-11 23:39 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2016-11-11 23:39 UTC (permalink / raw
  To: gentoo-commits

commit:     55733e375bb9688fd48766877f6e1ec9ecbc343d
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 11 23:39:19 2016 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Nov 11 23:39:39 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=55733e37

dev-util/mingw64-runtime: version bump

Package-Manager: portage-2.3.0

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-5.0.0.ebuild   | 113 +++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 613d77b..8003331 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -4,3 +4,4 @@ DIST mingw-w64-v3.2.0.tar.bz2 7053254 SHA256 78a0de610829a1145ae12c4a29603344963
 DIST mingw-w64-v4.0.1.tar.bz2 10803072 SHA256 89d2524a071b6337dfd9f3b6e6f46d8002b2633f928c833dc4e873a13e045b17 SHA512 a216a09a460c56c29208aee1e1cdb428e856f9c8d59dd399723ccf6d549368f0a13a6aacb046d211ddec7c0a1f1c227d5dd599e4f0c33ba4b6d9c92bd0a7fa1b WHIRLPOOL e021031e2820e918fe0f291624335fadc08641e811f6cf19d45b1586d2ac96c6bff4fb936bcd154a7b48711db9f5faabd27bfdced3a38073b4a20c8471a91915
 DIST mingw-w64-v4.0.4.tar.bz2 10812375 SHA256 89356a0aa8cf9f8b9dc8d92bc8dd01a131d4750c3acb30c6350a406316c42199 SHA512 06de6b592f776676184a9c50c63eb105c82a912965dee5d8217f9b5b325e0258c188f5d7d5e28aaeacf7bad44ce5d36bd837b9f1cbb91358754787738fb15146 WHIRLPOOL ff557b2aff821c1833ab6d5fdade4f256b71cb37e84a476d3e5a4cfe13f60db68c336d7e72f6e3eb13b3d127e1bac2cbfdde160ea2f7016867f10efa6a02914b
 DIST mingw-w64-v4.0.6.tar.bz2 10853871 SHA256 0c407394b0d8635553f4fbca674cdfe446aac223e90b4010603d863e4bdd015c SHA512 c9ec75b10fe40d80e620b569ca8f452b1f78e9e4dd45ad087a2b69297dc661d06aa30255ea310786f28c042256c35a1d3e709ff7ea8bc19e7f4ea914c120f020 WHIRLPOOL 69015094c14f66e1102d343b220eb17cc245f24a66c1a39ffced2f155cae84315eabb9a843bd9aa8e7874a12e34297a4f7cfff06447972a17beecf070bc70b08
+DIST mingw-w64-v5.0.0.tar.bz2 11193007 SHA256 e41d8ca739e22b4215c8ebe99ed2fc398c734cae73877f3143c394661b096d08 SHA512 21e3029701a88cf11f0649f7876ab0c3ef04e14cb3221876854dc01d09e627dc3502f1d71a5eb8b0378ff37aa03a0e8080b72a1907ebd47857952fc145ac797a WHIRLPOOL a761a78db5ba2c0ec3ea017f1bb95f69d7e90478703dbc8cb566424ec8703995aa3201b83409216aad105512cd3583ea0198985a48e171f369d4e304481ec562

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild
new file mode 100644
index 00000000..3b8b4c2
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.0.1-winpthreads.patch"
+	"${FILESDIR}/${PN}-4.0.1-build.patch"
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	CHOST=${CTARGET} econf \
+		--prefix=/usr/${CTARGET} \
+		--includedir=/usr/${CTARGET}/usr/include \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl) \
+		$(crt_use_with libraries libraries winpthreads,libmangle) \
+		$(crt_use_with tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2017-01-06 18:39 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2017-01-06 18:39 UTC (permalink / raw
  To: gentoo-commits

commit:     6aeab832da7eb47780cf97b610225ebc131684c0
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Jan  6 10:13:58 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Jan  6 10:14:37 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6aeab832

dev-util/mingw64-runtime: version bump

Package-Manager: portage-2.3.0

 dev-util/mingw64-runtime/Manifest                                       | 2 +-
 .../{mingw64-runtime-5.0.0.ebuild => mingw64-runtime-5.0.1.ebuild}      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 8003331..72d1657 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -4,4 +4,4 @@ DIST mingw-w64-v3.2.0.tar.bz2 7053254 SHA256 78a0de610829a1145ae12c4a29603344963
 DIST mingw-w64-v4.0.1.tar.bz2 10803072 SHA256 89d2524a071b6337dfd9f3b6e6f46d8002b2633f928c833dc4e873a13e045b17 SHA512 a216a09a460c56c29208aee1e1cdb428e856f9c8d59dd399723ccf6d549368f0a13a6aacb046d211ddec7c0a1f1c227d5dd599e4f0c33ba4b6d9c92bd0a7fa1b WHIRLPOOL e021031e2820e918fe0f291624335fadc08641e811f6cf19d45b1586d2ac96c6bff4fb936bcd154a7b48711db9f5faabd27bfdced3a38073b4a20c8471a91915
 DIST mingw-w64-v4.0.4.tar.bz2 10812375 SHA256 89356a0aa8cf9f8b9dc8d92bc8dd01a131d4750c3acb30c6350a406316c42199 SHA512 06de6b592f776676184a9c50c63eb105c82a912965dee5d8217f9b5b325e0258c188f5d7d5e28aaeacf7bad44ce5d36bd837b9f1cbb91358754787738fb15146 WHIRLPOOL ff557b2aff821c1833ab6d5fdade4f256b71cb37e84a476d3e5a4cfe13f60db68c336d7e72f6e3eb13b3d127e1bac2cbfdde160ea2f7016867f10efa6a02914b
 DIST mingw-w64-v4.0.6.tar.bz2 10853871 SHA256 0c407394b0d8635553f4fbca674cdfe446aac223e90b4010603d863e4bdd015c SHA512 c9ec75b10fe40d80e620b569ca8f452b1f78e9e4dd45ad087a2b69297dc661d06aa30255ea310786f28c042256c35a1d3e709ff7ea8bc19e7f4ea914c120f020 WHIRLPOOL 69015094c14f66e1102d343b220eb17cc245f24a66c1a39ffced2f155cae84315eabb9a843bd9aa8e7874a12e34297a4f7cfff06447972a17beecf070bc70b08
-DIST mingw-w64-v5.0.0.tar.bz2 11193007 SHA256 e41d8ca739e22b4215c8ebe99ed2fc398c734cae73877f3143c394661b096d08 SHA512 21e3029701a88cf11f0649f7876ab0c3ef04e14cb3221876854dc01d09e627dc3502f1d71a5eb8b0378ff37aa03a0e8080b72a1907ebd47857952fc145ac797a WHIRLPOOL a761a78db5ba2c0ec3ea017f1bb95f69d7e90478703dbc8cb566424ec8703995aa3201b83409216aad105512cd3583ea0198985a48e171f369d4e304481ec562
+DIST mingw-w64-v5.0.1.tar.bz2 9160780 SHA256 9bb5cd7df78817377841a63555e73596dc0af4acbb71b09bd48de7cf24aeadd2 SHA512 73b746f227930597a97f117cf9f9aa19ddabb6090907cf6850864cf30089e5d6e1cd07e257b3b0b9ae0ac762cb24a6f5acf7336c9be48760c975ac038569dcfa WHIRLPOOL 26f3e52a5fb0a0332861a919d2b913dcb3e8dceb26bb174e85830282229823366918132c5db22a5d294167ba3c54c6fd461b663ff0ab92373f46519149817e98

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
similarity index 98%
rename from dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild
rename to dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
index 3b8b4c2..4fb06ef 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2017-03-29 20:04 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2017-03-29 20:04 UTC (permalink / raw
  To: gentoo-commits

commit:     de55cf0736dc0a74556d4339358ac7c3c0e15019
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 29 20:03:16 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Wed Mar 29 20:03:51 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de55cf07

dev-util/mingw64-runtime: version bump

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-5.0.2.ebuild   | 112 +++++++++++++++++++++
 2 files changed, 113 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 72d165709d4..fb8d7ffc014 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -5,3 +5,4 @@ DIST mingw-w64-v4.0.1.tar.bz2 10803072 SHA256 89d2524a071b6337dfd9f3b6e6f46d8002
 DIST mingw-w64-v4.0.4.tar.bz2 10812375 SHA256 89356a0aa8cf9f8b9dc8d92bc8dd01a131d4750c3acb30c6350a406316c42199 SHA512 06de6b592f776676184a9c50c63eb105c82a912965dee5d8217f9b5b325e0258c188f5d7d5e28aaeacf7bad44ce5d36bd837b9f1cbb91358754787738fb15146 WHIRLPOOL ff557b2aff821c1833ab6d5fdade4f256b71cb37e84a476d3e5a4cfe13f60db68c336d7e72f6e3eb13b3d127e1bac2cbfdde160ea2f7016867f10efa6a02914b
 DIST mingw-w64-v4.0.6.tar.bz2 10853871 SHA256 0c407394b0d8635553f4fbca674cdfe446aac223e90b4010603d863e4bdd015c SHA512 c9ec75b10fe40d80e620b569ca8f452b1f78e9e4dd45ad087a2b69297dc661d06aa30255ea310786f28c042256c35a1d3e709ff7ea8bc19e7f4ea914c120f020 WHIRLPOOL 69015094c14f66e1102d343b220eb17cc245f24a66c1a39ffced2f155cae84315eabb9a843bd9aa8e7874a12e34297a4f7cfff06447972a17beecf070bc70b08
 DIST mingw-w64-v5.0.1.tar.bz2 9160780 SHA256 9bb5cd7df78817377841a63555e73596dc0af4acbb71b09bd48de7cf24aeadd2 SHA512 73b746f227930597a97f117cf9f9aa19ddabb6090907cf6850864cf30089e5d6e1cd07e257b3b0b9ae0ac762cb24a6f5acf7336c9be48760c975ac038569dcfa WHIRLPOOL 26f3e52a5fb0a0332861a919d2b913dcb3e8dceb26bb174e85830282229823366918132c5db22a5d294167ba3c54c6fd461b663ff0ab92373f46519149817e98
+DIST mingw-w64-v5.0.2.tar.bz2 9107077 SHA256 5f46e80ff1a9102a37a3453743dae9df98262cba7c45306549ef7432cfd92cfd SHA512 430065a822afb9901219b1f86ea221ae70ef7820ea298f51828bf1689a014115dade967a806388b7ee3ed1ea1d6c53970514ec64d0185b5024523093d9e96060 WHIRLPOOL fdc7b1f647679b2761cdb306f5400fdcdbcdd64de4aeb6d3d3bd4b31aab81ad5f81c7485c377fa8100da0ebe7e0b53a83674443d61c986df27a616694bb512d6

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild
new file mode 100644
index 00000000000..408aa8d8e7b
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.0.1-winpthreads.patch"
+	"${FILESDIR}/${PN}-4.0.1-build.patch"
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	CHOST=${CTARGET} econf \
+		--prefix=/usr/${CTARGET} \
+		--includedir=/usr/${CTARGET}/usr/include \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl) \
+		$(crt_use_with libraries libraries winpthreads,libmangle) \
+		$(crt_use_with tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2017-05-22  9:46 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2017-05-22  9:46 UTC (permalink / raw
  To: gentoo-commits

commit:     64d5b0a6b70eb5088ad48e2e69e4414047219d6f
Author:     Bertrand Jacquin <bertrand <AT> jacquin <DOT> bzh>
AuthorDate: Mon May 22 09:25:29 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Mon May 22 09:45:57 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64d5b0a6

dev-util/mingw64-runtime: Enforce libdir to gcc hardcoded path

cross-x86_64-w64-mingw32/gcc has the following default search dir:
  $ x86_64-w64-mingw32-gcc -print-search-dirs
  install: /usr/lib/gcc/x86_64-w64-mingw32/5.4.0/
  programs: =/usr/libexec/gcc/x86_64-w64-mingw32/5.4.0/:/usr/libexec/gcc/x86_64-w64-mingw32/5.4.0/:/usr/libexec/gcc/x86_64-w64-mingw32/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/:/usr/lib/gcc/x86_64-w64-mingw32/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/bin/x86_64-w64-mingw32/5.4.0/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/bin/
  libraries: =/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/lib/x86_64-w64-mingw32/5.4.0/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/lib/../lib/:/usr/x86_64-w64-mingw32/mingw/lib/x86_64-w64-mingw32/5.4.0/:/usr/x86_64-w64-mingw32/mingw/lib/../lib/:/usr/lib/gcc/x86_64-w64-mingw32/5.4.0/../../../../x86_64-w64-mingw32/lib/:/usr/x86_64-w64-mingw32/mingw/lib/

This default does not contain /usr/x86_64-w64-mingw32/lib64 where libraries
installed with USE=libraries such as libpthread.dll.a are installed.

Applications that need to link with lib pthread cannot link properly unless
LDFLAGS are manually modified.

This patch append --libdir=/usr/${CTARGET}/usr/lib in order to install such
libraries in the default gcc search directory.

 .../mingw64-runtime-5.0.2-r1.ebuild                | 113 +++++++++++++++++++++
 1 file changed, 113 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild
new file mode 100644
index 00000000000..e37ad32d072
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.0.1-winpthreads.patch"
+	"${FILESDIR}/${PN}-4.0.1-build.patch"
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	CHOST=${CTARGET} econf \
+		--prefix=/usr/${CTARGET} \
+		--includedir=/usr/${CTARGET}/usr/include \
+		--libdir=/usr/${CTARGET}/usr/lib \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl) \
+		$(crt_use_with libraries libraries winpthreads,libmangle) \
+		$(crt_use_with tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2017-12-29 11:45 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2017-12-29 11:45 UTC (permalink / raw
  To: gentoo-commits

commit:     e579457fd49eef426c8cc4d6170cf83b9a42328f
Author:     Marty E. Plummer <hanetzer <AT> protonmail <DOT> com>
AuthorDate: Fri Dec 29 05:52:43 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Dec 29 11:45:07 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e579457f

dev-util/mingw64-runtime: prefixify build

Currently building a mingw-w64 toolchain inside of gentoo prefix with
crossdev will fail, due to installing files outside of the prefix. Added
${EPREFIX} where apropriate fixed this issue.

Tested in a prefix with toolchain x86_64-w64-mingw32, and tested on bare
gentoo with x86_64-w64-mingw32 & i686-w64-mingw32.

Package-Manager: Portage-2.3.19, Repoman-2.3.6
Closes: https://github.com/gentoo/gentoo/pull/6675

 .../mingw64-runtime-5.0.3-r1.ebuild                | 112 +++++++++++++++++++++
 1 file changed, 112 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
new file mode 100644
index 00000000000..1b9f05639b8
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="crosscompile_opts_headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${P}-build.patch"
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	CHOST=${CTARGET} econf \
+		--prefix="${EPREFIX}"/usr/${CTARGET} \
+		--includedir="${EPREFIX}"/usr/${CTARGET}/usr/include \
+		--libdir="${EPREFIX}"/usr/${CTARGET}/usr/lib \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-01-07 19:39 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-01-07 19:39 UTC (permalink / raw
  To: gentoo-commits

commit:     67ec9ae5fc78bc1ee31fa38caa92bb89bcf33c68
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  7 18:46:40 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan  7 19:39:45 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67ec9ae5

dev-util/mingw64-runtime: Migrate CROSSCOMPILE_OPTS=headers-only -> USE=headers-only

CROSSCOMPILE_OPTS is a USE_EXPAND of a single item: headers-only.
Convert it to a global USE flag instead.

Mechanical ebuild rename done as:
    $ sed -e 's@crosscompile_opts_headers-only@headers-only@g' \
        -i $(git grep -l headers-only)

'headers-only' flag is used by crossdev to bootstrap stage1 compiler
before libc is available.

crossdev switched to USE=headers-only in =sys-devel/crossdev-20171230.

Bug: https://bugs.gentoo.org/642712
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 dev-util/mingw64-runtime/mingw64-runtime-3.0.0.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-3.1.0.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-3.2.0-r1.ebuild | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-4.0.1.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r2.ebuild | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild    | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild | 6 +++---
 dev-util/mingw64-runtime/mingw64-runtime-5.0.3.ebuild    | 6 +++---
 12 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-3.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-3.0.0.ebuild
index ce8f87cddc9..4397725c87a 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-3.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-3.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -20,7 +20,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl"
+IUSE="headers-only idl"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -29,7 +29,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 
 pkg_setup() {

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-3.1.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-3.1.0.ebuild
index ce8f87cddc9..4397725c87a 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-3.1.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-3.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -20,7 +20,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl"
+IUSE="headers-only idl"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -29,7 +29,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 
 pkg_setup() {

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-3.2.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-3.2.0-r1.ebuild
index ce8f87cddc9..4397725c87a 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-3.2.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-3.2.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -20,7 +20,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl"
+IUSE="headers-only idl"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -29,7 +29,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 
 pkg_setup() {

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.1.ebuild
index b298a1a5304..3bb7305cf0f 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-4.0.1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -31,7 +31,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild
index 2fc6dd78d67..f279453e0e4 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -31,7 +31,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
index 8b0d38b204c..2a652328142 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-4.0.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -31,7 +31,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
index 408aa8d8e7b..d013a17c428 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -36,7 +36,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild
index 534091fe654..25df5eae738 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -37,7 +37,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r2.ebuild
index 0edd83c0035..5141174deb4 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -38,7 +38,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild
index 408aa8d8e7b..d013a17c428 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -36,7 +36,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
index 1b9f05639b8..0dcbcfe06ee 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -35,7 +35,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3.ebuild
index a21054499a0..225bba7d732 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -22,7 +22,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="crosscompile_opts_headers-only idl libraries tools"
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"
@@ -35,7 +35,7 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use crosscompile_opts_headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-03-24 14:34 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-03-24 14:34 UTC (permalink / raw
  To: gentoo-commits

commit:     1da451458ddc4f927b16a8877b44cf4ca15d7a56
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 24 14:34:08 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Mar 24 14:34:08 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1da45145

dev-util/mingw64-runtime: use $(alt_prefix) when cross-building

It's one of the steps to be able to cross-build 'dev-util/mingw64-runtime'
("CBUILD != (CHOST = CTARGET)" case).

Noticed by Marty E. Plummer.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
index 0dcbcfe06ee..68655a1ed3a 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r1.ebuild
@@ -35,7 +35,10 @@ is_crosscompile() {
 	[[ ${CHOST} != ${CTARGET} ]]
 }
 just_headers() {
-	use headers-only && [[ ${CHOST} != ${CTARGET} ]]
+	is_crosscompile && use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
 }
 crt_with() {
 	just_headers && echo --without-$1 || echo --with-$1
@@ -74,9 +77,9 @@ src_configure() {
 	fi
 
 	CHOST=${CTARGET} econf \
-		--prefix="${EPREFIX}"/usr/${CTARGET} \
-		--includedir="${EPREFIX}"/usr/${CTARGET}/usr/include \
-		--libdir="${EPREFIX}"/usr/${CTARGET}/usr/lib \
+		--prefix="${EPREFIX}"$(alt_prefix) \
+		--includedir="${EPREFIX}"$(alt_prefix)/usr/include \
+		--libdir="${EPREFIX}"$(alt_prefix)/usr/lib \
 		--with-headers \
 		--enable-sdk \
 		$(crt_with crt) \


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-03-24 21:16 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-03-24 21:16 UTC (permalink / raw
  To: gentoo-commits

commit:     060fb03cf25dca1aa7adf2659092a930e88b5dde
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 24 21:16:23 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Mar 24 21:16:43 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=060fb03c

dev-util/mingw64-runtime: switch to --prefix=/usr (from --prefix=/)

A couple of changes:
- Allow dev-util/mingw64-runtime[headers-only] for cross-building case.
  One day crossdew won't need cross-${CTARGET}/mingw64-runtime packages
  and will be able to use dev-util/mingw64-runtime directly.
  This change is a step in that direction.
- Awitch to --prefix=/usr (from --prefix=/). This allow cross-building
  dev-util/mingw64-runtime itself and installing libraries into /usr/lib
  (instead of /lib).

Tested as:
- generated working toolchain:
  $ crossdev -t x86_64-w64-mingw32
- cross-built mingw64-runtime successfully:
  $ x86_64-w64-mingw32-emerge -v1 dev-util/mingw64-runtime

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 .../mingw64-runtime-5.0.3-r2.ebuild                | 117 +++++++++++++++++++++
 1 file changed, 117 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r2.ebuild
new file mode 100644
index 00000000000..e52536087f3
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.3-r2.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}/${P}-build.patch"
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${EPREFIX}"$(alt_prefix)/usr \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-06-15 20:56 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2018-06-15 20:56 UTC (permalink / raw
  To: gentoo-commits

commit:     fd964c45988a61f3630150179a6fe955ab6e3160
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 15 20:54:49 2018 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Fri Jun 15 20:55:57 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd964c45

dev-util/mingw64-runtime: version bump

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-5.0.4.ebuild   | 108 +++++++++++++++++++++
 2 files changed, 109 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index e644f85e3a8..04400d162ef 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -7,3 +7,4 @@ DIST mingw-w64-v4.0.6.tar.bz2 10853871 BLAKE2B a166692d4ddbf740f566abc844d577d38
 DIST mingw-w64-v5.0.1.tar.bz2 9160780 BLAKE2B 52964e7ae113d8886648cb0395514067fa054840d153e86407317ccd2f299fccb6d21f76c773e1e2ef22b2c00b53728c18065091125a000750395e96fb601f05 SHA512 73b746f227930597a97f117cf9f9aa19ddabb6090907cf6850864cf30089e5d6e1cd07e257b3b0b9ae0ac762cb24a6f5acf7336c9be48760c975ac038569dcfa
 DIST mingw-w64-v5.0.2.tar.bz2 9107077 BLAKE2B b8e3e614fe4a1ea6a4770efdd029300e923e3b7b39b71731692281da44f468b235d487d38d7e1b4396e1b44a4c60fcc7a67a6c1331fb46e339c13c86bf7de7bd SHA512 430065a822afb9901219b1f86ea221ae70ef7820ea298f51828bf1689a014115dade967a806388b7ee3ed1ea1d6c53970514ec64d0185b5024523093d9e96060
 DIST mingw-w64-v5.0.3.tar.bz2 9160627 BLAKE2B 941b40c426548564e8b2da0af8e917dad34bdbf0b05c63ea2127e39139bcce5d86e80433817483c64cd2a6ef6140a7818a76564ff5d9408614ecaa58f17b41e7 SHA512 85bc0244cd30ef38262792d61502a012348b8220ef249352b68ddfa40663ca1cae5f81bed70caa9579469fad6ad16a95f02387c280effeda7ce8287b549f3fc9
+DIST mingw-w64-v5.0.4.tar.bz2 9163093 BLAKE2B fd039995c73690c12ddf1612d42edefbb572386b2ca8508fd5a5edd9e715ced41c05c62efec8eda07b9ec7a1e9e658bf3b3dedeb18695a076b5bc2067e86d68d SHA512 5b279222e86475a982e2aeb9fc14853f4fac0ca0c5a2d56f303584d1b348726afd99b0292a5ed050d326e7cb1434e5ad5b5dfdfb37c73fd08f13e7f4f4bcc046

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
new file mode 100644
index 00000000000..25722876100
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+WANT_AUTOMAKE="1.15"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${EPREFIX}"$(alt_prefix)/usr \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-09-17 22:05 Alon Bar-Lev
  0 siblings, 0 replies; 57+ messages in thread
From: Alon Bar-Lev @ 2018-09-17 22:05 UTC (permalink / raw
  To: gentoo-commits

commit:     9a895f193b49d4c0221873d81252ceef4d3e8d13
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 22:02:36 2018 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 22:05:12 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a895f19

dev-util/mingw64-runtime: verison bump

for some reason console application is not working on my windows machine, more
testing need to be done, removed keywords.

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-6.0.0.ebuild   | 106 +++++++++++++++++++++
 2 files changed, 107 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 04400d162ef..f589f7a41b3 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -8,3 +8,4 @@ DIST mingw-w64-v5.0.1.tar.bz2 9160780 BLAKE2B 52964e7ae113d8886648cb0395514067fa
 DIST mingw-w64-v5.0.2.tar.bz2 9107077 BLAKE2B b8e3e614fe4a1ea6a4770efdd029300e923e3b7b39b71731692281da44f468b235d487d38d7e1b4396e1b44a4c60fcc7a67a6c1331fb46e339c13c86bf7de7bd SHA512 430065a822afb9901219b1f86ea221ae70ef7820ea298f51828bf1689a014115dade967a806388b7ee3ed1ea1d6c53970514ec64d0185b5024523093d9e96060
 DIST mingw-w64-v5.0.3.tar.bz2 9160627 BLAKE2B 941b40c426548564e8b2da0af8e917dad34bdbf0b05c63ea2127e39139bcce5d86e80433817483c64cd2a6ef6140a7818a76564ff5d9408614ecaa58f17b41e7 SHA512 85bc0244cd30ef38262792d61502a012348b8220ef249352b68ddfa40663ca1cae5f81bed70caa9579469fad6ad16a95f02387c280effeda7ce8287b549f3fc9
 DIST mingw-w64-v5.0.4.tar.bz2 9163093 BLAKE2B fd039995c73690c12ddf1612d42edefbb572386b2ca8508fd5a5edd9e715ced41c05c62efec8eda07b9ec7a1e9e658bf3b3dedeb18695a076b5bc2067e86d68d SHA512 5b279222e86475a982e2aeb9fc14853f4fac0ca0c5a2d56f303584d1b348726afd99b0292a5ed050d326e7cb1434e5ad5b5dfdfb37c73fd08f13e7f4f4bcc046
+DIST mingw-w64-v6.0.0.tar.bz2 9045653 BLAKE2B 8a54dca2d06c92ab968a93240996d07ab3b1ed4652555a48b7581c477856d5784ed192c578d78186e171e400bd18b4de3c6cafbdd96109367ad13c37792015c1 SHA512 e3d3663e0cb33a16f90b1a33e81b5a30d26f7e34270b14e865c10068f2a2d32da9ef8cbbb0c3fed9c71429ae11c82152ff3b87d81558929b2a4993dc99cfc11e

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild
new file mode 100644
index 00000000000..47cd6c8a3d1
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS=""
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${EPREFIX}"$(alt_prefix)/usr \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	env -uRESTRICT CHOST=${CTARGET} prepallstrip
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-10-05 22:43 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-10-05 22:43 UTC (permalink / raw
  To: gentoo-commits

commit:     1da0f835568fceb6783247e174ea9dcb32bceac1
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Oct  5 22:41:32 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Oct  5 22:43:30 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1da0f835

dev-util/mingw64-runtime: filter LDFLAGS for hash style

Normally mingw-64 does not use dynamic linker.
One exception is at ./configure time where $LDFLAGS
is used by default.

When LDFFLAGS=-Wl,--hash-style=gnu is passed (default
on linux) to mingw64-runtime a few things are not
auto-detected. One of them is  __CTORS_LIST__ / __DTORS_LIST__
support by binutils' target ld.

If constructors are not provided then binaries start
crashing at shutdown.

The workaround is to filter out -Wl,--hash-style=* options.

Longer-term fix will be to install mingw64-runtime into
target: bug #642604. That wa LDFLAGS from CBUILD will not
leak into libc packages.

Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11

 ...64-runtime-6.0.0.ebuild => mingw64-runtime-6.0.0-r1.ebuild} | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
similarity index 88%
rename from dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild
rename to dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
index 47cd6c8a3d1..d4bbd310bff 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -19,7 +19,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 
 LICENSE="BSD"
 SLOT="0"
-KEYWORDS=""
+KEYWORDS="~amd64 ~x86"
 IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
@@ -52,6 +52,12 @@ pkg_setup() {
 
 src_configure() {
 	CHOST=${CTARGET} strip-unsupported-flags
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
 
 	if ! just_headers; then
 		mkdir "${WORKDIR}/headers"


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-10-06 17:35 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-10-06 17:35 UTC (permalink / raw
  To: gentoo-commits

commit:     478d91086baa442fb578e0982063b93a19caf382
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Oct  6 17:35:13 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Oct  6 17:35:21 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=478d9108

dev-util/mingw64-runtime: enable USE=libraries by default

Enable mangle, pseh, winpthreads libraries by default.
Notably this exposes libpthread.a compatible library and
makes building mode pthread-based software.

Reported-by: Rafael Kitover
Bug: https://bugs.gentoo.org/665512
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11

 dev-util/mingw64-runtime/metadata.xml                    | 12 +++---------
 dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild |  2 +-
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index 5d6c0c23c0d..1b348ca856b 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -6,15 +6,9 @@
     <name>Gentoo Toolchain Project</name>
   </maintainer>
   <use>
-    <flag name="idl">
-    Install idl files.
-  </flag>
-    <flag name="libraries">
-    Build extra libraries.
-  </flag>
-    <flag name="tools">
-    Build extra tools.
-  </flag>
+    <flag name="idl">Install idl files.</flag>
+    <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads.</flag>
+    <flag name="tools">Build extra tools: gendef, genidl.</flag>
   </use>
   <upstream>
     <remote-id type="sourceforge">mingw-w64</remote-id>

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
index d4bbd310bff..9dca73f5634 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="headers-only idl libraries tools"
+IUSE="headers-only idl +libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-10-06 22:59 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-10-06 22:59 UTC (permalink / raw
  To: gentoo-commits

commit:     7d94614beac8d7c390bc79da7be1a61b70c89a7b
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Oct  6 22:53:51 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Oct  6 22:59:24 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d94614b

dev-util/mingw64-runtime: revert "enable USE=libraries by default"

This reverts commit 478d91086baa442fb578e0982063b93a19caf382.

Fresh bootstrap fails to build libraries as those need full stage2
compiler:

```
$ crossdev -t x86_64-w64-mingw32 -P -v

 * Emerging cross-mingw64-runtime ...
...
configure: error: in `.../mingw-w64-v6.0.0/mingw-w64-libraries/libmangle':
configure: error: C compiler cannot create executables
See `config.log' for more details
```

Disable default USE=libraries.

Reported-by: Rafael Kitover
Bug: https://bugs.gentoo.org/665512
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
index 9dca73f5634..59982699b75 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
@@ -20,7 +20,8 @@ SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="headers-only idl +libraries tools"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
 RESTRICT="strip"
 
 S="${WORKDIR}/mingw-w64-v${PV}"


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2018-11-25 15:27 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2018-11-25 15:27 UTC (permalink / raw
  To: gentoo-commits

commit:     f7b00dded36b68edd053e313ebe6036234a109d8
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 25 15:25:25 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Nov 25 15:25:25 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7b00dde

dev-util/mingw64-runtime: drop prepstrip(), bug #587292

This disables all stripping in mingw64-runtime. As PMS does
not provide an alternative just drop stripping for now.

Reported-by: Michał Górny
Closes: https://bugs.gentoo.org/587292
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild    | 3 +--
 dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
index 25722876100..93965bb06d7 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -103,6 +103,5 @@ src_install() {
 		dosym usr/include /usr/${CTARGET}/sys-include
 	fi
 
-	env -uRESTRICT CHOST=${CTARGET} prepallstrip
 	rm -rf "${ED}/usr/share"
 }

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
index 59982699b75..dbf9db4e858 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
@@ -108,6 +108,5 @@ src_install() {
 		dosym usr/include /usr/${CTARGET}/sys-include
 	fi
 
-	env -uRESTRICT CHOST=${CTARGET} prepallstrip
 	rm -rf "${ED}/usr/share"
 }


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2019-08-13  7:10 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2019-08-13  7:10 UTC (permalink / raw
  To: gentoo-commits

commit:     25efe91bae6323a6ab9e853132d847274e53f7ef
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 13 07:09:26 2019 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Aug 13 07:10:24 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25efe91b

dev-util/mingw64-runtime: add USE=+secure-api, bug #691980

Expose *_s() family of functions by default from headers.

Reported-by: Jason A. Donenfeld
Closes: https://bugs.gentoo.org/691980
Package-Manager: Portage-2.3.71, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/metadata.xml              |   1 +
 .../mingw64-runtime-6.0.0-r2.ebuild                | 113 +++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index 1b348ca856b..df0beeaf2e9 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -8,6 +8,7 @@
   <use>
     <flag name="idl">Install idl files.</flag>
     <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads.</flag>
+    <flag name="secure-api">Expose secure API (*_s function) by default.</flag>
     <flag name="tools">Build extra tools: gendef, genidl.</flag>
   </use>
   <upstream>

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild
new file mode 100644
index 00000000000..9dc20f91b73
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries +secure-api tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${EPREFIX}"$(alt_prefix)/usr \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(use_enable secure-api) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2019-09-16 21:18 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2019-09-16 21:18 UTC (permalink / raw
  To: gentoo-commits

commit:     1fae5b17fa009c7bfb405dd186566c48c42c5390
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 16 20:49:42 2019 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Sep 16 21:18:52 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1fae5b17

dev-util/mingw64-runtime: Don't install USE=libraries libs to lib64

Closes: https://bugs.gentoo.org/653246
Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/12944
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 ...ingw64-runtime-6.0.0-r2.ebuild => mingw64-runtime-6.0.0-r3.ebuild} | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild
similarity index 96%
rename from dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild
rename to dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild
index 9dc20f91b73..0e78df25705 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild
@@ -75,9 +75,11 @@ src_configure() {
 	# By default configure tries to set --sysroot=${prefix}. We disable
 	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
 	# That way we can cross-build mingw64-runtime with cross-emerge.
+	local prefix="${EPREFIX}"$(alt_prefix)/usr
 	CHOST=${CTARGET} econf \
 		--with-sysroot=no \
-		--prefix="${EPREFIX}"$(alt_prefix)/usr \
+		--prefix="${prefix}" \
+		--libdir="${prefix}"/lib \
 		--with-headers \
 		--enable-sdk \
 		$(crt_with crt) \


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2020-01-12 16:43 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2020-01-12 16:43 UTC (permalink / raw
  To: gentoo-commits

commit:     0c8cc8ee65c1ec0dc6595c80d3c08201893e37bf
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 12 16:43:13 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan 12 16:43:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c8cc8ee

dev-util/mingw64-runtime: bump up to 7.0.0

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-7.0.0.ebuild   | 114 +++++++++++++++++++++
 2 files changed, 115 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 479515f06b9..5a4b7418b8c 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,2 +1,3 @@
 DIST mingw-w64-v5.0.4.tar.bz2 9163093 BLAKE2B fd039995c73690c12ddf1612d42edefbb572386b2ca8508fd5a5edd9e715ced41c05c62efec8eda07b9ec7a1e9e658bf3b3dedeb18695a076b5bc2067e86d68d SHA512 5b279222e86475a982e2aeb9fc14853f4fac0ca0c5a2d56f303584d1b348726afd99b0292a5ed050d326e7cb1434e5ad5b5dfdfb37c73fd08f13e7f4f4bcc046
 DIST mingw-w64-v6.0.0.tar.bz2 9045653 BLAKE2B 8a54dca2d06c92ab968a93240996d07ab3b1ed4652555a48b7581c477856d5784ed192c578d78186e171e400bd18b4de3c6cafbdd96109367ad13c37792015c1 SHA512 e3d3663e0cb33a16f90b1a33e81b5a30d26f7e34270b14e865c10068f2a2d32da9ef8cbbb0c3fed9c71429ae11c82152ff3b87d81558929b2a4993dc99cfc11e
+DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild
new file mode 100644
index 00000000000..424ab317b1d
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	local prefix="${EPREFIX}"$(alt_prefix)/usr
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${prefix}" \
+		--libdir="${prefix}"/lib \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2020-01-12 16:43 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2020-01-12 16:43 UTC (permalink / raw
  To: gentoo-commits

commit:     bde530ac386dd4b1b8c6154d5fdd717da5ba4566
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 12 16:43:25 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan 12 16:43:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bde530ac

dev-util/mingw64-runtime: drop old

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 -
 .../mingw64-runtime/mingw64-runtime-5.0.4.ebuild   | 107 --------------------
 .../mingw64-runtime-6.0.0-r1.ebuild                | 112 ---------------------
 3 files changed, 220 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 5a4b7418b8c..2769e87b5d4 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,3 +1,2 @@
-DIST mingw-w64-v5.0.4.tar.bz2 9163093 BLAKE2B fd039995c73690c12ddf1612d42edefbb572386b2ca8508fd5a5edd9e715ced41c05c62efec8eda07b9ec7a1e9e658bf3b3dedeb18695a076b5bc2067e86d68d SHA512 5b279222e86475a982e2aeb9fc14853f4fac0ca0c5a2d56f303584d1b348726afd99b0292a5ed050d326e7cb1434e5ad5b5dfdfb37c73fd08f13e7f4f4bcc046
 DIST mingw-w64-v6.0.0.tar.bz2 9045653 BLAKE2B 8a54dca2d06c92ab968a93240996d07ab3b1ed4652555a48b7581c477856d5784ed192c578d78186e171e400bd18b4de3c6cafbdd96109367ad13c37792015c1 SHA512 e3d3663e0cb33a16f90b1a33e81b5a30d26f7e34270b14e865c10068f2a2d32da9ef8cbbb0c3fed9c71429ae11c82152ff3b87d81558929b2a4993dc99cfc11e
 DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
deleted file mode 100644
index 93965bb06d7..00000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-5.0.4.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-WANT_AUTOMAKE="1.15"
-
-inherit autotools flag-o-matic eutils
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${EPREFIX}"$(alt_prefix)/usr \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
deleted file mode 100644
index dbf9db4e858..00000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r1.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic eutils
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${EPREFIX}"$(alt_prefix)/usr \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2020-09-30 18:28 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2020-09-30 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     9b8cbb1c9606a68d94404edc1b3686be06de3af3
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 30 18:27:34 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed Sep 30 18:28:24 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b8cbb1c

dev-util/mingw64-runtime: bump up to 8.0.0

Reported-by: Mark Harmstone
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-8.0.0.ebuild   | 118 +++++++++++++++++++++
 2 files changed, 119 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 2769e87b5d4..59c54d2ec96 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,2 +1,3 @@
 DIST mingw-w64-v6.0.0.tar.bz2 9045653 BLAKE2B 8a54dca2d06c92ab968a93240996d07ab3b1ed4652555a48b7581c477856d5784ed192c578d78186e171e400bd18b4de3c6cafbdd96109367ad13c37792015c1 SHA512 e3d3663e0cb33a16f90b1a33e81b5a30d26f7e34270b14e865c10068f2a2d32da9ef8cbbb0c3fed9c71429ae11c82152ff3b87d81558929b2a4993dc99cfc11e
 DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd
+DIST mingw-w64-v8.0.0.tar.bz2 9370799 BLAKE2B ec65191722f6f2ddbb93488ea4c4c21e22fb5ef777ef293d65d13de1057d96c9105a4a4936999d4babbd8fdfc52ed14675f1c5fbc630524df28805e0f66b1a2b SHA512 cefcc86ac3e6337c88ed224ab4692abbd5eb543ce78fb6c5462198a85f36c9274a0a1df0a0bebd182137fd527c15831f9237c782711a85f32e77d9104b28359e

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
new file mode 100644
index 00000000000..9cececad22c
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+inherit autotools flag-o-matic eutils toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	local prefix="${EPREFIX}"$(alt_prefix)/usr
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${prefix}" \
+		--libdir="${prefix}"/lib \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2020-09-30 18:28 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2020-09-30 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     bdb3e681f3c38257eed614c89f3a699a9909696b
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 30 18:28:18 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed Sep 30 18:28:24 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bdb3e681

dev-util/mingw64-runtime: drop old

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 -
 dev-util/mingw64-runtime/metadata.xml              |   1 -
 .../mingw64-runtime-6.0.0-r3.ebuild                | 115 ---------------------
 .../mingw64-runtime/mingw64-runtime-7.0.0.ebuild   | 114 --------------------
 4 files changed, 231 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 59c54d2ec96..6f80cb79411 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,3 +1,2 @@
-DIST mingw-w64-v6.0.0.tar.bz2 9045653 BLAKE2B 8a54dca2d06c92ab968a93240996d07ab3b1ed4652555a48b7581c477856d5784ed192c578d78186e171e400bd18b4de3c6cafbdd96109367ad13c37792015c1 SHA512 e3d3663e0cb33a16f90b1a33e81b5a30d26f7e34270b14e865c10068f2a2d32da9ef8cbbb0c3fed9c71429ae11c82152ff3b87d81558929b2a4993dc99cfc11e
 DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd
 DIST mingw-w64-v8.0.0.tar.bz2 9370799 BLAKE2B ec65191722f6f2ddbb93488ea4c4c21e22fb5ef777ef293d65d13de1057d96c9105a4a4936999d4babbd8fdfc52ed14675f1c5fbc630524df28805e0f66b1a2b SHA512 cefcc86ac3e6337c88ed224ab4692abbd5eb543ce78fb6c5462198a85f36c9274a0a1df0a0bebd182137fd527c15831f9237c782711a85f32e77d9104b28359e

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index df0beeaf2e9..1b348ca856b 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -8,7 +8,6 @@
   <use>
     <flag name="idl">Install idl files.</flag>
     <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads.</flag>
-    <flag name="secure-api">Expose secure API (*_s function) by default.</flag>
     <flag name="tools">Build extra tools: gendef, genidl.</flag>
   </use>
   <upstream>

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild
deleted file mode 100644
index a3d1f047767..00000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-6.0.0-r3.ebuild
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic eutils toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries +secure-api tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(use_enable secure-api) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild
deleted file mode 100644
index 0be51c7d3e6..00000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0.ebuild
+++ /dev/null
@@ -1,114 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic eutils toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2021-04-16 10:25 David Seifert
  0 siblings, 0 replies; 57+ messages in thread
From: David Seifert @ 2021-04-16 10:25 UTC (permalink / raw
  To: gentoo-commits

commit:     ee0c0e54ac6abb26a07a626f89c3e2fd9dc8186d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 16 10:12:51 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Apr 16 10:12:51 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee0c0e54

dev-util/mingw64-runtime: eutils--

Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild | 4 ++--
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild    | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild
index 7d44a34b19c..d54697c1b68 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -11,7 +11,7 @@ if [[ ${CTARGET} == ${CHOST} ]] ; then
 	fi
 fi
 
-inherit autotools flag-o-matic eutils toolchain-funcs
+inherit autotools flag-o-matic toolchain-funcs
 
 DESCRIPTION="Free Win64 runtime and import library definitions"
 HOMEPAGE="http://mingw-w64.sourceforge.net/"

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
index 9cececad22c..2db84fb513e 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -11,7 +11,7 @@ if [[ ${CTARGET} == ${CHOST} ]] ; then
 	fi
 fi
 
-inherit autotools flag-o-matic eutils toolchain-funcs
+inherit autotools flag-o-matic toolchain-funcs
 
 DESCRIPTION="Free Win64 runtime and import library definitions"
 HOMEPAGE="http://mingw-w64.sourceforge.net/"


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2021-07-05 22:50 Sergei Trofimovich
  0 siblings, 0 replies; 57+ messages in thread
From: Sergei Trofimovich @ 2021-07-05 22:50 UTC (permalink / raw
  To: gentoo-commits

commit:     607450dc409bf7978c2357ee771d0e0968b1a62f
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Jul  5 22:48:09 2021 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Jul  5 22:50:23 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=607450dc

dev-util/mingw64-runtime: bump up to 9.0.0

Reported-by: Mike Lothian
Closes: https://bugs.gentoo.org/799212
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-9.0.0.ebuild   | 119 +++++++++++++++++++++
 2 files changed, 120 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 6f80cb79411..28cfb0b7ae4 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,2 +1,3 @@
 DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd
 DIST mingw-w64-v8.0.0.tar.bz2 9370799 BLAKE2B ec65191722f6f2ddbb93488ea4c4c21e22fb5ef777ef293d65d13de1057d96c9105a4a4936999d4babbd8fdfc52ed14675f1c5fbc630524df28805e0f66b1a2b SHA512 cefcc86ac3e6337c88ed224ab4692abbd5eb543ce78fb6c5462198a85f36c9274a0a1df0a0bebd182137fd527c15831f9237c782711a85f32e77d9104b28359e
+DIST mingw-w64-v9.0.0.tar.bz2 9537758 BLAKE2B 298b97f50c7632972aee2c75e90de0776f64c1dd5aaeb52d4e4be10a8e0365efee82c93179990cc090cc7b9f83525a7abf51a5d069b7a3e39abb37fdb733a70c SHA512 6691331a2ab521d22c1d32bebe0ed049bd62a7a7722cff38e7792b4e42c6b8df4356084afff6c916b487b3ebddc4372b398ab7cd0c7f4ff6991a70fe64177386

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild
new file mode 100644
index 00000000000..3dfff3894bf
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+inherit autotools flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="http://mingw-w64.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+	"${FILESDIR}"/${PN}-8.0.0-__rdtsc.patch
+)
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+just_headers() {
+	use headers-only
+}
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+crt_with() {
+	just_headers && echo --without-$1 || echo --with-$1
+}
+crt_use_enable() {
+	just_headers && echo --without-$2 || use_enable "$@"
+}
+crt_use_with() {
+	just_headers && echo --without-$2 || use_with "$@"
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if ! just_headers; then
+		mkdir "${WORKDIR}/headers"
+		pushd "${WORKDIR}/headers" > /dev/null
+		CHOST=${CTARGET} "${S}/configure" \
+			--prefix="${T}/tmproot" \
+			--with-headers \
+			--without-crt \
+			|| die
+		popd > /dev/null
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	# By default configure tries to set --sysroot=${prefix}. We disable
+	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+	# That way we can cross-build mingw64-runtime with cross-emerge.
+	local prefix="${EPREFIX}"$(alt_prefix)/usr
+	CHOST=${CTARGET} econf \
+		--with-sysroot=no \
+		--prefix="${prefix}" \
+		--libdir="${prefix}"/lib \
+		--with-headers \
+		--enable-sdk \
+		$(crt_with crt) \
+		$(crt_use_enable idl idl) \
+		$(crt_use_with libraries libraries) \
+		$(crt_use_with tools tools) \
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
+				&& echo --disable-lib32 --enable-lib64 \
+				|| echo --enable-lib32 --disable-lib64
+		)
+}
+
+src_compile() {
+	if ! just_headers; then
+		emake -C "${WORKDIR}/headers" install
+	fi
+	default
+}
+
+src_install() {
+	default
+
+	if is_crosscompile ; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -rf "${ED}/usr/share"
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-17  2:33 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-17  2:33 UTC (permalink / raw
  To: gentoo-commits

commit:     9354a791604295dc284d4f2e240e0b45a009b7cc
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 03:14:39 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 02:16:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9354a791

dev-util/mingw64-runtime: sync [89].0.0 ebuilds with 10.0.0

To make pkgcheck happy and consistency, revbumps are not strictly
necessary but done in case need to test for regressions as it
shifts a lot around (will cleanup soon).

Only differences with 10 is patches applied (like 10, also remove
rdtsc patch from 9.0.0 as that version fixed it and our patch does
a different redundant fix).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../mingw64-runtime-8.0.0-r2.ebuild                | 122 +++++++++++++++++++++
 .../mingw64-runtime-9.0.0-r1.ebuild                | 120 ++++++++++++++++++++
 2 files changed, 242 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
new file mode 100644
index 000000000000..78376aa3bcb5
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
+	export CTARGET=${CATEGORY#cross-}
+fi
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+	"${FILESDIR}"/${P}-__rdtsc.patch
+	"${FILESDIR}"/${P}-udivmod.patch
+)
+
+mingw-is_cross() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if use !headers-only; then
+		mkdir "${WORKDIR}"/headers || die
+		pushd "${WORKDIR}"/headers >/dev/null || die
+
+		local econfargs=(
+			--prefix="${T}"/tmproot
+			--with-headers
+			--without-crt
+		)
+
+		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
+
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	crt-use_enable() {
+		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
+	}
+	crt-use_with() {
+		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
+	}
+
+	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
+	local econfargs=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		--enable-sdk
+		--with-headers
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+
+		$(use_with !headers-only crt)
+		$(crt-use_enable idl)
+		$(crt-use_with libraries)
+		$(crt-use_with tools)
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
+			case ${PIPESTATUS[*]} in
+				'0 0') echo --disable-lib32 --enable-lib64;;
+				'0 1') echo --enable-lib32 --disable-lib64;;
+				*) die "failed check for __MINGW64__";;
+			esac
+		)
+	)
+
+	CHOST=${CTARGET} econf "${econfargs[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C "${WORKDIR}"/headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if mingw-is_cross; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
new file mode 100644
index 000000000000..cf08ceab0f13
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
+	export CTARGET=${CATEGORY#cross-}
+fi
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+)
+
+mingw-is_cross() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if use !headers-only; then
+		mkdir "${WORKDIR}"/headers || die
+		pushd "${WORKDIR}"/headers >/dev/null || die
+
+		local econfargs=(
+			--prefix="${T}"/tmproot
+			--with-headers
+			--without-crt
+		)
+
+		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
+
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	crt-use_enable() {
+		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
+	}
+	crt-use_with() {
+		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
+	}
+
+	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
+	local econfargs=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		--enable-sdk
+		--with-headers
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+
+		$(use_with !headers-only crt)
+		$(crt-use_enable idl)
+		$(crt-use_with libraries)
+		$(crt-use_with tools)
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
+			case ${PIPESTATUS[*]} in
+				'0 0') echo --disable-lib32 --enable-lib64;;
+				'0 1') echo --enable-lib32 --disable-lib64;;
+				*) die "failed check for __MINGW64__";;
+			esac
+		)
+	)
+
+	CHOST=${CTARGET} econf "${econfargs[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C "${WORKDIR}"/headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if mingw-is_cross; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-17  2:33 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-17  2:33 UTC (permalink / raw
  To: gentoo-commits

commit:     1f92c65eca140afc71a52e6b4036cb41b76710a0
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 03:03:18 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 02:16:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f92c65e

dev-util/mingw64-runtime: add 10.0.0

This version fixes building with vanilla binutils-2.38 wrt
bug #838157, and the (now keyworded) >=binutils-2.38-r2 backport
also fixed it for all versions.

Includes some ebuild cleanups/changes:
- EAPI7->8
- drop unused autotools inherit
- update HOMEPAGE to https non-sourceforge link
- update LICENSE, main license is ZPL + others, and
  tools are GPL-3+ (could probably still use revision)
- remove obsolete rdtsc patch (was bug #786549), been fixed since
  9.0.0 but the fix is different and was letting our patch apply
- namespace is_crosscompile() to avoid confusing pkgcheck,
  note that this is toolchain.eclass' version which is
  different than tc-is-cross-compiler
- inline just_headers/alt_prefix/crt_with(), left crt's
  use_with and use_enable alone given it's less jarring
  and may have additional uses in the future
- move src_configure-only functions inside src_configure
- use econf with ECONF_SOURCE over direct ${S}/configure
- add missing || die for rm / mkdir / push+popd / cpp+grep
 (for cpp, use a case statement for clarity and no tmp variables)
- drop rm's -f, haven't found a situation where it'd fail
- misc style changes like using arrays for econf

Not touching CHOST/CATEGORY/symlinks and friends given haven't
fully reviewed implications for this package + crossdev.

Closes: https://bugs.gentoo.org/838157
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-10.0.0.ebuild  | 120 +++++++++++++++++++++
 2 files changed, 121 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 28cfb0b7ae47..46f60d52481b 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,3 +1,4 @@
+DIST mingw-w64-v10.0.0.tar.bz2 9620291 BLAKE2B 451372403289c492ca939d65bb4d9f6e9fa6bdd6b32d79d6438d858e106e8cc291712ada1f3f7b951a4c6908e7d0385d485ca76920af39bcf86effa48408e330 SHA512 3c0827af7c40809a867758f6cd9ef3ff0c988b43082345bf725e03949af95968d634ace99a7ffae323189549221dcb5d861de9e801f1fbc7904e446641b60516
 DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd
 DIST mingw-w64-v8.0.0.tar.bz2 9370799 BLAKE2B ec65191722f6f2ddbb93488ea4c4c21e22fb5ef777ef293d65d13de1057d96c9105a4a4936999d4babbd8fdfc52ed14675f1c5fbc630524df28805e0f66b1a2b SHA512 cefcc86ac3e6337c88ed224ab4692abbd5eb543ce78fb6c5462198a85f36c9274a0a1df0a0bebd182137fd527c15831f9237c782711a85f32e77d9104b28359e
 DIST mingw-w64-v9.0.0.tar.bz2 9537758 BLAKE2B 298b97f50c7632972aee2c75e90de0776f64c1dd5aaeb52d4e4be10a8e0365efee82c93179990cc090cc7b9f83525a7abf51a5d069b7a3e39abb37fdb733a70c SHA512 6691331a2ab521d22c1d32bebe0ed049bd62a7a7722cff38e7792b4e42c6b8df4356084afff6c916b487b3ebddc4372b398ab7cd0c7f4ff6991a70fe64177386

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
new file mode 100644
index 000000000000..cf08ceab0f13
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
+	export CTARGET=${CATEGORY#cross-}
+fi
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+)
+
+mingw-is_cross() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+
+pkg_setup() {
+	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
+		die "Invalid configuration"
+	fi
+}
+
+src_configure() {
+	CHOST=${CTARGET} strip-unsupported-flags
+
+	# Normally mingw-64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	if use !headers-only; then
+		mkdir "${WORKDIR}"/headers || die
+		pushd "${WORKDIR}"/headers >/dev/null || die
+
+		local econfargs=(
+			--prefix="${T}"/tmproot
+			--with-headers
+			--without-crt
+		)
+
+		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
+
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/tmproot/include"
+	fi
+
+	crt-use_enable() {
+		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
+	}
+	crt-use_with() {
+		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
+	}
+
+	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
+	local econfargs=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		--enable-sdk
+		--with-headers
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+
+		$(use_with !headers-only crt)
+		$(crt-use_enable idl)
+		$(crt-use_with libraries)
+		$(crt-use_with tools)
+		$(
+			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
+			case ${PIPESTATUS[*]} in
+				'0 0') echo --disable-lib32 --enable-lib64;;
+				'0 1') echo --enable-lib32 --disable-lib64;;
+				*) die "failed check for __MINGW64__";;
+			esac
+		)
+	)
+
+	CHOST=${CTARGET} econf "${econfargs[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C "${WORKDIR}"/headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if mingw-is_cross; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-17  2:33 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-17  2:33 UTC (permalink / raw
  To: gentoo-commits

commit:     e1515a8aa2656cef0ca28cbd9b07a8a3babff730
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 03:27:22 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 02:16:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1515a8a

dev-util/mingw64-runtime: drop 7.0.0-r1

There seem to still be interest for 8.0.0 but not for 7.0.0 as
as far as I can tell. ebuild is also missing the udivmoddi fix.

Closes: https://github.com/gentoo/gentoo/pull/25038
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 -
 .../mingw64-runtime-7.0.0-r1.ebuild                | 118 ---------------------
 2 files changed, 119 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 46f60d52481b..7efd990ea87d 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,4 +1,3 @@
 DIST mingw-w64-v10.0.0.tar.bz2 9620291 BLAKE2B 451372403289c492ca939d65bb4d9f6e9fa6bdd6b32d79d6438d858e106e8cc291712ada1f3f7b951a4c6908e7d0385d485ca76920af39bcf86effa48408e330 SHA512 3c0827af7c40809a867758f6cd9ef3ff0c988b43082345bf725e03949af95968d634ace99a7ffae323189549221dcb5d861de9e801f1fbc7904e446641b60516
-DIST mingw-w64-v7.0.0.tar.bz2 9071231 BLAKE2B da00794ec456ede5913a565248c79255407c058469cb7338cf81b8d03c1e39f4189016b01734b786c0ad8f18166a24fdb95ca72edc954f31151e5d3aa2b2a899 SHA512 30e5b2824a24eeb99ab519e3fc134cc9a7f04ee8b853bc8d66a13d1ab74144bf78b93e162bfe6de2a5e61f63c0e620a933b260b02d019cd68cc4b78bd36c67fd
 DIST mingw-w64-v8.0.0.tar.bz2 9370799 BLAKE2B ec65191722f6f2ddbb93488ea4c4c21e22fb5ef777ef293d65d13de1057d96c9105a4a4936999d4babbd8fdfc52ed14675f1c5fbc630524df28805e0f66b1a2b SHA512 cefcc86ac3e6337c88ed224ab4692abbd5eb543ce78fb6c5462198a85f36c9274a0a1df0a0bebd182137fd527c15831f9237c782711a85f32e77d9104b28359e
 DIST mingw-w64-v9.0.0.tar.bz2 9537758 BLAKE2B 298b97f50c7632972aee2c75e90de0776f64c1dd5aaeb52d4e4be10a8e0365efee82c93179990cc090cc7b9f83525a7abf51a5d069b7a3e39abb37fdb733a70c SHA512 6691331a2ab521d22c1d32bebe0ed049bd62a7a7722cff38e7792b4e42c6b8df4356084afff6c916b487b3ebddc4372b398ab7cd0c7f4ff6991a70fe64177386

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild
deleted file mode 100644
index d54697c1b686..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-7.0.0-r1.ebuild
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-fortify-only-ssp.patch
-)
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-17  2:33 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-17  2:33 UTC (permalink / raw
  To: gentoo-commits

commit:     3f008113c07122f81c5eec07b87be5d673e002f1
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 06:09:07 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 17 02:16:19 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f008113

dev-util/mingw64-runtime: add myself as a maintainer

Don't use this intensively (mostly just wine), but know a bit about
it and might as well handle it in behalf of toolchain@ when possible.

Help/pointers welcome, especially from heavier cross/mingw users if
anything is amiss.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/metadata.xml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index c698f9ad9b0b..e2958c042969 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -1,6 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
+  <maintainer type="person">
+    <email>ionen@gentoo.org</email>
+    <name>Ionen Wolkens</name>
+  </maintainer>
   <maintainer type="project">
     <email>toolchain@gentoo.org</email>
     <name>Gentoo Toolchain Project</name>


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-22  8:02 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-22  8:02 UTC (permalink / raw
  To: gentoo-commits

commit:     8a11ccc1734e03fda9861f40461ef9b3e6e2026e
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 22 07:47:12 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri Apr 22 08:01:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a11ccc1

dev-util/mingw64-runtime: drop 8.0.0-r0, 8.0.0-r1, 9.0.0-r0

Just old revisions, revised ebuilds seems fine so far and
this makes pkgcheck happy.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../mingw64-runtime-8.0.0-r1.ebuild                | 120 ---------------------
 .../mingw64-runtime/mingw64-runtime-8.0.0.ebuild   | 118 --------------------
 .../mingw64-runtime/mingw64-runtime-9.0.0.ebuild   | 119 --------------------
 3 files changed, 357 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r1.ebuild
deleted file mode 100644
index 66146673f8ce..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r1.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-	"${FILESDIR}"/${PN}-8.0.0-__rdtsc.patch
-	"${FILESDIR}"/${PN}-8.0.0-udivmod.patch
-)
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
deleted file mode 100644
index 2db84fb513eb..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0.ebuild
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-)
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild
deleted file mode 100644
index 3dfff3894bf5..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0.ebuild
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="http://mingw-w64.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-	"${FILESDIR}"/${PN}-8.0.0-__rdtsc.patch
-)
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-just_headers() {
-	use headers-only
-}
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-crt_with() {
-	just_headers && echo --without-$1 || echo --with-$1
-}
-crt_use_enable() {
-	just_headers && echo --without-$2 || use_enable "$@"
-}
-crt_use_with() {
-	just_headers && echo --without-$2 || use_with "$@"
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} ]] && [[ ${CHOST} == ${CTARGET} ]] ; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if ! just_headers; then
-		mkdir "${WORKDIR}/headers"
-		pushd "${WORKDIR}/headers" > /dev/null
-		CHOST=${CTARGET} "${S}/configure" \
-			--prefix="${T}/tmproot" \
-			--with-headers \
-			--without-crt \
-			|| die
-		popd > /dev/null
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	# By default configure tries to set --sysroot=${prefix}. We disable
-	# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-	# That way we can cross-build mingw64-runtime with cross-emerge.
-	local prefix="${EPREFIX}"$(alt_prefix)/usr
-	CHOST=${CTARGET} econf \
-		--with-sysroot=no \
-		--prefix="${prefix}" \
-		--libdir="${prefix}"/lib \
-		--with-headers \
-		--enable-sdk \
-		$(crt_with crt) \
-		$(crt_use_enable idl idl) \
-		$(crt_use_with libraries libraries) \
-		$(crt_use_with tools tools) \
-		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - < /dev/null | grep -q __MINGW64__ \
-				&& echo --disable-lib32 --enable-lib64 \
-				|| echo --enable-lib32 --disable-lib64
-		)
-}
-
-src_compile() {
-	if ! just_headers; then
-		emake -C "${WORKDIR}/headers" install
-	fi
-	default
-}
-
-src_install() {
-	default
-
-	if is_crosscompile ; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -rf "${ED}/usr/share"
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-04-24 21:09 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-04-24 21:09 UTC (permalink / raw
  To: gentoo-commits

commit:     a2215adc4210cb2677d0457bddfb7d0be5cc7494
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 24 20:26:56 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 24 21:07:47 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2215adc

dev-util/mingw64-runtime: revert to old style cpp check

May return different error codes despite working properly,
cause unknown but ideally should look at doing this
differently. For now just revert to old behavior.

While here, add guard for headers-only. Not an issue per-se
given lib options don't matter, but it still uses wrong cpp
at that stage.

Closes: https://bugs.gentoo.org/840662
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild   | 12 ++++++------
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild | 12 ++++++------
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild | 12 ++++++------
 3 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
index cf08ceab0f13..077a2a52ccd6 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
@@ -88,12 +88,12 @@ src_configure() {
 		$(crt-use_with libraries)
 		$(crt-use_with tools)
 		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
-			case ${PIPESTATUS[*]} in
-				'0 0') echo --disable-lib32 --enable-lib64;;
-				'0 1') echo --enable-lib32 --disable-lib64;;
-				*) die "failed check for __MINGW64__";;
-			esac
+			if use !headers-only; then
+				# not checking cpp errors due to bug #840662
+				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
+					&& echo --disable-lib32 --enable-lib64 \
+					|| echo --enable-lib32 --disable-lib64
+			fi
 		)
 	)
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
index 78376aa3bcb5..8b0afea5649a 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
@@ -90,12 +90,12 @@ src_configure() {
 		$(crt-use_with libraries)
 		$(crt-use_with tools)
 		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
-			case ${PIPESTATUS[*]} in
-				'0 0') echo --disable-lib32 --enable-lib64;;
-				'0 1') echo --enable-lib32 --disable-lib64;;
-				*) die "failed check for __MINGW64__";;
-			esac
+			if use !headers-only; then
+				# not checking cpp errors due to bug #840662
+				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
+					&& echo --disable-lib32 --enable-lib64 \
+					|| echo --enable-lib32 --disable-lib64
+			fi
 		)
 	)
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
index cf08ceab0f13..077a2a52ccd6 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
@@ -88,12 +88,12 @@ src_configure() {
 		$(crt-use_with libraries)
 		$(crt-use_with tools)
 		$(
-			$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__
-			case ${PIPESTATUS[*]} in
-				'0 0') echo --disable-lib32 --enable-lib64;;
-				'0 1') echo --enable-lib32 --disable-lib64;;
-				*) die "failed check for __MINGW64__";;
-			esac
+			if use !headers-only; then
+				# not checking cpp errors due to bug #840662
+				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
+					&& echo --disable-lib32 --enable-lib64 \
+					|| echo --enable-lib32 --disable-lib64
+			fi
 		)
 	)
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-13  2:48 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-13  2:48 UTC (permalink / raw
  To: gentoo-commits

commit:     7e1fc3f22395c5a7733a1a4462551f69c892ce3e
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May 10 05:32:32 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri May 13 02:29:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e1fc3f2

dev-util/mingw64-runtime: re-arrange ebuilds some more

Mostly just style, but also now checking tuples again to ensure
more deterministic results (e.g. a cpp check gone wrong could
give 32bit despite x86_64 tuple), then fallback on the cpp check
rather than die like tuple check formerly did.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../mingw64-runtime-10.0.0-r1.ebuild               | 109 ++++++++++++++++++++
 .../mingw64-runtime-8.0.0-r3.ebuild                | 111 +++++++++++++++++++++
 .../mingw64-runtime-9.0.0-r2.ebuild                | 109 ++++++++++++++++++++
 3 files changed, 329 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
new file mode 100644
index 000000000000..8c12697778ba
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+)
+
+pkg_setup() {
+	: ${CBUILD:=${CHOST}}
+	: ${CTARGET:=${CHOST}}
+	[[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
+		CTARGET=${CATEGORY#cross-}
+
+	[[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
+
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+src_configure() {
+	CHOST=${CTARGET}
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		$(use_with !headers-only crt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+			$(use_with tools)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
new file mode 100644
index 000000000000..f287baeaa601
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+	"${FILESDIR}"/${P}-__rdtsc.patch
+	"${FILESDIR}"/${P}-udivmod.patch
+)
+
+pkg_setup() {
+	: ${CBUILD:=${CHOST}}
+	: ${CTARGET:=${CHOST}}
+	[[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
+		CTARGET=${CATEGORY#cross-}
+
+	[[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
+
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+src_configure() {
+	CHOST=${CTARGET}
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		$(use_with !headers-only crt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+			$(use_with tools)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
new file mode 100644
index 000000000000..8c12697778ba
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# USE=libraries needs working stage2 compiler: bug #665512
+IUSE="headers-only idl libraries tools"
+RESTRICT="strip"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
+)
+
+pkg_setup() {
+	: ${CBUILD:=${CHOST}}
+	: ${CTARGET:=${CHOST}}
+	[[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
+		CTARGET=${CATEGORY#cross-}
+
+	[[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
+
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+src_configure() {
+	CHOST=${CTARGET}
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker.
+	# But at configure time it uses $LDFLAGS.
+	# When default -Wl,--hash-style=gnu is passed
+	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
+	# for target ld and binaries crash at shutdown.
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		$(use_with !headers-only crt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+			$(use_with tools)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+
+	default
+}
+
+src_install() {
+	default
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-13  2:48 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-13  2:48 UTC (permalink / raw
  To: gentoo-commits

commit:     4b7c1923fca6533a51be68bfbacc793469a521d4
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May 10 07:06:43 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri May 13 02:29:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b7c1923

dev-util/mingw64-runtime: build tools for CHOST and add widl

Non-native USE=tools never made much sense, If a package is
cross-compiling for mingw using e.g. widl, it'll need to be able
to run the tool. This also prevents build failure (bug #644556)
during bootstrap given this won't be trying to link with mingw
(note that can cross-emerge mingw64-runtime for old behavior).

wrt widl, it is provided by wine but that is a heavy dependency and
some upstreams (e.g. vkd3d-proton) default to using *-w64-mingw32-widl
instead -- small tool so may as well install it.

Closes: https://bugs.gentoo.org/644556
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../mingw64-runtime-10.0.0-r1.ebuild               | 33 +++++++++++++++++++---
 .../mingw64-runtime-8.0.0-r3.ebuild                | 33 +++++++++++++++++++---
 .../mingw64-runtime-9.0.0-r2.ebuild                | 33 +++++++++++++++++++---
 3 files changed, 87 insertions(+), 12 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 8c12697778ba..61ebf16b4393 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -33,8 +33,32 @@ pkg_setup() {
 		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
 }
 
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool
+	for tool in gendef genidl widl; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
 src_configure() {
-	CHOST=${CTARGET}
+	# native tools, see #644556
+	local toolsconf=(
+		--prefix="${EPREFIX}"/usr
+	)
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# cross-compiling from here
+	local CHOST=${CTARGET}
 	strip-unsupported-flags
 
 	# Normally mingw64 does not use dynamic linker.
@@ -62,7 +86,6 @@ src_configure() {
 		conf+=(
 			$(use_enable idl)
 			$(use_with libraries)
-			$(use_with tools)
 		)
 
 		# prefer tuple to determine if should do 32 or 64bits, but fall
@@ -91,13 +114,15 @@ src_configure() {
 
 src_compile() {
 	use headers-only || emake -C ../headers install
-
-	default
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
 }
 
 src_install() {
 	default
 
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
 	if ${MW_CROSS}; then
 		# gcc is configured to look at specific hard-coded paths for mingw #419601
 		dosym usr /usr/${CTARGET}/mingw

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index f287baeaa601..cde42642c57b 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -35,8 +35,32 @@ pkg_setup() {
 		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
 }
 
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool
+	for tool in gendef genidl widl; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
 src_configure() {
-	CHOST=${CTARGET}
+	# native tools, see #644556
+	local toolsconf=(
+		--prefix="${EPREFIX}"/usr
+	)
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# cross-compiling from here
+	local CHOST=${CTARGET}
 	strip-unsupported-flags
 
 	# Normally mingw64 does not use dynamic linker.
@@ -64,7 +88,6 @@ src_configure() {
 		conf+=(
 			$(use_enable idl)
 			$(use_with libraries)
-			$(use_with tools)
 		)
 
 		# prefer tuple to determine if should do 32 or 64bits, but fall
@@ -93,13 +116,15 @@ src_configure() {
 
 src_compile() {
 	use headers-only || emake -C ../headers install
-
-	default
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
 }
 
 src_install() {
 	default
 
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
 	if ${MW_CROSS}; then
 		# gcc is configured to look at specific hard-coded paths for mingw #419601
 		dosym usr /usr/${CTARGET}/mingw

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 8c12697778ba..61ebf16b4393 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -33,8 +33,32 @@ pkg_setup() {
 		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
 }
 
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool
+	for tool in gendef genidl widl; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
 src_configure() {
-	CHOST=${CTARGET}
+	# native tools, see #644556
+	local toolsconf=(
+		--prefix="${EPREFIX}"/usr
+	)
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# cross-compiling from here
+	local CHOST=${CTARGET}
 	strip-unsupported-flags
 
 	# Normally mingw64 does not use dynamic linker.
@@ -62,7 +86,6 @@ src_configure() {
 		conf+=(
 			$(use_enable idl)
 			$(use_with libraries)
-			$(use_with tools)
 		)
 
 		# prefer tuple to determine if should do 32 or 64bits, but fall
@@ -91,13 +114,15 @@ src_configure() {
 
 src_compile() {
 	use headers-only || emake -C ../headers install
-
-	default
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
 }
 
 src_install() {
 	default
 
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
 	if ${MW_CROSS}; then
 		# gcc is configured to look at specific hard-coded paths for mingw #419601
 		dosym usr /usr/${CTARGET}/mingw


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-13  2:48 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-13  2:48 UTC (permalink / raw
  To: gentoo-commits

commit:     f23efbbadbff2a4351697404d640681a6204f109
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Fri May 13 01:07:39 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri May 13 02:44:28 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f23efbba

dev-util/mingw64-runtime: unset toolchain vars when cross-compiling

i.e. it could be CC=x86_64-pc-linux-gnu-gcc / clang which is
what's wanted for building tools, but after we need to discard
that to switch to x86_64-w64-mingw32-gcc (unless CHOST is already
mingw as it would be correct).

Ideally would need a unified way to do this with override variables
for users to specify the alternate toolchain variables.

The -Wl,--hash-style=* filter is likely not necessary given
strip-unsupported-flags already strip it, but if(?) CC was
set it may possibly have messed with that -- albeit will keep
it as a safety/informational.

Closes: https://github.com/gentoo/gentoo/pull/25365
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 4 +++-
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 4 +++-
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 4 +++-
 3 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 61ebf16b4393..d082ba67bbc6 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -57,7 +57,9 @@ src_configure() {
 
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
-	# cross-compiling from here
+	# likely cross-compiling from here, update toolchain variables
+	${MW_CROSS} &&
+		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index cde42642c57b..7eaca692a9d3 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -59,7 +59,9 @@ src_configure() {
 
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
-	# cross-compiling from here
+	# likely cross-compiling from here, update toolchain variables
+	${MW_CROSS} &&
+		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 61ebf16b4393..d082ba67bbc6 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -57,7 +57,9 @@ src_configure() {
 
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
-	# cross-compiling from here
+	# likely cross-compiling from here, update toolchain variables
+	${MW_CROSS} &&
+		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-14  2:23 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-14  2:23 UTC (permalink / raw
  To: gentoo-commits

commit:     c7a42f71ba83ce97eeae0ed50b0ab334f667c720
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat May 14 02:13:36 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat May 14 02:21:58 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7a42f71

dev-util/mingw64-runtime: add bypass option for unset

Unset is needed given CC is not expected to be a cross-compiler
but, if users know what they are doing, leave a way (MINGW_BYPASS=1).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index d082ba67bbc6..76ea7da69341 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -58,7 +58,7 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} &&
+	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index 7eaca692a9d3..faedf8c7e909 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -60,7 +60,7 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} &&
+	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index d082ba67bbc6..76ea7da69341 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -58,7 +58,7 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} &&
+	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 	local CHOST=${CTARGET}
 	strip-unsupported-flags


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-21 18:38 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-21 18:38 UTC (permalink / raw
  To: gentoo-commits

commit:     48a4fb3d552da9e48bedf40622c82b5b3696e470
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat May 21 18:31:39 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat May 21 18:37:23 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48a4fb3d

dev-util/mingw64-runtime: missing >/dev/null nitpick

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 76ea7da69341..fbd35d0570b7 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -39,7 +39,7 @@ mingw-foreach_tool() {
 	local tool
 	for tool in gendef genidl widl; do
 		# not using top-level --with-tools given it skips widl
-		pushd mingw-w64-tools/${tool} || die
+		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
 		popd >/dev/null || die
 	done

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index faedf8c7e909..9efc43518403 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -41,7 +41,7 @@ mingw-foreach_tool() {
 	local tool
 	for tool in gendef genidl widl; do
 		# not using top-level --with-tools given it skips widl
-		pushd mingw-w64-tools/${tool} || die
+		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
 		popd >/dev/null || die
 	done

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 76ea7da69341..fbd35d0570b7 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -39,7 +39,7 @@ mingw-foreach_tool() {
 	local tool
 	for tool in gendef genidl widl; do
 		# not using top-level --with-tools given it skips widl
-		pushd mingw-w64-tools/${tool} || die
+		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
 		popd >/dev/null || die
 	done


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-05-21 18:38 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-05-21 18:38 UTC (permalink / raw
  To: gentoo-commits

commit:     98743ce9f3ec6b73adc5757ffbb132c9e100c587
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat May 21 18:33:01 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat May 21 18:37:23 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98743ce9

dev-util/mingw64-runtime: drop 8.0.0-r2, 9.0.0-r1, 10.0.0-r0

Just old revisions, all 3 versions still kept for now.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../mingw64-runtime/mingw64-runtime-10.0.0.ebuild  | 120 --------------------
 .../mingw64-runtime-8.0.0-r2.ebuild                | 122 ---------------------
 .../mingw64-runtime-9.0.0-r1.ebuild                | 120 --------------------
 3 files changed, 362 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
deleted file mode 100644
index 077a2a52ccd6..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
-	export CTARGET=${CATEGORY#cross-}
-fi
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-)
-
-mingw-is_cross() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if use !headers-only; then
-		mkdir "${WORKDIR}"/headers || die
-		pushd "${WORKDIR}"/headers >/dev/null || die
-
-		local econfargs=(
-			--prefix="${T}"/tmproot
-			--with-headers
-			--without-crt
-		)
-
-		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
-
-		popd >/dev/null || die
-
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	crt-use_enable() {
-		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
-	}
-	crt-use_with() {
-		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
-	}
-
-	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
-	local econfargs=(
-		--prefix="${prefix}"
-		--libdir="${prefix}"/lib
-		--enable-sdk
-		--with-headers
-
-		# By default configure tries to set --sysroot=${prefix}. We disable
-		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-		# That way we can cross-build mingw64-runtime with cross-emerge.
-		--with-sysroot=no
-
-		$(use_with !headers-only crt)
-		$(crt-use_enable idl)
-		$(crt-use_with libraries)
-		$(crt-use_with tools)
-		$(
-			if use !headers-only; then
-				# not checking cpp errors due to bug #840662
-				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
-					&& echo --disable-lib32 --enable-lib64 \
-					|| echo --enable-lib32 --disable-lib64
-			fi
-		)
-	)
-
-	CHOST=${CTARGET} econf "${econfargs[@]}"
-}
-
-src_compile() {
-	use headers-only || emake -C "${WORKDIR}"/headers install
-
-	default
-}
-
-src_install() {
-	default
-
-	if mingw-is_cross; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -r "${ED}"/usr/share || die
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
deleted file mode 100644
index 8b0afea5649a..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r2.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
-	export CTARGET=${CATEGORY#cross-}
-fi
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-	"${FILESDIR}"/${P}-__rdtsc.patch
-	"${FILESDIR}"/${P}-udivmod.patch
-)
-
-mingw-is_cross() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if use !headers-only; then
-		mkdir "${WORKDIR}"/headers || die
-		pushd "${WORKDIR}"/headers >/dev/null || die
-
-		local econfargs=(
-			--prefix="${T}"/tmproot
-			--with-headers
-			--without-crt
-		)
-
-		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
-
-		popd >/dev/null || die
-
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	crt-use_enable() {
-		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
-	}
-	crt-use_with() {
-		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
-	}
-
-	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
-	local econfargs=(
-		--prefix="${prefix}"
-		--libdir="${prefix}"/lib
-		--enable-sdk
-		--with-headers
-
-		# By default configure tries to set --sysroot=${prefix}. We disable
-		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-		# That way we can cross-build mingw64-runtime with cross-emerge.
-		--with-sysroot=no
-
-		$(use_with !headers-only crt)
-		$(crt-use_enable idl)
-		$(crt-use_with libraries)
-		$(crt-use_with tools)
-		$(
-			if use !headers-only; then
-				# not checking cpp errors due to bug #840662
-				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
-					&& echo --disable-lib32 --enable-lib64 \
-					|| echo --enable-lib32 --disable-lib64
-			fi
-		)
-	)
-
-	CHOST=${CTARGET} econf "${econfargs[@]}"
-}
-
-src_compile() {
-	use headers-only || emake -C "${WORKDIR}"/headers install
-
-	default
-}
-
-src_install() {
-	default
-
-	if mingw-is_cross; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -r "${ED}"/usr/share || die
-}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
deleted file mode 100644
index 077a2a52ccd6..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r1.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]]; then
-	export CTARGET=${CATEGORY#cross-}
-fi
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
-RESTRICT="strip"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-7.0.0-fortify-only-ssp.patch
-)
-
-mingw-is_cross() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-pkg_setup() {
-	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]]; then
-		die "Invalid configuration"
-	fi
-}
-
-src_configure() {
-	CHOST=${CTARGET} strip-unsupported-flags
-
-	# Normally mingw-64 does not use dynamic linker.
-	# But at configure time it uses $LDFLAGS.
-	# When default -Wl,--hash-style=gnu is passed
-	# __CTORS_LIST__ / __DTORS_LIST__ is mis-detected
-	# for target ld and binaries crash at shutdown.
-	filter-ldflags '-Wl,--hash-style=*'
-
-	if use !headers-only; then
-		mkdir "${WORKDIR}"/headers || die
-		pushd "${WORKDIR}"/headers >/dev/null || die
-
-		local econfargs=(
-			--prefix="${T}"/tmproot
-			--with-headers
-			--without-crt
-		)
-
-		CHOST=${CTARGET} ECONF_SOURCE=${S} econf "${econfargs[@]}"
-
-		popd >/dev/null || die
-
-		append-cppflags "-I${T}/tmproot/include"
-	fi
-
-	crt-use_enable() {
-		use headers-only && echo --without-${2:-${1}} || use_enable "${@}"
-	}
-	crt-use_with() {
-		use headers-only && echo --without-${2:-${1}} || use_with "${@}"
-	}
-
-	local prefix="${EPREFIX}"$(mingw-is_cross && echo /usr/${CTARGET})/usr
-	local econfargs=(
-		--prefix="${prefix}"
-		--libdir="${prefix}"/lib
-		--enable-sdk
-		--with-headers
-
-		# By default configure tries to set --sysroot=${prefix}. We disable
-		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-		# That way we can cross-build mingw64-runtime with cross-emerge.
-		--with-sysroot=no
-
-		$(use_with !headers-only crt)
-		$(crt-use_enable idl)
-		$(crt-use_with libraries)
-		$(crt-use_with tools)
-		$(
-			if use !headers-only; then
-				# not checking cpp errors due to bug #840662
-				$(tc-getCPP ${CTARGET}) ${CPPFLAGS} -dM - </dev/null | grep -q __MINGW64__ \
-					&& echo --disable-lib32 --enable-lib64 \
-					|| echo --enable-lib32 --disable-lib64
-			fi
-		)
-	)
-
-	CHOST=${CTARGET} econf "${econfargs[@]}"
-}
-
-src_compile() {
-	use headers-only || emake -C "${WORKDIR}"/headers install
-
-	default
-}
-
-src_install() {
-	default
-
-	if mingw-is_cross; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -r "${ED}"/usr/share || die
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-06-21  2:01 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-06-21  2:01 UTC (permalink / raw
  To: gentoo-commits

commit:     ecbfea558628141d5d543730aeb3f3501ca45025
Author:     xtkoba <69125751+xtkoba <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Mon Jun 20 19:22:36 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Jun 21 01:56:48 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecbfea55

dev-util/mingw64-runtime: Add 'default-ucrt' USE flag

Signed-off-by: Tee KOBAYASHI <xtkoba <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/26008
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/metadata.xml                     | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index e2958c042969..9614bd8a4369 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -10,6 +10,7 @@
     <name>Gentoo Toolchain Project</name>
   </maintainer>
   <use>
+    <flag name="default-ucrt">Use ucrt instead of msvcrt-os as the default crt.</flag>
     <flag name="idl">Install idl files.</flag>
     <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads.</flag>
     <flag name="tools">Build extra tools: gendef, genidl.</flag>

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index fbd35d0570b7..51a541b4ad11 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -14,7 +14,7 @@ LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
 # USE=libraries needs working stage2 compiler: bug #665512
-IUSE="headers-only idl libraries tools"
+IUSE="default-ucrt headers-only idl libraries tools"
 RESTRICT="strip"
 
 PATCHES=(
@@ -76,6 +76,7 @@ src_configure() {
 	local conf=(
 		--prefix="${prefix}"
 		--libdir="${prefix}"/lib
+		$(usex default-ucrt "--with-default-msvcrt=ucrt" "")
 		$(use_with !headers-only crt)
 
 		# By default configure tries to set --sysroot=${prefix}. We disable


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-06-21  2:01 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-06-21  2:01 UTC (permalink / raw
  To: gentoo-commits

commit:     e6b9f70fbaf9f22ab15d466155d4e0f13351ec81
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 21 01:08:42 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Jun 21 01:56:48 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6b9f70f

dev-util/mingw64-runtime: nitpicks and add default-ucrt warning

Technically this can be considered a different CTARGET (believe
some do x86_64-w64-mingw32ucrt) and, bit like clang's default-libcxx,
shouldn't be casually swapped (but attempts are likely to fail).

Also cleanup metadata full stops and add widl while here.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/metadata.xml                     | 11 +++++++----
 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild |  2 +-
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/dev-util/mingw64-runtime/metadata.xml b/dev-util/mingw64-runtime/metadata.xml
index 9614bd8a4369..b1a857e80f12 100644
--- a/dev-util/mingw64-runtime/metadata.xml
+++ b/dev-util/mingw64-runtime/metadata.xml
@@ -10,10 +10,13 @@
     <name>Gentoo Toolchain Project</name>
   </maintainer>
   <use>
-    <flag name="default-ucrt">Use ucrt instead of msvcrt-os as the default crt.</flag>
-    <flag name="idl">Install idl files.</flag>
-    <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads.</flag>
-    <flag name="tools">Build extra tools: gendef, genidl.</flag>
+    <flag name="default-ucrt">
+      Use ucrt instead of msvcrt-os as the default crt (WARNING:
+      incompatible with each others and also for building Wine with
+      USE=mingw, pick one from the start and keep it)</flag>
+    <flag name="idl">Install idl files</flag>
+    <flag name="libraries">Build extra libraries: mangle, pseh, winpthreads</flag>
+    <flag name="tools">Build extra tools: gendef, genidl, widl</flag>
   </use>
   <upstream>
     <remote-id type="sourceforge">mingw-w64</remote-id>

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 51a541b4ad11..3b3854308f65 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -76,8 +76,8 @@ src_configure() {
 	local conf=(
 		--prefix="${prefix}"
 		--libdir="${prefix}"/lib
-		$(usex default-ucrt "--with-default-msvcrt=ucrt" "")
 		$(use_with !headers-only crt)
+		$(usev default-ucrt --with-default-msvcrt=ucrt)
 
 		# By default configure tries to set --sysroot=${prefix}. We disable
 		# this behaviour with --with-sysroot=no to use gcc's sysroot default.


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-06-29 17:22 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-06-29 17:22 UTC (permalink / raw
  To: gentoo-commits

commit:     33d7b158dc01843bd129d0f89cb301d9bf355d0a
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 21 03:31:49 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Jun 29 17:22:36 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33d7b158

dev-util/mingw64-runtime: disable widl on unsupported platforms

Not tested, but should work in theory.

Also drop redundant --prefix while here, but keep array so it's
easy to add option if needed in the future.

Closes: https://bugs.gentoo.org/853250
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 13 ++++++++-----
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 13 ++++++++-----
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 13 ++++++++-----
 3 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 3b3854308f65..a31d8271deb2 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -36,8 +36,13 @@ pkg_setup() {
 mingw-foreach_tool() {
 	use !tools || use headers-only && return
 
-	local tool
-	for tool in gendef genidl widl; do
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform"
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
 		# not using top-level --with-tools given it skips widl
 		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
@@ -47,9 +52,7 @@ mingw-foreach_tool() {
 
 src_configure() {
 	# native tools, see #644556
-	local toolsconf=(
-		--prefix="${EPREFIX}"/usr
-	)
+	local toolsconf=()
 	# normally only widl is prefixed, but avoids clash with other targets
 	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index 9efc43518403..4f6695ab77ad 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -38,8 +38,13 @@ pkg_setup() {
 mingw-foreach_tool() {
 	use !tools || use headers-only && return
 
-	local tool
-	for tool in gendef genidl widl; do
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform"
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
 		# not using top-level --with-tools given it skips widl
 		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
@@ -49,9 +54,7 @@ mingw-foreach_tool() {
 
 src_configure() {
 	# native tools, see #644556
-	local toolsconf=(
-		--prefix="${EPREFIX}"/usr
-	)
+	local toolsconf=()
 	# normally only widl is prefixed, but avoids clash with other targets
 	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index fbd35d0570b7..4744a6a8a569 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -36,8 +36,13 @@ pkg_setup() {
 mingw-foreach_tool() {
 	use !tools || use headers-only && return
 
-	local tool
-	for tool in gendef genidl widl; do
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform"
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
 		# not using top-level --with-tools given it skips widl
 		pushd mingw-w64-tools/${tool} >/dev/null || die
 		"${@}"
@@ -47,9 +52,7 @@ mingw-foreach_tool() {
 
 src_configure() {
 	# native tools, see #644556
-	local toolsconf=(
-		--prefix="${EPREFIX}"/usr
-	)
+	local toolsconf=()
 	# normally only widl is prefixed, but avoids clash with other targets
 	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-06-29 17:48 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-06-29 17:48 UTC (permalink / raw
  To: gentoo-commits

commit:     d88daa557f5aeb08938290cf100a5143cf8ab3a7
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 29 17:46:20 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Jun 29 17:47:19 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d88daa55

dev-util/mingw64-runtime: add missing bugrefs

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 2 +-
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index a31d8271deb2..004d6be49356 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -38,7 +38,7 @@ mingw-foreach_tool() {
 
 	local tool=widl
 	if use !amd64 && use !x86 && use !arm64 && use !arm; then
-		einfo "Skipping widl due to unsupported platform"
+		einfo "Skipping widl due to unsupported platform" #853250
 		tool=
 	fi
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index 4f6695ab77ad..f8c49eccf6eb 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -40,7 +40,7 @@ mingw-foreach_tool() {
 
 	local tool=widl
 	if use !amd64 && use !x86 && use !arm64 && use !arm; then
-		einfo "Skipping widl due to unsupported platform"
+		einfo "Skipping widl due to unsupported platform" #853250
 		tool=
 	fi
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 4744a6a8a569..3a886c7ab13b 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -38,7 +38,7 @@ mingw-foreach_tool() {
 
 	local tool=widl
 	if use !amd64 && use !x86 && use !arm64 && use !arm; then
-		einfo "Skipping widl due to unsupported platform"
+		einfo "Skipping widl due to unsupported platform" #853250
 		tool=
 	fi
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-07-16 17:03 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-07-16 17:03 UTC (permalink / raw
  To: gentoo-commits

commit:     cb896a35b33c2d0448904001731419c49be66cf9
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 16 15:33:42 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Jul 16 16:56:35 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb896a35

dev-util/mingw64-runtime: filter -fuse-ld for mingw

flag-o-matic is looking at respecting -fuse-ld for test-flags-CCLD,
which is good but don't want this when doing the user-unexpected
switch to mingw toolchain (filtering feels more solid either way).

Users can use MINGW_BYPASS=1 if really need full control.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 4 +++-
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 4 +++-
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 4 +++-
 3 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 004d6be49356..d25b7c5a8cd2 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -61,8 +61,10 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index f8c49eccf6eb..44937f667232 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -63,8 +63,10 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 3a886c7ab13b..d0a25ce8f9c1 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -61,8 +61,10 @@ src_configure() {
 	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
 
 	# likely cross-compiling from here, update toolchain variables
-	${MW_CROSS} && [[ ! -v MINGW_BYPASS ]] &&
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-09-14 23:24 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-09-14 23:24 UTC (permalink / raw
  To: gentoo-commits

commit:     c115ecb8b22853eec7abade52a3790ccffeeb4b0
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 14 23:20:36 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Sep 14 23:23:42 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c115ecb8

dev-util/mingw64-runtime: filter ssp for cross-compilation bits

Less likely to be an issue here given the whole crossdev involvement
which may or may not have working libssp, but it seems reasonable to
add and there's a way to override if needed.

Bug: https://bugs.gentoo.org/870136
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 1 +
 3 files changed, 3 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index d25b7c5a8cd2..10e3e63896d7 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -63,6 +63,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi
 	local CHOST=${CTARGET}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index 44937f667232..c0f96c62bc21 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -65,6 +65,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi
 	local CHOST=${CTARGET}

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index d0a25ce8f9c1..572a65c6bce8 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -63,6 +63,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi
 	local CHOST=${CTARGET}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-10-23  7:20 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-10-23  7:20 UTC (permalink / raw
  To: gentoo-commits

commit:     320c0f7d7300cb5c834614e0fdbe99b3a9776f70
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 23 07:14:45 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Oct 23 07:20:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=320c0f7d

dev-util/mingw64-runtime: filter -fstack-clash-protection

Bug: https://bugs.gentoo.org/758914
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 1 +
 3 files changed, 3 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index 10e3e63896d7..f3225f01c156 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -63,6 +63,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index c0f96c62bc21..652dea446b1e 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -65,6 +65,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index 572a65c6bce8..e0d15b0a5f88 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -63,6 +63,7 @@ src_configure() {
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
 		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
 	fi


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2022-10-31  0:54 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2022-10-31  0:54 UTC (permalink / raw
  To: gentoo-commits

commit:     ec3d05a8329c95eab16c39506bfb892729c1a8ec
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 31 00:46:04 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Oct 31 00:47:51 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec3d05a8

dev-util/mingw64-runtime: filter -mfunction-return=thunk for mingw

Unfortunately mingw doesn't play well with many security/mitigation
flags. May need to consider a mingw.eclass if keep adding more of
these to every ebuilds using it.

Bug: https://bugs.gentoo.org/878849
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild  | 1 +
 dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild  | 1 +
 3 files changed, 3 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index f3225f01c156..5d3ff4f8587f 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -66,6 +66,7 @@ src_configure() {
 		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
 	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
index 652dea446b1e..caa50883a838 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild
@@ -68,6 +68,7 @@ src_configure() {
 		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
 	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
index e0d15b0a5f88..7f9b3697a13d 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild
@@ -66,6 +66,7 @@ src_configure() {
 		filter-flags '-fstack-clash-protection' #758914
 		filter-flags '-fstack-protector*' #870136
 		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
 	fi
 	local CHOST=${CTARGET}
 	strip-unsupported-flags


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2023-04-29  9:43 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2023-04-29  9:43 UTC (permalink / raw
  To: gentoo-commits

commit:     2779aaf2710bab9bedbd6d66501c04b1552b54ad
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 04:24:51 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 09:42:39 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2779aaf2

dev-util/mingw64-runtime: add 11.0.0

Tentatively remove the ssp patch. Bootstrapping using USE=ssp seems
to work both with and without libssp. The libscrypt reproducer from
the patch's old link also builds fine with this version.

Also remove two obsolete flags filters:
* -fstack-clash-protection (bug #758914): ICE was fixed, if still
  run into this then updating gcc to a newer _p* snapshot should
  sort it (alternatively, use released >=gcc-13.1.0)
* -fstack-protector* (bug #870136): mingw64-runtime-11.0.0 adds
  its own (partial) ssp support, allowing -D_FORTIFY_SOURCE=3 and
  -fstack-protector-strong without libssp. Using these to build
  Wine currently still leads to failure, but we can allow it here.

Bug: https://bugs.gentoo.org/758914
Bug: https://bugs.gentoo.org/870136
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-11.0.0.ebuild  | 141 +++++++++++++++++++++
 2 files changed, 142 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 30bd166abe51..1bc5f52fb0bc 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1 +1,2 @@
 DIST mingw-w64-v10.0.0.tar.bz2 9620291 BLAKE2B 451372403289c492ca939d65bb4d9f6e9fa6bdd6b32d79d6438d858e106e8cc291712ada1f3f7b951a4c6908e7d0385d485ca76920af39bcf86effa48408e330 SHA512 3c0827af7c40809a867758f6cd9ef3ff0c988b43082345bf725e03949af95968d634ace99a7ffae323189549221dcb5d861de9e801f1fbc7904e446641b60516
+DIST mingw-w64-v11.0.0.tar.bz2 10058657 BLAKE2B 3f7637bcc7c3f25b2141d35105ea086eab74e228d7275725ffb4f07e283fd75169dbe0900a9c29494fba9ddb2ea03bdd6ae26f06048311e9c93ae3e317c4c060 SHA512 bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
new file mode 100644
index 000000000000..e9b21a93f78c
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="mirror://sourceforge/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S="${WORKDIR}/mingw-w64-v${PV}"
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# default-ucrt: enabling requires to be done during the bootstrap process
+# or else will cause e.g. undefined reference to __intrinsic_setjmpex
+# libraries: needs working stage2 compiler (bug #665512)
+IUSE="default-ucrt headers-only idl libraries tools"
+RESTRICT="strip" # portage would use the wrong strip executable
+
+pkg_setup() {
+	: "${CBUILD:=${CHOST}}"
+	: "${CTARGET:=${CHOST}}"
+	[[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
+		CTARGET=${CATEGORY#cross-}
+
+	[[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
+
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform" #853250
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} >/dev/null || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
+src_configure() {
+	# native tools, see #644556
+	local toolsconf=()
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# likely cross-compiling from here, update toolchain variables
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
+		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
+	fi
+	local CHOST=${CTARGET}
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker, but at configure time it
+	# uses LDFLAGS. When -Wl,--hash-style=gnu is passed __CTORS_LIST__ /
+	# __DTORS_LIST__ is misdetected for target and binaries crash at shutdown.
+	# Note: typically also stripped by strip-unsupported-flags, but not during
+	# USE=headers-only and potentially other configurations (kept as safety).
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		$(use_with !headers-only crt)
+		$(usev default-ucrt --with-default-msvcrt=ucrt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
+}
+
+src_install() {
+	default
+
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2023-06-26 10:12 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2023-06-26 10:12 UTC (permalink / raw
  To: gentoo-commits

commit:     d3bc1d312399949cdeeb0ec41e106df04db93506
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 26 10:08:49 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Jun 26 10:10:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3bc1d31

dev-util/mingw64-runtime: pass -mno-avx for mingw cross

AVX issues with mingw-gcc aren't exactly new, e.g.
https://bugs.winehq.org/show_bug.cgi?id=45289
Been known to cause issues with dxvk too, albeit unsure
if that's still relevant as issues are scattered/lost.

Newly, >=wine-8.10 is likely to crash doing anything
at all 32bit if used -march=native (w/ avx) and 32bit
(e.g. `WINEARCH=win32 winecfg`).

Adding this to every packages using mingw as a precaution,
not believed there is much to gain from keeping AVX given
the fragility here. May revisit eventually with a newer GCC.

Not known to have caused issues with this package in particular
(unlike wine/dxvk), so skipping a slow rebuild revbump.

Unlike other ebuilds, also bother doing tc-is-gcc given what's
used is more up in the air for this ebuild.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 9 ++++++++-
 dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild    | 7 +++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
index ffbdbd5e4ddd..dbbdbd2de31c 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -70,6 +70,13 @@ src_configure() {
 		filter-flags '-mfunction-return=thunk*' #878849
 	fi
 	local CHOST=${CTARGET}
+
+	# -mavx with mingw-gcc has a history of obscure issues and
+	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+	# crashes with -march=skylake >=wine-8.10, similar issues with
+	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+	tc-is-gcc && append-flags -mno-avx
+
 	strip-unsupported-flags
 
 	# Normally mingw64 does not use dynamic linker.

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
index e9b21a93f78c..5e0b60934d20 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
@@ -65,6 +65,13 @@ src_configure() {
 		filter-flags '-mfunction-return=thunk*' #878849
 	fi
 	local CHOST=${CTARGET}
+
+	# -mavx with mingw-gcc has a history of obscure issues and
+	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+	# crashes with -march=skylake >=wine-8.10, similar issues with
+	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+	tc-is-gcc && append-flags -mno-avx
+
 	strip-unsupported-flags
 
 	# Normally mingw64 does not use dynamic linker, but at configure time it


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2023-12-22 17:38 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2023-12-22 17:38 UTC (permalink / raw
  To: gentoo-commits

commit:     5e53d7ae39660784580f720eae5e21811e671d35
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 22 17:11:24 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri Dec 22 17:37:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e53d7ae

dev-util/mingw64-runtime: unset DLLTOOL for cross

Likely less of an issue on this package than mingw64-toolchain,
but doesn't hurt to unset either way.

Bug: https://bugs.gentoo.org/920483
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
index 5e0b60934d20..f58ee0b1fe5e 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
@@ -60,7 +60,7 @@ src_configure() {
 
 	# likely cross-compiling from here, update toolchain variables
 	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
-		unset AR AS CC CPP CXX LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		unset AR AS CC CPP CXX DLLTOOL LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
 		filter-flags '-fuse-ld=*'
 		filter-flags '-mfunction-return=thunk*' #878849
 	fi


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-01-15 17:33 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-01-15 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     5c800f1e7874f263845bc22ba72e7e6484feae75
Author:     12101111 <w12101111 <AT> gmail <DOT> com>
AuthorDate: Mon Jan 15 16:16:30 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Jan 15 17:32:10 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c800f1e

dev-util/mingw64-runtime: Use crossdev.eclass

crossdev.eclass contains code of parsing CTARGET from category and
include the support of crossdev with LLVM/Clang compiler

Bug: https://bugs.gentoo.org/680652
Signed-off-by: Han Puyu <w12101111 <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/34820
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
index f58ee0b1fe5e..e6c64a8633a0 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
-inherit flag-o-matic toolchain-funcs
+inherit crossdev flag-o-matic toolchain-funcs
 
 DESCRIPTION="Free Win64 runtime and import library definitions"
 HOMEPAGE="https://www.mingw-w64.org/"
@@ -20,13 +20,7 @@ IUSE="default-ucrt headers-only idl libraries tools"
 RESTRICT="strip" # portage would use the wrong strip executable
 
 pkg_setup() {
-	: "${CBUILD:=${CHOST}}"
-	: "${CTARGET:=${CHOST}}"
-	[[ ${CTARGET} == ${CHOST} && ${CATEGORY} == cross-* ]] &&
-		CTARGET=${CATEGORY#cross-}
-
-	[[ ${CHOST} != ${CTARGET} ]] && MW_CROSS=true || MW_CROSS=false
-
+	target_is_not_host && MW_CROSS=true || MW_CROSS=false
 	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
 		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
 }


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-03-24 18:39 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-03-24 18:39 UTC (permalink / raw
  To: gentoo-commits

commit:     ff15377c5a378209436cbf2961ce76ba6526f070
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 24 18:11:01 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Mar 24 18:37:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff15377c

dev-util/mingw64-runtime: filter -Wl,-z,* ... for CFLAGS

strip-unsupported-flags handles this fine in LDFLAGS, but -Wl,*
are no-ops during compile-only tests (thus not stripped) and then
if a package compiles and links anything at same time it fails.

This used not to be a big problem but now that 23.0 profiles
do -Wl,-z,pack-relative-relocs (mingw ld has no -z) this is
hitting bashrc-mv users that tend to do CFLAGS="${LDFLAGS}"
by default. Tempting to ignore it because of how wrong it is,
but well.

An alternate route could be to eventually have strip-flags
and/or strip-unsupported-flags remove -Wl,* from non-LDFLAGS
given this could affect more than mingw (e.g. switching to
bfd when there is a lld-only option).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
index e6c64a8633a0..2fc28bcf8673 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
@@ -60,6 +60,11 @@ src_configure() {
 	fi
 	local CHOST=${CTARGET}
 
+	# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
+	# strip-unsupported-flags miss these during compile-only tests
+	# (primarily done for 23.0 profiles' -z, not full coverage)
+	filter-flags '-Wl,-z,*'
+
 	# -mavx with mingw-gcc has a history of obscure issues and
 	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
 	# crashes with -march=skylake >=wine-8.10, similar issues with


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-05-07 14:28 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-05-07 14:28 UTC (permalink / raw
  To: gentoo-commits

commit:     77e524e1ff258b58ade3cecd8d375dfe08b38674
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May  7 10:45:47 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue May  7 14:23:04 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77e524e1

dev-util/mingw64-runtime: add 11.0.1

Bit overdue, was formerly ignored because the tarball
was missing. Does not change much over 11.0.0 for us
though.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-11.0.1.ebuild  | 147 +++++++++++++++++++++
 2 files changed, 148 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index df4a29fd9568..ea3fe405322f 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1 +1,2 @@
 DIST mingw-w64-v11.0.0.tar.bz2 10058657 BLAKE2B 3f7637bcc7c3f25b2141d35105ea086eab74e228d7275725ffb4f07e283fd75169dbe0900a9c29494fba9ddb2ea03bdd6ae26f06048311e9c93ae3e317c4c060 SHA512 bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d
+DIST mingw-w64-v11.0.1.tar.bz2 10057401 BLAKE2B 3222eed35522bf95a571b11dc52ea23153068b32497676dbb2837306ba52a78e6d1c9c44a4d64d314e64583b54f6fe86dcff3e467e101acf71cebb7d2a963963 SHA512 568702100bbbb11f7f9c9596dd70df3fb2577492459cf55da38691af1504b91127cb5f3eff268850dcbaa461fdc72e4e2379f7a576fd4a0e537ee1fe42531c01

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
new file mode 100644
index 000000000000..15f76259b1af
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit crossdev flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="https://downloads.sourceforge.net/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S=${WORKDIR}/mingw-w64-v${PV}
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# default-ucrt: enabling requires to be done during the bootstrap process
+# or else will cause e.g. undefined reference to __intrinsic_setjmpex
+# libraries: needs working stage2 compiler (bug #665512)
+IUSE="default-ucrt headers-only idl libraries tools"
+RESTRICT="strip" # portage would use the wrong strip executable
+
+pkg_setup() {
+	target_is_not_host && MW_CROSS=true || MW_CROSS=false
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform" #853250
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} >/dev/null || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
+src_configure() {
+	# native tools, see #644556
+	local toolsconf=()
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# likely cross-compiling from here, update toolchain variables
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
+		unset AR AS CC CPP CXX DLLTOOL LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
+	fi
+	local CHOST=${CTARGET}
+
+	# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
+	# strip-unsupported-flags miss these during compile-only tests
+	# (primarily done for 23.0 profiles' -z, not full coverage)
+	filter-flags '-Wl,-z,*'
+
+	# -mavx with mingw-gcc has a history of obscure issues and
+	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+	# crashes with -march=skylake >=wine-8.10, similar issues with
+	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+	tc-is-gcc && append-flags -mno-avx
+
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker, but at configure time it
+	# uses LDFLAGS. When -Wl,--hash-style=gnu is passed __CTORS_LIST__ /
+	# __DTORS_LIST__ is misdetected for target and binaries crash at shutdown.
+	# Note: typically also stripped by strip-unsupported-flags, but not during
+	# USE=headers-only and potentially other configurations (kept as safety).
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		$(use_with !headers-only crt)
+		$(usev default-ucrt --with-default-msvcrt=ucrt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
+}
+
+src_install() {
+	default
+
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r -- "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-05-21  3:01 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-05-21  3:01 UTC (permalink / raw
  To: gentoo-commits

commit:     808331894cbfed5c3941e365df617a746b0db07b
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May 21 02:52:44 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue May 21 02:58:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80833189

dev-util/mingw64-runtime: drop 11.0.0

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 -
 .../mingw64-runtime/mingw64-runtime-11.0.0.ebuild  | 147 ---------------------
 2 files changed, 148 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index ea3fe405322f..f6f5a1fc881f 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,2 +1 @@
-DIST mingw-w64-v11.0.0.tar.bz2 10058657 BLAKE2B 3f7637bcc7c3f25b2141d35105ea086eab74e228d7275725ffb4f07e283fd75169dbe0900a9c29494fba9ddb2ea03bdd6ae26f06048311e9c93ae3e317c4c060 SHA512 bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d
 DIST mingw-w64-v11.0.1.tar.bz2 10057401 BLAKE2B 3222eed35522bf95a571b11dc52ea23153068b32497676dbb2837306ba52a78e6d1c9c44a4d64d314e64583b54f6fe86dcff3e467e101acf71cebb7d2a963963 SHA512 568702100bbbb11f7f9c9596dd70df3fb2577492459cf55da38691af1504b91127cb5f3eff268850dcbaa461fdc72e4e2379f7a576fd4a0e537ee1fe42531c01

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
deleted file mode 100644
index 768dd36be67a..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.0.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit crossdev flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="https://downloads.sourceforge.net/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S="${WORKDIR}/mingw-w64-v${PV}"
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# default-ucrt: enabling requires to be done during the bootstrap process
-# or else will cause e.g. undefined reference to __intrinsic_setjmpex
-# libraries: needs working stage2 compiler (bug #665512)
-IUSE="default-ucrt headers-only idl libraries tools"
-RESTRICT="strip" # portage would use the wrong strip executable
-
-pkg_setup() {
-	target_is_not_host && MW_CROSS=true || MW_CROSS=false
-	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
-		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
-}
-
-mingw-foreach_tool() {
-	use !tools || use headers-only && return
-
-	local tool=widl
-	if use !amd64 && use !x86 && use !arm64 && use !arm; then
-		einfo "Skipping widl due to unsupported platform" #853250
-		tool=
-	fi
-
-	for tool in gendef genidl ${tool}; do
-		# not using top-level --with-tools given it skips widl
-		pushd mingw-w64-tools/${tool} >/dev/null || die
-		"${@}"
-		popd >/dev/null || die
-	done
-}
-
-src_configure() {
-	# native tools, see #644556
-	local toolsconf=()
-	# normally only widl is prefixed, but avoids clash with other targets
-	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
-
-	mingw-foreach_tool econf "${toolsconf[@]}"
-
-	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
-
-	# likely cross-compiling from here, update toolchain variables
-	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
-		unset AR AS CC CPP CXX DLLTOOL LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
-		filter-flags '-fuse-ld=*'
-		filter-flags '-mfunction-return=thunk*' #878849
-	fi
-	local CHOST=${CTARGET}
-
-	# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
-	# strip-unsupported-flags miss these during compile-only tests
-	# (primarily done for 23.0 profiles' -z, not full coverage)
-	filter-flags '-Wl,-z,*'
-
-	# -mavx with mingw-gcc has a history of obscure issues and
-	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
-	# crashes with -march=skylake >=wine-8.10, similar issues with
-	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
-	tc-is-gcc && append-flags -mno-avx
-
-	strip-unsupported-flags
-
-	# Normally mingw64 does not use dynamic linker, but at configure time it
-	# uses LDFLAGS. When -Wl,--hash-style=gnu is passed __CTORS_LIST__ /
-	# __DTORS_LIST__ is misdetected for target and binaries crash at shutdown.
-	# Note: typically also stripped by strip-unsupported-flags, but not during
-	# USE=headers-only and potentially other configurations (kept as safety).
-	filter-ldflags '-Wl,--hash-style=*'
-
-	local prefix=${EPREFIX}/usr
-	${MW_CROSS} && prefix+=/${CTARGET}/usr
-
-	local conf=(
-		--prefix="${prefix}"
-		--libdir="${prefix}"/lib
-		$(use_with !headers-only crt)
-		$(usev default-ucrt --with-default-msvcrt=ucrt)
-
-		# By default configure tries to set --sysroot=${prefix}. We disable
-		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-		# That way we can cross-build mingw64-runtime with cross-emerge.
-		--with-sysroot=no
-	)
-
-	if use !headers-only; then
-		conf+=(
-			$(use_enable idl)
-			$(use_with libraries)
-		)
-
-		# prefer tuple to determine if should do 32 or 64bits, but fall
-		# back to cpp test if missing (bug #584858, see also #840662)
-		local b32=true
-		case ${CHOST} in
-			x86_64-*) b32=false;;
-			i*86-*) ;;
-			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
-		esac
-		${b32} &&
-			conf+=( --enable-lib32 --disable-lib64 ) ||
-			conf+=( --disable-lib32 --enable-lib64 )
-
-		# prepare temporary headers install to build against same-version
-		mkdir ../headers || die
-		pushd ../headers >/dev/null || die
-		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
-		popd >/dev/null || die
-
-		append-cppflags "-I${T}/root/include"
-	fi
-
-	econf "${conf[@]}"
-}
-
-src_compile() {
-	use headers-only || emake -C ../headers install
-	emake
-	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
-}
-
-src_install() {
-	default
-
-	mingw-foreach_tool emake DESTDIR="${D}" install
-
-	if ${MW_CROSS}; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -r "${ED}"/usr/share || die
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-05-21  3:01 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-05-21  3:01 UTC (permalink / raw
  To: gentoo-commits

commit:     54e5dc5019e5506f386b80b35dca7ae439bed752
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May 21 02:54:16 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue May 21 02:58:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54e5dc50

dev-util/mingw64-runtime: add workaround for gcc14 ICE w/ mingw

Bug: https://bugs.gentoo.org/932319
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
index 15f76259b1af..f2723d866456 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
@@ -65,11 +65,16 @@ src_configure() {
 	# (primarily done for 23.0 profiles' -z, not full coverage)
 	filter-flags '-Wl,-z,*'
 
-	# -mavx with mingw-gcc has a history of obscure issues and
-	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
-	# crashes with -march=skylake >=wine-8.10, similar issues with
-	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
-	tc-is-gcc && append-flags -mno-avx
+	if tc-is-gcc; then
+		# -mavx with mingw-gcc has a history of obscure issues and
+		# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+		# crashes with -march=skylake >=wine-8.10, similar issues with
+		# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+		append-flags -mno-avx
+
+		# gcc14 -fno-omit-frame-pointer ICE workaround (bug #932319)
+		append-flags -fomit-frame-pointer
+	fi
 
 	strip-unsupported-flags
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-05-22  3:32 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-05-22  3:32 UTC (permalink / raw
  To: gentoo-commits

commit:     87a0599ce499cc694c54ffdb3ce0c39e342230e6
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed May 22 02:10:53 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed May 22 03:30:57 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87a0599c

Revert "dev-util/mingw64-runtime: add workaround for gcc14 ICE w/ mingw"

This reverts commit 54e5dc5019e5506f386b80b35dca7ae439bed752.

Will wait for a fixed gcc version instead, this doesn't affect many.

Bug: https://bugs.gentoo.org/932319
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
index f2723d866456..15f76259b1af 100644
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
+++ b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
@@ -65,16 +65,11 @@ src_configure() {
 	# (primarily done for 23.0 profiles' -z, not full coverage)
 	filter-flags '-Wl,-z,*'
 
-	if tc-is-gcc; then
-		# -mavx with mingw-gcc has a history of obscure issues and
-		# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
-		# crashes with -march=skylake >=wine-8.10, similar issues with
-		# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
-		append-flags -mno-avx
-
-		# gcc14 -fno-omit-frame-pointer ICE workaround (bug #932319)
-		append-flags -fomit-frame-pointer
-	fi
+	# -mavx with mingw-gcc has a history of obscure issues and
+	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+	# crashes with -march=skylake >=wine-8.10, similar issues with
+	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+	tc-is-gcc && append-flags -mno-avx
 
 	strip-unsupported-flags
 


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-05-30  6:39 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-05-30  6:39 UTC (permalink / raw
  To: gentoo-commits

commit:     536b99d1a9b941f7b8defa392141892bcebf1f68
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu May 30 05:16:18 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu May 30 06:38:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=536b99d1

dev-util/mingw64-runtime: add 12.0.0

ucrt becomes the (upstream) default in this version, but this default
cannot be casually changed in the ebuild as it'd break without redoing
the bootstrap process (if ever switch, will ideally need a news item).

Also have not really tested how ucrt interacts with building Wine,
so would rather leave this alone for a while.

Users that know what they're doing can still flip the USE.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 +
 .../mingw64-runtime/mingw64-runtime-12.0.0.ebuild  | 149 +++++++++++++++++++++
 2 files changed, 150 insertions(+)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index f6f5a1fc881f..7c9183d52e6f 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1 +1,2 @@
 DIST mingw-w64-v11.0.1.tar.bz2 10057401 BLAKE2B 3222eed35522bf95a571b11dc52ea23153068b32497676dbb2837306ba52a78e6d1c9c44a4d64d314e64583b54f6fe86dcff3e467e101acf71cebb7d2a963963 SHA512 568702100bbbb11f7f9c9596dd70df3fb2577492459cf55da38691af1504b91127cb5f3eff268850dcbaa461fdc72e4e2379f7a576fd4a0e537ee1fe42531c01
+DIST mingw-w64-v12.0.0.tar.bz2 10474283 BLAKE2B 6500045f7d77f7de01dea0f4e03f3e4ddf6154586c5e3ee9718ee2c7ef1cc83ce3cbd644b6f1dc293ae6e0bfb55a6b68d439622bd1cfdefefc4cc547317f1943 SHA512 949b2bfab8763ab10ec4e9fdfdaf5361517a4ab787fb98ab419b38d02694061c2e821ebbf6e2e4b39d92bdf17419d116daa8e63afd9e01d11592f39df4da69d7

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-12.0.0.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-12.0.0.ebuild
new file mode 100644
index 000000000000..458f1f8b4ea0
--- /dev/null
+++ b/dev-util/mingw64-runtime/mingw64-runtime-12.0.0.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit crossdev flag-o-matic toolchain-funcs
+
+DESCRIPTION="Free Win64 runtime and import library definitions"
+HOMEPAGE="https://www.mingw-w64.org/"
+SRC_URI="https://downloads.sourceforge.net/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
+S=${WORKDIR}/mingw-w64-v${PV}
+
+LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# default-ucrt: enabling requires to be done during the bootstrap process
+# or else will cause e.g. undefined reference to __intrinsic_setjmpex
+# (TODO?: ucrt became the upstream default in mingw-runtime-12.0.0, eventually
+#  may need to consider default here too which may need a news item)
+# libraries: needs working stage2 compiler (bug #665512)
+IUSE="default-ucrt headers-only idl libraries tools"
+RESTRICT="strip" # portage would use the wrong strip executable
+
+pkg_setup() {
+	target_is_not_host && MW_CROSS=true || MW_CROSS=false
+	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
+		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
+}
+
+mingw-foreach_tool() {
+	use !tools || use headers-only && return
+
+	local tool=widl
+	if use !amd64 && use !x86 && use !arm64 && use !arm; then
+		einfo "Skipping widl due to unsupported platform" #853250
+		tool=
+	fi
+
+	for tool in gendef genidl ${tool}; do
+		# not using top-level --with-tools given it skips widl
+		pushd mingw-w64-tools/${tool} >/dev/null || die
+		"${@}"
+		popd >/dev/null || die
+	done
+}
+
+src_configure() {
+	# native tools, see #644556
+	local toolsconf=()
+	# normally only widl is prefixed, but avoids clash with other targets
+	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
+
+	mingw-foreach_tool econf "${toolsconf[@]}"
+
+	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
+
+	# likely cross-compiling from here, update toolchain variables
+	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
+		unset AR AS CC CPP CXX DLLTOOL LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
+		filter-flags '-fuse-ld=*'
+		filter-flags '-mfunction-return=thunk*' #878849
+	fi
+	local CHOST=${CTARGET}
+
+	# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
+	# strip-unsupported-flags miss these during compile-only tests
+	# (primarily done for 23.0 profiles' -z, not full coverage)
+	filter-flags '-Wl,-z,*'
+
+	# -mavx with mingw-gcc has a history of obscure issues and
+	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
+	# crashes with -march=skylake >=wine-8.10, similar issues with
+	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
+	tc-is-gcc && append-flags -mno-avx
+
+	strip-unsupported-flags
+
+	# Normally mingw64 does not use dynamic linker, but at configure time it
+	# uses LDFLAGS. When -Wl,--hash-style=gnu is passed __CTORS_LIST__ /
+	# __DTORS_LIST__ is misdetected for target and binaries crash at shutdown.
+	# Note: typically also stripped by strip-unsupported-flags, but not during
+	# USE=headers-only and potentially other configurations (kept as safety).
+	filter-ldflags '-Wl,--hash-style=*'
+
+	local prefix=${EPREFIX}/usr
+	${MW_CROSS} && prefix+=/${CTARGET}/usr
+
+	local conf=(
+		--prefix="${prefix}"
+		--libdir="${prefix}"/lib
+		--with-default-msvcrt=$(usex default-ucrt ucrt msvcrt-os)
+		$(use_with !headers-only crt)
+
+		# By default configure tries to set --sysroot=${prefix}. We disable
+		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
+		# That way we can cross-build mingw64-runtime with cross-emerge.
+		--with-sysroot=no
+	)
+
+	if use !headers-only; then
+		conf+=(
+			$(use_enable idl)
+			$(use_with libraries)
+		)
+
+		# prefer tuple to determine if should do 32 or 64bits, but fall
+		# back to cpp test if missing (bug #584858, see also #840662)
+		local b32=true
+		case ${CHOST} in
+			x86_64-*) b32=false;;
+			i*86-*) ;;
+			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
+		esac
+		${b32} &&
+			conf+=( --enable-lib32 --disable-lib64 ) ||
+			conf+=( --disable-lib32 --enable-lib64 )
+
+		# prepare temporary headers install to build against same-version
+		mkdir ../headers || die
+		pushd ../headers >/dev/null || die
+		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
+		popd >/dev/null || die
+
+		append-cppflags "-I${T}/root/include"
+	fi
+
+	econf "${conf[@]}"
+}
+
+src_compile() {
+	use headers-only || emake -C ../headers install
+	emake
+	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
+}
+
+src_install() {
+	default
+
+	mingw-foreach_tool emake DESTDIR="${D}" install
+
+	if ${MW_CROSS}; then
+		# gcc is configured to look at specific hard-coded paths for mingw #419601
+		dosym usr /usr/${CTARGET}/mingw
+		dosym usr /usr/${CTARGET}/${CTARGET}
+		dosym usr/include /usr/${CTARGET}/sys-include
+	fi
+
+	rm -r -- "${ED}"/usr/share || die
+}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/
@ 2024-09-03 12:31 Ionen Wolkens
  0 siblings, 0 replies; 57+ messages in thread
From: Ionen Wolkens @ 2024-09-03 12:31 UTC (permalink / raw
  To: gentoo-commits

commit:     e9e0390581b175904a2ba391cf050a17bc447597
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Sep  3 11:05:35 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Sep  3 11:51:17 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9e03905

dev-util/mingw64-runtime: drop 11.0.1

Kept this version for a while due to an issue when using
gcc-14+runtime-12+perl but "believe" this been resolved
with gcc-14.2.0.

Feel free to file a bug if still need 11.0.1, can be restored
if needed.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-util/mingw64-runtime/Manifest                  |   1 -
 .../mingw64-runtime/mingw64-runtime-11.0.1.ebuild  | 147 ---------------------
 2 files changed, 148 deletions(-)

diff --git a/dev-util/mingw64-runtime/Manifest b/dev-util/mingw64-runtime/Manifest
index 7c9183d52e6f..307eef7d003d 100644
--- a/dev-util/mingw64-runtime/Manifest
+++ b/dev-util/mingw64-runtime/Manifest
@@ -1,2 +1 @@
-DIST mingw-w64-v11.0.1.tar.bz2 10057401 BLAKE2B 3222eed35522bf95a571b11dc52ea23153068b32497676dbb2837306ba52a78e6d1c9c44a4d64d314e64583b54f6fe86dcff3e467e101acf71cebb7d2a963963 SHA512 568702100bbbb11f7f9c9596dd70df3fb2577492459cf55da38691af1504b91127cb5f3eff268850dcbaa461fdc72e4e2379f7a576fd4a0e537ee1fe42531c01
 DIST mingw-w64-v12.0.0.tar.bz2 10474283 BLAKE2B 6500045f7d77f7de01dea0f4e03f3e4ddf6154586c5e3ee9718ee2c7ef1cc83ce3cbd644b6f1dc293ae6e0bfb55a6b68d439622bd1cfdefefc4cc547317f1943 SHA512 949b2bfab8763ab10ec4e9fdfdaf5361517a4ab787fb98ab419b38d02694061c2e821ebbf6e2e4b39d92bdf17419d116daa8e63afd9e01d11592f39df4da69d7

diff --git a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild b/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
deleted file mode 100644
index 15f76259b1af..000000000000
--- a/dev-util/mingw64-runtime/mingw64-runtime-11.0.1.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit crossdev flag-o-matic toolchain-funcs
-
-DESCRIPTION="Free Win64 runtime and import library definitions"
-HOMEPAGE="https://www.mingw-w64.org/"
-SRC_URI="https://downloads.sourceforge.net/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2"
-S=${WORKDIR}/mingw-w64-v${PV}
-
-LICENSE="ZPL BSD BSD-2 ISC LGPL-2+ LGPL-2.1+ MIT public-domain tools? ( GPL-3+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-# default-ucrt: enabling requires to be done during the bootstrap process
-# or else will cause e.g. undefined reference to __intrinsic_setjmpex
-# libraries: needs working stage2 compiler (bug #665512)
-IUSE="default-ucrt headers-only idl libraries tools"
-RESTRICT="strip" # portage would use the wrong strip executable
-
-pkg_setup() {
-	target_is_not_host && MW_CROSS=true || MW_CROSS=false
-	[[ ${CBUILD} == ${CHOST} && ${CTARGET} == ${CHOST} ]] &&
-		die "Invalid configuration, please see: https://wiki.gentoo.org/wiki/Mingw"
-}
-
-mingw-foreach_tool() {
-	use !tools || use headers-only && return
-
-	local tool=widl
-	if use !amd64 && use !x86 && use !arm64 && use !arm; then
-		einfo "Skipping widl due to unsupported platform" #853250
-		tool=
-	fi
-
-	for tool in gendef genidl ${tool}; do
-		# not using top-level --with-tools given it skips widl
-		pushd mingw-w64-tools/${tool} >/dev/null || die
-		"${@}"
-		popd >/dev/null || die
-	done
-}
-
-src_configure() {
-	# native tools, see #644556
-	local toolsconf=()
-	# normally only widl is prefixed, but avoids clash with other targets
-	${MW_CROSS} && toolsconf+=( --program-prefix=${CTARGET}- )
-
-	mingw-foreach_tool econf "${toolsconf[@]}"
-
-	MW_LDFLAGS=${LDFLAGS} # keep non-stripped for gendef not respecting it
-
-	# likely cross-compiling from here, update toolchain variables
-	if ${MW_CROSS} && [[ ! -v MINGW_BYPASS ]]; then
-		unset AR AS CC CPP CXX DLLTOOL LD NM OBJCOPY OBJDUMP RANLIB RC STRIP
-		filter-flags '-fuse-ld=*'
-		filter-flags '-mfunction-return=thunk*' #878849
-	fi
-	local CHOST=${CTARGET}
-
-	# some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then
-	# strip-unsupported-flags miss these during compile-only tests
-	# (primarily done for 23.0 profiles' -z, not full coverage)
-	filter-flags '-Wl,-z,*'
-
-	# -mavx with mingw-gcc has a history of obscure issues and
-	# disabling is seen as safer, e.g. `WINEARCH=win32 winecfg`
-	# crashes with -march=skylake >=wine-8.10, similar issues with
-	# znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273
-	tc-is-gcc && append-flags -mno-avx
-
-	strip-unsupported-flags
-
-	# Normally mingw64 does not use dynamic linker, but at configure time it
-	# uses LDFLAGS. When -Wl,--hash-style=gnu is passed __CTORS_LIST__ /
-	# __DTORS_LIST__ is misdetected for target and binaries crash at shutdown.
-	# Note: typically also stripped by strip-unsupported-flags, but not during
-	# USE=headers-only and potentially other configurations (kept as safety).
-	filter-ldflags '-Wl,--hash-style=*'
-
-	local prefix=${EPREFIX}/usr
-	${MW_CROSS} && prefix+=/${CTARGET}/usr
-
-	local conf=(
-		--prefix="${prefix}"
-		--libdir="${prefix}"/lib
-		$(use_with !headers-only crt)
-		$(usev default-ucrt --with-default-msvcrt=ucrt)
-
-		# By default configure tries to set --sysroot=${prefix}. We disable
-		# this behaviour with --with-sysroot=no to use gcc's sysroot default.
-		# That way we can cross-build mingw64-runtime with cross-emerge.
-		--with-sysroot=no
-	)
-
-	if use !headers-only; then
-		conf+=(
-			$(use_enable idl)
-			$(use_with libraries)
-		)
-
-		# prefer tuple to determine if should do 32 or 64bits, but fall
-		# back to cpp test if missing (bug #584858, see also #840662)
-		local b32=true
-		case ${CHOST} in
-			x86_64-*) b32=false;;
-			i*86-*) ;;
-			*) [[ $($(tc-getCPP) -dM - <<<'') =~ __MINGW64__ ]] && b32=false;;
-		esac
-		${b32} &&
-			conf+=( --enable-lib32 --disable-lib64 ) ||
-			conf+=( --disable-lib32 --enable-lib64 )
-
-		# prepare temporary headers install to build against same-version
-		mkdir ../headers || die
-		pushd ../headers >/dev/null || die
-		ECONF_SOURCE=${S} econf --prefix="${T}"/root --without-crt
-		popd >/dev/null || die
-
-		append-cppflags "-I${T}/root/include"
-	fi
-
-	econf "${conf[@]}"
-}
-
-src_compile() {
-	use headers-only || emake -C ../headers install
-	emake
-	mingw-foreach_tool emake LDFLAGS="${MW_LDFLAGS}"
-}
-
-src_install() {
-	default
-
-	mingw-foreach_tool emake DESTDIR="${D}" install
-
-	if ${MW_CROSS}; then
-		# gcc is configured to look at specific hard-coded paths for mingw #419601
-		dosym usr /usr/${CTARGET}/mingw
-		dosym usr /usr/${CTARGET}/${CTARGET}
-		dosym usr/include /usr/${CTARGET}/sys-include
-	fi
-
-	rm -r -- "${ED}"/usr/share || die
-}


^ permalink raw reply related	[flat|nested] 57+ messages in thread

end of thread, other threads:[~2024-09-03 12:31 UTC | newest]

Thread overview: 57+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-22 17:38 [gentoo-commits] repo/gentoo:master commit in: dev-util/mingw64-runtime/ Ionen Wolkens
  -- strict thread matches above, loose matches on Subject: below --
2024-09-03 12:31 Ionen Wolkens
2024-05-30  6:39 Ionen Wolkens
2024-05-22  3:32 Ionen Wolkens
2024-05-21  3:01 Ionen Wolkens
2024-05-21  3:01 Ionen Wolkens
2024-05-07 14:28 Ionen Wolkens
2024-03-24 18:39 Ionen Wolkens
2024-01-15 17:33 Ionen Wolkens
2023-06-26 10:12 Ionen Wolkens
2023-04-29  9:43 Ionen Wolkens
2022-10-31  0:54 Ionen Wolkens
2022-10-23  7:20 Ionen Wolkens
2022-09-14 23:24 Ionen Wolkens
2022-07-16 17:03 Ionen Wolkens
2022-06-29 17:48 Ionen Wolkens
2022-06-29 17:22 Ionen Wolkens
2022-06-21  2:01 Ionen Wolkens
2022-06-21  2:01 Ionen Wolkens
2022-05-21 18:38 Ionen Wolkens
2022-05-21 18:38 Ionen Wolkens
2022-05-14  2:23 Ionen Wolkens
2022-05-13  2:48 Ionen Wolkens
2022-05-13  2:48 Ionen Wolkens
2022-05-13  2:48 Ionen Wolkens
2022-04-24 21:09 Ionen Wolkens
2022-04-22  8:02 Ionen Wolkens
2022-04-17  2:33 Ionen Wolkens
2022-04-17  2:33 Ionen Wolkens
2022-04-17  2:33 Ionen Wolkens
2022-04-17  2:33 Ionen Wolkens
2021-07-05 22:50 Sergei Trofimovich
2021-04-16 10:25 David Seifert
2020-09-30 18:28 Sergei Trofimovich
2020-09-30 18:28 Sergei Trofimovich
2020-01-12 16:43 Sergei Trofimovich
2020-01-12 16:43 Sergei Trofimovich
2019-09-16 21:18 Sergei Trofimovich
2019-08-13  7:10 Sergei Trofimovich
2018-11-25 15:27 Sergei Trofimovich
2018-10-06 22:59 Sergei Trofimovich
2018-10-06 17:35 Sergei Trofimovich
2018-10-05 22:43 Sergei Trofimovich
2018-09-17 22:05 Alon Bar-Lev
2018-06-15 20:56 Alon Bar-Lev
2018-03-24 21:16 Sergei Trofimovich
2018-03-24 14:34 Sergei Trofimovich
2018-01-07 19:39 Sergei Trofimovich
2017-12-29 11:45 Sergei Trofimovich
2017-05-22  9:46 Alon Bar-Lev
2017-03-29 20:04 Alon Bar-Lev
2017-01-06 18:39 Alon Bar-Lev
2016-11-11 23:39 Alon Bar-Lev
2016-08-07 19:40 Alon Bar-Lev
2016-06-07 19:10 Alon Bar-Lev
2015-08-14  7:50 Alon Bar-Lev
2015-08-14  7:50 Alon Bar-Lev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox