diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c2d73f88d4..94563336b5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -429,6 +429,10 @@ packaging-flatpak-x64: - flatpak info org.gnome.Platform - flatpak info org.gnome.Sdk + # Install LLVM/Clang + - flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo + - flatpak install --user flathub org.freedesktop.Sdk.Extension.llvm17 -y + # Print the date, since appstream depends on local timezone - date && date -u diff --git a/build/flatpak/org.gimp.GIMP-nightly.json.in b/build/flatpak/org.gimp.GIMP-nightly.json.in index a0f081d6ae..135956ce27 100644 --- a/build/flatpak/org.gimp.GIMP-nightly.json.in +++ b/build/flatpak/org.gimp.GIMP-nightly.json.in @@ -4,7 +4,18 @@ "runtime": "org.gnome.Platform", "runtime-version": "master", "sdk": "org.gnome.Sdk", + "sdk-extensions": [ + "org.freedesktop.Sdk.Extension.llvm17" + ], "command": "gimp-@GIMP_APP_VERSION@", + "build-options": { + "append-path": "/usr/lib/sdk/llvm17/bin", + "prepend-ld-library-path": "/usr/lib/sdk/llvm17/lib", + "env": { + "CC": "clang", + "CXX": "clang++" + } + }, "separate-locales": false, "rename-desktop-file": "gimp.desktop", "rename-icon": "gimp", @@ -122,7 +133,7 @@ "name": "openexr", "config-opts": [ "-DBUILD_SHARED_LIBS=ON", - "-DOPENEXR_INSTALL_EXAMPLES=OFF", + "-DOPENEXR_BUILD_EXAMPLES=OFF", "-DBUILD_TESTING=OFF", "-DOPENEXR_INSTALL_PKG_CONFIG=ON" ], @@ -198,7 +209,7 @@ "config-opts": [ "-DENABLE_GOBJECT_INTROSPECTION=OFF", "-DENABLE_CPP=OFF", - "-DOpenJPEG_DIR=/usr/lib64/openjpeg-2.3", + "-DENABLE_LIBOPENJPEG=openjpeg2", "-DENABLE_BOOST=OFF", "-DWITH_NSS3:BOOL=OFF", "-DENABLE_QT5:BOOL=OFF", @@ -225,7 +236,14 @@ ] }, { + "//": "FIX ME! aalib isn't building with Clang even with MSYS2 patches", "name": "aalib", + "build-options": { + "env": { + "CC": "gcc", + "CXX": "gcc" + } + }, "config-opts": [ "--disable-static", "--with-slang-driver=no" @@ -417,40 +435,28 @@ ] }, { - "//": "Shamelessly taken from org.octave.Octave manifest!", + "//": "Originally taken from org.octave.Octave manifest", "name": "SuiteSparse", - "no-autogen": true, - "make-args": [ - "BLAS=-lopenblas", - "LAPACK=", - "library" - ], - "make-install-args": [ - "BLAS=-lopenblas", - "LAPACK=", - "INSTALL_LIB=/app/lib", - "INSTALL_INCLUDE=/app/include/suitesparse", - "library" + "buildsystem": "cmake-ninja", + "builddir": true, + "config-opts": [ + "-DBLA_VENDOR=OpenBLAS", + "-DSUITESPARSE_USE_OPENMP=OFF", + "-DSUITESPARSE_DEMOS=OFF", + "-DCMAKE_INSTALL_LIBDIR=/app/lib", + "-DCMAKE_INSTALL_INCLUDEDIR=/app/include/suitesparse" ], "sources": [ { "type": "archive", - "url": "https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v5.13.0.tar.gz", - "sha256": "59c6ca2959623f0c69226cf9afb9a018d12a37fab3a8869db5f6d7f83b6b147d", + "url": "https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v7.6.0.tar.gz", + "sha256": "19cbeb9964ebe439413dd66d82ace1f904adc5f25d8a823c1b48c34bd0d29ea5", "x-checker-data": { "type": "anitya", "project-id": 4908, "stable-only": true, - "//": "patches don't apply. Avoiding flathubbot to spam us with broken updates", - "versions": { - "<": "6.0.0" - }, "url-template": "https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v$version.tar.gz" } - }, - { - "type": "patch", - "path": "patches/suitesparse-reduce-build.patch" } ], "modules": [ @@ -459,9 +465,8 @@ "no-autogen": true, "make-args": [ "DYNAMIC_ARCH=1", - "FC=gfortran", - "NO_CBLAS=1", - "NO_LAPACKE=1", + "DNOFORTRAN=1", + "DC_LAPACK=1", "USE_OPENMP=0" ], "make-install-args": [ diff --git a/build/flatpak/patches/suitesparse-reduce-build.patch b/build/flatpak/patches/suitesparse-reduce-build.patch deleted file mode 100644 index 16e55c9a9b..0000000000 --- a/build/flatpak/patches/suitesparse-reduce-build.patch +++ /dev/null @@ -1,119 +0,0 @@ -diff -Naur SuiteSparse-5.11.0/Makefile SuiteSparse-5.11.0.patched/Makefile ---- SuiteSparse-5.11.0/Makefile 2021-05-18 15:01:16.000000000 +0200 -+++ SuiteSparse-5.11.0.patched/Makefile 2021-07-22 02:03:40.698984882 +0200 -@@ -35,7 +35,7 @@ - endif - ( cd SPQR && $(MAKE) ) - ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' ) -- ( cd SLIP_LU && $(MAKE) ) -+# ( cd SLIP_LU && $(MAKE) ) - # ( cd PIRO_BAND && $(MAKE) ) - # ( cd SKYLINE_SVD && $(MAKE) ) - -@@ -46,27 +46,27 @@ - # (note that CSparse is not installed; CXSparse is installed instead) - install: metisinstall gbinstall moninstall - ( cd SuiteSparse_config && $(MAKE) install ) - # ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' install ) - ( cd AMD && $(MAKE) install ) -- ( cd BTF && $(MAKE) install ) -+# ( cd BTF && $(MAKE) install ) - ( cd CAMD && $(MAKE) install ) - ( cd CCOLAMD && $(MAKE) install ) - ( cd COLAMD && $(MAKE) install ) - ( cd CHOLMOD && $(MAKE) install ) -- ( cd CXSparse && $(MAKE) install ) -- ( cd LDL && $(MAKE) install ) -- ( cd KLU && $(MAKE) install ) -+# ( cd CXSparse && $(MAKE) install ) -+# ( cd LDL && $(MAKE) install ) -+# ( cd KLU && $(MAKE) install ) - ( cd UMFPACK && $(MAKE) install ) -- ( cd RBio && $(MAKE) install ) -+# ( cd RBio && $(MAKE) install ) - ifneq (,$(GPU_CONFIG)) - ( cd SuiteSparse_GPURuntime && $(MAKE) install ) - ( cd GPUQREngine && $(MAKE) install ) - endif -- ( cd SPQR && $(MAKE) install ) -+# ( cd SPQR && $(MAKE) install ) - # ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' install ) - # ( cd PIRO_BAND && $(MAKE) install ) - # ( cd SKYLINE_SVD && $(MAKE) install ) -- ( cd SLIP_LU && $(MAKE) install ) -+# ( cd SLIP_LU && $(MAKE) install ) - $(CP) README.md $(INSTALL_DOC)/SuiteSparse_README.md - chmod 644 $(INSTALL_DOC)/SuiteSparse_README.md - -@@ -110,7 +110,7 @@ - ( cd SuiteSparse_GPURuntime && $(MAKE) uninstall ) - ( cd GPUQREngine && $(MAKE) uninstall ) - ( cd SPQR && $(MAKE) uninstall ) -- ( cd SLIP_LU && $(MAKE) uninstall ) -+# ( cd SLIP_LU && $(MAKE) uninstall ) - # ( cd PIRO_BAND && $(MAKE) uninstall ) - # ( cd SKYLINE_SVD && $(MAKE) uninstall ) - ifeq (,$(MY_METIS_LIB)) -@@ -126,26 +126,26 @@ - # the static library - library: metis - ( cd SuiteSparse_config && $(MAKE) ) -- ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) -+# ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) - ( cd AMD && $(MAKE) library ) -- ( cd BTF && $(MAKE) library ) -+# ( cd BTF && $(MAKE) library ) - ( cd CAMD && $(MAKE) library ) - ( cd CCOLAMD && $(MAKE) library ) - ( cd COLAMD && $(MAKE) library ) - ( cd CHOLMOD && $(MAKE) library ) -- ( cd KLU && $(MAKE) library ) -- ( cd LDL && $(MAKE) library ) -+# ( cd KLU && $(MAKE) library ) -+# ( cd LDL && $(MAKE) library ) - ( cd UMFPACK && $(MAKE) library ) - ( cd CSparse && $(MAKE) library ) -- ( cd CXSparse && $(MAKE) library ) -- ( cd RBio && $(MAKE) library ) -+# ( cd CXSparse && $(MAKE) library ) -+# ( cd RBio && $(MAKE) library ) - ifneq (,$(GPU_CONFIG)) - ( cd SuiteSparse_GPURuntime && $(MAKE) library ) - ( cd GPUQREngine && $(MAKE) library ) - endif -- ( cd SPQR && $(MAKE) library ) -- ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) -- ( cd SLIP_LU && $(MAKE) library ) -+# ( cd SPQR && $(MAKE) library ) -+# ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' library ) -+# ( cd SLIP_LU && $(MAKE) library ) - # ( cd PIRO_BAND && $(MAKE) library ) - # ( cd SKYLINE_SVD && $(MAKE) library ) - -@@ -173,7 +173,7 @@ - endif - ( cd SPQR && $(MAKE) static ) - ( cd GraphBLAS && $(MAKE) JOBS=$(JOBS) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' static ) -- ( cd SLIP_LU && $(MAKE) static ) -+# ( cd SLIP_LU && $(MAKE) static ) - # ( cd PIRO_BAND && $(MAKE) static ) - # ( cd SKYLINE_SVD && $(MAKE) static ) - -@@ -200,7 +200,7 @@ - - ( cd SuiteSparse_GPURuntime && $(MAKE) purge ) - - ( cd GPUQREngine && $(MAKE) purge ) - - ( cd SPQR && $(MAKE) purge ) -- - ( cd SLIP_LU && $(MAKE) purge ) -+# - ( cd SLIP_LU && $(MAKE) purge ) - # - ( cd PIRO_BAND && $(MAKE) purge ) - # - ( cd SKYLINE_SVD && $(MAKE) purge ) - - $(RM) MATLAB_Tools/*/*.mex* MATLAB_Tools/spok/private/*.mex* -@@ -227,7 +227,7 @@ - - ( cd SuiteSparse_GPURuntime && $(MAKE) clean ) - - ( cd GPUQREngine && $(MAKE) clean ) - - ( cd SPQR && $(MAKE) clean ) -- - ( cd SLIP_LU && $(MAKE) clean ) -+# - ( cd SLIP_LU && $(MAKE) clean ) - # - ( cd PIRO_BAND && $(MAKE) clean ) - # - ( cd SKYLINE_SVD && $(MAKE) clean ) -