Add vulkan variant
This commit is contained in:
parent
1bcdb1726e
commit
8ac2985059
7 changed files with 73 additions and 3 deletions
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
|
@ -57,7 +57,7 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
target: [win64]
|
||||
variant: [gpl,lgpl,gpl-4.3,lgpl-4.3]
|
||||
variant: [gpl,lgpl,gpl-vulkan,lgpl-vulkan,gpl-4.3,lgpl-4.3]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
@ -82,7 +82,7 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
target: [win64]
|
||||
variant: [gpl,lgpl,gpl-4.3,lgpl-4.3]
|
||||
variant: [gpl,lgpl,gpl-vulkan,lgpl-vulkan,gpl-4.3,lgpl-4.3]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
|
|
@ -5,7 +5,7 @@ ENV DEBIAN_FRONTEND noninteractive
|
|||
RUN \
|
||||
apt-get -y update && \
|
||||
apt-get -y dist-upgrade && \
|
||||
apt-get -y install build-essential yasm nasm pkg-config git curl wget cmake unzip subversion autoconf automake libtool cmake clang texinfo texi2html gperf ragel libc6-dev gawk meson ninja-build && \
|
||||
apt-get -y install build-essential yasm nasm pkg-config git curl wget cmake unzip subversion autoconf automake libtool cmake clang texinfo texi2html gperf ragel libc6-dev gawk meson ninja-build p7zip-full && \
|
||||
apt-get -y clean
|
||||
|
||||
ADD run_stage.sh /usr/bin/run_stage
|
||||
|
|
56
scripts.d/45-vulkan.sh
Executable file
56
scripts.d/45-vulkan.sh
Executable file
|
@ -0,0 +1,56 @@
|
|||
#!/bin/bash
|
||||
|
||||
LUNARG_VERSION="1.2.148.1"
|
||||
LUNARG_SRC="https://sdk.lunarg.com/sdk/download/${LUNARG_VERSION}/windows/VulkanSDK-${LUNARG_VERSION}-Installer.exe"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $VARIANT != *vulkan* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
to_df "ADD $SELF /stage.sh"
|
||||
to_df "RUN run_stage"
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
mkdir vulkan && cd vulkan
|
||||
|
||||
if [[ $TARGET == win64 ]]; then
|
||||
wget --no-cookies -O vulkan.exe "$LUNARG_SRC"
|
||||
7z x vulkan.exe Include/vulkan Lib/vulkan-1.lib
|
||||
|
||||
find . -type f -exec chmod 644 {} \;
|
||||
find . -type d -exec chmod 755 {} \;
|
||||
|
||||
mv Include/* "$FFBUILD_PREFIX"/include/.
|
||||
mv Lib/* "$FFBUILD_PREFIX"/lib/.
|
||||
|
||||
mkdir -p "$FFBUILD_PREFIX"/lib/pkgconfig
|
||||
cat > "$FFBUILD_PREFIX"/lib/pkgconfig/vulkan.pc <<EOF
|
||||
prefix=$FFBUILD_PREFIX
|
||||
libdir=\${prefix}/lib
|
||||
includedir=\${prefix}/include
|
||||
|
||||
Name: Vulkan-Loader
|
||||
Description: Vulkan Loader
|
||||
Version: $LUNARG_VERSION
|
||||
Libs: -L\${libdir} -lvulkan-1 -ladvapi32
|
||||
Cflags: -I\${includedir}
|
||||
EOF
|
||||
else
|
||||
echo "Target not supported"
|
||||
return -1
|
||||
fi
|
||||
|
||||
cd ..
|
||||
rm -rf vulkan
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-vulkan
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-vulkan
|
||||
}
|
5
variants/gpl-vulkan.sh
Normal file
5
variants/gpl-vulkan.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
FF_CONFIGURE="--enable-gpl --enable-version3"
|
||||
FF_CFLAGS=""
|
||||
FF_CXXFLAGS=""
|
||||
FF_LDFLAGS=""
|
||||
GIT_BRANCH="master"
|
5
variants/lgpl-vulkan.sh
Normal file
5
variants/lgpl-vulkan.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
FF_CONFIGURE="--enable-version3"
|
||||
FF_CFLAGS=""
|
||||
FF_CXXFLAGS=""
|
||||
FF_LDFLAGS=""
|
||||
GIT_BRANCH="master"
|
2
variants/win64-gpl-vulkan.sh
Normal file
2
variants/win64-gpl-vulkan.sh
Normal file
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
source "$(dirname "$BASH_SOURCE")/win64-gpl.sh"
|
2
variants/win64-lgpl-vulkan.sh
Normal file
2
variants/win64-lgpl-vulkan.sh
Normal file
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
source "$(dirname "$BASH_SOURCE")/win64-gpl.sh"
|
Loading…
Reference in a new issue