diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b2e182cfcf..3240530166 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -111,12 +111,14 @@ stages: before_script: - export GIMP_PREFIX="${CI_PROJECT_DIR}/_install-${RUNNER}" - echo -e "\e[0Ksection_start:`date +%s`:environ[collapsed=true]\r\e[0KPreparing build environment" - - export PATH="$GIMP_PREFIX/bin:$PATH" - gcc -print-multi-os-directory 2>/dev/null | grep ./ && export LIB_DIR=$(gcc -print-multi-os-directory | sed 's/\.\.\///g') || export LIB_DIR="lib" - gcc -print-multiarch 2>/dev/null | grep . && export LIB_SUBDIR=$(echo $(gcc -print-multiarch)'/') + # Build-time vars - export PKG_CONFIG_PATH="${GIMP_PREFIX}/${LIB_DIR}/${LIB_SUBDIR}pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}" - - export LD_LIBRARY_PATH="${GIMP_PREFIX}/${LIB_DIR}/${LIB_SUBDIR}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" - export XDG_DATA_DIRS="${GIMP_PREFIX}/share:/usr/share${XDG_DATA_DIRS:+:$XDG_DATA_DIRS}" + # Runtime vars + - export PATH="${GIMP_PREFIX}/bin:$PATH" + - export LD_LIBRARY_PATH="${GIMP_PREFIX}/${LIB_DIR}/${LIB_SUBDIR}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" - export GI_TYPELIB_PATH="${GIMP_PREFIX}/${LIB_DIR}/${LIB_SUBDIR}girepository-1.0${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}" - echo -e "\e[0Ksection_end:`date +%s`:environ\r\e[0K" @@ -525,16 +527,16 @@ gimp-win-x64-cross: tags: - $RUNNER before_script: - # MSYS2 config - $MSYS_ROOT = 'C:/msys64' - $env:Path = "$MSYS_ROOT/$MSYSTEM_PREFIX/bin;$MSYS_ROOT/usr/bin;" + $env:Path - # Build-time vars # FIXME:'gimpenv' have buggy code about Windows paths. See: https://gitlab.gnome.org/GNOME/gimp/-/issues/12284 - $GIMP_PREFIX = "$PWD\_install-$MSYSTEM_PREFIX".Replace('\', '/') - Write-Output "$([char]27)[0Ksection_start:$(Get-Date -UFormat %s -Millisecond 0):win_environ[collapsed=true]$([char]13)$([char]27)[0KPreparing build environment" - - $env:Path = "$GIMP_PREFIX/bin;" + $env:Path + # Build-time vars - $env:PKG_CONFIG_PATH = "$GIMP_PREFIX/lib/pkgconfig;$MSYS_ROOT/$MSYSTEM_PREFIX/lib/pkgconfig;$MSYS_ROOT/$MSYSTEM_PREFIX/share/pkgconfig" - $env:XDG_DATA_DIRS = "$GIMP_PREFIX/share;$MSYS_ROOT/$MSYSTEM_PREFIX/share" + # Runtime vars + - $env:Path = "$GIMP_PREFIX/bin;" + $env:Path - $env:GI_TYPELIB_PATH = "$GIMP_PREFIX/lib/girepository-1.0;$MSYS_ROOT/$MSYSTEM_PREFIX/lib/girepository-1.0" - Write-Output "$([char]27)[0Ksection_end:$(Get-Date -UFormat %s -Millisecond 0):win_environ$([char]13)$([char]27)[0K" diff --git a/build/windows/1_build-deps-msys2.ps1 b/build/windows/1_build-deps-msys2.ps1 index fcbd71c31c..69ed3cf0ab 100644 --- a/build/windows/1_build-deps-msys2.ps1 +++ b/build/windows/1_build-deps-msys2.ps1 @@ -76,7 +76,7 @@ if (-not $GITLAB_CI) $GIMP_PREFIX = "$PWD\_install" } - Invoke-Expression ((Get-Content $GIMP_DIR\.gitlab-ci.yml | Select-String 'win_environ\[' -Context 0,5) -replace '> ','' -replace '- ','') + Invoke-Expression ((Get-Content $GIMP_DIR\.gitlab-ci.yml | Select-String 'win_environ\[' -Context 0,7) -replace '> ','' -replace '- ','') } diff --git a/build/windows/1_build-deps-quasimsys2.sh b/build/windows/1_build-deps-quasimsys2.sh index 1a2b2973d9..c5bfa56b84 100644 --- a/build/windows/1_build-deps-quasimsys2.sh +++ b/build/windows/1_build-deps-quasimsys2.sh @@ -94,7 +94,7 @@ echo -e "\e[0Ksection_start:`date +%s`:cross_environ[collapsed=true]\r\e[0KPrepa bash -c "source quasi-msys2/env/all.src && bash ${GIMP_DIR}build/windows/1_build-deps-quasimsys2.sh" else export GIMP_PREFIX="$PWD/_install-$(echo $MSYSTEM_PREFIX | sed 's|/||')-cross" -IFS=$'\n' VAR_ARRAY=($(cat ${GIMP_DIR}.gitlab-ci.yml | sed -n '/export PATH=/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //')) +IFS=$'\n' VAR_ARRAY=($(cat ${GIMP_DIR}.gitlab-ci.yml | sed -n '/multi-os/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //' | sed '/#/d')) IFS=$' \t\n' for VAR in "${VAR_ARRAY[@]}"; do if [[ ! "$VAR" =~ 'multiarch' ]]; then diff --git a/build/windows/2_build-gimp-msys2.ps1 b/build/windows/2_build-gimp-msys2.ps1 index b3e8176aed..1f4525f395 100644 --- a/build/windows/2_build-gimp-msys2.ps1 +++ b/build/windows/2_build-gimp-msys2.ps1 @@ -40,7 +40,7 @@ if (-not $GITLAB_CI) $GIMP_PREFIX = "$PWD\..\_install".Replace('\', '/') } - Invoke-Expression ((Get-Content .gitlab-ci.yml | Select-String 'win_environ\[' -Context 0,5) -replace '> ','' -replace '- ','') + Invoke-Expression ((Get-Content .gitlab-ci.yml | Select-String 'win_environ\[' -Context 0,7) -replace '> ','' -replace '- ','') } diff --git a/build/windows/2_build-gimp-quasimsys2.sh b/build/windows/2_build-gimp-quasimsys2.sh index 61a2bb3c69..a00c3e364e 100644 --- a/build/windows/2_build-gimp-quasimsys2.sh +++ b/build/windows/2_build-gimp-quasimsys2.sh @@ -44,7 +44,7 @@ if [ ! -d "$BUILD_DIR" ] || [ ! -d "$GIMP_PREFIX" ]; then exit 1 fi if [ -z $GITLAB_CI ]; then - IFS=$'\n' VAR_ARRAY=($(cat .gitlab-ci.yml | sed -n '/export PATH=/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //')) + IFS=$'\n' VAR_ARRAY=($(cat .gitlab-ci.yml | sed -n '/multi-os/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //' | sed '/#/d')) IFS=$' \t\n' for VAR in "${VAR_ARRAY[@]}"; do eval "$VAR" || continue @@ -67,7 +67,7 @@ echo -e "\e[0Ksection_start:`date +%s`:cross_environ[collapsed=true]\r\e[0KPrepa bash -c "source ${PARENT_DIR}quasi-msys2/env/all.src && bash build/windows/2_build-gimp-quasimsys2.sh" else export GIMP_PREFIX="$PWD/${PARENT_DIR}_install-$(echo $MSYSTEM_PREFIX | sed 's|/||')-cross" -IFS=$'\n' VAR_ARRAY=($(cat .gitlab-ci.yml | sed -n '/export PATH=/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //')) +IFS=$'\n' VAR_ARRAY=($(cat .gitlab-ci.yml | sed -n '/multi-os/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //' | sed '/#/d')) IFS=$' \t\n' for VAR in "${VAR_ARRAY[@]}"; do if [[ ! "$VAR" =~ 'multiarch' ]]; then