Browse Source

Update PKGBUILD files

master
Pekka Helenius 5 years ago
parent
commit
a7fa438dd2
3 changed files with 245 additions and 231 deletions
  1. +29
    -19
      arch/0-d9vk-git/PKGBUILD
  2. +29
    -20
      arch/0-dxvk-git/PKGBUILD
  3. +187
    -192
      arch/0-wine-staging-git/PKGBUILD

+ 29
- 19
arch/0-d9vk-git/PKGBUILD View File

@ -5,16 +5,28 @@ pkgname=d9vk-git
pkgver=6125834
pkgrel=1
pkgdesc="A Vulkan-based compatibility layer for Direct3D 9 which allows running 3D applications on Linux using Wine"
arch=('x86_64')
url="https://github.com/Joshua-Ashton/d9vk"
license=('zlib/libpng')
makedepends=('ninja' 'meson>=0.43' 'glslang' 'git' 'wine')
source=(
${pkgname}::"git+https://github.com/Joshua-Ashton/d9vk.git#commit=HEAD"
license=('custom:zlib/libpng')
arch=('x86_64')
conflicts=(
'd9vk-bin'
'd9vk-mingw'
'd9vk-winelib'
'd9vk-mingw-git'
'd9vk-winelib-git'
)
sha256sums=('SKIP'
'SKIP'
'b67f3a88115b1d048fb373ff6df2140c3027fe9edecccf58c1a88efce01fb738')
depends=('wine' 'vulkan-icd-loader' 'lib32-vulkan-icd-loader')
makedepends=(
'ninja'
'meson>=0.43'
'glslang'
'git'
'wine'
)
provides=('d9vk')
source=(${pkgname}::"git+https://github.com/Joshua-Ashton/d9vk.git#commit=HEAD")
sha256sums=('SKIP')
_git_branch_d9vk=master
_d9vk_commit=HEAD
@ -74,17 +86,15 @@ build() {
./package-release.sh ${pkgver} build --no-package
}
package_d9vk-git() {
depends=('vulkan-icd-loader' 'wine' 'lib32-vulkan-icd-loader')
mkdir -p "$pkgdir"/usr/share/dxvk/{x32,x64}
package() {
mkdir -p "$pkgdir"/usr/share/dxvk/{x32,x64}
cd "$srcdir/${pkgname}"
install -m0644 build/dxvk-${pkgver}/x32/d3d9.dll "$pkgdir"/usr/share/dxvk/x32/d3d9.dll
install -m0644 build/dxvk-${pkgver}/x64/d3d9.dll "$pkgdir"/usr/share/dxvk/x64/d3d9.dll
install -m0755 build/dxvk-${pkgver}/setup_dxvk.sh "$pkgdir"/usr/share/dxvk/setup_d9vk.sh
cd "$srcdir/${pkgname}"
install -m0644 build/dxvk-${pkgver}/x32/d3d9.dll "$pkgdir"/usr/share/dxvk/x32/d3d9.dll
install -m0644 build/dxvk-${pkgver}/x64/d3d9.dll "$pkgdir"/usr/share/dxvk/x64/d3d9.dll
install -m0755 build/dxvk-${pkgver}/setup_dxvk.sh "$pkgdir"/usr/share/dxvk/setup_d9vk.sh
mkdir "$pkgdir"/usr/bin
cd "$pkgdir"/usr/bin
ln -s /usr/share/dxvk/setup_d9vk.sh setup_d9vk
mkdir "$pkgdir"/usr/bin
cd "$pkgdir"/usr/bin
ln -s /usr/share/dxvk/setup_d9vk.sh setup_d9vk
}

+ 29
- 20
arch/0-dxvk-git/PKGBUILD View File

@ -3,26 +3,35 @@
pkgname=dxvk-git
_pkgname=dxvk
pkgver=0.92.7
pkgver=1.2.1.4
pkgrel=1
arch=('i686' 'x86_64')
conflicts=("dxvk-win64-bin")
provides=("dxvk" "dxvk64")
depends=('vulkan-icd-loader' 'wine')
pkgdesc="A Vulkan-based compatibility layer for Direct3D 10/11 which allows running 3D applications on Linux using Wine."
arch=('x86_64' 'i686')
url="https://github.com/doitsujin/dxvk"
license=('custom:zlib/libpng')
makedepends=('ninja' 'meson>=0.43' 'glslang' 'mingw-w64-gcc' 'git' 'wine')
arch=('x86_64')
conflicts=(
'dxvk-bin'
'dxvk-winelib-git'
'dxvk-legacy-git'
'dxvk-mingw-git'
)
depends=('wine' 'vulkan-icd-loader' 'lib32-vulkan-icd-loader')
makedepends=(
'ninja'
'meson>=0.43'
'glslang'
'mingw-w64-gcc'
'git'
'wine'
)
provides=('dxvk')
options=(!strip !buildflags staticlibs)
source=(${pkgname}::"git+https://github.com/doitsujin/dxvk.git#commit=1af96347e1c6f1f2eb11aeb11009f380fd5761ec")
source=(${pkgname}::"git+https://github.com/doitsujin/dxvk.git#commit=HEAD")
sha256sums=('SKIP')
_git_branch_dxvk=master
_dxvk_commit=1af96347e1c6f1f2eb11aeb11009f380fd5761ec
_dxvk_commit=HEAD
##############################
@ -66,22 +75,22 @@ prepare() {
# Retrieve DXVK version tag
pkgver() {
cd "${pkgname}"
printf '%s' $(git describe --long | sed 's/\-[a-z].*//; s/\-/\./; s/[a-z]//g')
cd "${pkgname}"
printf '%s' $(git describe --long --always | sed 's/\-[a-z].*//; s/\-/\./; s/[a-z]//g')
}
# Launch DXVK build script
build() {
"${srcdir}/${pkgname}"/package-release.sh ${pkgver} "${srcdir}"/build --no-package
"${srcdir}/${pkgname}"/package-release.sh ${pkgver} "${srcdir}"/build --no-package
}
# Bundle the compiled files
package() {
mkdir -p "${pkgdir}"/usr/{bin,share/dxvk}
cp -r "${srcdir}"/build/${_pkgname}-${pkgver}/* "${pkgdir}/usr/share/dxvk/"
mkdir -p "${pkgdir}"/usr/{bin,share/dxvk}
cp -r "${srcdir}"/build/${_pkgname}-${pkgver}/* "${pkgdir}/usr/share/dxvk/"
echo -e "#!/bin/sh\n/usr/share/dxvk/setup_dxvk.sh" \
> "${pkgdir}/usr/bin/setup_dxvk"
echo -e "#!/bin/sh\n/usr/share/dxvk/setup_dxvk.sh" \
> "${pkgdir}/usr/bin/setup_dxvk"
chmod +x "${pkgdir}/usr/bin/setup_dxvk"
chmod +x "${pkgdir}/usr/bin/setup_dxvk"
}

+ 187
- 192
arch/0-wine-staging-git/PKGBUILD View File

@ -1,7 +1,6 @@
# Maintainer: Pekka Helenius (~ Fincer) <fincer89 at hotmail dot com>
# Contributor: Daniel Bermond < yahoo-com: danielbermond >
# Enable Wine Staging? 1 = yes
enable_staging=0
@ -17,16 +16,15 @@ enable_64=1
provides=('wine' 'wine-git' 'wine-staging' 'wine-staging-git' 'wine-staging-dxvk-git')
if [[ enable_staging -eq 1 ]]; then
pkgname=wine-staging-git
pkgdesc="A compatibility layer for running Windows programs (staging branch, Git version)"
url="https://github.com/wine-staging/wine-staging/"
conflicts=('wine' 'wine-git' 'wine-staging')
pkgname=wine-staging-git
pkgdesc="A compatibility layer for running Windows programs (staging branch, Git version)"
url="https://github.com/wine-staging/wine-staging/"
conflicts=('wine' 'wine-git' 'wine-staging')
else
pkgname=wine-git
pkgdesc="A compatibility layer for running Windows programs (Git version)"
url="https://source.winehq.org/git/wine.git/"
conflicts=('wine' 'wine-staging' 'wine-staging-git')
pkgname=wine-git
pkgdesc="A compatibility layer for running Windows programs (Git version)"
url="https://source.winehq.org/git/wine.git/"
conflicts=('wine' 'wine-staging' 'wine-staging-git')
fi
pkgver=wine.wine.3.0.3.r0.gf5ada74b31
@ -62,7 +60,6 @@ makedepends=(
'ncurses'
'bison'
'perl'
#'fontforge'
'flex'
'gcc>=4.5.0-2'
'giflib' 'lib32-giflib'
@ -86,6 +83,7 @@ makedepends=(
'libva' 'lib32-libva'
'gst-plugins-base-libs' 'lib32-gst-plugins-base-libs'
'samba'
#'fontforge'
#'opencl-headers'
#'gcc-multilib>=4.5.0-2'
)
@ -114,229 +112,226 @@ optdepends=(
'samba'
'dosbox'
)
# lib32-libtxc_dxtn
# 'gtk3' 'lib32-gtk3'
# 'lib32-libtxc_dxtn'
# 'gtk3'
# 'lib32-gtk3'
options=('staticlibs')
source=(
wine-git::'git://source.winehq.org/git/wine.git#commit=HEAD'
'30-win32-aliases.conf'
)
wine-git::'git://source.winehq.org/git/wine.git#commit=HEAD'
'30-win32-aliases.conf'
)
md5sums=('SKIP'
'1ff4e467f59409272088d92173a0f801')
if [[ $(find ${PWD}/wine-patches -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$") ]]; then
for file in ${PWD}/wine-patches/*.{patch,diff}; do
for file in ${PWD}/wine-patches/*.{patch,diff}; do
if [[ $(echo ${file}) == *"_nostaging"* ]] && [[ enable_staging -eq 1 ]]; then
continue
fi
if [[ $(echo ${file}) == *"_nostaging"* ]] && [[ enable_staging -eq 1 ]]; then
continue
fi
if [[ $(echo ${file}) == *"_staging"* ]] && [[ enable_staging -eq 0 ]]; then
continue
fi
if [[ $(echo ${file}) == *"_staging"* ]] && [[ enable_staging -eq 0 ]]; then
continue
fi
cp ${file} . 2>/dev/null
cp ${file} . 2>/dev/null
done
p=0
for patch in $(find . -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$"); do
patches[$p]="$(basename ${patch})"
let p++
done
unset p
source+=(${source[@]} ${patches[@]})
done
p=0
for patch in $(find . -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$"); do
patches[$p]="$(basename ${patch})"
let p++
done
unset p
source+=(${source[@]} ${patches[@]})
fi
if [[ enable_staging -eq 1 ]]; then
stagingsrc=wine-staging-git::'git://github.com/wine-staging/wine-staging.git#commit=HEAD'
source+=($stagingsrc)
stagingsrc=wine-staging-git::'git://github.com/wine-staging/wine-staging.git#commit=HEAD'
source+=($stagingsrc)
fi
if [[ "$CARCH" == "i686" ]]; then
# Strip lib32 etc. on i686
_depends=(${_depends[@]/*32-*/})
makedepends=(${makedepends[@]/*32-*/} ${_depends[@]})
makedepends=(${makedepends[@]/*-multilib*/})
optdepends=(${optdepends[@]/*32-*/})
# Strip lib32 etc. on i686
_depends=(${_depends[@]/*32-*/})
makedepends=(${makedepends[@]/*32-*/} ${_depends[@]})
makedepends=(${makedepends[@]/*-multilib*/})
optdepends=(${optdepends[@]/*32-*/})
else
makedepends=(${makedepends[@]} ${_depends[@]})
makedepends=(${makedepends[@]} ${_depends[@]})
fi
pkgver() {
msg2 "Setting Wine versions..."
if [[ enable_staging -eq 1 ]]; then
cd "${srcdir}/wine-staging-git"
_staging_tag="$(git tag | sort -Vr | head -n1 | sed 's/-/./g;s/^v//')"
_staging_version="stg.$(git describe --long \
| sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//' \
| sed "s/^latest.release/${_staging_tag}/")"
fi
cd "${srcdir}/wine-git"
_wine_version="wine.$(git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g')"
if [[ enable_staging -eq 1 ]]; then
printf "%s+%s" "$_staging_version" "$_wine_version"
else
printf "%s" "$_wine_version"
fi
msg2 "Setting Wine versions..."
if [[ enable_staging -eq 1 ]]; then
cd "${srcdir}/wine-staging-git"
_staging_tag="$(git tag | sort -Vr | head -n1 | sed 's/-/./g;s/^v//')"
_staging_version="stg.$(git describe --long \
| sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//' \
| sed "s/^latest.release/${_staging_tag}/")"
fi
cd "${srcdir}/wine-git"
_wine_version="wine.$(git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g')"
if [[ enable_staging -eq 1 ]]; then
printf "%s+%s" "$_staging_version" "$_wine_version"
else
printf "%s" "$_wine_version"
fi
}
prepare() {
cd "${srcdir}/wine-git"
cd "${srcdir}/wine-git"
if [[ enable_staging -eq 0 ]]; then
git checkout ${_git_branch_wine}
fi
if [[ enable_staging -eq 0 ]]; then
git checkout ${_git_branch_wine}
fi
msg2 "Cleaning the wine source code tree..."
msg2 "Cleaning the wine source code tree..."
if [[ ${_wine_commit} == HEAD ]] && [[ enable_staging -eq 1 ]]; then
# Change back to the wine upstream commit that this version of wine-staging is based on
git checkout $(../"$pkgname"/patches/patchinstall.sh --upstream-commit)
fi
if [[ ${_wine_commit} == HEAD ]] && [[ enable_staging -eq 1 ]]; then
# Change back to the wine upstream commit that this version of wine-staging is based on
git checkout $(../"$pkgname"/patches/patchinstall.sh --upstream-commit)
fi
# Restore the wine tree to its git origin state, without wine-staging patches
#+(necessary for reapllying wine-staging patches in succedent builds,
#+otherwise the patches will fail to be reapplied)
git reset --hard ${_wine_commit} # Restore tracked files
git clean -d -x -f # Delete untracked files
# Restore the wine tree to its git origin state, without wine-staging patches
#+(necessary for reapllying wine-staging patches in succedent builds,
#+otherwise the patches will fail to be reapplied)
git reset --hard ${_wine_commit} # Restore tracked files
git clean -d -x -f # Delete untracked files
}
build() {
cd "${srcdir}"
# Delete old build dirs (from previous builds) and make new ones
rm -rf "$pkgname"-{32,64}-build
mkdir --parents "$pkgname"-32-build
if [[ enable_staging -eq 1 ]]; then
# Apply all wine-staging patches
msg2 "Applying wine-staging patches..."
./wine-staging-git/patches/patchinstall.sh DESTDIR="${srcdir}/wine-git" \
${staging_patchsets[*]}
fi
if [[ $(ls "${srcdir}"/*.{patch,diff} 2>/dev/null | wc -w) -ne 0 ]]; then
cd "${srcdir}"/wine-git
# Apply all custom patches
msg2 "Applying custom patches..."
for i in "${srcdir}"/*.{patch,diff}; do
if [[ -f ${i} ]]; then
patch -Np1 < ${i}
fi
done
fi
cd "${srcdir}"
# Build wine 64-bit
# According to the wine wiki this 64-bit/32-bit building order is mandatory
if [[ "$CARCH" = "x86_64" ]] && [[ enable_64 -eq 1 ]]; then
msg2 "Building Wine-64..."
mkdir --parents "$pkgname"-64-build
cd "$pkgname"-64-build
../wine-git/configure \
--with-x \
--without-mingw \
--with-gstreamer \
--enable-win64 \
--with-xattr \
--disable-mscoree \
--with-vulkan \
--prefix=/usr \
--libdir=/usr/lib
make
_wine32opts=(
--libdir=/usr/lib32
--with-wine64="${srcdir}/${pkgname}-64-build"
)
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
fi
# Build wine 32-bit
if [[ enable_32 -eq 1 ]]; then
msg2 "Building Wine-32..."
cd "$srcdir"/"$pkgname"-32-build
# Revert Wine commit 8f732c66ab37b54c30d63c74f7822ba1d4f04996
# Ref: https://source.winehq.org/git/wine.git/commit/8f732c66ab37b54c30d63c74f7822ba1d4f04996
CFLAGS="${CFLAGS} -fPIC" \
../wine-git/configure \
--with-x \
--without-mingw \
--with-gstreamer \
--with-xattr \
--disable-mscoree \
--with-vulkan \
"${_wine32opts[@]}" \
--prefix=/usr
make
fi
cd "${srcdir}"
# Delete old build dirs (from previous builds) and make new ones
rm -rf "$pkgname"-{32,64}-build
mkdir --parents "$pkgname"-32-build
if [[ enable_staging -eq 1 ]]; then
# Apply all wine-staging patches
msg2 "Applying wine-staging patches..."
./wine-staging-git/patches/patchinstall.sh DESTDIR="${srcdir}/wine-git" \
${staging_patchsets[*]}
fi
if [[ $(ls "${srcdir}"/*.{patch,diff} 2>/dev/null | wc -w) -ne 0 ]]; then
cd "${srcdir}"/wine-git
# Apply all custom patches
msg2 "Applying custom patches..."
for i in "${srcdir}"/*.{patch,diff}; do
if [[ -f ${i} ]]; then
patch -Np1 < ${i}
fi
done
fi
cd "${srcdir}"
# Build wine 64-bit
# According to the wine wiki this 64-bit/32-bit building order is mandatory
if [[ "$CARCH" = "x86_64" ]] && [[ enable_64 -eq 1 ]]; then
msg2 "Building Wine-64..."
mkdir --parents "$pkgname"-64-build
cd "$pkgname"-64-build
../wine-git/configure \
--with-x \
--without-mingw \
--with-gstreamer \
--enable-win64 \
--with-xattr \
--disable-mscoree \
--with-vulkan \
--prefix=/usr \
--libdir=/usr/lib
make
_wine32opts=(
--libdir=/usr/lib32
--with-wine64="${srcdir}/${pkgname}-64-build"
)
if [[ ! enable_32 -eq 1 ]] && [[ ! enable_64 -eq 1 ]]; then
msg2 "You must define at least one architecture in PKGBUILD! Aborting"
exit 1
fi
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
fi
# Build wine 32-bit
if [[ enable_32 -eq 1 ]]; then
msg2 "Building Wine-32..."
cd "$srcdir"/"$pkgname"-32-build
# Revert Wine commit 8f732c66ab37b54c30d63c74f7822ba1d4f04996
# Ref: https://source.winehq.org/git/wine.git/commit/8f732c66ab37b54c30d63c74f7822ba1d4f04996
CFLAGS="${CFLAGS} -fPIC" \
../wine-git/configure \
--with-x \
--without-mingw \
--with-gstreamer \
--with-xattr \
--disable-mscoree \
--with-vulkan \
"${_wine32opts[@]}" \
--prefix=/usr
make
fi
if [[ ! enable_32 -eq 1 ]] && [[ ! enable_64 -eq 1 ]]; then
msg2 "You must define at least one architecture in PKGBUILD! Aborting"
exit 1
fi
}
package() {
depends=(${_depends[@]})
# Package wine 32-bit
# According to the wine wiki this reverse 32-bit/64-bit packaging order is important
if [[ $enable_32 -eq 1 ]]; then
msg2 "Packaging Wine-32..."
cd "$srcdir"/"$pkgname"-32-build
if [ "$CARCH" = "i686" ]; then
depends=(${_depends[@]})
make prefix="$pkgdir/usr" install
# Package wine 32-bit
# According to the wine wiki this reverse 32-bit/64-bit packaging order is important
if [[ $enable_32 -eq 1 ]]; then
else
make prefix="${pkgdir}/usr" \
libdir="${pkgdir}/usr/lib32" \
dlldir="${pkgdir}/usr/lib32/wine" install
fi
msg2 "Packaging Wine-32..."
cd "$srcdir"/"$pkgname"-32-build
if [ "$CARCH" = "i686" ]; then
make prefix="$pkgdir/usr" install
else
make prefix="${pkgdir}/usr" \
libdir="${pkgdir}/usr/lib32" \
dlldir="${pkgdir}/usr/lib32/wine" install
fi
# Package wine 64-bit
if [[ "$CARCH" == "x86_64" ]] && [[ enable_64 -eq 1 ]]; then
msg2 "Packaging Wine-64..."
cd "$srcdir"/"$pkgname"-64-build
fi
make prefix="${pkgdir}/usr" \
libdir="${pkgdir}/usr/lib" \
dlldir="${pkgdir}/usr/lib/wine" install
# Package wine 64-bit
if [[ "$CARCH" == "x86_64" ]] && [[ enable_64 -eq 1 ]]; then
msg2 "Packaging Wine-64..."
cd "$srcdir"/"$pkgname"-64-build
if [[ enable_dxvk -eq 1 ]]; then
mv "$srcdir"/dxvk-compiled/x64/{d3d11.dll,dxgi.dll} "${pkgdir}/usr/lib/wine/fakedlls/"
chmod 644 "${pkgdir}/usr/lib/wine/fakedlls/"{d3d11.dll,dxgi.dll}
mv "$srcdir"/dxvk-compiled/x32/{d3d11.dll,dxgi.dll} "${pkgdir}/usr/lib32/wine/fakedlls/"
chmod 644 "${pkgdir}/usr/lib32/wine/fakedlls/"{d3d11.dll,dxgi.dll}
fi
make prefix="${pkgdir}/usr" \
libdir="${pkgdir}/usr/lib" \
dlldir="${pkgdir}/usr/lib/wine" install
if [[ enable_dxvk -eq 1 ]]; then
mv "$srcdir"/dxvk-compiled/x64/{d3d11.dll,dxgi.dll} "${pkgdir}/usr/lib/wine/fakedlls/"
chmod 644 "${pkgdir}/usr/lib/wine/fakedlls/"{d3d11.dll,dxgi.dll}
mv "$srcdir"/dxvk-compiled/x32/{d3d11.dll,dxgi.dll} "${pkgdir}/usr/lib32/wine/fakedlls/"
chmod 644 "${pkgdir}/usr/lib32/wine/fakedlls/"{d3d11.dll,dxgi.dll}
fi
# Font aliasing settings for Win32 applications
install -d "$pkgdir"/etc/fonts/conf.{avail,d}
install -m644 "${srcdir}/30-win32-aliases.conf" "${pkgdir}/etc/fonts/conf.avail"
ln -s ../conf.avail/30-win32-aliases.conf "${pkgdir}/etc/fonts/conf.d/30-win32-aliases.conf"
fi
# Font aliasing settings for Win32 applications
install -d "$pkgdir"/etc/fonts/conf.{avail,d}
install -m644 "${srcdir}/30-win32-aliases.conf" "${pkgdir}/etc/fonts/conf.avail"
ln -s ../conf.avail/30-win32-aliases.conf "${pkgdir}/etc/fonts/conf.d/30-win32-aliases.conf"
}
md5sums=('SKIP'
'1ff4e467f59409272088d92173a0f801')

Loading…
Cancel
Save