From 5367729eef04d16d496434c7a6ab037d635326e0 Mon Sep 17 00:00:00 2001 From: Michael Haubenwallner Date: Tue, 10 Mar 2020 15:28:48 +0100 Subject: [PATCH] profiles: new arch and profile for x64-winnt New profile prefix/windows/winnt/x64, for new ARCH=x64-winnt. This profile is designed for use as Stacked Prefix, set up using prefix-stack-setup (app-portage/prefix-toolkit) from with a Cygwin Prefix (Guest only), having sys-devel/parity installed (wraps MSVC). CHOST is left unset on purpose. It is set by prefix-stack-setup using some --chost=x86_64-msvc16-winnt argument, selecting the Visual Studio version and runtime variant (static|debug) to use. Adding same comments to prefix/windows/winnt/x86 profile as well. Signed-off-by: Michael Haubenwallner --- profiles/arch.list | 1 + profiles/arch/base/make.defaults | 2 +- profiles/embedded/make.defaults | 2 +- profiles/prefix/windows/winnt/x64/eapi | 1 + .../prefix/windows/winnt/x64/make.defaults | 28 +++++++++++++++++++ profiles/prefix/windows/winnt/x64/parent | 1 + .../prefix/windows/winnt/x86/make.defaults | 18 +++++++++++- profiles/profiles.desc | 1 + 8 files changed, 51 insertions(+), 3 deletions(-) create mode 100644 profiles/prefix/windows/winnt/x64/eapi create mode 100644 profiles/prefix/windows/winnt/x64/make.defaults create mode 100644 profiles/prefix/windows/winnt/x64/parent diff --git a/profiles/arch.list b/profiles/arch.list index b9a9c022c007..d44231f28c35 100644 --- a/profiles/arch.list +++ b/profiles/arch.list @@ -29,6 +29,7 @@ sparc-solaris sparc64-solaris x64-solaris x86-solaris +x64-winnt x86-winnt x64-cygwin x86-cygwin diff --git a/profiles/arch/base/make.defaults b/profiles/arch/base/make.defaults index 5dc717cefd49..81f92b89ebe5 100644 --- a/profiles/arch/base/make.defaults +++ b/profiles/arch/base/make.defaults @@ -3,6 +3,6 @@ USE_EXPAND_UNPREFIXED="ARCH" USE_EXPAND_IMPLICIT="ARCH" -USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos riscv s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" +USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos riscv s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x64-winnt x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" PROFILE_ONLY_VARIABLES="${PROFILE_ONLY_VARIABLES} ARCH USE_EXPAND_VALUES_ARCH" diff --git a/profiles/embedded/make.defaults b/profiles/embedded/make.defaults index 601d31cd84a5..c6dc06a3c23b 100644 --- a/profiles/embedded/make.defaults +++ b/profiles/embedded/make.defaults @@ -23,7 +23,7 @@ LINGUAS="en" IUSE_IMPLICIT="prefix prefix-guest prefix-stack" USE_EXPAND_UNPREFIXED="ARCH" USE_EXPAND_IMPLICIT="ARCH ELIBC KERNEL USERLAND" -USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" +USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x64-winnt x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt" USE_EXPAND_VALUES_ELIBC="AIX bionic Cygwin Darwin DragonFly FreeBSD glibc HPUX Interix mingw mintlib musl NetBSD OpenBSD SunOS uclibc Winnt" USE_EXPAND_VALUES_KERNEL="AIX Darwin FreeBSD freemint HPUX linux NetBSD OpenBSD SunOS Winnt" USE_EXPAND_VALUES_USERLAND="BSD GNU" diff --git a/profiles/prefix/windows/winnt/x64/eapi b/profiles/prefix/windows/winnt/x64/eapi new file mode 100644 index 000000000000..7ed6ff82de6b --- /dev/null +++ b/profiles/prefix/windows/winnt/x64/eapi @@ -0,0 +1 @@ +5 diff --git a/profiles/prefix/windows/winnt/x64/make.defaults b/profiles/prefix/windows/winnt/x64/make.defaults new file mode 100644 index 000000000000..1200225e1069 --- /dev/null +++ b/profiles/prefix/windows/winnt/x64/make.defaults @@ -0,0 +1,28 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# This profile is designed for use as Stacked Prefix, set up using +# prefix-stack-setup (app-portage/prefix-toolkit) from with a Cygwin +# Prefix (Guest only), having sys-devel/parity installed (wraps MSVC). +# +# CHOST is left unset on purpose. It is set by prefix-stack-setup +# using some --chost=x86_64-msvc16-winnt argument, selecting the +# Visual Studio version and runtime variant (static|debug) to use. +# +# Sample CHOST values for the runtime variant using x64 Visual Studio 2019, +# as provided by parity-2.0.0 (multithreaded only): +# x86_64-msvc16-winnt dynamic runtime (cl.exe /MD for MSVCRT.DLL) +# x86_64-msvcd16-winnt dynamic debug runtime (cl.exe /MDd for MSVCRTD.DLL) +# x86_64-libcmt16-winnt static runtime (cl.exe /MT for LIBCMT.LIB) +# x86_64-libcmtd16-winnt static debug runtime (cl.exe /MTd for LIBCMTD.LIB) +# + +ARCH="x64-winnt" +ACCEPT_KEYWORDS="~x64-winnt" + +# multilib build stuff, single ABI (no multilib) +MULTILIB_ABIS="amd64" +DEFAULT_ABI="amd64" +ABI="amd64" +IUSE_IMPLICIT="abi_x86_64" +LIBDIR_amd64="lib" diff --git a/profiles/prefix/windows/winnt/x64/parent b/profiles/prefix/windows/winnt/x64/parent new file mode 100644 index 000000000000..f3229c5b9876 --- /dev/null +++ b/profiles/prefix/windows/winnt/x64/parent @@ -0,0 +1 @@ +.. diff --git a/profiles/prefix/windows/winnt/x86/make.defaults b/profiles/prefix/windows/winnt/x86/make.defaults index 3c45b788d160..0c11ef592e9c 100644 --- a/profiles/prefix/windows/winnt/x86/make.defaults +++ b/profiles/prefix/windows/winnt/x86/make.defaults @@ -1,6 +1,22 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2010 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# This profile is designed for use as Stacked Prefix, set up using +# prefix-stack-setup (app-portage/prefix-toolkit) from with a Cygwin +# Prefix (Guest only), having sys-devel/parity installed (wraps MSVC). +# +# CHOST is left unset on purpose. It is set by prefix-stack-setup +# using some --chost=i686-msvc16-winnt argument, selecting the +# Visual Studio version and runtime variant (static|debug) to use. +# +# Sample CHOST values for the runtime variant using x86 Visual Studio 2019, +# as provided by parity-2.0.0 (multithreaded only): +# i686-msvc16-winnt dynamic runtime (cl.exe /MD for MSVCRT.DLL) +# i686-msvcd16-winnt dynamic debug runtime (cl.exe /MDd for MSVCRTD.DLL) +# i686-libcmt16-winnt static runtime (cl.exe /MT for LIBCMT.LIB) +# i686-libcmtd16-winnt static debug runtime (cl.exe /MTd for LIBCMTD.LIB) +# + ARCH="x86-winnt" ACCEPT_KEYWORDS="~x86-winnt" diff --git a/profiles/profiles.desc b/profiles/profiles.desc index 47eebf05283c..8cf15e892e97 100644 --- a/profiles/profiles.desc +++ b/profiles/profiles.desc @@ -323,6 +323,7 @@ ppc-aix prefix/aix/7.2.0.0/ppc exp # Windows Profiles x86-winnt prefix/windows/winnt/x86 exp +x64-winnt prefix/windows/winnt/x64 exp # Cygwin Profiles x86-cygwin prefix/windows/cygwin/x86 exp -- 2.26.2