Skip to content

Commit 7b3061f

Browse files
authored
Updated all dependencies and added pipelines
* Massive update with changes updates to all libraries and third party dependencies * Updated to python 3 * Automated build pipelines (Github Actions) * Currently Disabled: * DotNet modules * Lua scripting * Web interface (server still works, just no UI) * Fixed more build issues * Fixed performance data parsing when > 1Tb * Added option to disable TLS1.1, TLS1.2 and TLS1.3
1 parent a0bf098 commit 7b3061f

File tree

293 files changed

+36344
-192227
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

293 files changed

+36344
-192227
lines changed
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
name: Build cryptopp
3+
description: Build and cache cryptopp libraries
4+
inputs:
5+
version:
6+
description: The cryptopp version to build
7+
required: true
8+
architecture:
9+
description: The openssl architecture to build
10+
required: true
11+
outputs:
12+
path:
13+
description: The path to the cryptopp folder
14+
value: ${{ steps.path.outputs.path }}
15+
path_unix:
16+
description: The path to the cryptopp folder
17+
value: ${{ steps.path.outputs.path_unix }}
18+
runs:
19+
using: composite
20+
steps:
21+
22+
- id: versions
23+
run: |
24+
$tag_version="${{ inputs.version }}".replace('.','_')
25+
$file_version="${{ inputs.version }}".replace('.','')
26+
echo "tag_version=$tag_version" >> $env:GITHUB_OUTPUT
27+
echo "file_version=$file_version" >> $env:GITHUB_OUTPUT
28+
shell: pwsh
29+
30+
- name: Download
31+
run: |
32+
curl -L https://github.com/weidai11/cryptopp/releases/download/CRYPTOPP_${{ steps.versions.outputs.tag_version }}/cryptopp${{ steps.versions.outputs.file_version }}.zip --output cryptopp.zip
33+
mkdir cryptopp
34+
cd cryptopp
35+
7z x ..\cryptopp.zip
36+
working-directory: tmp
37+
shell: cmd
38+
39+
- id: cache
40+
uses: actions/cache@v3
41+
with:
42+
key: ${{ runner.os }}-cryptopp-${{ inputs.version }}-${{ inputs.architecture }}
43+
path: |
44+
tmp/cryptopp/*/DLL_Output/Release
45+
46+
- id: setup
47+
run: |
48+
if ("${{ inputs.architecture }}" -eq "x86") {
49+
echo "platform=win32" >> $env:GITHUB_OUTPUT
50+
} else {
51+
echo "platform=x64" >> $env:GITHUB_OUTPUT
52+
}
53+
shell: pwsh
54+
working-directory: tmp/cryptopp
55+
56+
- name: Build
57+
run: |
58+
python ../../build/python/msdev-to-dynamic.py cryptlib.vcxproj
59+
msbuild cryptlib.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
60+
msbuild cryptlib.vcxproj /p:Configuration=Debug /p:Platform=${{ steps.setup.outputs.platform }}
61+
msbuild cryptdll.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
62+
msbuild cryptdll.vcxproj /p:Configuration=Debug /p:Platform=${{ steps.setup.outputs.platform }}
63+
tree
64+
working-directory: tmp/cryptopp
65+
shell: cmd
66+
67+
- id: path
68+
run: |
69+
$path=$pwd.path
70+
$path_unix=$pwd.path.replace('\','/')
71+
echo "path=$path" >> $env:GITHUB_OUTPUT
72+
echo "path_unix=$path_unix" >> $env:GITHUB_OUTPUT
73+
shell: pwsh
74+
working-directory: tmp/cryptopp
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
name: Build openssl
3+
description: Build and cache openssl libraries
4+
inputs:
5+
version:
6+
description: The openssl version to build
7+
required: true
8+
architecture:
9+
description: The openssl architecture to build
10+
required: true
11+
outputs:
12+
path:
13+
description: The path to the openssl folder
14+
value: ${{ steps.path.outputs.path }}
15+
path_unix:
16+
description: The path to the openssl folder
17+
value: ${{ steps.path.outputs.path_unix }}
18+
runs:
19+
using: composite
20+
steps:
21+
22+
- id: setup
23+
run: |
24+
if ("${{ inputs.architecture }}" -eq "x64") {
25+
echo "cmd=VC-WIN64A" >> $env:GITHUB_OUTPUT
26+
} else {
27+
echo "cmd=VC-WIN32" >> $env:GITHUB_OUTPUT
28+
}
29+
shell: pwsh
30+
31+
- name: Download openssl
32+
run: |
33+
curl -L https://www.openssl.org/source/openssl-${{ inputs.version }}.tar.gz --output openssl.tar.gz
34+
7z x openssl.tar.gz
35+
7z x openssl.tar
36+
working-directory: tmp
37+
shell: cmd
38+
39+
- id: cache
40+
uses: actions/cache@v3
41+
with:
42+
key: ${{ runner.os }}-openssl-${{ inputs.version }}-no-shared-${{ inputs.architecture }}
43+
path: |
44+
tmp/openssl-${{ inputs.version }}/libcrypto*.*
45+
tmp/openssl-${{ inputs.version }}/libssl*.*
46+
tmp/openssl-${{ inputs.version }}/include/openssl/opensslconf.h
47+
tmp/openssl-${{ inputs.version }}/include/crypto/dso_conf.h
48+
tmp/openssl-${{ inputs.version }}/include/crypto/bn_conf.h
49+
50+
- name: Build openssl
51+
run: |
52+
perl Configure ${{ steps.setup.outputs.cmd }} no-asm no-shared
53+
nmake
54+
working-directory: tmp/openssl-${{ inputs.version }}
55+
shell: cmd
56+
if: ${{ steps.cache.outputs.cache-hit != 'true' }}
57+
58+
- id: path
59+
run: |
60+
$path=$pwd.path
61+
$path_unix=$pwd.path.replace('\','/')
62+
echo "path=$path" >> $env:GITHUB_OUTPUT
63+
echo "path_unix=$path_unix" >> $env:GITHUB_OUTPUT
64+
shell: pwsh
65+
working-directory: tmp/openssl-${{ inputs.version }}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
name: Build protobuf
3+
description: Build and cache protobuf libraries
4+
inputs:
5+
version:
6+
description: The protobuf version to build
7+
required: true
8+
architecture:
9+
description: The openssl architecture to build
10+
required: true
11+
outputs:
12+
path:
13+
description: The path to the protobuf folder
14+
value: ${{ steps.path.outputs.path }}
15+
path_unix:
16+
description: The path to the protobuf folder
17+
value: ${{ steps.path.outputs.path_unix }}
18+
runs:
19+
using: composite
20+
steps:
21+
22+
- name: Download protobuf
23+
run: |
24+
curl -L https://github.com/protocolbuffers/protobuf/releases/download/v${{ inputs.version }}/protobuf-all-${{ inputs.version }}.zip --output protobuf.zip
25+
7z x protobuf.zip
26+
working-directory: tmp
27+
shell: cmd
28+
29+
- id: cache
30+
uses: actions/cache@v3
31+
with:
32+
key: ${{ runner.os }}-protobuf-${{ inputs.version }}-${{ inputs.architecture }}
33+
path: |
34+
tmp/protobuf-${{ inputs.version }}/build/Release
35+
36+
- id: setup
37+
run: |
38+
if ("${{ inputs.architecture }}" -eq "x64") {
39+
echo "platform=x64" >> $env:GITHUB_OUTPUT
40+
} else {
41+
echo "platform=Win32" >> $env:GITHUB_OUTPUT
42+
}
43+
shell: pwsh
44+
45+
- name: Prepare
46+
run: |
47+
mkdir build
48+
cd build
49+
working-directory: tmp/protobuf-${{ inputs.version }}
50+
shell: cmd
51+
if: ${{ steps.cache.outputs.cache-hit != 'true' }}
52+
53+
- name: CMake x64
54+
run: |
55+
cmake -DBUILD_SHARED_LIBS=TRUE -G "Visual Studio 17" -A ${{ steps.setup.outputs.platform }} ..
56+
working-directory: tmp/protobuf-${{ inputs.version }}/build
57+
shell: cmd
58+
59+
- name: Build
60+
run: |
61+
msbuild libprotobuf.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
62+
msbuild libprotoc.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
63+
msbuild protoc.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
64+
msbuild libprotobuf-lite.vcxproj /p:Configuration=Release /p:Platform=${{ steps.setup.outputs.platform }}
65+
working-directory: tmp/protobuf-${{ inputs.version }}/build
66+
shell: cmd
67+
if: ${{ steps.cache.outputs.cache-hit != 'true' }}
68+
69+
- id: path
70+
run: |
71+
$path=$pwd.path
72+
$path_unix=$pwd.path.replace('\','/')
73+
echo "path=$path" >> $env:GITHUB_OUTPUT
74+
echo "path_unix=$path_unix" >> $env:GITHUB_OUTPUT
75+
shell: pwsh
76+
working-directory: tmp/protobuf-${{ inputs.version }}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Build feature
2+
3+
on:
4+
push: {}
5+
6+
7+
env:
8+
PERL_VERSION: 5.34
9+
PYTHON_VERSION: 3.11
10+
OPENSSL_VERSION: 1.1.1q
11+
PROTOBUF_VERSION: 21.6
12+
BOOST_VERSION: 1.79.0
13+
14+
jobs:
15+
build-x64:
16+
uses: ./.github/workflows/build-windows.yml
17+
with:
18+
architecture: x64
19+
build-x86:
20+
uses: ./.github/workflows/build-windows.yml
21+
with:
22+
architecture: x86

.github/workflows/build-main.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Build main
2+
3+
on:
4+
push:
5+
branches: [main]
6+
7+
env:
8+
PERL_VERSION: 5.34
9+
PYTHON_VERSION: 3.11
10+
OPENSSL_VERSION: 1.1.1q
11+
PROTOBUF_VERSION: 21.6
12+
BOOST_VERSION: 1.79.0
13+
14+
jobs:
15+
build-x64:
16+
uses: ./.github/workflows/build-windows.yml
17+
with:
18+
architecture: x64
19+
build-x86:
20+
uses: ./.github/workflows/build-windows.yml
21+
with:
22+
architecture: x86
23+
24+
release:
25+
needs: [build-x64, build-x86]
26+
uses: ./.github/workflows/release.yml
27+
28+

0 commit comments

Comments
 (0)