mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-04 01:43:24 +00:00
build: Simplify all the arch stuff
The ARTIFACTS_SUFFIX is being dropped on building scripts because: 1) This will make possible to further simplify Installer scripts in other commit 2) There is no script that uses multi-arch _build/_install at same time on CI However, there are two use cases: to build Debian and flatpak; and, on Win, to build on CLANGARM64 and CLANG64 (?). But probably they are pretty niche. I suppose that people who build on Debian (or other dev-oriented distro) willn't want to mantain deps in two sys prefixes (pkg and GNOME runtime) + two gimp prefixes (out of sandbox and sandbox) due to huge storage use. Why someone would want to build with emulation on Win ARM64 I don't know. Anyway, people that know how to do this stuff probably can change the .sh. 3) When building locally, the contributor doesn't need to know the arch at all. Indeed, without this suffix, the scripts are inline with gimp-web-devel and prevent some first-sight confusion when reading them that I've seen on IRC. 4) These arch suffixes can be understood as '_install-*' being distributable which is not true. So, without this suffix we could make more clear what is a package (when GitLab fix the glob bug in 'expose_as' someday). --- Despite .gitlab-ci.yml not being a script, it needed to be touched too because cross scripts depends on Debian jobs due to gimp-data MR.
This commit is contained in:
parent
25734cb579
commit
e01973b911
11 changed files with 105 additions and 141 deletions
119
.gitlab-ci.yml
119
.gitlab-ci.yml
|
@ -100,8 +100,7 @@ variables:
|
||||||
GIT_DEPTH: "1"
|
GIT_DEPTH: "1"
|
||||||
GIT_SUBMODULE_STRATEGY: recursive
|
GIT_SUBMODULE_STRATEGY: recursive
|
||||||
# CI-wide Debian variables
|
# CI-wide Debian variables
|
||||||
ARTIFACTS_SUFFIX: "-x64"
|
GIMP_PREFIX: "${CI_PROJECT_DIR}/_install"
|
||||||
GIMP_PREFIX: "${CI_PROJECT_DIR}/_install${ARTIFACTS_SUFFIX}"
|
|
||||||
# Enable colorful output when supported (e.g. ninja, cppcheck)
|
# Enable colorful output when supported (e.g. ninja, cppcheck)
|
||||||
CLICOLOR_FORCE: "1"
|
CLICOLOR_FORCE: "1"
|
||||||
|
|
||||||
|
@ -261,21 +260,21 @@ deps-debian-x64:
|
||||||
- git clone $babl_branch --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/babl.git _babl
|
- git clone $babl_branch --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/babl.git _babl
|
||||||
- git clone $gegl_branch --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/gegl.git _gegl
|
- git clone $gegl_branch --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/gegl.git _gegl
|
||||||
# Build babl and GEGL
|
# Build babl and GEGL
|
||||||
- mkdir _babl/_build${ARTIFACTS_SUFFIX} && cd _babl/_build${ARTIFACTS_SUFFIX}
|
- mkdir _babl/_build && cd _babl/_build
|
||||||
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
||||||
- ninja
|
- ninja
|
||||||
- ninja install
|
- ninja install
|
||||||
- ccache --show-stats
|
- ccache --show-stats
|
||||||
- mkdir ../../_gegl/_build${ARTIFACTS_SUFFIX} && cd ../../_gegl/_build${ARTIFACTS_SUFFIX}
|
- mkdir ../../_gegl/_build && cd ../../_gegl/_build
|
||||||
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
||||||
- ninja
|
- ninja
|
||||||
- ninja install
|
- ninja install
|
||||||
- ccache --show-stats
|
- ccache --show-stats
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- _install${ARTIFACTS_SUFFIX}/
|
- _install/
|
||||||
- _babl/_build${ARTIFACTS_SUFFIX}/meson-logs/meson-log.txt
|
- _babl/_build/meson-logs/meson-log.txt
|
||||||
- _gegl/_build${ARTIFACTS_SUFFIX}/meson-logs/meson-log.txt
|
- _gegl/_build/meson-logs/meson-log.txt
|
||||||
expire_in: 2 hours
|
expire_in: 2 hours
|
||||||
|
|
||||||
gimp-debian-x64:
|
gimp-debian-x64:
|
||||||
|
@ -287,7 +286,7 @@ gimp-debian-x64:
|
||||||
image: $CI_REGISTRY_IMAGE:build-debian-latest
|
image: $CI_REGISTRY_IMAGE:build-debian-latest
|
||||||
script:
|
script:
|
||||||
# Check building
|
# Check building
|
||||||
- mkdir -p _build${ARTIFACTS_SUFFIX} && cd _build${ARTIFACTS_SUFFIX}
|
- mkdir -p _build && cd _build
|
||||||
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
- meson setup .. -Dprefix="${GIMP_PREFIX}"
|
||||||
-Dgi-docgen=enabled
|
-Dgi-docgen=enabled
|
||||||
-Dg-ir-doc=true
|
-Dg-ir-doc=true
|
||||||
|
@ -312,8 +311,8 @@ gimp-debian-x64:
|
||||||
- cd gimp-data
|
- cd gimp-data
|
||||||
- git apply -v ../build/linux/appimage/patches/0001-images-logo-Use-reverse-DNS-naming.patch
|
- git apply -v ../build/linux/appimage/patches/0001-images-logo-Use-reverse-DNS-naming.patch
|
||||||
- cd ..
|
- cd ..
|
||||||
- meson configure _build${ARTIFACTS_SUFFIX} -Drelocatable-bundle=yes -Dvector-icons=true
|
- meson configure _build -Drelocatable-bundle=yes -Dvector-icons=true
|
||||||
- cd _build${ARTIFACTS_SUFFIX}
|
- cd _build
|
||||||
- ninja
|
- ninja
|
||||||
- ninja install
|
- ninja install
|
||||||
- ccache --show-stats
|
- ccache --show-stats
|
||||||
|
@ -323,13 +322,13 @@ gimp-debian-x64:
|
||||||
expose_as: 'Linux appimage'
|
expose_as: 'Linux appimage'
|
||||||
paths:
|
paths:
|
||||||
- build/linux/appimage/_Output/
|
- build/linux/appimage/_Output/
|
||||||
- _install${ARTIFACTS_SUFFIX}/
|
- _install/
|
||||||
- _build${ARTIFACTS_SUFFIX}/meson-logs/meson-log.txt
|
- _build/meson-logs/meson-log.txt
|
||||||
- _build${ARTIFACTS_SUFFIX}/meson-dist/
|
- _build/meson-dist/
|
||||||
- _build${ARTIFACTS_SUFFIX}/config.h
|
- _build/config.h
|
||||||
- _build${ARTIFACTS_SUFFIX}/devel-docs/
|
- _build/devel-docs/
|
||||||
reports:
|
reports:
|
||||||
junit: "_build${ARTIFACTS_SUFFIX}/meson-logs/testlog.junit.xml"
|
junit: "_build/meson-logs/testlog.junit.xml"
|
||||||
expire_in: 2 days
|
expire_in: 2 days
|
||||||
|
|
||||||
.flatpak-x64:
|
.flatpak-x64:
|
||||||
|
@ -418,8 +417,8 @@ deps-win-x64-cross:
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- .local/
|
- .local/
|
||||||
- _babl/_build-x64-cross/meson-logs/meson-log.txt
|
- _babl/_build-cross/meson-logs/meson-log.txt
|
||||||
- _gegl/_build-x64-cross/meson-logs/meson-log.txt
|
- _gegl/_build-cross/meson-logs/meson-log.txt
|
||||||
expire_in: 2 hours
|
expire_in: 2 hours
|
||||||
|
|
||||||
gimp-win-x64-cross:
|
gimp-win-x64-cross:
|
||||||
|
@ -436,7 +435,7 @@ gimp-win-x64-cross:
|
||||||
expose_as: 'Windows zip'
|
expose_as: 'Windows zip'
|
||||||
paths:
|
paths:
|
||||||
- gimp-x64/
|
- gimp-x64/
|
||||||
- _build-x64-cross/meson-logs/meson-log.txt
|
- _build-cross/meson-logs/meson-log.txt
|
||||||
- done-dll.list
|
- done-dll.list
|
||||||
expire_in: 2 days
|
expire_in: 2 days
|
||||||
|
|
||||||
|
@ -485,9 +484,9 @@ deps-win-a64:
|
||||||
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- _install-a64/
|
- _install/
|
||||||
- _babl/_build-a64/meson-logs/meson-log.txt
|
- _babl/_build/meson-logs/meson-log.txt
|
||||||
- _gegl/_build-a64/meson-logs/meson-log.txt
|
- _gegl/_build/meson-logs/meson-log.txt
|
||||||
expire_in: 2 hours
|
expire_in: 2 hours
|
||||||
|
|
||||||
gimp-win-a64:
|
gimp-win-a64:
|
||||||
|
@ -502,12 +501,12 @@ gimp-win-a64:
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- gimp-a64/
|
- gimp-a64/
|
||||||
- _build-a64/meson-logs/meson-log.txt
|
- _build/meson-logs/meson-log.txt
|
||||||
- done-dll.list
|
- done-dll.list
|
||||||
# Needed by dist-installer-weekly and dist-store-weekly
|
# Needed by dist-installer-weekly and dist-store-weekly
|
||||||
- _build-a64/config.h
|
- _build/config.h
|
||||||
- _build-a64/build/windows/installer/
|
- _build/build/windows/installer/
|
||||||
- _build-a64/build/windows/store/
|
- _build/build/windows/store/
|
||||||
expire_in: 2 days
|
expire_in: 2 days
|
||||||
|
|
||||||
## WINDOWS x86_64 CI (native MSYS2) ##
|
## WINDOWS x86_64 CI (native MSYS2) ##
|
||||||
|
@ -535,7 +534,7 @@ deps-win-x64:
|
||||||
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- _install-x64/
|
- _install/
|
||||||
expire_in: 2 hours
|
expire_in: 2 hours
|
||||||
|
|
||||||
gimp-win-x64:
|
gimp-win-x64:
|
||||||
|
@ -579,7 +578,7 @@ deps-win-x86:
|
||||||
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
- C:\msys64\usr\bin\bash -lc "bash build/windows/1_build-deps-msys2.sh"
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- _install-x86/
|
- _install/
|
||||||
expire_in: 2 hours
|
expire_in: 2 hours
|
||||||
|
|
||||||
gimp-win-x86:
|
gimp-win-x86:
|
||||||
|
@ -621,8 +620,8 @@ file-plug-in-tests:
|
||||||
paths:
|
paths:
|
||||||
- _data
|
- _data
|
||||||
script:
|
script:
|
||||||
- API_VER=$(grep GIMP_PKGCONFIG_VERSION _build${ARTIFACTS_SUFFIX}/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
- API_VER=$(grep GIMP_PKGCONFIG_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
||||||
- APP_VER=$(grep GIMP_APP_VERSION _build${ARTIFACTS_SUFFIX}/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
- APP_VER=$(grep GIMP_APP_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
||||||
- pkg-config --variable=gimplibdir gimp-${API_VER} 2>/dev/null | grep . && PLUG_IN_DIR=$(echo $(pkg-config --variable=gimplibdir gimp-${API_VER})'/plug-ins/')
|
- pkg-config --variable=gimplibdir gimp-${API_VER} 2>/dev/null | grep . && PLUG_IN_DIR=$(echo $(pkg-config --variable=gimplibdir gimp-${API_VER})'/plug-ins/')
|
||||||
- export PYTHONPATH="${PLUG_IN_DIR}test-file-plug-ins"
|
- export PYTHONPATH="${PLUG_IN_DIR}test-file-plug-ins"
|
||||||
- export GIMP_TESTS_CONFIG_FILE="${PLUG_IN_DIR}test-file-plug-ins/tests/batch-config.ini"
|
- export GIMP_TESTS_CONFIG_FILE="${PLUG_IN_DIR}test-file-plug-ins/tests/batch-config.ini"
|
||||||
|
@ -675,7 +674,7 @@ cppcheck:
|
||||||
- apt-get update
|
- apt-get update
|
||||||
- apt-get install -y cppcheck
|
- apt-get install -y cppcheck
|
||||||
- cppcheck -q -j8 --enable=all --force --output-file=cppcheck.xml --xml --xml-version=2
|
- cppcheck -q -j8 --enable=all --force --output-file=cppcheck.xml --xml --xml-version=2
|
||||||
-i _build${ARTIFACTS_SUFFIX} -i _build-x64-cross -i _babl -i _gegl -i _install${ARTIFACTS_SUFFIX} -i .local -i .cache -i _ccache -i gimp-x64 .
|
-i _build -i _build-cross -i _babl -i _gegl -i _install -i .local -i .cache -i _ccache -i gimp-x64 .
|
||||||
- mkdir report
|
- mkdir report
|
||||||
- cppcheck-htmlreport --source-dir=. --title=gimp --file=cppcheck.xml --report-dir=report
|
- cppcheck-htmlreport --source-dir=. --title=gimp --file=cppcheck.xml --report-dir=report
|
||||||
artifacts:
|
artifacts:
|
||||||
|
@ -696,7 +695,7 @@ sources-debian:
|
||||||
stage: distribution
|
stage: distribution
|
||||||
cache: []
|
cache: []
|
||||||
script:
|
script:
|
||||||
- mv _build${ARTIFACTS_SUFFIX}/meson-dist/gimp-*.tar.xz .
|
- mv _build/meson-dist/gimp-*.tar.xz .
|
||||||
- FILENAME=`ls gimp-*.tar.xz` &&
|
- FILENAME=`ls gimp-*.tar.xz` &&
|
||||||
sha256sum gimp-*.tar.xz > ${FILENAME}.SHA256SUMS &&
|
sha256sum gimp-*.tar.xz > ${FILENAME}.SHA256SUMS &&
|
||||||
sha512sum gimp-*.tar.xz > ${FILENAME}.SHA512SUMS
|
sha512sum gimp-*.tar.xz > ${FILENAME}.SHA512SUMS
|
||||||
|
@ -719,36 +718,36 @@ dev-docs:
|
||||||
script:
|
script:
|
||||||
- apt-get update
|
- apt-get update
|
||||||
- apt-get install -y xz-utils
|
- apt-get install -y xz-utils
|
||||||
- BABL_VER=$(grep BABL_VERSION _babl/_build${ARTIFACTS_SUFFIX}/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
- BABL_VER=$(grep BABL_VERSION _babl/_build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
||||||
BABL_API_VER=$(grep BABL_API_VERSION _babl/_build${ARTIFACTS_SUFFIX}/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
BABL_API_VER=$(grep BABL_API_VERSION _babl/_build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
||||||
DIR_NAME=babl-api-docs-$BABL_VER &&
|
DIR_NAME=babl-api-docs-$BABL_VER &&
|
||||||
mkdir $DIR_NAME &&
|
mkdir $DIR_NAME &&
|
||||||
mv "${GIMP_PREFIX}/share/doc/babl-$BABL_API_VER" $DIR_NAME/ &&
|
mv "${GIMP_PREFIX}/share/doc/babl-$BABL_API_VER" $DIR_NAME/ &&
|
||||||
TAR_NAME="$DIR_NAME.tar.xz" &&
|
TAR_NAME="$DIR_NAME.tar.xz" &&
|
||||||
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
||||||
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
||||||
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
||||||
- GEGL_MAJ_VER=$(grep GEGL_MAJOR_VERSION _gegl/_build${ARTIFACTS_SUFFIX}/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
- GEGL_MAJ_VER=$(grep GEGL_MAJOR_VERSION _gegl/_build/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
||||||
GEGL_MIN_VER=$(grep GEGL_MINOR_VERSION _gegl/_build${ARTIFACTS_SUFFIX}/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
GEGL_MIN_VER=$(grep GEGL_MINOR_VERSION _gegl/_build/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
||||||
GEGL_MIC_VER=$(grep GEGL_MICRO_VERSION _gegl/_build${ARTIFACTS_SUFFIX}/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
GEGL_MIC_VER=$(grep GEGL_MICRO_VERSION _gegl/_build/config.h |head -1 |sed 's/^[^0-9]*\([0-9]*\).*$/\1/') &&
|
||||||
GEGL_VER="$GEGL_MAJ_VER.$GEGL_MIN_VER.$GEGL_MIC_VER" &&
|
GEGL_VER="$GEGL_MAJ_VER.$GEGL_MIN_VER.$GEGL_MIC_VER" &&
|
||||||
GEGL_API_VER="$GEGL_MAJ_VER.$GEGL_MIN_VER" &&
|
GEGL_API_VER="$GEGL_MAJ_VER.$GEGL_MIN_VER" &&
|
||||||
DIR_NAME=gegl-api-docs-$GEGL_VER &&
|
DIR_NAME=gegl-api-docs-$GEGL_VER &&
|
||||||
mkdir $DIR_NAME &&
|
mkdir $DIR_NAME &&
|
||||||
mv "${GIMP_PREFIX}/share/doc/gegl-$GEGL_API_VER" $DIR_NAME/ &&
|
mv "${GIMP_PREFIX}/share/doc/gegl-$GEGL_API_VER" $DIR_NAME/ &&
|
||||||
TAR_NAME="$DIR_NAME.tar.xz" &&
|
TAR_NAME="$DIR_NAME.tar.xz" &&
|
||||||
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
||||||
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
||||||
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
||||||
- GIMP_VER=$(grep GIMP_VERSION _build${ARTIFACTS_SUFFIX}/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
- GIMP_VER=$(grep GIMP_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/') &&
|
||||||
APP_VER=$(echo $GIMP_VER | sed 's/\([0-9]\+\.[0-9]\+\)\..*/\1/') &&
|
APP_VER=$(echo $GIMP_VER | sed 's/\([0-9]\+\.[0-9]\+\)\..*/\1/') &&
|
||||||
DIR_NAME=gimp-api-docs-$GIMP_VER &&
|
DIR_NAME=gimp-api-docs-$GIMP_VER &&
|
||||||
mkdir $DIR_NAME &&
|
mkdir $DIR_NAME &&
|
||||||
mv "${GIMP_PREFIX}/share/doc/gimp-$APP_VER" $DIR_NAME/reference &&
|
mv "${GIMP_PREFIX}/share/doc/gimp-$APP_VER" $DIR_NAME/reference &&
|
||||||
mv _build${ARTIFACTS_SUFFIX}/devel-docs/g-ir-docs $DIR_NAME/ &&
|
mv _build/devel-docs/g-ir-docs $DIR_NAME/ &&
|
||||||
TAR_NAME="$DIR_NAME.tar.xz" &&
|
TAR_NAME="$DIR_NAME.tar.xz" &&
|
||||||
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
tar --dereference -cJf ${TAR_NAME} $DIR_NAME &&
|
||||||
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
sha256sum $TAR_NAME > ${TAR_NAME}.SHA256SUMS &&
|
||||||
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
sha512sum $TAR_NAME > ${TAR_NAME}.SHA512SUMS
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
|
|
|
@ -9,24 +9,15 @@ set -e
|
||||||
|
|
||||||
# AGNOSTIC VARIABLES (only touch them to make even more portable, without casuistry)
|
# AGNOSTIC VARIABLES (only touch them to make even more portable, without casuistry)
|
||||||
|
|
||||||
## This script is arch-agnostic. The packager can specify it when calling the script
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
export ARCH=$(uname -m)
|
|
||||||
else
|
|
||||||
export ARCH=$1
|
|
||||||
fi
|
|
||||||
INSTALL_ARTIF=$(echo _install*)
|
|
||||||
BUILD_ARTIF=$(echo _build*)
|
|
||||||
|
|
||||||
## This script is "filesystem-agnostic". The packager can quickly choose either
|
## This script is "filesystem-agnostic". The packager can quickly choose either
|
||||||
## putting everything in /usr or in AppDir(root) just specifying the 2nd parameter.
|
## putting everything in /usr or in AppDir(root) just specifying the 2nd parameter.
|
||||||
GIMP_DISTRIB="$CI_PROJECT_DIR/build/linux/appimage/AppDir"
|
GIMP_DISTRIB="$CI_PROJECT_DIR/build/linux/appimage/AppDir"
|
||||||
if [ "$GITLAB_CI" ] || [ -z "$GIMP_PREFIX" ]; then
|
if [ "$GITLAB_CI" ] || [ -z "$GIMP_PREFIX" ]; then
|
||||||
GIMP_PREFIX="$GIMP_DISTRIB/usr"
|
GIMP_PREFIX="$GIMP_DISTRIB/usr"
|
||||||
fi
|
fi
|
||||||
if [ -z "$2" ] || [ "$2" = "usr" ]; then
|
if [ -z "$1" ] || [ "$1" = "usr" ]; then
|
||||||
OPT_PREFIX="${GIMP_PREFIX}"
|
OPT_PREFIX="${GIMP_PREFIX}"
|
||||||
elif [ "$2" = "AppDir" ]; then
|
elif [ "$1" = "AppDir" ]; then
|
||||||
OPT_PREFIX="${GIMP_DISTRIB}"
|
OPT_PREFIX="${GIMP_DISTRIB}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -114,7 +105,7 @@ conf_app GTK_PATH "/usr" "${LIB_DIR}/${LIB_SUBDIR}gtk-3.0"
|
||||||
conf_app GTK_IM_MODULE_FILE "/usr" "${LIB_DIR}/${LIB_SUBDIR}gtk-3.0/*.*.*"
|
conf_app GTK_IM_MODULE_FILE "/usr" "${LIB_DIR}/${LIB_SUBDIR}gtk-3.0/*.*.*"
|
||||||
|
|
||||||
## Core features
|
## Core features
|
||||||
cp -r $INSTALL_ARTIF/* $OPT_PREFIX
|
cp -r _install/* $OPT_PREFIX
|
||||||
conf_app BABL_PATH "$OPT_PREFIX" "${LIB_DIR}/${LIB_SUBDIR}babl-*"
|
conf_app BABL_PATH "$OPT_PREFIX" "${LIB_DIR}/${LIB_SUBDIR}babl-*"
|
||||||
conf_app GEGL_PATH "$OPT_PREFIX" "${LIB_DIR}/${LIB_SUBDIR}gegl-*"
|
conf_app GEGL_PATH "$OPT_PREFIX" "${LIB_DIR}/${LIB_SUBDIR}gegl-*"
|
||||||
conf_app GIMP3_SYSCONFDIR "$OPT_PREFIX" "etc/gimp/*"
|
conf_app GIMP3_SYSCONFDIR "$OPT_PREFIX" "etc/gimp/*"
|
||||||
|
@ -182,7 +173,7 @@ elif [ "$2" = "AppDir" ]; then
|
||||||
sed -i "s|OPT_PREFIX_WILD||g" $GIMP_DISTRIB/AppRun
|
sed -i "s|OPT_PREFIX_WILD||g" $GIMP_DISTRIB/AppRun
|
||||||
fi
|
fi
|
||||||
|
|
||||||
GIMP_APP_VERSION=$(grep GIMP_APP_VERSION $BUILD_ARTIF/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
GIMP_APP_VERSION=$(grep GIMP_APP_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
||||||
sed -i "s|GIMP_APP_VERSION|${GIMP_APP_VERSION}|" $GIMP_DISTRIB/AppRun
|
sed -i "s|GIMP_APP_VERSION|${GIMP_APP_VERSION}|" $GIMP_DISTRIB/AppRun
|
||||||
|
|
||||||
|
|
||||||
|
@ -203,7 +194,7 @@ fi
|
||||||
|
|
||||||
|
|
||||||
# MAKE APPIMAGE
|
# MAKE APPIMAGE
|
||||||
"./$legacy_appimagetool" --appimage-extract-and-run $GIMP_DISTRIB # -u "zsync|https://download.gimp.org/gimp/v${GIMP_APP_VERSION}/GIMP-latest-${ARCH}.AppImage.zsync"
|
"./$legacy_appimagetool" --appimage-extract-and-run $GIMP_DISTRIB # -u "zsync|https://download.gimp.org/gimp/v${GIMP_APP_VERSION}/GIMP-latest-$(uname -m).AppImage.zsync"
|
||||||
mkdir build/linux/appimage/_Output
|
mkdir build/linux/appimage/_Output
|
||||||
GIMP_VERSION=$(grep GIMP_VERSION $BUILD_ARTIF/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
GIMP_VERSION=$(grep GIMP_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
||||||
mv GNU*.AppImage build/linux/appimage/_Output/GIMP-${GIMP_VERSION}-${ARCH}.AppImage
|
mv GNU*.AppImage build/linux/appimage/_Output/GIMP-${GIMP_VERSION}-$(uname -m).AppImage
|
||||||
|
|
|
@ -1,14 +1,10 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# Flatpak design mandates to build natively
|
|
||||||
ARCH=$(uname -m)
|
|
||||||
|
|
||||||
|
|
||||||
# Install part of the deps
|
# Install part of the deps
|
||||||
if [ -z "$GITLAB_CI" ]; then
|
if [ -z "$GITLAB_CI" ]; then
|
||||||
flatpak update -y
|
flatpak update -y
|
||||||
flatpak remote-add --if-not-exists --user --from gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
|
flatpak remote-add --if-not-exists --user --from gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
|
||||||
flatpak install --user gnome-nightly org.gnome.Platform/$ARCH/master org.gnome.Sdk/$ARCH/master -y
|
flatpak install --user gnome-nightly org.gnome.Platform/$(uname -m)/master org.gnome.Sdk/$(uname -m)/master -y
|
||||||
fi
|
fi
|
||||||
flatpak remote-add --if-not-exists --user --from flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
flatpak remote-add --if-not-exists --user --from flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
flatpak install --user flathub org.freedesktop.Sdk.Extension.llvm18 -y
|
flatpak install --user flathub org.freedesktop.Sdk.Extension.llvm18 -y
|
||||||
|
@ -22,7 +18,7 @@ if [ -z "$GITLAB_CI" ] && [ "$1" != '--ci' ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if [ -z "$GIMP_PREFIX" ]; then
|
if [ -z "$GIMP_PREFIX" ]; then
|
||||||
export GIMP_PREFIX="$PWD/../_install-$ARCH"
|
export GIMP_PREFIX="$PWD/../_install"
|
||||||
fi
|
fi
|
||||||
if [ ! -d "$GIMP_PREFIX" ]; then
|
if [ ! -d "$GIMP_PREFIX" ]; then
|
||||||
mkdir -p "$GIMP_PREFIX"
|
mkdir -p "$GIMP_PREFIX"
|
||||||
|
@ -33,7 +29,7 @@ if [ -z "$GITLAB_CI" ] && [ "$1" != '--ci' ]; then
|
||||||
|
|
||||||
|
|
||||||
elif [ "$GITLAB_CI" ] || [ "$1" = '--ci' ]; then
|
elif [ "$GITLAB_CI" ] || [ "$1" = '--ci' ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install-$ARCH"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
|
|
||||||
# (The deps building is too long and no complete output would be collected,
|
# (The deps building is too long and no complete output would be collected,
|
||||||
# even from GitLab runner messages. So, let's silent and save logs as a file.)
|
# even from GitLab runner messages. So, let's silent and save logs as a file.)
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# Flatpak design mandates to build natively
|
|
||||||
ARCH=$(uname -m)
|
|
||||||
|
|
||||||
|
|
||||||
if [ -z "$GITLAB_CI" ] && [ "$1" != '--ci' ]; then
|
if [ -z "$GITLAB_CI" ] && [ "$1" != '--ci' ]; then
|
||||||
# Make the script work locally
|
# Make the script work locally
|
||||||
if [ "$0" != 'build/linux/flatpak/2_build-gimp-flatpak.sh' ]; then
|
if [ "$0" != 'build/linux/flatpak/2_build-gimp-flatpak.sh' ]; then
|
||||||
|
@ -12,25 +8,25 @@ if [ -z "$GITLAB_CI" ] && [ "$1" != '--ci' ]; then
|
||||||
fi
|
fi
|
||||||
git submodule update --init
|
git submodule update --init
|
||||||
if [ -z "$GIMP_PREFIX" ]; then
|
if [ -z "$GIMP_PREFIX" ]; then
|
||||||
export GIMP_PREFIX="$PWD/../_install-$ARCH"
|
export GIMP_PREFIX="$PWD/../_install"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Build GIMP only
|
# Build GIMP only
|
||||||
if [ ! -f "_build-$ARCH/build.ninja" ]; then
|
if [ ! -f "_build/build.ninja" ]; then
|
||||||
mkdir -p _build-$ARCH && cd _build-$ARCH
|
mkdir -p _build && cd _build
|
||||||
flatpak-builder --run --ccache "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json meson setup .. -Dprefix=/app/ -Dlibdir=/app/lib/
|
flatpak-builder --run --ccache "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json meson setup .. -Dprefix=/app/ -Dlibdir=/app/lib/
|
||||||
if [ ! -f '.gitignore' ]; then
|
if [ ! -f '.gitignore' ]; then
|
||||||
echo '*' > .gitignore
|
echo '*' > .gitignore
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
cd _build-$ARCH
|
cd _build
|
||||||
fi
|
fi
|
||||||
flatpak-builder --run --ccache "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json ninja
|
flatpak-builder --run --ccache "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json ninja
|
||||||
flatpak-builder --run "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json ninja install
|
flatpak-builder --run "$GIMP_PREFIX" ../build/linux/flatpak/org.gimp.GIMP-nightly.json ninja install
|
||||||
|
|
||||||
|
|
||||||
elif [ "$GITLAB_CI" ] || [ "$1" = '--ci' ]; then
|
elif [ "$GITLAB_CI" ] || [ "$1" = '--ci' ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install-$ARCH"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
|
|
||||||
if [ "$1" != '--ci' ]; then
|
if [ "$1" != '--ci' ]; then
|
||||||
# Extract deps from previous job
|
# Extract deps from previous job
|
||||||
|
|
|
@ -55,7 +55,7 @@ export PATH="$PWD/.local/bin:$PATH"
|
||||||
export XDG_DATA_HOME="$PWD/.local/share"
|
export XDG_DATA_HOME="$PWD/.local/share"
|
||||||
crossroad w64 gimp --run="${GIMP_DIR}build/windows/1_build-deps-crossroad.sh"
|
crossroad w64 gimp --run="${GIMP_DIR}build/windows/1_build-deps-crossroad.sh"
|
||||||
else
|
else
|
||||||
export ARTIFACTS_SUFFIX="-x64-cross"
|
export ARTIFACTS_SUFFIX="-cross"
|
||||||
|
|
||||||
## Install the required (pre-built) packages for babl, GEGL and GIMP
|
## Install the required (pre-built) packages for babl, GEGL and GIMP
|
||||||
crossroad source msys2
|
crossroad source msys2
|
||||||
|
|
|
@ -2,16 +2,6 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# $MSYSTEM_CARCH and $MINGW_PACKAGE_PREFIX are defined by MSYS2.
|
|
||||||
# https://github.com/msys2/MSYS2-packages/blob/master/filesystem/msystem
|
|
||||||
if [ "$MSYSTEM_CARCH" = "aarch64" ]; then
|
|
||||||
export ARTIFACTS_SUFFIX="-a64"
|
|
||||||
elif [ "$MSYSTEM_CARCH" = "x86_64" ]; then
|
|
||||||
export ARTIFACTS_SUFFIX="-x64"
|
|
||||||
else # [ "$MSYSTEM_CARCH" = "i686" ];
|
|
||||||
export ARTIFACTS_SUFFIX="-x86"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$GITLAB_CI" ]; then
|
if [ -z "$GITLAB_CI" ]; then
|
||||||
# Make the script work locally
|
# Make the script work locally
|
||||||
if [ "$0" != "build/windows/1_build-deps-msys2.sh" ]; then
|
if [ "$0" != "build/windows/1_build-deps-msys2.sh" ]; then
|
||||||
|
@ -87,9 +77,9 @@ clone_or_pull gegl
|
||||||
# Build babl and GEGL
|
# Build babl and GEGL
|
||||||
# We need to create the condition this ugly way to not break CI
|
# We need to create the condition this ugly way to not break CI
|
||||||
if [ "$GITLAB_CI" ]; then
|
if [ "$GITLAB_CI" ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
fi
|
fi
|
||||||
## Universal variables from .gitlab-ci.yml
|
## Universal variables from .gitlab-ci.yml
|
||||||
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 '/export PATH=/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //'))
|
||||||
|
@ -101,10 +91,10 @@ done
|
||||||
configure_or_build ()
|
configure_or_build ()
|
||||||
{
|
{
|
||||||
if [ ! -f "_${1}/_build/build.ninja" ]; then
|
if [ ! -f "_${1}/_build/build.ninja" ]; then
|
||||||
mkdir -p _${1}/_build${ARTIFACTS_SUFFIX} && cd _${1}/_build${ARTIFACTS_SUFFIX}
|
mkdir -p _${1}/_build && cd _${1}/_build
|
||||||
meson setup .. -Dprefix="${GIMP_PREFIX}" $2
|
meson setup .. -Dprefix="${GIMP_PREFIX}" $2
|
||||||
else
|
else
|
||||||
cd _${1}/_build${ARTIFACTS_SUFFIX}
|
cd _${1}/_build
|
||||||
fi
|
fi
|
||||||
ninja
|
ninja
|
||||||
ninja install
|
ninja install
|
||||||
|
|
|
@ -18,25 +18,25 @@ fi
|
||||||
|
|
||||||
|
|
||||||
# FIXME: We need native/Linux gimp-console.
|
# FIXME: We need native/Linux gimp-console.
|
||||||
if [ ! -d '_build-x64' ]; then
|
if [ ! -d '_build' ]; then
|
||||||
echo -e '\033[31m(ERROR)\033[0m: Before running this script, first build GIMP natively in _build-x64'
|
echo -e '\033[31m(ERROR)\033[0m: Before running this script, first build GIMP natively in _build'
|
||||||
fi
|
fi
|
||||||
if [ ! -d "${PARENT_DIR}_install-x64" ]; then
|
if [ ! -d "${PARENT_DIR}_install" ]; then
|
||||||
echo -e "\033[31m(ERROR)\033[0m: Before running this script, first install GIMP natively in ${PARENT_DIR}_install-x64"
|
echo -e "\033[31m(ERROR)\033[0m: Before running this script, first install GIMP natively in ${PARENT_DIR}_install"
|
||||||
fi
|
fi
|
||||||
if [ ! -d '_build-x64' ] || [ ! -d "${PARENT_DIR}_install-x64" ]; then
|
if [ ! -d '_build' ] || [ ! -d "${PARENT_DIR}_install" ]; then
|
||||||
echo 'Patches are very welcome: https://gitlab.gnome.org/GNOME/gimp/-/issues/11544'
|
echo 'Patches are very welcome: https://gitlab.gnome.org/GNOME/gimp/-/issues/11544'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
GIMP_APP_VERSION=$(grep GIMP_APP_VERSION _build-x64/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
GIMP_APP_VERSION=$(grep GIMP_APP_VERSION _build/config.h | head -1 | sed 's/^.*"\([^"]*\)"$/\1/')
|
||||||
mkdir -p $PWD/${PARENT_DIR}.local/bin
|
mkdir -p $PWD/${PARENT_DIR}.local/bin
|
||||||
GIMP_CONSOLE_PATH=$PWD/${PARENT_DIR}.local/bin/gimp-console-$GIMP_APP_VERSION
|
GIMP_CONSOLE_PATH=$PWD/${PARENT_DIR}.local/bin/gimp-console-$GIMP_APP_VERSION
|
||||||
gcc -print-multi-os-directory 2>/dev/null | grep ./ && LIB_DIR=$(gcc -print-multi-os-directory | sed 's/\.\.\///g') || LIB_DIR="lib"
|
gcc -print-multi-os-directory 2>/dev/null | grep ./ && LIB_DIR=$(gcc -print-multi-os-directory | sed 's/\.\.\///g') || LIB_DIR="lib"
|
||||||
gcc -print-multiarch 2>/dev/null | grep . && LIB_SUBDIR=$(echo $(gcc -print-multiarch)'/')
|
gcc -print-multiarch 2>/dev/null | grep . && LIB_SUBDIR=$(echo $(gcc -print-multiarch)'/')
|
||||||
echo "#!/bin/sh" > $GIMP_CONSOLE_PATH
|
echo "#!/bin/sh" > $GIMP_CONSOLE_PATH
|
||||||
echo export LD_LIBRARY_PATH="$PWD/${PARENT_DIR}_install-x64/${LIB_DIR}/${LIB_SUBDIR}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" >> $GIMP_CONSOLE_PATH
|
echo export LD_LIBRARY_PATH="$PWD/${PARENT_DIR}_install/${LIB_DIR}/${LIB_SUBDIR}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" >> $GIMP_CONSOLE_PATH
|
||||||
echo export GI_TYPELIB_PATH="$PWD/${PARENT_DIR}_install-x64/${LIB_DIR}/${LIB_SUBDIR}girepository-1.0${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}" >> $GIMP_CONSOLE_PATH
|
echo export GI_TYPELIB_PATH="$PWD/${PARENT_DIR}_install/${LIB_DIR}/${LIB_SUBDIR}girepository-1.0${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}" >> $GIMP_CONSOLE_PATH
|
||||||
echo "$PWD/${PARENT_DIR}_install-x64/bin/gimp-console-$GIMP_APP_VERSION \"\$@\"" >> $GIMP_CONSOLE_PATH
|
echo "$PWD/${PARENT_DIR}_install/bin/gimp-console-$GIMP_APP_VERSION \"\$@\"" >> $GIMP_CONSOLE_PATH
|
||||||
chmod u+x $GIMP_CONSOLE_PATH
|
chmod u+x $GIMP_CONSOLE_PATH
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ export PATH="$PWD/${PARENT_DIR}.local/bin:$PWD/bin:$PATH"
|
||||||
export XDG_DATA_HOME="$PWD/${PARENT_DIR}.local/share"
|
export XDG_DATA_HOME="$PWD/${PARENT_DIR}.local/share"
|
||||||
crossroad w64 gimp --run="build/windows/2_build-gimp-crossroad.sh"
|
crossroad w64 gimp --run="build/windows/2_build-gimp-crossroad.sh"
|
||||||
else
|
else
|
||||||
export ARTIFACTS_SUFFIX="-x64-cross"
|
export ARTIFACTS_SUFFIX="-cross"
|
||||||
|
|
||||||
## The required packages for GIMP are taken from the previous job
|
## The required packages for GIMP are taken from the previous job
|
||||||
|
|
||||||
|
|
|
@ -2,16 +2,6 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# $MSYSTEM_CARCH, $MSYSTEM_PREFIX and $MINGW_PACKAGE_PREFIX are defined by MSYS2.
|
|
||||||
# https://github.com/msys2/MSYS2-packages/blob/master/filesystem/msystem
|
|
||||||
if [ "$MSYSTEM_CARCH" = "aarch64" ]; then
|
|
||||||
export ARTIFACTS_SUFFIX="-a64"
|
|
||||||
elif [ "$MSYSTEM_CARCH" = "x86_64" ]; then
|
|
||||||
export ARTIFACTS_SUFFIX="-x64"
|
|
||||||
else # [ "$MSYSTEM_CARCH" = "i686" ];
|
|
||||||
export ARTIFACTS_SUFFIX="-x86"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$GITLAB_CI" ]; then
|
if [ -z "$GITLAB_CI" ]; then
|
||||||
# Make the script work locally
|
# Make the script work locally
|
||||||
if [ "$0" != "build/windows/2_build-gimp-msys2.sh" ]; then
|
if [ "$0" != "build/windows/2_build-gimp-msys2.sh" ]; then
|
||||||
|
@ -34,9 +24,9 @@ fi
|
||||||
# Build GIMP
|
# Build GIMP
|
||||||
# We need to create the condition this ugly way to not break CI
|
# We need to create the condition this ugly way to not break CI
|
||||||
if [ "$GITLAB_CI" ]; then
|
if [ "$GITLAB_CI" ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
||||||
export GIMP_PREFIX="$PWD/../_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/../_install"
|
||||||
fi
|
fi
|
||||||
## Universal variables from .gitlab-ci.yml
|
## Universal variables from .gitlab-ci.yml
|
||||||
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 '/export PATH=/,/GI_TYPELIB_PATH}\"/p' | sed 's/ - //'))
|
||||||
|
@ -45,8 +35,8 @@ for VAR in "${VAR_ARRAY[@]}"; do
|
||||||
eval "$VAR" || continue
|
eval "$VAR" || continue
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ ! -f "_build${ARTIFACTS_SUFFIX}/build.ninja" ]; then
|
if [ ! -f "_build/build.ninja" ]; then
|
||||||
mkdir -p "_build${ARTIFACTS_SUFFIX}" && cd "_build${ARTIFACTS_SUFFIX}"
|
mkdir -p "_build" && cd "_build"
|
||||||
# We disable javascript as we are not able for the time being to add a
|
# We disable javascript as we are not able for the time being to add a
|
||||||
# javascript interpreter with GObject Introspection (GJS/spidermonkey
|
# javascript interpreter with GObject Introspection (GJS/spidermonkey
|
||||||
# and Seed/Webkit are the 2 contenders so far, but they are not
|
# and Seed/Webkit are the 2 contenders so far, but they are not
|
||||||
|
@ -61,7 +51,7 @@ if [ ! -f "_build${ARTIFACTS_SUFFIX}/build.ninja" ]; then
|
||||||
-Denable-default-bin=enabled \
|
-Denable-default-bin=enabled \
|
||||||
-Dbuild-id=org.gimp.GIMP_official $MESON_OPTIONS
|
-Dbuild-id=org.gimp.GIMP_official $MESON_OPTIONS
|
||||||
else
|
else
|
||||||
cd "_build${ARTIFACTS_SUFFIX}"
|
cd "_build"
|
||||||
fi
|
fi
|
||||||
ninja
|
ninja
|
||||||
ninja install
|
ninja install
|
||||||
|
|
|
@ -2,8 +2,10 @@
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# $MSYSTEM_CARCH and $MSYSTEM_PREFIX are defined by MSYS2.
|
# NOTE: The bundling scripts, different from building scripts, need to set
|
||||||
# https://github.com/msys2/MSYS2-packages/blob/master/filesystem/msystem
|
# the ARTIFACTS_SUFFIX, even locally: 1) to avoid confusion (bundle dirs are
|
||||||
|
# relocatable so can be copied to a machine with other arch); and 2) to our
|
||||||
|
# dist scripts fallback code be able to identify what they are distributing
|
||||||
if [ "$MSYSTEM_CARCH" = "aarch64" ]; then
|
if [ "$MSYSTEM_CARCH" = "aarch64" ]; then
|
||||||
export ARTIFACTS_SUFFIX="-a64"
|
export ARTIFACTS_SUFFIX="-a64"
|
||||||
elif [ "$CI_JOB_NAME" = "gimp-win-x64-cross" ] || [ "$MSYSTEM_CARCH" = "x86_64" ]; then
|
elif [ "$CI_JOB_NAME" = "gimp-win-x64-cross" ] || [ "$MSYSTEM_CARCH" = "x86_64" ]; then
|
||||||
|
@ -26,13 +28,13 @@ fi
|
||||||
|
|
||||||
# Bundle deps and GIMP files
|
# Bundle deps and GIMP files
|
||||||
if [[ "$CI_JOB_NAME" =~ "cross" ]]; then
|
if [[ "$CI_JOB_NAME" =~ "cross" ]]; then
|
||||||
export GIMP_PREFIX="`realpath ./_install`${ARTIFACTS_SUFFIX}-cross"
|
export GIMP_PREFIX="`realpath ./_install-cross`"
|
||||||
export MSYS_PREFIX="$GIMP_PREFIX"
|
export MSYS_PREFIX="$GIMP_PREFIX"
|
||||||
else
|
else
|
||||||
if [ "$GITLAB_CI" ]; then
|
if [ "$GITLAB_CI" ]; then
|
||||||
export GIMP_PREFIX="$PWD/_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/_install"
|
||||||
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
elif [ -z "$GITLAB_CI" ] && [ -z "$GIMP_PREFIX" ]; then
|
||||||
export GIMP_PREFIX="$PWD/../_install${ARTIFACTS_SUFFIX}"
|
export GIMP_PREFIX="$PWD/../_install"
|
||||||
fi
|
fi
|
||||||
export MSYS_PREFIX="$MSYSTEM_PREFIX"
|
export MSYS_PREFIX="$MSYSTEM_PREFIX"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -12,7 +12,7 @@ param ($GIMP_VERSION,
|
||||||
|
|
||||||
if ((-Not $GIMP_VERSION) -or (-Not $GIMP_APP_VERSION) -or (-Not $GIMP_API_VERSION))
|
if ((-Not $GIMP_VERSION) -or (-Not $GIMP_APP_VERSION) -or (-Not $GIMP_API_VERSION))
|
||||||
{
|
{
|
||||||
$CONFIG_PATH = Resolve-Path -Path "_build-*\config.h" | Select-Object -ExpandProperty Path
|
$CONFIG_PATH = '_build\config.h'
|
||||||
}
|
}
|
||||||
|
|
||||||
if (-Not $GIMP_VERSION)
|
if (-Not $GIMP_VERSION)
|
||||||
|
@ -133,7 +133,7 @@ fix_msg $INNOPATH\Languages
|
||||||
fix_msg $INNOPATH\Languages\Unofficial
|
fix_msg $INNOPATH\Languages\Unofficial
|
||||||
|
|
||||||
|
|
||||||
$gen_path = Resolve-Path -Path "_build-*\build\windows\installer" | Select-Object -ExpandProperty Path
|
$gen_path = '_build\build\windows\installer'
|
||||||
if (Test-Path -Path $gen_path)
|
if (Test-Path -Path $gen_path)
|
||||||
{
|
{
|
||||||
# Copy generated language files into the source directory
|
# Copy generated language files into the source directory
|
||||||
|
|
|
@ -14,7 +14,7 @@ Set-Alias -Name 'signtool' -Value 'C:\Program Files (x86)\Windows Kits\10\bin\10
|
||||||
|
|
||||||
|
|
||||||
# Global variables
|
# Global variables
|
||||||
$config_path = Resolve-Path -Path "_build-*\config.h" | Select-Object -ExpandProperty Path
|
$config_path = '_build\config.h'
|
||||||
|
|
||||||
## Identity Name (internal) and Display Name (in the Store)
|
## Identity Name (internal) and Display Name (in the Store)
|
||||||
$gimp_unstable = Get-Content -Path "$config_path" | Select-String 'GIMP_UNSTABLE' |
|
$gimp_unstable = Get-Content -Path "$config_path" | Select-String 'GIMP_UNSTABLE' |
|
||||||
|
@ -102,7 +102,7 @@ Configure-Arch "$arch_x64" 'x64'
|
||||||
# 2. CREATE ASSETS
|
# 2. CREATE ASSETS
|
||||||
|
|
||||||
## Copy pre-generated icons to each arch
|
## Copy pre-generated icons to each arch
|
||||||
$icons_path = Resolve-Path -Path "..\..\..\_build-*\build\windows\store\Assets"
|
$icons_path = '..\..\..\_build\build\windows\store\Assets'
|
||||||
if (Test-Path -Path "$icons_path")
|
if (Test-Path -Path "$icons_path")
|
||||||
{
|
{
|
||||||
foreach ($arch in $archsArray)
|
foreach ($arch in $archsArray)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue