Browse Source

Improve patch support

master
Pekka Helenius 5 years ago
parent
commit
e09449f7ac
4 changed files with 34 additions and 9 deletions
  1. +4
    -0
      README.md
  2. +13
    -1
      arch/0-wine-staging-git/PKGBUILD
  3. +4
    -6
      arch/updatewine_arch.sh
  4. +13
    -2
      debian/wineroot/winebuild.sh

+ 4
- 0
README.md View File

@ -182,6 +182,10 @@ Folders `dxvk_disabled_patches` and `wine_disabled_patches` are just for managem
Wine patches are not related to Wine Staging patchset. You can use your custom Wine patches either with Wine Staging or vanilla Wine. Wine patches are not related to Wine Staging patchset. You can use your custom Wine patches either with Wine Staging or vanilla Wine.
### Distinguish Wine staging and non-staging patches
By using keywords `_staging` or `_nostaging` in your patch filename, you can quickly distinguish similar patches which are targeted either to Wine staging or Wine vanilla version.
---------------- ----------------
## Compiled packages are stored for later usage ## Compiled packages are stored for later usage


+ 13
- 1
arch/0-wine-staging-git/PKGBUILD View File

@ -124,7 +124,19 @@ source=(
) )
if [[ $(find ${PWD}/wine-patches -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$") ]]; then if [[ $(find ${PWD}/wine-patches -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$") ]]; then
cp -rf ${PWD}/wine-patches/*.{patch,diff} ./ 2>/dev/null
for file in ${PWD}/wine-patches/*.{patch,diff}; do
if [[ $(echo ${file}) == *"_nostaging"* ]] && [[ enable_staging -eq 1 ]]; then
continue
fi
if [[ $(echo ${file}) == *"_staging"* ]] && [[ enable_staging -eq 0 ]]; then
continue
fi
cp ${file} . 2>/dev/null
done
p=0 p=0
for patch in $(find . -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$"); do for patch in $(find . -mindepth 1 -maxdepth 1 -regex ".*\.\(patch\|diff\)$"); do
patches[$p]="$(basename ${patch})" patches[$p]="$(basename ${patch})"


+ 4
- 6
arch/updatewine_arch.sh View File

@ -378,9 +378,7 @@ function set_gitOverride() {
# Remove any existing pkg,src or tar.xz packages left by previous pacman commands # Remove any existing pkg,src or tar.xz packages left by previous pacman commands
function cleanUp() { function cleanUp() {
rm -rf ${ARCH_BUILDROOT}/*/{pkg,src,*.tar.xz}
rm -rf ${ARCH_BUILDROOT}/0-wine-staging-git/{*.patch}
rm -rf ${ARCH_BUILDROOT}/0-dxvk-git/{*.patch}
rm -rf ${ARCH_BUILDROOT}/*/{pkg,src,*.tar.xz,*.patch,*.diff}
} }
########################################################### ###########################################################
@ -511,12 +509,12 @@ checkStaging
# Check whether we have ccache installed # Check whether we have ccache installed
ccacheCheck ccacheCheck
# Prepare building environment: copy patches and create timestamped folder for compiled packages
prepare_env
# Clean all previous trash we may have # Clean all previous trash we may have
cleanUp cleanUp
# Prepare building environment: copy patches and create timestamped folder for compiled packages
prepare_env
######################### #########################
# Check Wine & DXVK dependencies, depending on whether these packages # Check Wine & DXVK dependencies, depending on whether these packages


+ 13
- 2
debian/wineroot/winebuild.sh View File

@ -427,7 +427,18 @@ function getWine() {
########## ##########
mkdir wine-{patches,32-build,32-install,64-build,64-install,package} mkdir wine-{patches,32-build,32-install,64-build,64-install,package}
cp -r ../../../wine_custom_patches/*.{patch,diff} wine-patches/ 2>/dev/null
for file in ../../../wine_custom_patches/*.{patch,diff}; do
if [[ $(echo "${file}") == *"_staging"* ]] && [[ -v NO_STAGING ]]; then
continue
fi
if [[ $(echo "${file}") == *"_nostaging"* ]] && [[ ! -v NO_STAGING ]]; then
continue
fi
cp -rf "${file}" wine-patches/ 2>/dev/null
done
WINEDIR="${WINEROOT}/wine" WINEDIR="${WINEROOT}/wine"
WINEDIR_PATCHES="${WINEROOT}/wine-patches" WINEDIR_PATCHES="${WINEROOT}/wine-patches"
@ -949,7 +960,7 @@ echo -e "\nWine 64-bit build process finished.\n"
# TODO If we do architecture separation in the future, add if check for i386 here # TODO If we do architecture separation in the future, add if check for i386 here
# Condition would be: if i386 or amd64, then # Condition would be: if i386 or amd64, then
#
#
# Purge amd64 buildtime dependencies # Purge amd64 buildtime dependencies
# On Debian, we can't have them with i386 at the same time # On Debian, we can't have them with i386 at the same time
# #


Loading…
Cancel
Save