https://github.com/vcmi/vcmi-deps-windows
https://github.com/vcmi/vcmi-deps-windows
Last synced: 2 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/vcmi/vcmi-deps-windows
- Owner: vcmi
- Created: 2017-08-02T21:59:04.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2024-10-28T11:04:39.000Z (8 months ago)
- Last Synced: 2025-06-20T03:18:00.099Z (7 days ago)
- Size: 6.84 KB
- Stars: 0
- Watchers: 8
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pre-built Windows dependencies for [VCMI](https://github.com/vcmi/vcmi)
Built and exported by [Vcpkg](https://github.com/Microsoft/vcpkg).
## Instructions
* Install Vcpkg and it's dependencies.
* Build all required packages for one or both architectures:
```
vcpkg install tbb:x64-windows fuzzylite:x64-windows sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer[mpg123]:x64-windows boost:x64-windows qt5-base:x64-windows ffmpeg:x64-windows luajit:x64-windows qt5-translations:x64-windows enet:x64-windows
vcpkg install tbb:x86-windows fuzzylite:x86-windows sdl2:x86-windows sdl2-image:x86-windows sdl2-ttf:x86-windows sdl2-mixer[mpg123]:x86-windows boost:x86-windows qt5-base:x86-windows ffmpeg:x86-windows luajit:x86-windows qt5-translations:x86-windows enet:x86-windows
```
* Export packages so 7z archive will be produced:
```
vcpkg export tbb:x64-windows fuzzylite:x64-windows sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer:x64-windows boost:x64-windows qt5-base:x64-windows ffmpeg:x64-windows luajit:x64-windows qt5-translations:x64-windows enet:x64-windows --7zip
vcpkg export tbb:x86-windows fuzzylite:x86-windows sdl2:x86-windows sdl2-image:x86-windows sdl2-ttf:x86-windows sdl2-mixer:x86-windows boost:x86-windows qt5-base:x86-windows ffmpeg:x86-windows luajit:x86-windows qt5-translations:x86-windows enet:x86-windows --7zip
```
* Rename archives appropriately. Bevare that Vcpkg use newest MSVC available by default, but [it's possible to enforce certain version with custom triplet](https://github.com/Microsoft/vcpkg/issues/1207).
```
vcpkg-export-20170802-233045.7z -> vcpkg-export-x86-windows-v140.7z
vcpkg-export-20170802-233045.7z -> vcpkg-export-x64-windows-v140.7z
```
* Rename root directory inside archive from ```vcpkg-export-20170802-233045``` to ```vcpkg```. Can be done via command line 7-zip:
```
# Linux
7za rn vcpkg-export-x64-windows-v140.7z vcpkg-export-20170802-233045 vcpkg
# Windows. Fail for some reason.
7z.exe rn vcpkg-export-x64-windows-v140.7z vcpkg-export-20170802-233045 vcpkg* Hacks to fix issues with release build
* Remove debug section from archive under installed/x64-windows and add new empty folder debug, copy release binaries from installed/x64-windows/bin to installed/x64-windows/debug/bin and same for lib folder
* Remove TBBTargets-debug.cmake so that TBB is not aware that it has any kind of debug build during find-package or whatever
```
* Archives can be uploaded to releases using [github-release](https://github.com/aktau/github-release):
```
github-release upload --user vcmi --repo vcmi-deps-windows --tag v1 --name "vcpkg-export-x86-windows-v140.7z" --file vcpkg-export-x86-windows-v140.7z --security-token 9eatokentokentokentokentoken6e
```
* Package list can be generated with:
```
echo -e "\n| Package | Version |\n| --- | --- |"; ./vcpkg list | grep x86 | grep -v static | awk '{ print "| " $1 " | " $2 " |"}' | sed -r 's/:x86-windows//'
```