Author SHA1 Message Date
DollyandRushaway 6f0c5c022a fix(ci): compile ubutnu and windows (#12)
Co-authored-by: Rushaway <[email protected]>
2026-07-30 16:58:09 +02:00
Maxime Leroy d8935c7961 chore(ci): shared ci workflow (#11) 2025-03-09 13:24:32 +01:00
2 changed files with 20 additions and 85 deletions
+5 -75
View File
@@ -1,4 +1,4 @@
name: Build AlliedModders extension name: Build AlliedModders Extension
on: on:
push: push:
@@ -13,77 +13,7 @@ on:
- main - main
jobs: jobs:
build: build-release-extension:
strategy: uses: srcdslab/ci-workflows/.github/workflows/shared_build_release_am_extension.yml@v1
matrix: with:
os: sdks: "css"
- ubuntu-20.04
- windows-2022
include:
- os: ubuntu-20.04
cc: clang-10
cxx: clang++-10
- os: windows-2022
cc: msvc
cxx: msvc
fail-fast: false
name: ${{ matrix.os }} - ${{ matrix.cc }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Build extension
uses: srcdslab/action-ambuild@v1
id: ambuild
with:
os: ${{ matrix.os }}
cc: ${{ matrix.cc }}
cxx: ${{ matrix.cxx }}
ambuild-ref: 'master'
mm-ref: '1.12-dev'
sm-ref: '1.12-dev'
hl2sdk-manifests-ref: 'master'
sdks: 'css'
configure-path: '../sm-ext-common/configure.py'
configure-additional-flags: '--enable-optimize --enable-auto-versioning --ext-root "../"'
- name: Upload package
uses: actions/upload-artifact@v4
with:
name: ${{ runner.os }}
path: ${{ steps.ambuild.outputs.package-path }}
if-no-files-found: error
retention-days: 14
release:
name: Github release
if: startsWith(github.ref, 'refs/tags/')
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: ./gh-artifacts
- name: Package artifacts
working-directory: gh-artifacts
run: |
version=`echo $GITHUB_REF | sed "s/refs\/tags\///"`
for platform in *; do
if [ -d "./$platform/" ]; then
cd "./$platform/"
tar -czf "../${{ github.event.repository.name }}-${platform,,}.tar.gz" -T <(ls -1)
cd -
fi
done
- name: Release packages
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: './gh-artifacts/*.tar.gz'
tag: ${{ github.ref }}
file_glob: true
+15 -10
View File
@@ -5,21 +5,26 @@ projectName = 'sendsnapshotfixer'
project = builder.LibraryProject(projectName) project = builder.LibraryProject(projectName)
project.sources += [ project.sources += [
os.path.join(Extension.ext_root, 'src', 'extension.cpp'), os.path.join(Extension.ext_root, 'src', 'extension.cpp'),
os.path.join(Extension.sm_root, 'public', 'smsdk_ext.cpp') os.path.join(Extension.sm_root, 'public', 'smsdk_ext.cpp')
] ]
for sdk_name in Extension.sdks: for sdk_name in Extension.sdks:
sdk = Extension.sdks[sdk_name] sdk = Extension.sdks[sdk_name]
if sdk['name'] in ['mock']: if sdk['name'] in ['mock']:
continue continue
for cxx in builder.targets: for cxx in builder.targets:
if not cxx.target.arch in sdk['platforms'][cxx.target.platform]: if not cxx.target.arch in sdk['platforms'][cxx.target.platform]:
continue continue
binary = Extension.HL2ExtConfig(project, builder, cxx, projectName + '.ext.' + sdk['extension'], sdk) binary = Extension.HL2ExtConfig(project, builder, cxx, projectName + '.ext.' + sdk['extension'], sdk)
Extension.AddCDetour(binary) Extension.AddCDetour(binary)
# Silence fatal errors on unrecognized Clang warning flags from CDetour
if cxx.family in ['gcc', 'clang']:
binary.compiler.cflags += ['-Wno-unknown-warning-option']
binary.compiler.cxxflags += ['-Wno-unknown-warning-option']
Extension.extensions += builder.Add(project) Extension.extensions += builder.Add(project)