#!/bin/bash set -e set -x export WINEDEBUG=-all export BASE='C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133' export ONECORELIB="$BASE\lib\onecore\x86" export WINEPATH="$BASE\bin\Hostx86\x86" export INCLUDE="$BASE\include" export UCRT="C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt" export UCRTLIB="C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\ucrt\x86" export UM="C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um" export UMLIB="C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x86" export SHARED="C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared" echo Bootstrapping... export CL="/I\"$BASE\include\" /I\"$UCRT\" /I\"$UM\" /I\"$SHARED\" /link /LIBPATH:\"$UMLIB\" /LIBPATH:\"$ONECORELIB\" /LIBPATH:\"$UCRTLIB\"" export LINK="/LIBPATH:\"$UMLIB\" /LIBPATH:\"$ONECORELIB\" /LIBPATH:\"$UCRTLIB\"" export LIB="/LIBPATH:\"$UMLIB\" /LIBPATH:\"$ONECORELIB\" /LIBPATH:\"$UCRTLIB\"" # https://docs.microsoft.com/en-us/cpp/build/reference/cl-environment-variables?view=msvc-170 # set INCLUDE="$BASE\include";$UCRT;$UM;$SHARED # set LIB= # set LIBPATH=$UMLIB;$ONECORELIB;$UCRTLIB rm -Rf ctor.exe build/ configuration.cc mkdir build export CXX="cl.exe" export CC="cl.exe" export AR="lib.exe" export LD="link.exe" wine cl /nologo /std:c++20 /D_X86_ /EHsc /Isrc /Fo:build/ ctor.cc src/bootstrap.cc /link /out:ctor.exe #sleep 1 wine ctor.exe #sleep 1 wine cl /nologo /std:c++20 /D_X86_ /EHsc /Isrc /Fo:build/ ctor.cc build/libctor.lib /link /subsystem:console /out:ctor.exe #sleep 1 wine ctor.exe configure --ctor-includedir=src --ctor-libdir=build #sleep 1 #exit 0 wine ctor.exe -a test/ctor.cc #sleep 1 wine ctor.exe -v check #sleep 1