Skip to content

Commit 6ed61a5

Browse files
committed
add architectrue
1 parent 0cf0578 commit 6ed61a5

File tree

8 files changed

+218
-147
lines changed

8 files changed

+218
-147
lines changed

.github/workflows/artifacts.yml

Lines changed: 0 additions & 83 deletions
This file was deleted.

.github/workflows/hangover.yml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
name: hangover
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches:
7+
- '**'
8+
paths-ignore:
9+
- 'README.md'
10+
11+
jobs:
12+
foundations:
13+
runs-on: ubuntu-latest
14+
strategy:
15+
matrix:
16+
os: [ubuntu2204]
17+
18+
steps:
19+
- uses: actions/checkout@v1
20+
- name: free disk space
21+
run: |
22+
sudo swapoff -a
23+
sudo rm -f /swapfile
24+
sudo apt clean
25+
df -h
26+
27+
- name: Cache docker image
28+
id: cache-foundation
29+
uses: actions/cache@v4
30+
env:
31+
cache-name: cache-foundation
32+
with:
33+
path: foundation${{ matrix.os }}.tgz
34+
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles(format('.packaging/{0}/Dockerfile', matrix.os)) }}
35+
lookup-only: true
36+
37+
- name: Setup packaging
38+
if: ${{ steps.cache-foundation.outputs.cache-hit != 'true' }}
39+
run: |
40+
cp .packaging/${{ matrix.os }}/Dockerfile .
41+
42+
- name: Build package
43+
if: ${{ steps.cache-foundation.outputs.cache-hit != 'true' }}
44+
run: docker build -t foundation${{ matrix.os }} .
45+
46+
- name: Export docker image
47+
if: ${{ steps.cache-foundation.outputs.cache-hit != 'true' }}
48+
run: docker image save foundation${{ matrix.os }} | gzip -c > foundation${{ matrix.os }}.tgz
49+
50+
51+
dxvk:
52+
needs: foundations
53+
runs-on: ubuntu-latest
54+
55+
steps:
56+
- uses: actions/checkout@v4
57+
with:
58+
fetch-tags: true
59+
submodules: true
60+
fetch-depth: 16
61+
path: dxvk
62+
63+
- name: Cache docker image
64+
id: cache-foundation
65+
uses: actions/cache@v4
66+
env:
67+
cache-name: cache-foundation
68+
with:
69+
path: foundationubuntu2204.tgz
70+
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('.packaging/ubuntu2204/Dockerfile') }}
71+
72+
- name: Import docker image
73+
run: docker image load -i foundationubuntu2204.tgz
74+
75+
- name: get version
76+
run: echo DXVKVERSION=$(git -C dxvk describe --abbrev=0) >> "$GITHUB_ENV"; echo DXVKVERSION=$(git -C dxvk describe --abbrev=0)
77+
78+
- name: Setup packaging
79+
run: |
80+
cp -r dxvk/.packaging/ubuntu2204/dxvk/* dxvk
81+
82+
- name: Build package
83+
run: cd dxvk; docker build -t dxvk .
84+
85+
- name: Extract package
86+
run: docker run --rm dxvk cat /opt/dxvk/output/dxvk-${{ env.DXVKVERSION }}.tar.gz > dxvk-${{ env.DXVKVERSION }}.tar.gz
87+
88+
- name: Upload Artifact
89+
uses: actions/upload-artifact@v4
90+
with:
91+
name: dxvk-${{ env.DXVKVERSION }}.tar.gz
92+
path: dxvk-${{ env.DXVKVERSION }}.tar.gz

.github/workflows/test-build-windows.yml

Lines changed: 0 additions & 58 deletions
This file was deleted.

.packaging/ubuntu2204/Dockerfile

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
FROM ubuntu:22.04
2+
3+
ENV DEBIAN_FRONTEND=noninteractive
4+
5+
RUN cat /etc/apt/sources.list | grep -v "^#" | sed "s/^deb /deb [arch=amd64] /g" > /tmp/amd64.list && \
6+
cat /tmp/amd64.list | sed "s/\[arch=amd64\]/[arch=arm64]/g" | sed "s/archive.ubuntu.com\/ubuntu\//ports.ubuntu.com\/ubuntu-ports\//g" | grep ports.ubuntu.com > /tmp/arm64.list && \
7+
cat /tmp/amd64.list /tmp/arm64.list > /etc/apt/sources.list && \
8+
dpkg --add-architecture arm64
9+
RUN cat /etc/apt/sources.list
10+
11+
RUN apt-get update && apt-get install -y --no-install-recommends \
12+
binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu \
13+
ca-certificates nano python3 clang screen llvm lld wget curl \
14+
flex bison \
15+
libfreetype6-dev \
16+
libglib2.0-dev \
17+
libltdl-dev \
18+
libxcb1-dev \
19+
libx11-dev \
20+
librsvg2-bin \
21+
git gettext make automake autoconf pkg-config libtool gtk-doc-tools clang \
22+
dpkg-dev \
23+
libglib2.0-dev:arm64 \
24+
libfreetype6-dev:arm64 \
25+
libltdl-dev:arm64 \
26+
libxcb1-dev:arm64 \
27+
libx11-dev:arm64 \
28+
build-essential libc-dev-arm64-cross less libc-devtools libidn2-0:arm64 \
29+
libx11-dev libxinerama-dev libfreetype-dev libfontconfig-dev \
30+
cmake \
31+
libstdc++6-arm64-cross \
32+
libstdc++-12-dev-arm64-cross \
33+
libepoxy-dev:arm64 \
34+
libsdl2-dev:arm64 \
35+
ninja-build \
36+
dpkg-dev fakeroot debhelper dh-make \
37+
libxcursor-dev:arm64 \
38+
libxi-dev:arm64 \
39+
libxshmfence-dev:arm64 \
40+
libxxf86vm-dev:arm64 \
41+
libxrandr-dev:arm64 \
42+
libxrender-dev:arm64 \
43+
libxfixes-dev:arm64 \
44+
libxcomposite-dev:arm64 \
45+
libosmesa-dev:arm64 \
46+
libdbus-1-dev:arm64 \
47+
libsane-dev:arm64 \
48+
libusb-1.0-0-dev:arm64 \
49+
libv4l-dev:arm64 \
50+
libpulse-dev:arm64 \
51+
libgstreamer1.0-dev:arm64 \
52+
libgstreamer-plugins-base1.0-dev:arm64 \
53+
libgstreamer-plugins-bad1.0-dev:arm64 \
54+
libudev-dev:arm64 \
55+
libunwind-dev:arm64 \
56+
libsdl2-dev:arm64 \
57+
libfontconfig1-dev:arm64 \
58+
libkrb5-dev:arm64 \
59+
libvulkan-dev:arm64 \
60+
libgl-dev:arm64 \
61+
libgnutls28-dev:arm64 \
62+
libcups2-dev:arm64 \
63+
libxkbcommon-dev:arm64 \
64+
libxkbregistry-dev:arm64 \
65+
libwayland-dev:arm64 \
66+
meson glslang-dev glslang-tools
67+
68+
RUN cd /opt; wget https://github.com/bylaws/llvm-mingw/releases/download/20240929/llvm-mingw-20240929-ucrt-ubuntu-20.04-x86_64.tar.xz; tar -xJf llvm-mingw-20240929-ucrt-ubuntu-20.04-x86_64.tar.xz; rm *.tar.xz; mv llvm-mingw-20240929-ucrt-ubuntu-20.04-x86_64 bylaws-llvm-mingw-20240929-ucrt-ubuntu-20.04-x86_64
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
FROM foundationubuntu2204
2+
3+
RUN rm -rf /opt/dxvk; mkdir -p /opt/dxvk/output
4+
COPY ./ /opt/dxvk/
5+
RUN ls -la /opt/dxvk/
6+
ENV PATH="/opt/bylaws-llvm-mingw-20240929-ucrt-ubuntu-20.04-x86_64/bin:$PATH"
7+
RUN cd /opt/dxvk; ./package-release.sh $(git describe --abbrev=0) /opt/dxvk/output

build-winaarch64.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
[binaries]
2+
c = 'aarch64-w64-mingw32-gcc'
3+
cpp = 'aarch64-w64-mingw32-g++'
4+
ar = 'aarch64-w64-mingw32-ar'
5+
strip = 'strip'
6+
windres = 'aarch64-w64-mingw32-windres'
7+
ld = 'aarch64-w64-mingw32-ld'
8+
widl = 'aarch64-w64-mingw32-widl'
9+
pkgconfig = 'aarch64-linux-gnu-pkg-config'
10+
11+
[host_machine]
12+
system = 'windows'
13+
cpu_family = 'aarch64'
14+
cpu = 'aarch64'
15+
endian = 'little'

build-winarm64ec.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
[binaries]
2+
c = 'arm64ec-w64-mingw32-gcc'
3+
cpp = 'arm64ec-w64-mingw32-g++'
4+
ar = 'arm64ec-w64-mingw32-ar'
5+
strip = 'strip'
6+
windres = 'arm64ec-w64-mingw32-windres'
7+
ld = 'arm64ec-w64-mingw32-ld'
8+
widl = 'arm64ec-w64-mingw32-widl'
9+
pkgconfig = 'aarch64-linux-gnu-pkg-config'
10+
11+
[host_machine]
12+
system = 'windows'
13+
cpu_family = 'aarch64'
14+
cpu = 'aarch64'
15+
endian = 'little'

0 commit comments

Comments
 (0)