In an internal version of Visual Studio, llvm install failed with
following error, the reason is missing `typename` keyword.
```
[4444/5079] C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1438~1.331\bin\Hostx64\x64\cl.exe /TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -ID:\b\llvm\x64-windows-dbg\tools\dsymutil -ID:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil -ID:\b\llvm\x64-windows-dbg\include -ID:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\include -external:ID:\installed\x64-windows\include -external:W0 /nologo /DWIN32 /D_WINDOWS /utf-8 /MP /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -w14062 -we4238 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 -std:c++17 -MDd /EHsc /GR /showIncludes /Fotools\dsymutil\CMakeFiles\dsymutil.dir\DwarfLinkerForBinary.cpp.obj /Fdtools\dsymutil\CMakeFiles\dsymutil.dir\ /FS -c D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp
FAILED: tools/dsymutil/CMakeFiles/dsymutil.dir/DwarfLinkerForBinary.cpp.obj
C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1438~1.331\bin\Hostx64\x64\cl.exe /TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -ID:\b\llvm\x64-windows-dbg\tools\dsymutil -ID:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil -ID:\b\llvm\x64-windows-dbg\include -ID:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\include -external:ID:\installed\x64-windows\include -external:W0 /nologo /DWIN32 /D_WINDOWS /utf-8 /MP /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -w14062 -we4238 /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 -std:c++17 -MDd /EHsc /GR /showIncludes /Fotools\dsymutil\CMakeFiles\dsymutil.dir\DwarfLinkerForBinary.cpp.obj /Fdtools\dsymutil\CMakeFiles\dsymutil.dir\ /FS -c D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(954): error C2275: 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc': expected an expression instead of a type
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(954): note: the template instantiation context (the oldest one first) is
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(557): note: see reference to function template instantiation 'bool llvm::dsymutil::DwarfLinkerForBinary::linkImpl<llvm::dwarflinker_parallel::DWARFLinker,llvm::dwarflinker_parallel::DWARFFile,llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>(const llvm::dsymutil::DebugMap &,llvm::dwarflinker_parallel::DWARFLinker::OutputFileType)' being compiled
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(651): note: see reference to function template instantiation 'llvm::ErrorOr<std::unique_ptr<llvm::dwarflinker_parallel::DWARFFile,std::default_delete<llvm::dwarflinker_parallel::DWARFFile>>> llvm::dsymutil::DwarfLinkerForBinary::loadObject<llvm::dwarflinker_parallel::DWARFFile,llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>(const llvm::dsymutil::DebugMapObject &,const llvm::dsymutil::DebugMap &,llvm::remarks::RemarkLinker &)' being compiled
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(237): note: see reference to class template instantiation 'std::unique_ptr<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>,std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>>' being compiled
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory(3335): note: see reference to class template instantiation 'std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>' being compiled
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory(3298): note: while compiling class template member function 'void std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>::operator ()(_Ty *) noexcept const'
with
[
_Ty=llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>
]
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory(3410): note: see the first reference to 'std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>::operator ()' in 'std::unique_ptr<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>,std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>>::~unique_ptr'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(235): note: see the first reference to 'std::unique_ptr<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>,std::default_delete<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>>>::~unique_ptr' in 'llvm::dsymutil::DwarfLinkerForBinary::loadObject'
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\memory(3299): note: see reference to class template instantiation 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>' being compiled
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(1034): note: while compiling class template member function 'std::optional<int64_t> llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::getExprOpAddressRelocAdjustment(llvm::DWARFUnit &,const llvm::DWARFExpression::Operation &,uint64_t,uint64_t)'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(952): note: while compiling class template member function 'std::vector<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc,std::allocator<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc>> llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::getRelocations(const std::vector<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc,std::allocator<llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc>> &,uint64_t,uint64_t)'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(1114): note: see the first reference to 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::getRelocations' in 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::applyValidRelocs'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(953): error C2923: 'std::vector': 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc' is not a valid template type argument for parameter '_Ty'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(954): note: see declaration of 'llvm::dsymutil::DwarfLinkerForBinary::AddressManager<llvm::dwarflinker_parallel::AddressesMap>::ValidReloc'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(953): error C2976: 'std::vector': too few template arguments
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.38.33130\include\vector(429): note: see declaration of 'std::vector'
D:\b\llvm\src\org-17.0.2-5fdca9a361.clean\llvm\tools\dsymutil\DwarfLinkerForBinary.cpp(955): error C2641: cannot deduce template arguments for 'std::vector'
```
Reported upstream: https://github.com/llvm/llvm-project/issues/89056.
- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [ ] ~SHA512s are updated for each updated download.~
- [ ] ~The "supports" clause reflects platforms that may be fixed by
this new version.~
- [ ] ~Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.~
- [ ] ~Any patches that are no longer applied are deleted from the
port's directory.~
- [x] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [x] Only one version is added to each modified port's versions file.
---------
Co-authored-by: Monica <v-liumonica@microsoft.com>
* [llvm] Update port to 15.0.1
The patchset is rebased onto llvmorg-15.0.1, with some significant
differences especially around install paths. The NixOS project
appears to be midway through a large change to the install path
mechanics, for the same purpose as this patchset.
When that has landed, it looks like most of these patches can go away.
* [llvm] x-add-version for 15.0.1
* [llvm] Add enable-ios feature flag
This passes straight through to COMPILER_RT_ENABLE_IOS, which is
defaulted to ON in LLVM. This is a problem if your build host
doesn't have the iOS SDK installed, such as on vcpkg CI.
Co-authored-by: Josh Channings <josh@channings.me.uk>
* [vcpkg_baseline][llvm] Fix file conflicts for libiomp5md.dll
* update version
* add llvm
* version
* Correct files
* update version
* lib
* vdb
* fix before install
* version
* fix in end line
* version
* bin not lib
* version
* test patch
* version
* revert intel-mkl and disable libomp on WIN32
* version
* disable create symlink
* version
* Optimization patch
* version
* remove sapce
* version
* patch name
* vdb
* [LLVM] Update to 14.0.6
* add version
* Use VERSION rather than making specific LLVM_VERSION.
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [llvm] update to v14.0.0
* [llvm] BOLT sub-project support
* [llvm] fix tools install paths
* [halide] update to v14.0.0
* update versions
* [vcpkg-get-python-packages] fix "LOGNAME should be specified" warning
* [mesa] update to v22.0.1
* update versions
* update versions
* update version
* [mesa] update to 22.0.2
* update version
* [mesa] update patches
* update version
* [llvm] update to v14.0.3
* update version
* [llvm] remove depricated feature
* [llvm] allow to build OpenMP on Windows and remove incomplete cross-compile support
* update version
* [llvm] use vcpkg_cmake_get_vars
* [llvm/openmp] install CMake file in share/openmp
* [llvm] add vcpkg-cmake-get-vars dependency and slip post build check if OpenMP is enabled
* update version
* [llvm] fix abi-breaking-checks to always be disabled
in Debug builds, LLVM_ABI_BREAKING_CHECKS was on by default;
however, they use the release headers (which set it to OFF)
this results in a mismatch,
and means you can't link LLVM
* update port version
* version
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
* [llvm] update to 13.0.0
* add version
* [llvm] rework processing of the CMake packages
* update versions
* [llvm] return patch to fix config paths
* update version
* [llvm] allow to build Flang on Windows
* add version
* [llvm] temporary enable Flang by default for test
* update version
* [llvm] fix Flang installation
* update version
* [llvm] try to fix Flang build
* update version
* [llvm] remove Flang from defaults and use Perl path
* [halide] update to 13.0.0
* update versions
* [mesa] update to v21.2.5 and fix build with LLVM 13
* [llvm] use version
* update versions
* [opencv4] fix build with Halide 13
* update version
* update ci.baseline
* [halide] update usage file
* [llvm] update supports
* update versions
* [vcpkg-ci-llvm] add test port
* [vcpkg-ci-llvm] rework test port
* [vcpkg-ci-llvm] test more features
* [halide] update to v13.0.1
* update version
* [mesa] recover port version
* update versions
* [opencv4] update version
* update version
* Update opencv4.json
* [halide] update to v13.0.2 and fix usage
* update version
* Update ports/halide/portfile.cmake
Co-authored-by: Phoebe <20694052+PhoebeHui@users.noreply.github.com>
* update version
* enable LLVM ABI breaking checks to avoid Halide build fail
Co-authored-by: Phoebe <20694052+PhoebeHui@users.noreply.github.com>
* [llvm] update to 12.0.0, enable zlib and libxml2
* [llvm] disable libxml2 by default, arm64-windows should be supported
* [llvm] try to fix build with ffi on Windows #17663
* [llvm] re-enable libxml2
* [llvm] fix formatting
* [llvm] overwrite version
* [mesa] update to v21.1.0
* [llvm] update ci.baseline
* [halide] update to the latest master commit
* [llvm] disable libxml2 port until complete PR #15390
* update versions
* [llvm] fix disabling of external libraries
* update version
* update ci.baseline
* update ci.baseline
* fix typo
* [llvm] fix libxml2 (depends on #17945)
* revert "[halide] update to the latest master commit"
* update versions
* [halide] fix zlib dependency for tools
* update versions
* [halide] update to official release v12.0.0
* update versions
* [halide] update to v12.0.1
* update version
* [mesa] remove llvm from defaults
* update version
* update ci.baseline
* [mesa] update to v21.1.2 and fix build with LLVM on Windows
* [llvm] allow to build libunwind project on Windows
* update versions
* [mesa] update ci.baseline.txt to disable x64-windows-static-md, may be fixed in the PR #18495