Simple Windows Batch (command prompt [cmd.exe]) scripts to:
- Cygwin;
- MinGW (32-bit and 64-bit);
- MSVC 2005 (32-bit and 64-bit);
- MSVC 2022 (32-bit and 64-bit);
- OpenWatcom's DOS target (16-bit).
All .zip files in target directories (produced by cpack
from above).
From Command Prompt (cmd.exe) run:
> :: Begin `cd`'d to directory with root CMakeLists.txt
> :: Override defaults with vars
> set CYGWININSTALLDIR="C:\cygwin"
> :: MSVC 2005
> set VSINSTALLDIR="C:\PROGRA~2\Microsoft Visual Studio 8"
> set VS2022INSTALLDIR="C:\PROGRA~1\Microsoft Visual Studio\2022\Enterprise"
> set MINGW64INSTALLDIR="C:\msys64"
> [path_to_this_repo]\build_all
Which will create this data-structure:
├───build_cygwin
│ ├───projectname-0.0.5-CYGWIN.zip
│ └───_CPack_Packages
│───build_dos
│ ├───projectname-0.0.5-DOS.zip
│ └───_CPack_Packages
├───build_mingw64
│ ├───projectname-0.0.5-MINGW64_NT-10.0-22621.zip
│ └───_CPack_Packages
├───build_mingw86
│ ├───projectname-0.0.5-MINGW32_NT-10.0-22621.zip
│ └───_CPack_Packages
├───build_msvc64_2005
│ ├───projectname-0.0.5-msvc2005-win64.zip
│ └───_CPack_Packages
├───build_msvc64_2022
│ ├───projectname-0.0.5-msvc2022-win64.zip
│ └───_CPack_Packages
├───build_msvc86_2005
│ ├───projectname-0.0.5-msvc2005-win32.zip
│ └───_CPack_Packages
└───build_msvc86_2022
├───projectname-0.0.5-msvc2022-win32.zip
└───_CPack_Packages
To populate and execute gh release upload
to upload the first-level .zip files to GitHub releases, run:
> :: Add all built .zip to GitHub releases
> set RELEASE_TAG="0.0.5"
> [path_to_this_repo]\release_to_gh
From MSYS run:
# 64-bit
$ pacman -S mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja
# 32-bit
$ pacman -S --needed base-devel mingw-w64-i686-cmake mingw-w64-i686-toolchain mingw-w64-i686-ninja
Ensure you clear the INCLUDE
env var as this adversely impacts vcvarshall.bat from MSVC 2005 and 2022.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of his or her rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law.
You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.