aboutsummaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@college-de-france.fr>2020-10-05 15:52:58 +0200
committerXavier Leroy <xavier.leroy@college-de-france.fr>2020-10-05 15:52:58 +0200
commit26ddb90280b45e92d90eead89edb237f2922824a (patch)
treeff18b31abdbb97133f9708ca085467f25758e507 /configure
parente9c738e3bd156f68905968e25c70ec796d3119c4 (diff)
downloadcompcert-kvx-26ddb90280b45e92d90eead89edb237f2922824a.tar.gz
compcert-kvx-26ddb90280b45e92d90eead89edb237f2922824a.zip
Support Cygwin 64 bits
- Add support for the Win64 ABI to the x86_64 port - Update vararg support to handle Win64 conventions - Configure support for x86_64-cygwin64
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure13
1 files changed, 13 insertions, 0 deletions
diff --git a/configure b/configure
index a71901b8..fcdbe803 100755
--- a/configure
+++ b/configure
@@ -54,6 +54,7 @@ Supported targets:
x86_64-linux (x86 64 bits, Linux)
x86_64-bsd (x86 64 bits, BSD)
x86_64-macosx (x86 64 bits, MacOS X)
+ x86_64-cygwin (x86 64 bits, Cygwin environment under Windows)
rv32-linux (RISC-V 32 bits, Linux)
rv64-linux (RISC-V 64 bits, Linux)
aarch64-linux (AArch64, i.e. ARMv8 in 64-bit mode, Linux)
@@ -387,6 +388,18 @@ if test "$arch" = "x86" -a "$bitsize" = "64"; then
libmath=""
system="macosx"
;;
+ cygwin)
+ abi="standard"
+ casm="${toolprefix}gcc"
+ casm_options="-m64 -c"
+ cc="${toolprefix}gcc -m64"
+ clinker="${toolprefix}gcc"
+ clinker_options="-m64"
+ cprepro="${toolprefix}gcc"
+ cprepro_options="-std=c99 -m64 -U__GNUC__ '-D__attribute__(x)=' -E"
+ libmath="-lm"
+ system="cygwin"
+ ;;
*)
echo "Error: invalid eabi/system '$target' for architecture X86_64." 1>&2
echo "$usage" 1>&2