mstorsjo / llvm-mingw

An LLVM/Clang/LLD based mingw-w64 toolchain
Other
1.92k stars 185 forks source link

Dockerfile build error in build-mingw-w64.sh: _mingw_mac.h is not found #439

Closed pgalkin closed 3 months ago

pgalkin commented 3 months ago

I cannot build an image from Dockerfile, it fails on https://github.com/mstorsjo/llvm-mingw/blob/master/build-mingw-w64.sh#L135. The log is:

...
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _mingw_mac.h... no
configure: error: Please check if the mingw-w64 header set and the build/host option are set properly.

Now, I have to say that I'm building on Windows with Podman, instead of on Linux with Docker, but I suspect (actually I'm sure, it cannot be otherwise, 100% confident) the same error would be on Linux with Docker as well. The problem is that configure cannot locate the headers that have _mingw_mac.h. The headers are at /opt/llvm-mingw/generic-w64-mingw32/include and a symlink to this directory at /opt/llvm-mingw/x86_64-w64-mingw32/include. I don't understand why it cannot see the headers though, we specify --prefix="$PREFIX/$arch-w64-mingw32" and this resolves to /opt/llvm-mingw/x86_64-w64-mingw32.

Another thing I should mention is that on Windows to be able to run the build on Dockerfile it's necessary to:

  1. Clone the repository without substituting LF -> CRLF with git. It's
    [core]
    autocrlf = false

    in ~/.gitconfig. Otherwise the shebang in shellscripts (#!/bin/sh) won't be able to find /bin/sh.

  2. Amend the Dockerfile to copy the shellscrips with executable chmod, otherwise they will be non executable because they come from Windows host. It is this in Dockerfile:
    -COPY build-llvm.sh build-lldb-mi.sh strip-llvm.sh install-wrappers.sh build-mingw-w64.sh build-mingw-w64-tools.sh build-compiler-rt.sh build-libcxx.sh build-mingw-w64-libraries.sh build-openmp.sh ./
    -COPY wrappers/*.sh wrappers/*.c wrappers/*.h ./wrappers/
    +COPY --chmod=755 build-llvm.sh build-lldb-mi.sh strip-llvm.sh install-wrappers.sh build-mingw-w64.sh build-mingw-w64-tools.sh build-compiler-rt.sh build-libcxx.sh build-mingw-w64-libraries.sh build-openmp.sh ./
    +COPY --chmod=755 wrappers/*.sh ./wrappers/
    +COPY wrappers/*.c wrappers/*.h ./wrappers/

Then run

podman build -t llvm-mingw --build-arg TOOLCHAIN_ARCHS=x86_64 .
mstorsjo commented 3 months ago

Now, I have to say that I'm building on Windows with Podman, instead of on Linux with Docker, but I suspect (actually I'm sure, it cannot be otherwise, 100% confident) the same error would be on Linux with Docker as well.

The dockerfiles do build just fine on regular Linux - see https://github.com/mstorsjo/llvm-mingw/actions/runs/9587633837 for the latest run as part of a release.

Then run

podman build -t llvm-mingw --build-arg TOOLCHAIN_ARCHS=x86_64 .

My regular builds don't use the TOOLCHAIN_ARCHS argument, so there's a chance that it does break something. But I just tested, docker build -t llvm-mingw --build-arg TOOLCHAIN_ARCHS=x86_64 . on Linux, and it built successfully.

So it does seem like it is somehow induced by something in your environment, either podman instead of Docker, or some other issue induced by building on Windows.

The problem is that configure cannot locate the headers that have _mingw_mac.h. The headers are at /opt/llvm-mingw/generic-w64-mingw32/include and a symlink to this directory at /opt/llvm-mingw/x86_64-w64-mingw32/include. I don't understand why it cannot see the headers though, we specify --prefix="$PREFIX/$arch-w64-mingw32" and this resolves to /opt/llvm-mingw/x86_64-w64-mingw32.

Can you show the full output from the configure script in build-mingw-w64.sh? There may be more clues there about what's going wrong further up in that output.

If you can store the failed build as an image (with regular Docker, this is usually possible by docker ps -a to find the stopped failed build, then docker commit <id> with the id of the failed build, then docker run --rm -ti <id> with the id of the new image snapshot) you can inspect the contents of mingw-w64/mingw-w64-crt/build-x86_64/config.log which may contain more info about what failed.

You can also try a change like this (untested):

diff --git a/build-mingw-w64.sh b/build-mingw-w64.sh
index 4fdfac1..83f778a 100755
--- a/build-mingw-w64.sh
+++ b/build-mingw-w64.sh
@@ -132,7 +132,7 @@ for arch in $ARCHS; do
         ;;
     esac
     FLAGS="$FLAGS --with-default-msvcrt=$DEFAULT_MSVCRT"
-    ../configure --host=$arch-w64-mingw32 --prefix="$PREFIX/$arch-w64-mingw32" $FLAGS $CFGUARD_FLAGS $CRT_CONFIG_FLAGS
+    ../configure --host=$arch-w64-mingw32 --prefix="$PREFIX/$arch-w64-mingw32" $FLAGS $CFGUARD_FLAGS $CRT_CONFIG_FLAGS || { cat config.log; exit 1; }
     $MAKE -j$CORES
     $MAKE install
     cd ..

This would dump the whole config.log to stdout if it failed, but the file is huge and its hard and unwieldy to find the relevant bits from it.

pgalkin commented 3 months ago
configure.log
root@1fdbba8d8fc4:/build# ./build-mingw-w64.sh /opt/llvm-mingw --with-default-msvcrt=ucrt --enable-cfguard
Cloning into 'mingw-w64'...
remote: Enumerating objects: 81651, done.
remote: Counting objects: 100% (18766/18766), done.
remote: Compressing objects: 100% (3382/3382), done.
remote: Total 81651 (delta 15742), reused 18251 (delta 15296), pack-reused 62885
Receiving objects: 100% (81651/81651), 61.78 MiB | 18.95 MiB/s, done.
Resolving deltas: 100% (64179/64179), done.
Note: switching to '7c9cfe6708cafc83c14a2654308b2db62b126eae'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c 

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 7c9cfe670 headers: Add new symbols in rpcndr.h
checking for a BSD-compatible install... install -C
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a sed that does not truncate output... /usr/bin/sed
checking whether to rebuild headers with widl... no
checking whether to build a w32api package for Cygwin... no
checking for c-runtime headers... yes
checking for optional sdk headers... ddk
checking if installing idl files is enabled... yes
checking default _WIN32_WINNT version... 0x601
checking default msvcrt... ucrt (0xE00)
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating crt/_mingw.h
config.status: creating config.h
gmake  install-am
gmake[1]: Entering directory '/build/mingw-w64/mingw-w64-headers/build'
/usr/bin/sed s/MINGW_HAS_DDK$/1/ ../crt/sdks/_mingw_ddk.h.in > _mingw_ddk.h
gmake[2]: Entering directory '/build/mingw-w64/mingw-w64-headers/build'
gmake[2]: Nothing to be done for 'install-exec-am'.
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../crt/_bsd_types.h ../crt/_cygwin.h crt/_mingw.h ../crt/_mingw_mac.h ../crt/_mingw_secapi.h ../crt/_mingw_unicode.h ../crt/_timeval.h ../crt/crtdefs.h ../crt/corecrt.h ../crt/excpt.h ../crt/intrin.h ../crt/vadefs.h ../crt/tchar.h ../include/_dbdao.h ../include/_mingw_dxhelper.h ../include/accctrl.h ../include/aclapi.h ../include/aclui.h ../include/activation.h ../include/activaut.h ../include/activdbg.h ../include/activdbg100.h ../include/activecf.h ../include/activeds.h ../include/activprof.h ../include/activscp.h ../include/adc.h ../include/adhoc.h ../include/admex.h ../include/adoctint.h ../include/adodef.h ../include/adogpool.h ../include/adogpool_backcompat.h ../include/adoguids.h ../include/adoid.h ../include/adoint.h ../include/adoint_backcompat.h ../include/adojet.h ../include/adomd.h ../include/adptif.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/adsdb.h ../include/adserr.h ../include/adshlp.h ../include/adsiid.h ../include/adsnms.h ../include/adsprop.h ../include/adssts.h ../include/adtgen.h ../include/advpub.h ../include/af_irda.h ../include/afunix.h ../include/afxres.h ../include/agtctl.h ../include/agterr.h ../include/agtsvr.h ../include/alg.h ../include/alink.h ../include/amaudio.h ../include/amstream.h ../include/amvideo.h ../include/apdevpkey.h ../include/apiset.h ../include/apisetcconv.h ../include/appmgmt.h ../include/appmodel.h ../include/aqadmtyp.h ../include/asptlb.h ../include/asyncinfo.h ../include/atacct.h ../include/atalkwsh.h ../include/atsmedia.h ../include/audevcod.h ../include/audioapotypes.h ../include/audioclient.h ../include/audioendpoints.h ../include/audioengineendpoint.h ../include/audiopolicy.h ../include/audiosessiontypes.h ../include/austream.h ../include/authif.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/authz.h ../include/aux_ulib.h ../include/avifmt.h ../include/aviriff.h ../include/avrfsdk.h ../include/avrt.h ../include/axextendenums.h ../include/azroles.h ../include/basetsd.h ../include/basetyps.h ../include/batclass.h ../include/bcrypt.h ../include/bdaiface.h ../include/bdaiface_enums.h ../include/bdamedia.h ../include/bdatypes.h ../include/bemapiset.h ../include/bh.h ../include/bidispl.h ../include/bits.h ../include/bits1_5.h ../include/bits2_0.h ../include/bits2_5.h ../include/bits3_0.h ../include/bits5_0.h ../include/bitscfg.h ../include/bitsmsg.h ../include/blberr.h ../include/bluetoothapis.h ../include/bluetoothleapis.h ../include/bthdef.h ../include/bthledef.h ../include/bthsdpdef.h ../include/bugcodes.h ../include/callobj.h ../include/cardmod.h ../include/casetup.h ../include/cchannel.h ../include/cderr.h ../include/cdoex.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/cdoexerr.h ../include/cdoexm.h ../include/cdoexstr.h ../include/cdonts.h ../include/cdosys.h ../include/cdosyserr.h ../include/cdosysstr.h ../include/celib.h ../include/certadm.h ../include/certbase.h ../include/certbcli.h ../include/certcli.h ../include/certenc.h ../include/certenroll.h ../include/certexit.h ../include/certif.h ../include/certmod.h ../include/certpol.h ../include/certreqd.h ../include/certsrv.h ../include/certview.h ../include/cfg.h ../include/cfgmgr32.h ../include/cguid.h ../include/chanmgr.h ../include/cierror.h ../include/clfs.h ../include/clfsmgmt.h ../include/clfsmgmtw32.h ../include/clfsw32.h ../include/cluadmex.h ../include/clusapi.h ../include/cluscfgguids.h ../include/cluscfgserver.h ../include/cluscfgwizard.h ../include/cmdtree.h ../include/cmnquery.h ../include/codecapi.h ../include/colordlg.h ../include/comadmin.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/combaseapi.h ../include/comcat.h ../include/comdef.h ../include/comdefsp.h ../include/comip.h ../include/comlite.h ../include/commapi.h ../include/commctrl.h ../include/commdlg.h ../include/commoncontrols.h ../include/compobj.h ../include/compressapi.h ../include/compstui.h ../include/computecore.h ../include/computedefs.h ../include/computenetwork.h ../include/computestorage.h ../include/comsvcs.h ../include/comutil.h ../include/concurrencysal.h ../include/confpriv.h ../include/control.h ../include/cor.h ../include/corerror.h ../include/corhdr.h ../include/correg.h ../include/cpl.h ../include/cplext.h ../include/credentialprovider.h ../include/credssp.h ../include/cryptuiapi.h ../include/cryptxml.h ../include/cscapi.h ../include/cscobj.h ../include/ctfutb.h ../include/ctxtcall.h ../include/custcntl.h ../include/d2d1.h ../include/d2d1_1.h ../include/d2d1_1helper.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/d2d1_2.h ../include/d2d1_2helper.h ../include/d2d1_3.h ../include/d2d1_3helper.h ../include/d2d1effectauthor.h ../include/d2d1effecthelpers.h ../include/d2d1effects.h ../include/d2d1effects_1.h ../include/d2d1effects_2.h ../include/d2d1helper.h ../include/d2d1svg.h ../include/d2dbasetypes.h ../include/d2derr.h ../include/d3d.h ../include/d3d10.h ../include/d3d10_1.h ../include/d3d10_1shader.h ../include/d3d10effect.h ../include/d3d10misc.h ../include/d3d10sdklayers.h ../include/d3d10shader.h ../include/d3d11.h ../include/d3d11_1.h ../include/d3d11_2.h ../include/d3d11_3.h ../include/d3d11_4.h ../include/d3d11on12.h ../include/d3d11sdklayers.h ../include/d3d11shader.h ../include/d3d12.h ../include/d3d12sdklayers.h ../include/d3d12shader.h ../include/d3d12video.h ../include/d3d8.h ../include/d3d8caps.h ../include/d3d8types.h ../include/d3d9.h ../include/d3d9caps.h ../include/d3d9types.h ../include/d3dcaps.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/d3dcommon.h ../include/d3dcompiler.h ../include/d3dhal.h ../include/d3drm.h ../include/d3drmdef.h ../include/d3drmobj.h ../include/d3dtypes.h ../include/d3dx9.h ../include/d3dx9anim.h ../include/d3dx9core.h ../include/d3dx9effect.h ../include/d3dx9math.h ../include/d3dx9mesh.h ../include/d3dx9shader.h ../include/d3dx9shape.h ../include/d3dx9tex.h ../include/d3dx9xof.h ../include/daogetrw.h ../include/datapath.h ../include/datetimeapi.h ../include/davclnt.h ../include/dbdaoerr.h ../include/dbdaoid.h ../include/dbdaoint.h ../include/dbgautoattach.h ../include/dbgeng.h ../include/dbghelp.h ../include/dbgprop.h ../include/dbt.h ../include/dciddi.h ../include/dciman.h ../include/dcommon.h ../include/dcomp.h ../include/dcompanimation.h ../include/dcomptypes.h ../include/dde.h ../include/ddeml.h ../include/ddraw.h ../include/ddrawgdi.h ../include/ddrawi.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/ddstream.h ../include/debugapi.h ../include/delayimp.h ../include/delayloadhandler.h ../include/devguid.h ../include/devicetopology.h ../include/devioctl.h ../include/devpkey.h ../include/devpropdef.h ../include/dhcpcsdk.h ../include/dhcpsapi.h ../include/dhcpssdk.h ../include/dhcpv6csdk.h ../include/dhtmldid.h ../include/dhtmled.h ../include/dhtmliid.h ../include/digitalv.h ../include/dimm.h ../include/dinput.h ../include/dinputd.h ../include/directmanipulation.h ../include/directxmath.h ../include/diskguid.h ../include/dismapi.h ../include/dispatch.h ../include/dispatcherqueue.h ../include/dispdib.h ../include/dispex.h ../include/dlcapi.h ../include/dlgs.h ../include/dls1.h ../include/dls2.h ../include/dmdls.h ../include/dmemmgr.h ../include/dmerror.h ../include/dmksctrl.h ../include/dmo.h ../include/dmodshow.h ../include/dmoreg.h ../include/dmort.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/dmplugin.h ../include/dmusbuff.h ../include/dmusicc.h ../include/dmusicf.h ../include/dmusici.h ../include/dmusics.h ../include/docobj.h ../include/docobjectservice.h ../include/documenttarget.h ../include/domdid.h ../include/dontuse.h ../include/downloadmgr.h ../include/dpaddr.h ../include/dpapi.h ../include/dpfilter.h ../include/dplay.h ../include/dplay8.h ../include/dplobby.h ../include/dplobby8.h ../include/dpnathlp.h ../include/driverspecs.h ../include/drmexternals.h ../include/dsadmin.h ../include/dsclient.h ../include/dsconf.h ../include/dsdriver.h ../include/dsgetdc.h ../include/dshow.h ../include/dskquota.h ../include/dsound.h ../include/dsquery.h ../include/dsrole.h ../include/dssec.h ../include/dtchelp.h ../include/dvbsiparser.h ../include/dvdevcod.h ../include/dvdif.h ../include/dvdmedia.h ../include/dvobj.h ../include/dwmapi.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/dwrite.h ../include/dwrite_1.h ../include/dwrite_2.h ../include/dwrite_3.h ../include/dxcapi.h ../include/dxdiag.h ../include/dxerr8.h ../include/dxerr9.h ../include/dxfile.h ../include/dxgi.h ../include/dxgi1_2.h ../include/dxgi1_3.h ../include/dxgi1_4.h ../include/dxgi1_5.h ../include/dxgi1_6.h ../include/dxgicommon.h ../include/dxgidebug.h ../include/dxgiformat.h ../include/dxgitype.h ../include/dxtmpl.h ../include/dxva.h ../include/dxva2api.h ../include/dxvahd.h ../include/eapauthenticatoractiondefine.h ../include/eapauthenticatortypes.h ../include/eaphosterror.h ../include/eaphostpeerconfigapis.h ../include/eaphostpeertypes.h ../include/eapmethodauthenticatorapis.h ../include/eapmethodpeerapis.h ../include/eapmethodtypes.h ../include/eappapis.h ../include/eaptypes.h ../include/edevdefs.h ../include/ehstorapi.h ../include/elscore.h ../include/elssrvc.h ../include/emostore.h ../include/emptyvc.h ../include/endpointvolume.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/errhandlingapi.h ../include/error.h ../include/errorrep.h ../include/errors.h ../include/esent.h ../include/evcode.h ../include/evcoll.h ../include/eventsys.h ../include/eventtoken.h ../include/evntcons.h ../include/evntprov.h ../include/evntrace.h ../include/evr.h ../include/evr9.h ../include/exchform.h ../include/exdisp.h ../include/exdispid.h ../include/expandedresources.h ../include/fci.h ../include/fdi.h ../include/fibersapi.h ../include/fileapi.h ../include/fileextd.h ../include/filehc.h ../include/filter.h ../include/filterr.h ../include/fltdefs.h ../include/fltuser.h ../include/fltuserstructures.h ../include/fltwinerror.h ../include/fontsub.h ../include/fsrm.h ../include/fsrmenums.h ../include/fsrmerr.h ../include/fsrmpipeline.h ../include/fsrmquota.h ../include/fsrmreports.h ../include/fsrmscreen.h ../include/ftsiface.h ../include/functiondiscoveryapi.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/functiondiscoverycategories.h ../include/functiondiscoveryconstraints.h ../include/functiondiscoverykeys.h ../include/functiondiscoverykeys_devpkey.h ../include/functiondiscoverynotification.h ../include/fusion.h ../include/fwpmtypes.h ../include/fwpmu.h ../include/fwptypes.h ../include/gb18030.h ../include/gdiplus.h ../include/gpedit.h ../include/gpio.h ../include/gpmgmt.h ../include/guiddef.h ../include/h323priv.h ../include/handleapi.h ../include/heapapi.h ../include/hidclass.h ../include/hidpi.h ../include/hidsdi.h ../include/hidusage.h ../include/highlevelmonitorconfigurationapi.h ../include/hlguids.h ../include/hliface.h ../include/hlink.h ../include/hostinfo.h ../include/hstring.h ../include/htiface.h ../include/htiframe.h ../include/htmlguid.h ../include/htmlhelp.h ../include/http.h ../include/httpext.h ../include/httpfilt.h ../include/httprequestid.h ../include/hvsocket.h ../include/i_cryptasn1tls.h ../include/ia64reg.h ../include/iaccess.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/iadmext.h ../include/iadmw.h ../include/iads.h ../include/icftypes.h ../include/icm.h ../include/icmpapi.h ../include/icodecapi.h ../include/icrsint.h ../include/identitycommon.h ../include/identitystore.h ../include/idf.h ../include/idispids.h ../include/iedial.h ../include/ieverp.h ../include/ifdef.h ../include/iiis.h ../include/iiisext.h ../include/iimgctx.h ../include/iiscnfg.h ../include/iisrsta.h ../include/iketypes.h ../include/imagehlp.h ../include/ime.h ../include/imessage.h ../include/imm.h ../include/in6addr.h ../include/inaddr.h ../include/indexsrv.h ../include/inetreg.h ../include/inetsdk.h ../include/infstr.h ../include/initguid.h ../include/initoid.h ../include/inputpaneinterop.h ../include/inputscope.h ../include/inspectable.h ../include/interlockedapi.h ../include/intsafe.h ../include/intshcut.h ../include/invkprxy.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/ioapiset.h ../include/ioevent.h ../include/ioringapi.h ../include/ipexport.h ../include/iphlpapi.h ../include/ipifcons.h ../include/ipinfoid.h ../include/ipmib.h ../include/ipmsp.h ../include/iprtrmib.h ../include/ipsectypes.h ../include/iptypes.h ../include/ipxconst.h ../include/ipxrip.h ../include/ipxrtdef.h ../include/ipxsap.h ../include/ipxtfflt.h ../include/iscsidsc.h ../include/isguids.h ../include/issper16.h ../include/issperr.h ../include/isysmon.h ../include/ivectorchangedeventargs.h ../include/iwamreg.h ../include/jobapi.h ../include/joystickapi.h ../include/kcom.h ../include/knownfolders.h ../include/ks.h ../include/ksdebug.h ../include/ksguid.h ../include/ksmedia.h ../include/ksproxy.h ../include/ksuuids.h ../include/ktmtypes.h ../include/ktmw32.h ../include/kxia64.h ../include/l2cmn.h ../include/libloaderapi.h ../include/libloaderapi2.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/lm.h ../include/lmaccess.h ../include/lmalert.h ../include/lmapibuf.h ../include/lmat.h ../include/lmaudit.h ../include/lmconfig.h ../include/lmcons.h ../include/lmdfs.h ../include/lmerr.h ../include/lmerrlog.h ../include/lmjoin.h ../include/lmmsg.h ../include/lmon.h ../include/lmremutl.h ../include/lmrepl.h ../include/lmserver.h ../include/lmshare.h ../include/lmsname.h ../include/lmstats.h ../include/lmsvc.h ../include/lmuse.h ../include/lmuseflg.h ../include/lmwksta.h ../include/loadperf.h ../include/locationapi.h ../include/lowlevelmonitorconfigurationapi.h ../include/lpmapi.h ../include/lzexpand.h ../include/madcapcl.h ../include/magnification.h ../include/mailmsgprops.h ../include/manipulations.h ../include/mapi.h ../include/mapiaux.h ../include/mapicode.h ../include/mapidbg.h ../include/mapidefs.h ../include/mapiform.h ../include/mapiguid.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/mapihook.h ../include/mapinls.h ../include/mapioid.h ../include/mapispi.h ../include/mapitags.h ../include/mapiutil.h ../include/mapival.h ../include/mapiwin.h ../include/mapiwz.h ../include/mapix.h ../include/mciapi.h ../include/mciavi.h ../include/mcx.h ../include/mdcommsg.h ../include/mddefw.h ../include/mdhcp.h ../include/mdmsg.h ../include/mediaerr.h ../include/mediaobj.h ../include/medparam.h ../include/memoryapi.h ../include/mergemod.h ../include/mfapi.h ../include/mfcaptureengine.h ../include/mfd3d12.h ../include/mferror.h ../include/mfidl.h ../include/mfmediacapture.h ../include/mfmediaengine.h ../include/mfmp2dlna.h ../include/mfobjects.h ../include/mfplay.h ../include/mfreadwrite.h ../include/mftransform.h ../include/mgm.h ../include/mgmtapi.h ../include/mi.h ../include/midles.h ../include/mimedisp.h ../include/mimeinfo.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/minappmodel.h ../include/minmax.h ../include/minwinbase.h ../include/minwindef.h ../include/mlang.h ../include/mmc.h ../include/mmcobj.h ../include/mmddk.h ../include/mmdeviceapi.h ../include/mmeapi.h ../include/mmiscapi.h ../include/mmiscapi2.h ../include/mmreg.h ../include/mmstream.h ../include/mmsyscom.h ../include/mmsystem.h ../include/mobsync.h ../include/moniker.h ../include/mpeg2bits.h ../include/mpeg2data.h ../include/mpeg2psiparser.h ../include/mpeg2structs.h ../include/mprapi.h ../include/mprerror.h ../include/mq.h ../include/mqmail.h ../include/mqoai.h ../include/msacm.h ../include/msacmdlg.h ../include/msado15.h ../include/msasn1.h ../include/msber.h ../include/mscat.h ../include/mschapp.h ../include/msclus.h ../include/mscoree.h ../include/msctf.h ../include/msctfmonitorapi.h ../include/msdadc.h ../include/msdaguid.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/msdaipp.h ../include/msdaipper.h ../include/msdaora.h ../include/msdaosp.h ../include/msdasc.h ../include/msdasql.h ../include/msdatsrc.h ../include/msdrm.h ../include/msdrmdefs.h ../include/msdshape.h ../include/msfs.h ../include/mshtmcid.h ../include/mshtmdid.h ../include/mshtmhst.h ../include/mshtml.h ../include/mshtmlc.h ../include/msi.h ../include/msidefs.h ../include/msimcntl.h ../include/msimcsdk.h ../include/msinkaut.h ../include/msiquery.h ../include/msoav.h ../include/msoledbsql.h ../include/msopc.h ../include/msp.h ../include/mspab.h ../include/mspaddr.h ../include/mspbase.h ../include/mspcall.h ../include/mspcoll.h ../include/mspenum.h ../include/msplog.h ../include/mspst.h ../include/mspstrm.h ../include/mspterm.h ../include/mspthrd.h ../include/msptrmac.h ../include/msptrmar.h ../include/msptrmvc.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/msputils.h ../include/msrdc.h ../include/msremote.h ../include/mssip.h ../include/msstkppg.h ../include/mstask.h ../include/mstcpip.h ../include/msterr.h ../include/mswsock.h ../include/msxml.h ../include/msxml2.h ../include/msxml2did.h ../include/msxml6.h ../include/msxml6did.h ../include/msxmldid.h ../include/mtsadmin.h ../include/mtsevents.h ../include/mtsgrp.h ../include/mtx.h ../include/mtxadmin.h ../include/mtxattr.h ../include/mtxdm.h ../include/muiload.h ../include/multimon.h ../include/multinfo.h ../include/mxdc.h ../include/namedpipeapi.h ../include/namespaceapi.h ../include/napcertrelyingparty.h ../include/napcommon.h ../include/napenforcementclient.h ../include/napmanagement.h ../include/napmicrosoftvendorids.h ../include/napprotocol.h ../include/napservermanagement.h ../include/napsystemhealthagent.h ../include/napsystemhealthvalidator.h ../include/naptypes.h ../include/naputil.h ../include/nb30.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/ncrypt.h ../include/ndattrib.h ../include/ndfapi.h ../include/ndhelper.h ../include/ndkinfo.h ../include/ndr64types.h ../include/ndrtypes.h ../include/netcfgn.h ../include/netcfgx.h ../include/netcon.h ../include/neterr.h ../include/netevent.h ../include/netfw.h ../include/netioapi.h ../include/netlistmgr.h ../include/netmon.h ../include/netprov.h ../include/nettypes.h ../include/newapis.h ../include/newdev.h ../include/nldef.h ../include/nmsupp.h ../include/npapi.h ../include/nsemail.h ../include/nserror.h ../include/nspapi.h ../include/ntdd1394.h ../include/ntdd8042.h ../include/ntddbeep.h ../include/ntddcdrm.h ../include/ntddcdvd.h ../include/ntddchgr.h ../include/ntdddisk.h ../include/ntddft.h ../include/ntddkbd.h ../include/ntddmmc.h ../include/ntddmodm.h ../include/ntddmou.h ../include/ntddndis.h ../include/ntddpar.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/ntddpsch.h ../include/ntddscsi.h ../include/ntddser.h ../include/ntddstor.h ../include/ntddtape.h ../include/ntddtdi.h ../include/ntddvdeo.h ../include/ntddvol.h ../include/ntdef.h ../include/ntdsapi.h ../include/ntdsbcli.h ../include/ntdsbmsg.h ../include/ntgdi.h ../include/ntiologc.h ../include/ntioring_x.h ../include/ntldap.h ../include/ntmsapi.h ../include/ntmsmli.h ../include/ntquery.h ../include/ntsdexts.h ../include/ntsecapi.h ../include/ntsecpkg.h ../include/ntstatus.h ../include/ntverp.h ../include/nvme.h ../include/oaidl.h ../include/objbase.h ../include/objectarray.h ../include/objerror.h ../include/objidl.h ../include/objidlbase.h ../include/objsafe.h ../include/objsel.h ../include/ocidl.h ../include/ocmm.h ../include/odbcinst.h ../include/odbcss.h ../include/ole.h ../include/ole2.h ../include/ole2ver.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/oleacc.h ../include/oleauto.h ../include/olectl.h ../include/olectlid.h ../include/oledb.h ../include/oledbdep.h ../include/oledberr.h ../include/oledbguid.h ../include/oledlg.h ../include/oleidl.h ../include/oletx2xa.h ../include/opmapi.h ../include/optary.h ../include/p2p.h ../include/packoff.h ../include/packon.h ../include/parser.h ../include/patchapi.h ../include/patchwiz.h ../include/pathcch.h ../include/pbt.h ../include/pchannel.h ../include/pciprop.h ../include/pcrt32.h ../include/pdh.h ../include/pdhmsg.h ../include/penwin.h ../include/perflib.h ../include/perhist.h ../include/persist.h ../include/pgobootrun.h ../include/physicalmonitorenumerationapi.h ../include/pla.h ../include/playsoundapi.h ../include/pnrpdef.h ../include/pnrpns.h ../include/poclass.h ../include/polarity.h ../include/poppack.h ../include/portabledevice.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/portabledeviceapi.h ../include/portabledeviceconnectapi.h ../include/portabledevicetypes.h ../include/powerbase.h ../include/powersetting.h ../include/powrprof.h ../include/prnasnot.h ../include/prntfont.h ../include/prntvpt.h ../include/processenv.h ../include/processsnapshot.h ../include/processthreadsapi.h ../include/processtopologyapi.h ../include/profileapi.h ../include/profinfo.h ../include/proofofpossessioncookieinfo.h ../include/propidl.h ../include/propkey.h ../include/propkeydef.h ../include/propsys.h ../include/propvarutil.h ../include/prsht.h ../include/psapi.h ../include/pshpack1.h ../include/pshpack2.h ../include/pshpack4.h ../include/pshpack8.h ../include/pshpck16.h ../include/pstore.h ../include/qedit.h ../include/qmgr.h ../include/qnetwork.h ../include/qos.h ../include/qos2.h ../include/qosname.h ../include/qospol.h ../include/qossp.h ../include/ras.h ../include/rasdlg.h ../include/raseapif.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/raserror.h ../include/rassapi.h ../include/rasshost.h ../include/ratings.h ../include/rdpencomapi.h ../include/realtimeapiset.h ../include/reason.h ../include/recguids.h ../include/reconcil.h ../include/regbag.h ../include/regstr.h ../include/relogger.h ../include/rend.h ../include/resapi.h ../include/restartmanager.h ../include/richedit.h ../include/richole.h ../include/rkeysvcc.h ../include/rnderr.h ../include/roapi.h ../include/robuffer.h ../include/routprot.h ../include/rpc.h ../include/rpcasync.h ../include/rpcdce.h ../include/rpcdcep.h ../include/rpcndr.h ../include/rpcnsi.h ../include/rpcnsip.h ../include/rpcnterr.h ../include/rpcproxy.h ../include/rpcsal.h ../include/rpcssl.h ../include/rrascfg.h ../include/rtcapi.h ../include/rtccore.h ../include/rtcerr.h ../include/rtinfo.h ../include/rtm.h ../include/rtmv2.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/rtutils.h ../include/rtworkq.h ../include/sal.h ../include/sapi.h ../include/sapi51.h ../include/sapi53.h ../include/sapi54.h ../include/sas.h ../include/sbe.h ../include/scarddat.h ../include/scarderr.h ../include/scardmgr.h ../include/scardsrv.h ../include/scardssp.h ../include/scesvc.h ../include/schannel.h ../include/schedule.h ../include/schemadef.h ../include/schnlsp.h ../include/scode.h ../include/scrnsave.h ../include/scrptids.h ../include/sddl.h ../include/sdkddkver.h ../include/sdoias.h ../include/sdpblb.h ../include/sdperr.h ../include/secext.h ../include/security.h ../include/securityappcontainer.h ../include/securitybaseapi.h ../include/sens.h ../include/sensapi.h ../include/sensevts.h ../include/sensors.h ../include/sensorsapi.h ../include/servprov.h ../include/setupapi.h ../include/sfc.h ../include/shappmgr.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/shcore.h ../include/shdeprecated.h ../include/shdispid.h ../include/shellapi.h ../include/shellscalingapi.h ../include/sherrors.h ../include/shfolder.h ../include/shldisp.h ../include/shlguid.h ../include/shlobj.h ../include/shlwapi.h ../include/shobjidl.h ../include/shtypes.h ../include/simpdata.h ../include/simpdc.h ../include/sipbase.h ../include/sisbkup.h ../include/slerror.h ../include/slpublic.h ../include/smpab.h ../include/smpms.h ../include/smpxp.h ../include/smtpguid.h ../include/smx.h ../include/snmp.h ../include/softpub.h ../include/spatialaudioclient.h ../include/spatialaudiometadata.h ../include/specstrings.h ../include/spellcheck.h ../include/sperror.h ../include/sphelper.h ../include/sporder.h ../include/sql.h ../include/sql_1.h ../include/sqlext.h ../include/sqloledb.h ../include/sqltypes.h ../include/sqlucode.h ../include/srrestoreptapi.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/srv.h ../include/sspguid.h ../include/sspi.h ../include/sspserr.h ../include/sspsidl.h ../include/sti.h ../include/stierr.h ../include/stireg.h ../include/stllock.h ../include/stm.h ../include/storage.h ../include/storduid.h ../include/storprop.h ../include/stralign.h ../include/stringapiset.h ../include/strmif.h ../include/strsafe.h ../include/structuredquerycondition.h ../include/subauth.h ../include/subsmgr.h ../include/svcguid.h ../include/svrapi.h ../include/synchapi.h ../include/sysinfoapi.h ../include/systemmediatransportcontrolsinterop.h ../include/systemtopologyapi.h ../include/t2embapi.h ../include/tabflicks.h ../include/tapi.h ../include/tapi3.h ../include/tapi3cc.h ../include/tapi3ds.h ../include/tapi3err.h ../include/tapi3if.h ../include/taskschd.h ../include/tbs.h ../include/tcerror.h ../include/tcguid.h ../include/tcpestats.h ../include/tcpmib.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/tcpxcv.h ../include/tdh.h ../include/tdi.h ../include/tdiinfo.h ../include/termmgr.h ../include/textserv.h ../include/textstor.h ../include/threadpoolapiset.h ../include/threadpoollegacyapiset.h ../include/thumbcache.h ../include/timeapi.h ../include/timeprov.h ../include/timezoneapi.h ../include/tlbref.h ../include/tlhelp32.h ../include/tlogstg.h ../include/tmschema.h ../include/tnef.h ../include/tom.h ../include/tpcshrd.h ../include/traffic.h ../include/transact.h ../include/triedcid.h ../include/triediid.h ../include/triedit.h ../include/tsattrs.h ../include/tspi.h ../include/tssbx.h ../include/tsuserex.h ../include/tsvirtualchannels.h ../include/tuner.h ../include/tvout.h ../include/txcoord.h ../include/txctx.h ../include/txdtc.h ../include/txfw32.h ../include/typeinfo.h ../include/uastrfnc.h ../include/udpmib.h ../include/uianimation.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/uiautomation.h ../include/uiautomationclient.h ../include/uiautomationcore.h ../include/uiautomationcoreapi.h ../include/uiviewsettingsinterop.h ../include/umx.h ../include/unknown.h ../include/unknwn.h ../include/unknwnbase.h ../include/urlhist.h ../include/urlmon.h ../include/usb.h ../include/usb100.h ../include/usb200.h ../include/usbcamdi.h ../include/usbdi.h ../include/usbioctl.h ../include/usbiodef.h ../include/usbprint.h ../include/usbrpmif.h ../include/usbscan.h ../include/usbspec.h ../include/usbuser.h ../include/userenv.h ../include/usp10.h ../include/utilapiset.h ../include/uuids.h ../include/uxtheme.h ../include/vcr.h ../include/vdmdbg.h ../include/vds.h ../include/vdslun.h ../include/versionhelpers.h ../include/vfw.h ../include/vfwmsgs.h ../include/vidcap.h ../include/virtdisk.h ../include/vmr9.h ../include/vsadmin.h ../include/vsanimation.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/vsbackup.h ../include/vsmgmt.h ../include/vsprov.h ../include/vss.h ../include/vsserror.h ../include/vsstyle.h ../include/vssym32.h ../include/vswriter.h ../include/w32api.h ../include/wab.h ../include/wabapi.h ../include/wabcode.h ../include/wabdefs.h ../include/wabiab.h ../include/wabmem.h ../include/wabnot.h ../include/wabtags.h ../include/wabutil.h ../include/wbemads.h ../include/wbemcli.h ../include/wbemdisp.h ../include/wbemidl.h ../include/wbemprov.h ../include/wbemtran.h ../include/wcmconfig.h ../include/wcsplugin.h ../include/wct.h ../include/wdsbp.h ../include/wdsclientapi.h ../include/wdspxe.h ../include/wdstci.h ../include/wdstpdi.h ../include/wdstptmgmt.h ../include/webauthn.h ../include/werapi.h ../include/wfext.h ../include/wia.h ../include/wiadef.h ../include/wiadevd.h ../include/wiavideo.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/winable.h ../include/winapifamily.h ../include/winbase.h ../include/winber.h ../include/wincodec.h ../include/wincodecsdk.h ../include/wincon.h ../include/wincred.h ../include/wincrypt.h ../include/winddi.h ../include/winddiui.h ../include/windef.h ../include/windns.h ../include/windot11.h ../include/windows.applicationmodel.core.h ../include/windows.applicationmodel.h ../include/windows.devices.bluetooth.h ../include/windows.devices.enumeration.h ../include/windows.devices.geolocation.h ../include/windows.devices.haptics.h ../include/windows.devices.power.h ../include/windows.devices.radios.h ../include/windows.devices.usb.h ../include/windows.foundation.collections.h ../include/windows.foundation.h ../include/windows.foundation.metadata.h ../include/windows.foundation.numerics.h ../include/windows.gaming.input.custom.h ../include/windows.gaming.input.forcefeedback.h ../include/windows.gaming.input.h ../include/windows.gaming.ui.h ../include/windows.globalization.h ../include/windows.graphics.capture.h ../include/windows.graphics.capture.interop.h ../include/windows.graphics.directx.direct3d11.h ../include/windows.graphics.directx.h ../include/windows.graphics.effects.h ../include/windows.graphics.holographic.h ../include/windows.graphics.imaging.h ../include/windows.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/windows.management.deployment.h ../include/windows.media.capture.h ../include/windows.media.closedcaptioning.h ../include/windows.media.devices.h ../include/windows.media.effects.h ../include/windows.media.faceanalysis.h ../include/windows.media.h ../include/windows.media.render.h ../include/windows.media.speechrecognition.h ../include/windows.media.speechsynthesis.h ../include/windows.networking.connectivity.h ../include/windows.networking.h ../include/windows.perception.spatial.h ../include/windows.perception.spatial.surfaces.h ../include/windows.security.authentication.onlineid.h ../include/windows.security.credentials.h ../include/windows.security.credentials.ui.h ../include/windows.security.cryptography.h ../include/windows.security.exchangeactivesyncprovisioning.h ../include/windows.security.isolation.h ../include/windows.storage.fileproperties.h ../include/windows.storage.h ../include/windows.storage.search.h ../include/windows.storage.streams.h ../include/windows.system.h ../include/windows.system.power.h ../include/windows.system.profile.h ../include/windows.system.profile.systemmanufacturers.h ../include/windows.system.threading.h ../include/windows.system.userprofile.h ../include/windows.ui.composition.h ../include/windows.ui.composition.interop.h ../include/windows.ui.core.h ../include/windows.ui.h ../include/windows.ui.viewmanagement.h ../include/windows.ui.xaml.hosting.desktopwindowxamlsource.h ../include/windowscontracts.h ../include/windowsnumerics.h ../include/windowsnumerics.impl.h ../include/windowsx.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/winefs.h ../include/winerror.h ../include/winevt.h ../include/wingdi.h ../include/winhttp.h ../include/winhvemulation.h ../include/winhvplatform.h ../include/winhvplatformdefs.h ../include/wininet.h ../include/winineti.h ../include/winioctl.h ../include/winldap.h ../include/winnetwk.h ../include/winnls.h ../include/winnls32.h ../include/winnt.h ../include/winperf.h ../include/winreg.h ../include/winres.h ../include/winresrc.h ../include/winsafer.h ../include/winsatcominterfacei.h ../include/winscard.h ../include/winsdkver.h ../include/winsmcrd.h ../include/winsnmp.h ../include/winsock.h ../include/winsock2.h ../include/winsplp.h ../include/winspool.h ../include/winstring.h ../include/winsvc.h ../include/winsxs.h ../include/winsync.h ../include/winternl.h ../include/wintrust.h ../include/winusb.h ../include/winusbio.h ../include/winuser.h ../include/winver.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/winwlx.h ../include/wlanapi.h ../include/wlanihvtypes.h ../include/wlantypes.h ../include/wmcodecdsp.h ../include/wmcontainer.h ../include/wmdrmsdk.h ../include/wmiatlprov.h ../include/wmistr.h ../include/wmiutils.h ../include/wmp.h ../include/wmpids.h ../include/wmprealestate.h ../include/wmpservices.h ../include/wmsbuffer.h ../include/wmsdk.h ../include/wmsdkidl.h ../include/wmsecure.h ../include/wnnc.h ../include/wow64apiset.h ../include/wownt16.h ../include/wownt32.h ../include/wpapi.h ../include/wpapimsg.h ../include/wpcapi.h ../include/wpcevent.h ../include/wpcrsmsg.h ../include/wpftpmsg.h ../include/wppstmsg.h ../include/wpspihlp.h ../include/wptypes.h ../include/wpwizmsg.h ../include/wrl.h ../include/ws2atm.h ../include/ws2bth.h ../include/ws2def.h ../include/ws2dnet.h ../include/ws2ipdef.h ../include/ws2spi.h ../include/ws2tcpip.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/wsdapi.h ../include/wsdattachment.h ../include/wsdbase.h ../include/wsdclient.h ../include/wsddisco.h ../include/wsdhost.h ../include/wsdtypes.h ../include/wsdutil.h ../include/wsdxml.h ../include/wsdxmldom.h ../include/wshisotp.h ../include/wsipv6ok.h ../include/wsipx.h ../include/wslapi.h ../include/wsman.h ../include/wsmandisp.h ../include/wsnetbs.h ../include/wsnwlink.h ../include/wspiapi.h ../include/wsrm.h ../include/wsvns.h ../include/wtsapi32.h ../include/wtypes.h ../include/wtypesbase.h ../include/wuapi.h ../include/wuerror.h ../include/xa.h ../include/xamlom.h ../include/xapo.h ../include/xapofx.h ../include/xaudio2.h ../include/xaudio2fx.h ../include/xcmc.h ../include/xcmcext.h ../include/xcmcmsx2.h ../include/xcmcmsxt.h ../include/xenroll.h ../include/xinput.h ../include/xmldomdid.h ../include/xmldsodid.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/xmllite.h ../include/xmltrnsf.h ../include/xolehlp.h ../include/xpsdigitalsignature.h ../include/xpsobjectmodel.h ../include/xpsobjectmodel_1.h ../include/xpsprint.h ../include/xpsrassvc.h ../include/zmouse.h ../include/msinkaut_i.c ../include/d3dvec.inl ../include/d3dx9math.inl ../include/color.dlg ../include/fileopen.dlg ../include/findtext.dlg ../include/font.dlg ../include/icmui.dlg ../include/msacmdlg.dlg ../include/oledlg.dlg ../include/prnsetup.dlg ../include/windowsx.h16 ../include/ilogobj.hxx ../include/mdbrole.hxx ../include/commctrl.rh ../include/dde.rh ../include/winnt.rh ../include/winuser.rh ../include/common.ver ../include/verinfo.ver ../crt/_bsd_types.h ../crt/_cygwin.h ../crt/_mingw_mac.h ../crt/_mingw_off_t.h ../crt/_mingw_secapi.h ../crt/_mingw_stat64.h ../crt/_mingw_stdarg.h ../crt/_mingw_unicode.h ../crt/_timeval.h ../crt/assert.h ../crt/complex.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../crt/conio.h ../crt/corecrt.h ../crt/corecrt_startup.h ../crt/corecrt_stdio_config.h ../crt/corecrt_wstdlib.h ../crt/crtdbg.h ../crt/crtdefs.h ../crt/ctype.h ../crt/dir.h ../crt/direct.h ../crt/dirent.h ../crt/dos.h ../crt/dvec.h ../crt/eh.h ../crt/errno.h ../crt/excpt.h ../crt/fcntl.h ../crt/fenv.h ../crt/float.h ../crt/fpieee.h ../crt/ftw.h ../crt/fvec.h ../crt/getopt.h ../crt/ieeefp.h ../crt/intrin.h ../crt/inttypes.h ../crt/io.h ../crt/ivec.h ../crt/libgen.h ../crt/limits.h ../crt/locale.h ../crt/malloc.h ../crt/math.h ../crt/mbctype.h ../crt/mbstring.h ../crt/mem.h ../crt/memory.h ../crt/new.h ../crt/process.h ../crt/profile.h '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../crt/pthread_signal.h ../crt/pthread_time.h ../crt/pthread_unistd.h ../crt/search.h ../crt/sehmap.h ../crt/setjmp.h ../crt/setjmpex.h ../crt/share.h ../crt/signal.h ../crt/stdarg.h ../crt/stddef.h ../crt/stdexcpt.h ../crt/stdint.h ../crt/stdio.h ../crt/stdlib.h ../crt/string.h ../crt/strings.h ../crt/syslimits.h ../crt/tchar.h ../crt/time.h ../crt/uchar.h ../crt/unistd.h ../crt/utime.h ../crt/vadefs.h ../crt/varargs.h ../crt/wchar.h ../crt/wctype.h ../crt/xlocinfo.h ../crt/xmath.h ../crt/ymath.h ../crt/yvals.h ../crt/swprintf.inl '/opt/llvm-mingw/generic-w64-mingw32/include'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/ddk'
 install -C -m 644 ../ddk/include/ddk/acpiioct.h ../ddk/include/ddk/afilter.h ../ddk/include/ddk/amtvuids.h ../ddk/include/ddk/ata.h ../ddk/include/ddk/atm.h ../ddk/include/ddk/bdasup.h ../ddk/include/ddk/classpnp.h ../ddk/include/ddk/csq.h ../ddk/include/ddk/d3dhal.h ../ddk/include/ddk/d3dhalex.h ../ddk/include/ddk/d4drvif.h ../ddk/include/ddk/d4iface.h ../ddk/include/ddk/dderror.h ../ddk/include/ddk/dmusicks.h ../ddk/include/ddk/drivinit.h ../ddk/include/ddk/drmk.h ../ddk/include/ddk/dxapi.h ../ddk/include/ddk/fltsafe.h ../ddk/include/ddk/hidclass.h ../ddk/include/ddk/hubbusif.h ../ddk/include/ddk/ide.h ../ddk/include/ddk/ioaccess.h ../ddk/include/ddk/kbdmou.h ../ddk/include/ddk/mcd.h ../ddk/include/ddk/mce.h ../ddk/include/ddk/miniport.h ../ddk/include/ddk/minitape.h ../ddk/include/ddk/mountdev.h ../ddk/include/ddk/mountmgr.h ../ddk/include/ddk/msports.h ../ddk/include/ddk/ndis.h ../ddk/include/ddk/ndisguid.h ../ddk/include/ddk/ndistapi.h ../ddk/include/ddk/ndiswan.h ../ddk/include/ddk/netpnp.h ../ddk/include/ddk/ntagp.h ../ddk/include/ddk/ntddk.h ../ddk/include/ddk/ntddpcm.h ../ddk/include/ddk/ntddsnd.h ../ddk/include/ddk/ntifs.h '/opt/llvm-mingw/generic-w64-mingw32/include/ddk'
 install -C -m 644 ../ddk/include/ddk/ntimage.h ../ddk/include/ddk/ntintsafe.h ../ddk/include/ddk/ntnls.h ../ddk/include/ddk/ntpoapi.h ../ddk/include/ddk/ntstrsafe.h ../ddk/include/ddk/oprghdlr.h ../ddk/include/ddk/parallel.h ../ddk/include/ddk/pfhook.h ../ddk/include/ddk/poclass.h ../ddk/include/ddk/portcls.h ../ddk/include/ddk/punknown.h ../ddk/include/ddk/scsi.h ../ddk/include/ddk/scsiscan.h ../ddk/include/ddk/scsiwmi.h ../ddk/include/ddk/smbus.h ../ddk/include/ddk/srb.h ../ddk/include/ddk/stdunk.h ../ddk/include/ddk/storport.h ../ddk/include/ddk/strmini.h ../ddk/include/ddk/swenum.h ../ddk/include/ddk/tdikrnl.h ../ddk/include/ddk/tdistat.h ../ddk/include/ddk/upssvc.h ../ddk/include/ddk/usbbusif.h ../ddk/include/ddk/usbdlib.h ../ddk/include/ddk/usbdrivr.h ../ddk/include/ddk/usbkern.h ../ddk/include/ddk/usbprint.h ../ddk/include/ddk/usbprotocoldefs.h ../ddk/include/ddk/usbscan.h ../ddk/include/ddk/usbstorioctl.h ../ddk/include/ddk/video.h ../ddk/include/ddk/videoagp.h ../ddk/include/ddk/wdm.h ../ddk/include/ddk/wdmguid.h ../ddk/include/ddk/wdmsec.h ../ddk/include/ddk/wmidata.h ../ddk/include/ddk/wmilib.h ../ddk/include/ddk/ws2san.h ../ddk/include/ddk/xfilter.h '/opt/llvm-mingw/generic-w64-mingw32/include/ddk'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/gdiplus'
 install -C -m 644 ../include/gdiplus/gdiplus.h ../include/gdiplus/gdiplusbase.h ../include/gdiplus/gdiplusbrush.h ../include/gdiplus/gdipluscolor.h ../include/gdiplus/gdipluscolormatrix.h ../include/gdiplus/gdipluseffects.h ../include/gdiplus/gdiplusenums.h ../include/gdiplus/gdiplusflat.h ../include/gdiplus/gdiplusgpstubs.h ../include/gdiplus/gdiplusgraphics.h ../include/gdiplus/gdiplusheaders.h ../include/gdiplus/gdiplusimageattributes.h ../include/gdiplus/gdiplusimagecodec.h ../include/gdiplus/gdiplusimaging.h ../include/gdiplus/gdiplusimpl.h ../include/gdiplus/gdiplusinit.h ../include/gdiplus/gdipluslinecaps.h ../include/gdiplus/gdiplusmatrix.h ../include/gdiplus/gdiplusmem.h ../include/gdiplus/gdiplusmetafile.h ../include/gdiplus/gdiplusmetaheader.h ../include/gdiplus/gdipluspath.h ../include/gdiplus/gdipluspen.h ../include/gdiplus/gdipluspixelformats.h ../include/gdiplus/gdiplusstringformat.h ../include/gdiplus/gdiplustypes.h '/opt/llvm-mingw/generic-w64-mingw32/include/gdiplus'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/GL'
 install -C -m 644 ../include/GL/gl.h ../include/GL/glaux.h ../include/GL/glcorearb.h ../include/GL/glext.h ../include/GL/glu.h ../include/GL/glxext.h ../include/GL/wgl.h ../include/GL/wglext.h '/opt/llvm-mingw/generic-w64-mingw32/include/GL'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/activation.idl ../include/activaut.idl ../include/activdbg.idl ../include/activdbg100.idl ../include/activprof.idl ../include/activscp.idl ../include/adhoc.idl ../include/alg.idl ../include/amstream.idl ../include/amvideo.idl ../include/asyncinfo.idl ../include/audioclient.idl ../include/audioendpoints.idl ../include/audiopolicy.idl ../include/austream.idl ../include/axcore.idl ../include/axextend.idl ../include/bdaiface.idl ../include/bits.idl ../include/bits1_5.idl ../include/bits2_0.idl ../include/bits2_5.idl ../include/bits3_0.idl ../include/bits5_0.idl ../include/comadmin.idl ../include/comcat.idl ../include/commoncontrols.idl ../include/control.idl ../include/credentialprovider.idl ../include/ctfutb.idl ../include/ctxtcall.idl ../include/d3d10.idl ../include/d3d10_1.idl ../include/d3d10effect.idl ../include/d3d10sdklayers.idl ../include/d3d10shader.idl ../include/d3d11.idl ../include/d3d11_1.idl ../include/d3d11_2.idl ../include/d3d11_3.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/d3d11_4.idl ../include/d3d11on12.idl ../include/d3d11sdklayers.idl ../include/d3d12.idl ../include/d3d12sdklayers.idl ../include/d3d12shader.idl ../include/d3d12video.idl ../include/d3dcommon.idl ../include/dbgprop.idl ../include/dcommon.idl ../include/dcompanimation.idl ../include/ddstream.idl ../include/devenum.idl ../include/devicetopology.idl ../include/dimm.idl ../include/dinputd.idl ../include/directmanipulation.idl ../include/dispex.idl ../include/dmodshow.idl ../include/docobj.idl ../include/docobjectservice.idl ../include/documenttarget.idl ../include/downloadmgr.idl ../include/drmexternals.idl ../include/dvdif.idl ../include/dwrite.idl ../include/dwrite_1.idl ../include/dwrite_2.idl ../include/dwrite_3.idl ../include/dxgi.idl ../include/dxgi1_2.idl ../include/dxgi1_3.idl ../include/dxgi1_4.idl ../include/dxgi1_5.idl ../include/dxgi1_6.idl ../include/dxgicommon.idl ../include/dxgidebug.idl ../include/dxgiformat.idl ../include/dxgitype.idl ../include/dxva2api.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/dxvahd.idl ../include/dyngraph.idl ../include/endpointvolume.idl ../include/eventtoken.idl ../include/evr.idl ../include/evr9.idl ../include/exdisp.idl ../include/filter.idl ../include/fsrm.idl ../include/fsrmenums.idl ../include/fsrmquota.idl ../include/fsrmreports.idl ../include/fsrmscreen.idl ../include/fusion.idl ../include/fwptypes.idl ../include/hstring.idl ../include/icftypes.idl ../include/icodecapi.idl ../include/iketypes.idl ../include/inputpaneinterop.idl ../include/inputscope.idl ../include/inspectable.idl ../include/ivectorchangedeventargs.idl ../include/locationapi.idl ../include/mediaobj.idl ../include/medparam.idl ../include/mfcaptureengine.idl ../include/mfd3d12.idl ../include/mfidl.idl ../include/mfmediacapture.idl ../include/mfmediaengine.idl ../include/mfobjects.idl ../include/mfplay.idl ../include/mfreadwrite.idl ../include/mftransform.idl ../include/mmdeviceapi.idl ../include/mmstream.idl ../include/mscoree.idl ../include/msctf.idl ../include/mshtmhst.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/mshtml.idl ../include/msinkaut.idl ../include/msopc.idl ../include/msxml.idl ../include/msxml2.idl ../include/msxml6.idl ../include/mulres.idl ../include/napcertrelyingparty.idl ../include/napcommon.idl ../include/napenforcementclient.idl ../include/napmanagement.idl ../include/napprotocol.idl ../include/napservermanagement.idl ../include/napsystemhealthagent.idl ../include/napsystemhealthvalidator.idl ../include/naptypes.idl ../include/netcfgn.idl ../include/netcfgx.idl ../include/netfw.idl ../include/netlistmgr.idl ../include/oaidl.idl ../include/objectarray.idl ../include/objidl.idl ../include/objidlbase.idl ../include/ocidl.idl ../include/oleacc.idl ../include/oleidl.idl ../include/optary.idl ../include/portabledeviceapi.idl ../include/portabledevicetypes.idl ../include/proofofpossessioncookieinfo.idl ../include/propidl.idl ../include/propsys.idl ../include/prsht.idl ../include/qedit.idl ../include/qnetwork.idl ../include/rdpencomapi.idl ../include/regbag.idl ../include/relogger.idl ../include/robuffer.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/rtworkq.idl ../include/sapi51.idl ../include/sapi53.idl ../include/sapi54.idl ../include/sensorsapi.idl ../include/servprov.idl ../include/shldisp.idl ../include/shobjidl.idl ../include/shtypes.idl ../include/spatialaudioclient.idl ../include/spellcheck.idl ../include/strmif.idl ../include/structuredquerycondition.idl ../include/systemmediatransportcontrolsinterop.idl ../include/taskschd.idl ../include/textstor.idl ../include/thumbcache.idl ../include/tlbref.idl ../include/tlogstg.idl ../include/tpcshrd.idl ../include/tsvirtualchannels.idl ../include/tuner.idl ../include/uianimation.idl ../include/uiautomationclient.idl ../include/uiautomationcore.idl ../include/uiviewsettingsinterop.idl ../include/unknwn.idl ../include/unknwnbase.idl ../include/urlhist.idl ../include/urlmon.idl ../include/vdslun.idl ../include/vidcap.idl ../include/vmr9.idl ../include/vsadmin.idl ../include/vsbackup.idl ../include/vsmgmt.idl ../include/vsprov.idl ../include/vss.idl ../include/vswriter.idl ../include/wbemads.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/wbemcli.idl ../include/wbemdisp.idl ../include/wbemprov.idl ../include/wbemtran.idl ../include/wdstptmgmt.idl ../include/wincodec.idl ../include/wincodecsdk.idl ../include/wincrypt.idl ../include/windows.applicationmodel.core.idl ../include/windows.applicationmodel.idl ../include/windows.devices.bluetooth.idl ../include/windows.devices.enumeration.idl ../include/windows.devices.geolocation.idl ../include/windows.devices.haptics.idl ../include/windows.devices.power.idl ../include/windows.devices.radios.idl ../include/windows.devices.usb.idl ../include/windows.foundation.collections.idl ../include/windows.foundation.idl ../include/windows.foundation.metadata.idl ../include/windows.foundation.numerics.idl ../include/windows.gaming.input.custom.idl ../include/windows.gaming.input.forcefeedback.idl ../include/windows.gaming.input.idl ../include/windows.gaming.ui.idl ../include/windows.globalization.idl ../include/windows.graphics.capture.idl ../include/windows.graphics.capture.interop.idl ../include/windows.graphics.directx.direct3d11.idl ../include/windows.graphics.directx.idl ../include/windows.graphics.effects.idl ../include/windows.graphics.holographic.idl ../include/windows.graphics.imaging.idl ../include/windows.management.deployment.idl ../include/windows.media.capture.idl ../include/windows.media.closedcaptioning.idl ../include/windows.media.devices.idl ../include/windows.media.effects.idl ../include/windows.media.faceanalysis.idl ../include/windows.media.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/windows.media.render.idl ../include/windows.media.speechrecognition.idl ../include/windows.media.speechsynthesis.idl ../include/windows.networking.connectivity.idl ../include/windows.networking.idl ../include/windows.perception.spatial.idl ../include/windows.perception.spatial.surfaces.idl ../include/windows.security.authentication.onlineid.idl ../include/windows.security.credentials.idl ../include/windows.security.credentials.ui.idl ../include/windows.security.cryptography.idl ../include/windows.security.exchangeactivesyncprovisioning.idl ../include/windows.security.isolation.idl ../include/windows.storage.fileproperties.idl ../include/windows.storage.idl ../include/windows.storage.search.idl ../include/windows.storage.streams.idl ../include/windows.system.idl ../include/windows.system.power.idl ../include/windows.system.profile.idl ../include/windows.system.profile.systemmanufacturers.idl ../include/windows.system.threading.idl ../include/windows.system.userprofile.idl ../include/windows.ui.composition.idl ../include/windows.ui.composition.interop.idl ../include/windows.ui.core.idl ../include/windows.ui.idl ../include/windows.ui.viewmanagement.idl ../include/windows.ui.xaml.hosting.desktopwindowxamlsource.idl ../include/windowscontracts.idl ../include/wmcodecdsp.idl ../include/wmcontainer.idl ../include/wmdrmsdk.idl ../include/wmp.idl ../include/wmprealestate.idl ../include/wmpservices.idl ../include/wmsbuffer.idl ../include/wmsdkidl.idl ../include/wmsecure.idl ../include/wpcapi.idl '/opt/llvm-mingw/generic-w64-mingw32/include'
 install -C -m 644 ../include/wsdattachment.idl ../include/wsdbase.idl ../include/wsdclient.idl ../include/wsddisco.idl ../include/wsdhost.idl ../include/wsdxml.idl ../include/wsmandisp.idl ../include/wtypes.idl ../include/wtypesbase.idl ../include/wuapi.idl ../include/xamlom.idl ../include/xapo.idl ../include/xaudio2.idl ../include/xaudio2fx.idl ../include/xmldom.idl ../include/xmldso.idl ../include/xmllite.idl ../include/xpsdigitalsignature.idl ../include/xpsobjectmodel.idl ../include/xpsobjectmodel_1.idl ../include/xpsprint.idl ../include/xpsrassvc.idl ../tlb/oleacc.dll.tlb ../tlb/stdole2.tlb '/opt/llvm-mingw/generic-w64-mingw32/include'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/KHR'
 install -C -m 644 ../include/KHR/khrplatform.h '/opt/llvm-mingw/generic-w64-mingw32/include/KHR'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/psdk_inc'
 install -C -m 644 ../include/psdk_inc/_dbg_LOAD_IMAGE.h ../include/psdk_inc/_dbg_common.h ../include/psdk_inc/_fd_types.h ../include/psdk_inc/_ip_mreq1.h ../include/psdk_inc/_ip_types.h ../include/psdk_inc/_pop_BOOL.h ../include/psdk_inc/_push_BOOL.h ../include/psdk_inc/_socket_types.h ../include/psdk_inc/_varenum.h ../include/psdk_inc/_ws1_undef.h ../include/psdk_inc/_wsa_errnos.h ../include/psdk_inc/_wsadata.h ../include/psdk_inc/_xmitfile.h ../include/psdk_inc/intrin-impl.h '/opt/llvm-mingw/generic-w64-mingw32/include/psdk_inc'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/sdks'
 install -C -m 644 _mingw_ddk.h '/opt/llvm-mingw/generic-w64-mingw32/include/sdks'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/sec_api'
 install -C -m 644 ../crt/sec_api/conio_s.h ../crt/sec_api/crtdbg_s.h ../crt/sec_api/mbstring_s.h ../crt/sec_api/search_s.h ../crt/sec_api/stdio_s.h ../crt/sec_api/stdlib_s.h ../crt/sec_api/stralign_s.h ../crt/sec_api/string_s.h ../crt/sec_api/tchar_s.h ../crt/sec_api/wchar_s.h '/opt/llvm-mingw/generic-w64-mingw32/include/sec_api'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/sec_api/sys'
 install -C -m 644 ../crt/sec_api/sys/timeb_s.h '/opt/llvm-mingw/generic-w64-mingw32/include/sec_api/sys'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/sys'
 install -C -m 644 ../crt/sys/cdefs.h ../crt/sys/fcntl.h ../crt/sys/file.h ../crt/sys/locking.h ../crt/sys/param.h ../crt/sys/stat.h ../crt/sys/time.h ../crt/sys/timeb.h ../crt/sys/types.h ../crt/sys/unistd.h ../crt/sys/utime.h '/opt/llvm-mingw/generic-w64-mingw32/include/sys'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/wrl'
 install -C -m 644 ../include/wrl/client.h ../include/wrl/internal.h ../include/wrl/module.h '/opt/llvm-mingw/generic-w64-mingw32/include/wrl'
 /usr/bin/mkdir -p '/opt/llvm-mingw/generic-w64-mingw32/include/wrl/wrappers'
 install -C -m 644 ../include/wrl/wrappers/corewrappers.h '/opt/llvm-mingw/generic-w64-mingw32/include/wrl/wrappers'
gmake[2]: Leaving directory '/build/mingw-w64/mingw-w64-headers/build'
gmake[1]: Leaving directory '/build/mingw-w64/mingw-w64-headers/build'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for i686-w64-mingw32-strip... no
checking for strip... strip
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... i686-w64-mingw32
checking for sysroot... /opt/llvm-mingw/i686-w64-mingw32
checking for a sed that does not truncate output... /usr/bin/sed
checking for gawk... (cached) mawk
checking for i686-w64-mingw32-gcc... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking for i686-w64-mingw32-g++... no
checking for i686-w64-mingw32-c++... no
checking for i686-w64-mingw32-gpp... no
checking for i686-w64-mingw32-aCC... no
checking for i686-w64-mingw32-CC... no
checking for i686-w64-mingw32-cxx... no
checking for i686-w64-mingw32-cc++... no
checking for i686-w64-mingw32-cl.exe... no
checking for i686-w64-mingw32-FCC... no
checking for i686-w64-mingw32-KCC... no
checking for i686-w64-mingw32-RCC... no
checking for i686-w64-mingw32-xlC_r... no
checking for i686-w64-mingw32-xlC... no
checking for i686-w64-mingw32-clang++... no
checking for g++... g++
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... gcc3
checking how to run the C preprocessor... gcc -E
checking for i686-w64-mingw32-ranlib... no
checking for ranlib... ranlib
checking for i686-w64-mingw32-dlltool... no
checking for dlltool... no
checking for i686-w64-mingw32-ar... no
checking for i686-w64-mingw32-lib... no
checking for i686-w64-mingw32-link... no
checking for ar... ar
checking the archiver (ar) interface... ar
checking dependency style of gcc... gcc3
checking for i686-w64-mingw32-as... no
checking for as... as
checking whether dlltool supports --temp-prefix... yes
checking whether to build a w32api package for Cygwin... no
checking whether to build the Win32 libraries... yes
checking whether to build the Win64 libraries... no
checking whether to build the WinARM32 libraries... no
checking whether to build the WinARM64 libraries... no
checking whether to enable globbing... no
checking whether to enable private exports... no
checking whether to enable delay import libs... no
checking what to provide as libmsvcrt.a... ucrt
checking whether to include support for Control Flow Guard... yes
checking whether to enable experimental features... no
checking whether the compiler supports -municode... no
checking whether the linker provides __ImageBase symbol... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for _mingw_mac.h... no
configure: error: Please check if the mingw-w64 header set and the build/host option are set properly.
env
root@1fdbba8d8fc4:/build# env
HOSTNAME=1fdbba8d8fc4
PWD=/build
container=podman
HOME=/root
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
LESSCLOSE=/usr/bin/lesspipe %s %s
TERM=xterm
LESSOPEN=| /usr/bin/lesspipe %s
TOOLCHAIN_PREFIX=/opt/llvm-mingw
SHLVL=1
PATH=/opt/llvm-mingw/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
_=/usr/bin/env
tree -d /opt/llvm-mingw
/opt/llvm-mingw
|-- aarch64-w64-mingw32
|   `-- include -> ../generic-w64-mingw32/include
|-- armv7-w64-mingw32
|   `-- include -> ../generic-w64-mingw32/include
|-- bin
|-- generic-w64-mingw32
|   `-- include
|       |-- GL
|       |-- KHR
|       |-- ddk
|       |-- gdiplus
|       |-- psdk_inc
|       |-- sdks
|       |-- sec_api
|       |   `-- sys
|       |-- sys
|       `-- wrl
|           `-- wrappers
|-- i686-w64-mingw32
|   `-- include -> ../generic-w64-mingw32/include
|-- include
|-- lib
|   |-- clang
|   |   `-- 18
|   |       `-- include
|   |           |-- cuda_wrappers
|   |           |   `-- bits
|   |           |-- llvm_libc_wrappers
|   |           |-- openmp_wrappers
|   |           `-- ppc_wrappers
|   |-- libear
|   `-- libscanbuild
|       `-- resources
|-- share
|   |-- clang
|   `-- man
|       `-- man1
`-- x86_64-w64-mingw32
    `-- include -> ../generic-w64-mingw32/include

Slightly modified Dockerfile at the moment:

FROM ubuntu:22.04

RUN apt-get update -qq && \
    DEBIAN_FRONTEND="noninteractive" apt-get install -qqy --no-install-recommends \
    git wget bzip2 file unzip libtool pkg-config cmake build-essential \
    automake yasm gettext autopoint vim-tiny python3 python3-distutils \
    ninja-build ca-certificates curl less zip && \
    apt-get clean -y && \
    rm -rf /var/lib/apt/lists/*

RUN git config --global user.name "LLVM MinGW" && \
    git config --global user.email root@localhost

WORKDIR /build

ENV TOOLCHAIN_PREFIX=/opt/llvm-mingw

ARG TOOLCHAIN_ARCHS="i686 x86_64 armv7 aarch64"

ARG DEFAULT_CRT=ucrt

ARG CFGUARD_ARGS=--enable-cfguard

# Build everything that uses the llvm monorepo. We need to build the mingw runtime before the compiler-rt/libunwind/libcxxabi/libcxx runtimes.
COPY --chmod=755 build-llvm.sh build-lldb-mi.sh strip-llvm.sh install-wrappers.sh build-mingw-w64.sh build-mingw-w64-tools.sh build-compiler-rt.sh build-libcxx.sh build-mingw-w64-libraries.sh build-openmp.sh ./
COPY --chmod=755 wrappers/*.sh ./wrappers/
COPY wrappers/*.c wrappers/*.h ./wrappers/
RUN ./build-llvm.sh $TOOLCHAIN_PREFIX
RUN ./build-lldb-mi.sh $TOOLCHAIN_PREFIX
RUN ./strip-llvm.sh $TOOLCHAIN_PREFIX
RUN ./install-wrappers.sh $TOOLCHAIN_PREFIX
    # RUN ./build-mingw-w64.sh $TOOLCHAIN_PREFIX --with-default-msvcrt=$DEFAULT_CRT $CFGUARD_ARGS
    # ./build-mingw-w64-tools.sh $TOOLCHAIN_PREFIX && \
    # ./build-compiler-rt.sh $TOOLCHAIN_PREFIX $CFGUARD_ARGS && \
    # ./build-libcxx.sh $TOOLCHAIN_PREFIX $CFGUARD_ARGS && \
    # ./build-mingw-w64-libraries.sh $TOOLCHAIN_PREFIX $CFGUARD_ARGS && \
    # ./build-compiler-rt.sh $TOOLCHAIN_PREFIX --build-sanitizers && \
    # ./build-openmp.sh $TOOLCHAIN_PREFIX $CFGUARD_ARGS && \
    # rm -rf /build/*

ENV PATH=$TOOLCHAIN_PREFIX/bin:$PATH

Since you say Linux build works then when I have some time I'll compare the builds on Linux and Windows step by step.

mstorsjo commented 3 months ago

checking for i686-w64-mingw32-gcc... no

Since you ran install-wrappers.sh with TOOLCHAIN_ARCHS set to x86_64, it didn’t install any i686 prefixed wrappers. Values set with --build-arg don’t get stored in the image, so when you manually invoke build-mingw-w64.sh, it will try to build for all architectures, and fail on i686.

If you get a similar issue if you rerun this command with TOOLCHAIN_ARCHS set consistently, the log will tell more again.

pgalkin commented 3 months ago

I see. Indeed, after I set export TOOLCHAIN_ARCHS=x86_64 and run it again I get a different error:

config.log ``` root@1597a091a09e:/build# cat mingw-w64/mingw-w64-crt/build-x86_64/config.log This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by mingw-w64-runtime configure 4.0b, which was generated by GNU Autoconf 2.72. Invocation command line was $ ../configure --host=x86_64-w64-mingw32 --prefix=/opt/llvm-mingw/x86_64-w64-mingw32 --disable-lib32 --enable-lib64 --with-default-msvcrt=ucrt --enable-cfguard ## --------- ## ## Platform. ## ## --------- ## hostname = 1597a091a09e uname -m = x86_64 uname -r = 5.15.153.1-microsoft-standard-WSL2 uname -s = Linux uname -v = #1 SMP Fri Mar 29 23:14:13 UTC 2024 /usr/bin/uname -p = x86_64 /bin/uname -X = unknown /bin/arch = x86_64 /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /opt/llvm-mingw/bin/ PATH: /opt/llvm-mingw/bin/ PATH: /usr/local/sbin/ PATH: /usr/local/bin/ PATH: /usr/sbin/ PATH: /usr/bin/ PATH: /sbin/ PATH: /bin/ ## ----------- ## ## Core tests. ## ## ----------- ## configure:2612: looking for aux files: ar-lib compile config.guess config.sub missing install-sh configure:2625: trying ../build-aux/ configure:2654: ../build-aux/ar-lib found configure:2654: ../build-aux/compile found configure:2654: ../build-aux/config.guess found configure:2654: ../build-aux/config.sub found configure:2654: ../build-aux/missing found configure:2636: ../build-aux/install-sh found configure:2789: checking for a BSD-compatible install configure:2863: result: /usr/bin/install -c configure:2874: checking whether build environment is sane configure:2929: result: yes configure:2985: checking for x86_64-w64-mingw32-strip configure:3006: found /opt/llvm-mingw/bin/x86_64-w64-mingw32-strip configure:3018: result: x86_64-w64-mingw32-strip configure:3090: checking for a race-free mkdir -p configure:3133: result: /usr/bin/mkdir -p configure:3140: checking for gawk configure:3176: result: no configure:3140: checking for mawk configure:3161: found /usr/bin/mawk configure:3173: result: mawk configure:3184: checking whether make sets $(MAKE) configure:3208: result: yes configure:3238: checking whether make supports nested variables configure:3257: result: yes configure:3394: checking whether to enable maintainer-specific portions of Makefiles configure:3405: result: no configure:3425: checking build system type configure:3441: result: x86_64-pc-linux-gnu configure:3461: checking host system type configure:3476: result: x86_64-w64-mingw32 configure:3497: checking for sysroot configure:3517: result: /opt/llvm-mingw/x86_64-w64-mingw32 configure:3540: checking for a sed that does not truncate output configure:3612: result: /usr/bin/sed configure:3621: checking for gawk configure:3654: result: mawk configure:3682: checking for x86_64-w64-mingw32-gcc configure:3703: found /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc configure:3715: result: x86_64-w64-mingw32-gcc configure:4120: checking for C compiler version configure:4129: x86_64-w64-mingw32-gcc --version >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4140: $? = 126 configure:4129: x86_64-w64-mingw32-gcc -v >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4140: $? = 126 configure:4129: x86_64-w64-mingw32-gcc -V >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4140: $? = 126 configure:4129: x86_64-w64-mingw32-gcc -qversion >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4140: $? = 126 configure:4129: x86_64-w64-mingw32-gcc -version >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4140: $? = 126 configure:4160: x86_64-w64-mingw32-gcc -o conftest conftest.c >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4164: $? = 126 configure:4386: checking whether we are cross compiling configure:4424: result: yes configure:4428: checking for suffix of object files configure:4451: x86_64-w64-mingw32-gcc -c conftest.c >&5 ../configure: /opt/llvm-mingw/bin/x86_64-w64-mingw32-gcc: /bin/sh^M: bad interpreter: No such file or directory configure:4455: $? = 126 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "mingw-w64-runtime" | #define PACKAGE_TARNAME "mingw-w64-runtime" | #define PACKAGE_VERSION "4.0b" | #define PACKAGE_STRING "mingw-w64-runtime 4.0b" | #define PACKAGE_BUGREPORT "mingw-w64-public@lists.sourceforge.net" | #define PACKAGE_URL "" | #define PACKAGE "mingw-w64-runtime" | #define VERSION "4.0b" | /* end confdefs.h. */ | | int | main (void) | { | | ; | return 0; | } configure:4470: error: in '/build/mingw-w64/mingw-w64-crt/build-x86_64': configure:4472: error: cannot compute suffix of object files: cannot compile See 'config.log' for more details ## ---------------- ## ## Cache variables. ## ## ---------------- ## ac_cv_build=x86_64-pc-linux-gnu ac_cv_env_CCASFLAGS_set= ac_cv_env_CCASFLAGS_value= ac_cv_env_CCAS_set= ac_cv_env_CCAS_value= ac_cv_env_CCC_set= ac_cv_env_CCC_value= ac_cv_env_CC_set= ac_cv_env_CC_value= ac_cv_env_CFLAGS_set= ac_cv_env_CFLAGS_value= ac_cv_env_CPPFLAGS_set= ac_cv_env_CPPFLAGS_value= ac_cv_env_CPP_set= ac_cv_env_CPP_value= ac_cv_env_CXXFLAGS_set= ac_cv_env_CXXFLAGS_value= ac_cv_env_CXX_set= ac_cv_env_CXX_value= ac_cv_env_LDFLAGS_set= ac_cv_env_LDFLAGS_value= ac_cv_env_LIBS_set= ac_cv_env_LIBS_value= ac_cv_env_build_alias_set= ac_cv_env_build_alias_value= ac_cv_env_host_alias_set=set ac_cv_env_host_alias_value=x86_64-w64-mingw32 ac_cv_env_target_alias_set= ac_cv_env_target_alias_value= ac_cv_host=x86_64-w64-mingw32 ac_cv_path_SED=/usr/bin/sed ac_cv_path_install='/usr/bin/install -c' ac_cv_path_mkdir=/usr/bin/mkdir ac_cv_prog_AWK=mawk ac_cv_prog_CC=x86_64-w64-mingw32-gcc ac_cv_prog_STRIP=x86_64-w64-mingw32-strip ac_cv_prog_make_make_set=yes am_cv_make_support_nested_variables=yes ## ----------------- ## ## Output variables. ## ## ----------------- ## ACLOCAL='${SHELL} '\''/build/mingw-w64/mingw-w64-crt/build-aux/missing'\'' aclocal-1.16' ADD_CXX_ONLY_WARNING_FLAGS='' ADD_C_CXX_WARNING_FLAGS='' ADD_C_ONLY_WARNING_FLAGS='' AMDEPBACKSLASH='' AMDEP_FALSE='' AMDEP_TRUE='' AMTAR='$${TAR-tar}' AM_BACKSLASH='\' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' AM_DEFAULT_VERBOSITY='1' AM_V='$(V)' AR='' AS='' AUTOCONF='${SHELL} '\''/build/mingw-w64/mingw-w64-crt/build-aux/missing'\'' autoconf' AUTOHEADER='${SHELL} '\''/build/mingw-w64/mingw-w64-crt/build-aux/missing'\'' autoheader' AUTOMAKE='${SHELL} '\''/build/mingw-w64/mingw-w64-crt/build-aux/missing'\'' automake-1.16' AWK='mawk' CC='x86_64-w64-mingw32-gcc' CCAS='' CCASDEPMODE='' CCASFLAGS='' CCDEPMODE='' CFGUARD_CFLAGS='' CFGUARD_FALSE='' CFGUARD_TRUE='' CFLAGS='' CPP='' CPPFLAGS='' CSCOPE='cscope' CTAGS='ctags' CXX='' CXXDEPMODE='' CXXFLAGS='' CYGPATH_W='echo' DEFS='' DELAY_IMPORT_LIBS_FALSE='' DELAY_IMPORT_LIBS_TRUE='' DEPDIR='' DLLTOOL='' DLLTOOL_HAS_TEMP_PREFIX_FALSE='' DLLTOOL_HAS_TEMP_PREFIX_TRUE='' ECHO_C='' ECHO_N='-n' ECHO_T='' ENABLE_DFP_FALSE='' ENABLE_DFP_TRUE='' ENABLE_PRINTF128_FALSE='' ENABLE_PRINTF128_TRUE='' ENABLE_REGISTEREDPRINTF_FALSE='' ENABLE_REGISTEREDPRINTF_TRUE='' ENABLE_SOFTMATH_FALSE='' ENABLE_SOFTMATH_TRUE='' ENABLE_TESTS_UNICODE_FALSE='' ENABLE_TESTS_UNICODE_TRUE='' ETAGS='etags' EXEEXT='' IMAGEBASE_CFLAGS='' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL}' INSTALL_SCRIPT='${INSTALL}' INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' LDFLAGS='' LIB32_FALSE='' LIB32_TRUE='' LIB64_FALSE='' LIB64_TRUE='' LIBARM32SUFFIXDIR='' LIBARM32_FALSE='' LIBARM32_TRUE='' LIBARM64SUFFIXDIR='' LIBARM64_FALSE='' LIBARM64_TRUE='' LIBOBJS='' LIBS='' LIBX8632SUFFIXDIR='' LIBX8664SUFFIXDIR='' LTLIBOBJS='' MAINT='#' MAINTAINER_MODE_FALSE='' MAINTAINER_MODE_TRUE='#' MAKEINFO='${SHELL} '\''/build/mingw-w64/mingw-w64-crt/build-aux/missing'\'' makeinfo' MKDIR_P='/usr/bin/mkdir -p' MSVCRT_LIB='' OBJEXT='' PACKAGE='mingw-w64-runtime' PACKAGE_BUGREPORT='mingw-w64-public@lists.sourceforge.net' PACKAGE_NAME='mingw-w64-runtime' PACKAGE_STRING='mingw-w64-runtime 4.0b' PACKAGE_TARNAME='mingw-w64-runtime' PACKAGE_URL='' PACKAGE_VERSION='4.0b' PATH_SEPARATOR=':' PRIVATE_EXPORTS_FALSE='' PRIVATE_EXPORTS_TRUE='' RANLIB='' SED='/usr/bin/sed' SET_MAKE='' SHELL='/bin/bash' STRIP='x86_64-w64-mingw32-strip' TARGET_SYSTEM_ROOT='/opt/llvm-mingw/x86_64-w64-mingw32' VERSION='4.0b' W32API_FALSE='' W32API_TRUE='' WITHSYSROOT_FALSE='#' WITHSYSROOT_TRUE='' ac_ct_AR='' ac_ct_CC='' ac_ct_CXX='' am__EXEEXT_FALSE='' am__EXEEXT_TRUE='' am__fastdepCCAS_FALSE='' am__fastdepCCAS_TRUE='' am__fastdepCC_FALSE='' am__fastdepCC_TRUE='' am__fastdepCXX_FALSE='' am__fastdepCXX_TRUE='' am__include='' am__isrc=' -I$(srcdir)' am__leading_dot='.' am__nodep='' am__quote='' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' bindir='${exec_prefix}/bin' build='x86_64-pc-linux-gnu' build_alias='' build_cpu='x86_64' build_os='linux-gnu' build_vendor='pc' datadir='${datarootdir}' datarootdir='${prefix}/share' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' dvidir='${docdir}' exec_prefix='NONE' host='x86_64-w64-mingw32' host_alias='x86_64-w64-mingw32' host_cpu='x86_64' host_os='mingw32' host_vendor='w64' htmldir='${docdir}' includedir='${prefix}/include' infodir='${datarootdir}/info' install_sh='${SHELL} /build/mingw-w64/mingw-w64-crt/build-aux/install-sh' libdir='${exec_prefix}/lib' libexecdir='${exec_prefix}/libexec' localedir='${datarootdir}/locale' localstatedir='${prefix}/var' mandir='${datarootdir}/man' mkdir_p='$(MKDIR_P)' oldincludedir='/usr/include' pdfdir='${docdir}' prefix='/opt/llvm-mingw/x86_64-w64-mingw32' program_transform_name='s,x,x,' psdir='${docdir}' runstatedir='${localstatedir}/run' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sysconfdir='${prefix}/etc' target_alias='' ## ----------- ## ## confdefs.h. ## ## ----------- ## /* confdefs.h */ #define PACKAGE_NAME "mingw-w64-runtime" #define PACKAGE_TARNAME "mingw-w64-runtime" #define PACKAGE_VERSION "4.0b" #define PACKAGE_STRING "mingw-w64-runtime 4.0b" #define PACKAGE_BUGREPORT "mingw-w64-public@lists.sourceforge.net" #define PACKAGE_URL "" #define PACKAGE "mingw-w64-runtime" #define VERSION "4.0b" configure: exit 1 ```

And I see it's this thing again /bin/sh^M bad interpreter: No such file or directory. I made an effort to specifically get rid of these line endings, and yet here they are again, ruining things.

pgalkin commented 3 months ago

I'm closing the issue because the error goes away once you really make sure none of the *.sh scripts have CRLF newlines. Now, the Dockerfile build on Windows with Podman still doesn't work out of the box because Dockerfile needs at least chmod adjustments. Maybe there are other fixes that must be done before it works, I don't know yet, everything has to be verified carefully.