Fix v141_xp compilation

This commit is contained in:
TheTank20 2023-09-01 18:20:02 -04:00 committed by GitHub
commit a50688657d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 134 additions and 91 deletions

View File

@ -1,61 +1,61 @@
# This file is a part of the UMSKT Project # This file is a part of the UMSKT Project
# #
# Copyleft (C) 2019-2023 UMSKT Contributors (et.al.) # Copyleft (C) 2019-2023 UMSKT Contributors (et.al.)
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by # it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or # the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details. # GNU Affero General Public License for more details.
# #
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# @FileCreated by techguy16 on 07/23/2023 # @FileCreated by techguy16 on 07/23/2023
# @Maintainer techguy16 # @Maintainer techguy16
name: C/C++ CI (FreeBSD) name: C/C++ CI (FreeBSD)
on: on:
push: push:
branches: [ "master" ] branches: [ "master" ]
pull_request: pull_request:
branches: [ "master" ] branches: [ "master" ]
jobs: jobs:
build: build:
runs-on: macos-12 runs-on: macos-latest
name: build-x86_64 name: build-x86_64
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Build & Test in FreeBSD - name: Build & Test in FreeBSD
id: test id: test
uses: vmactions/freebsd-vm@v0 uses: vmactions/freebsd-vm@v0
with: with:
envs: 'MYTOKEN MYTOKEN2' envs: 'MYTOKEN MYTOKEN2'
usesh: true usesh: true
prepare: | prepare: |
pkg install -y cmake openssl git bash pkg install -y cmake openssl git bash
run: | run: |
mkdir build mkdir build
cd build cd build
cmake .. cmake ..
make make
./umskt # Execute the test here ./umskt # Execute the test here
- name: Move files to correct directory - name: Move files to correct directory
run: | run: |
mkdir -p build/actions_upload mkdir -p build/actions_upload
mv build/umskt build/actions_upload/umskt mv build/umskt build/actions_upload/umskt
- name: Upload build artifact - name: Upload build artifact
uses: actions/upload-artifact@v3.1.2 uses: actions/upload-artifact@v3.1.2
with: with:
name: UMSKT-FreeBSD name: UMSKT-FreeBSD
path: build/actions_upload path: build/actions_upload

View File

@ -53,11 +53,6 @@ jobs:
cd build/actions_upload cd build/actions_upload
./umskt ./umskt
- name: Zip artifact
run: |
cd build/actions_upload
zip -r UMSKT-macOS-${{ matrix.arch }}-static.zip umskt
- name: Upload build artifact - name: Upload build artifact
uses: actions/upload-artifact@v3.1.2 uses: actions/upload-artifact@v3.1.2
with: with:

View File

@ -30,10 +30,27 @@ jobs:
build-32bit: build-32bit:
runs-on: windows-latest runs-on: windows-latest
steps: steps:
- name: Install v141_xp # https://github.com/actions/runner-images/issues/6067#issuecomment-1213069040
uses: thepwrtank18/install-vs-components@v1.0.0 - name: Install Windows XP Support for Visual Studio
with: run: |
components: Microsoft.VisualStudio.Component.WinXP Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\"
$InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
$componentsToAdd = @(
"Microsoft.VisualStudio.Component.WinXP"
)
[string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_}
$Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache')
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
if ($process.ExitCode -eq 0)
{
Write-Host "components have been successfully added"
Get-ChildItem C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.Windows.XPSupport.*
}
else
{
Write-Host "components were not installed"
exit 1
}
- name: Download And Install 32-bit OpenSSL 3.1.2 - name: Download And Install 32-bit OpenSSL 3.1.2
run: | run: |
@ -64,7 +81,7 @@ jobs:
- name: Build UMSKT - name: Build UMSKT
working-directory: build working-directory: build
run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release /P:XPDeprecationWarning=false run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release
- name: Upload build artifact - name: Upload build artifact
uses: actions/upload-artifact@v3.1.2 uses: actions/upload-artifact@v3.1.2
@ -75,10 +92,26 @@ jobs:
build-64bit: build-64bit:
runs-on: windows-latest runs-on: windows-latest
steps: steps:
- name: Install v141_xp - name: Install Windows XP Support for Visual Studio
uses: thepwrtank18/install-vs-components@v1.0.0 run: |
with: Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\"
components: Microsoft.VisualStudio.Component.WinXP $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
$componentsToAdd = @(
"Microsoft.VisualStudio.Component.WinXP"
)
[string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_}
$Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache')
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
if ($process.ExitCode -eq 0)
{
Write-Host "components have been successfully added"
Get-ChildItem C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.Windows.XPSupport.*
}
else
{
Write-Host "components were not installed"
exit 1
}
- name: Download And Install 64-bit OpenSSL 3.1.2 - name: Download And Install 64-bit OpenSSL 3.1.2
run: | run: |
@ -103,11 +136,11 @@ jobs:
uses: threeal/cmake-action@v1.2.0 uses: threeal/cmake-action@v1.2.0
with: with:
generator: "Visual Studio 17 2022" generator: "Visual Studio 17 2022"
args: -A "x64" -T v141_xp args: -A "x64" -T "v141_xp"
- name: Build UMSKT - name: Build UMSKT
working-directory: build working-directory: build
run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release /P:XPDeprecationWarning=false run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release
- name: Upload build artifact - name: Upload build artifact
uses: actions/upload-artifact@v3.1.2 uses: actions/upload-artifact@v3.1.2

View File

@ -6,17 +6,24 @@
[![libera.chat - #mspid](https://img.shields.io/badge/libera.chat-%23mspid-brightgreen)](https://web.libera.chat/gamja/?nick=Guest?#mspid) [![libera.chat - #mspid](https://img.shields.io/badge/libera.chat-%23mspid-brightgreen)](https://web.libera.chat/gamja/?nick=Guest?#mspid)
**Build status** **Build status**
[![C/C++ CI (Linux)](https://github.com/UMSKT/UMSKT/actions/workflows/linux.yml/badge.svg)](../../actions/workflows/linux.yml)
[![C/C++ CI (Windows)](https://github.com/UMSKT/UMSKT/actions/workflows/windows.yml/badge.svg)](../../actions/workflows/windows.yml) [![C/C++ CI (Windows)](https://github.com/UMSKT/UMSKT/actions/workflows/windows.yml/badge.svg)](../../actions/workflows/windows.yml)
[![C/C++ CI (macOS)](https://github.com/UMSKT/UMSKT/actions/workflows/macos.yml/badge.svg)](../../actions/workflows/macos.yml) [![C/C++ CI (macOS)](https://github.com/UMSKT/UMSKT/actions/workflows/macos.yml/badge.svg)](../../actions/workflows/macos.yml)
[![C/C++ CI (DOS DJGPP)](https://github.com/UMSKT/UMSKT/actions/workflows/dos-djgpp.yml/badge.svg)](../../actions/workflows/freebsd.yml)
[![C/C++ CI (Linux)](https://github.com/UMSKT/UMSKT/actions/workflows/linux.yml/badge.svg)](../../actions/workflows/linux.yml)
[![C/C++ CI (FreeBSD)](https://github.com/UMSKT/UMSKT/actions/workflows/freebsd.yml/badge.svg)](../../actions/workflows/dos-djgpp.yml) [![C/C++ CI (FreeBSD)](https://github.com/UMSKT/UMSKT/actions/workflows/freebsd.yml/badge.svg)](../../actions/workflows/dos-djgpp.yml)
Plan of Action / ToDo List [![C/C++ CI (DOS DJGPP)](https://github.com/UMSKT/UMSKT/actions/workflows/dos-djgpp.yml/badge.svg)](../../actions/workflows/freebsd.yml)
------
### Plan of Action / ToDo List
In light of the recent exponential interest in this project I've decided to put updates of this project here: In light of the recent exponential interest in this project I've decided to put updates of this project here:
Please see ticket #8 for more information [Please see ticket #8 for more information](https://github.com/UMSKT/UMSKT/issues/8)
------ ------
@ -34,6 +41,7 @@ In light of the recent exponential interest in this project I've decided to put
* It all comes down to four simple steps: * It all comes down to four simple steps:
------
### **Usage** ### **Usage**
#### 1. Download the latest version of UMSKT #### 1. Download the latest version of UMSKT
@ -46,9 +54,9 @@ In light of the recent exponential interest in this project I've decided to put
* ~~Download the latest release for your operating system and architecture from [the releases page](../../releases)~~ * ~~Download the latest release for your operating system and architecture from [the releases page](../../releases)~~
* No official releases right now, use the other method to get the latest version. * No official releases right now, use the other method to get the latest version.
* **Note:** Before continuing, please ensure you have the `umskt` executable extracted. * **Note:** Before continuing, please ensure you have the `umskt` executable extracted and on UNIX-like systems, have execution permissions (`chmod +x umskt`).
#### 2. Run `umskt` to generate a key, or add `--help` to see more options. #### 2. Run `umskt` to generate a key, or add `--help` or `-h` to see more options.
#### 3. *(Activation step for `Retail` and `OEM` only)* #### 3. *(Activation step for `Retail` and `OEM` only)*
* After installation, you will be prompted to activate Windows. * After installation, you will be prompted to activate Windows.
@ -74,6 +82,7 @@ The list of people who have helped to bring the XP generation to where it is now
* TheTank20 * TheTank20
* InvoxiPlayGames * InvoxiPlayGames
* brakmic * brakmic
* techguy16
(the list will be updated to add more collaborators) (the list will be updated to add more collaborators)
@ -81,20 +90,26 @@ The list of people who have helped to bring the XP generation to where it is now
### **Development Requirements:** ### **Development Requirements:**
* `CMake, make, gcc` (`build-essential`) * `build-essential`
* `cmake`
* `make`
* `gcc`
* `g++`
* `git` * `git`
#### Build Steps: #### Build Steps:
1. `git clone` 1. `git clone https://github.com/UMSKT/UMSKT`
2. `cd build/ && cmake ../ && make` 2. `cd UMSKT/build`
3. `cmake ..`
4. `make`
----- -----
### **Known Ports** ### **Known Ports**
| Language | Author | Repo URL | | Language | Author | Repo URL |
|----------|-----------|-------------------------------------------------------| |----------|-----------|-----------------------------------------------------------|
| Rust | Alex Page | [anpage/umskt-rs](https://github.com/anpage/umskt-rs) | | Rust | Alex Page | [anpage/umskt-rs](https://github.com/anpage/umskt-rs) |
| Python | techguy16 | [techguy16/umsktpy](https://github.com/techguy16/umsktpy) | | Python | techguy16 | [techguy16/umsktpy](https://github.com/techguy16/umsktpy) |