From ac2e2fdc27ed6613412e2c58246f2dc097dd7b21 Mon Sep 17 00:00:00 2001 From: Federico Bruni Date: Tue, 3 Jan 2023 22:07:01 +0100 Subject: [PATCH 1/2] LilyPond 2.24.0 --- org.denemo.Denemo.yaml | 47 +++++++++----------- patches/guile-1.8.8-configure.patch | 24 ---------- patches/guile-1.8.8-cve-2016-8605.patch | 54 ---------------------- patches/guile-1.8.8-deplibs.patch | 59 ------------------------- patches/guile2-never-recompile.patch | 22 +++++++++ 5 files changed, 44 insertions(+), 162 deletions(-) delete mode 100644 patches/guile-1.8.8-configure.patch delete mode 100644 patches/guile-1.8.8-cve-2016-8605.patch delete mode 100644 patches/guile-1.8.8-deplibs.patch create mode 100644 patches/guile2-never-recompile.patch diff --git a/org.denemo.Denemo.yaml b/org.denemo.Denemo.yaml index 1634b95..3e300bc 100644 --- a/org.denemo.Denemo.yaml +++ b/org.denemo.Denemo.yaml @@ -25,29 +25,25 @@ finish-args: - --env=PATH=/app/texlive/bin/x86_64-linux:/app/texlive/bin/aarch64-linux:/app/bin:/usr/bin modules: - name: guile + modules: + - name: gc + config-opts: + - --disable-docs + sources: + - type: archive + url: https://www.hboehm.info/gc/gc_source/gc-8.0.6.tar.gz + sha256: 3b4914abc9fa76593596773e4da671d7ed4d5390e3d46fbf2e5f155e121bea11 buildsystem: autotools - build-options: - cflags: "-Wno-unused-but-set-variable -Wno-misleading-indentation - -Wno-stringop-truncation -Wno-deprecated-declarations" config-opts: + - --without-threads + - --disable-networking - --disable-error-on-warning - - --disable-static - # Patches copied from https://src.fedoraproject.org/rpms/compat-guile18/tree/master sources: - type: archive - url: https://ftp.gnu.org/gnu/guile/guile-1.8.8.tar.gz - sha256: c3471fed2e72e5b04ad133bbaaf16369e8360283679bcf19800bc1b381024050 - - type: patch - path: patches/guile-1.8.8-deplibs.patch - - type: patch - path: patches/guile-1.8.8-cve-2016-8605.patch + url: https://ftp.gnu.org/gnu/guile/guile-2.2.7.tar.xz + sha256: cdf776ea5f29430b1258209630555beea6d2be5481f9da4d64986b077ff37504 - type: patch - path: patches/guile-1.8.8-configure.patch - # Files in the tarball are too old for aarch64 so we take them from the Sdk. - - type: shell - commands: - - cp -fp /usr/share/automake-*/config.{sub,guess} build-aux/ - - cp -fp /usr/share/automake-*/config.{sub,guess} guile-readline/ + path: patches/guile2-never-recompile.patch cleanup: - /include - /share/aclocal @@ -124,16 +120,17 @@ modules: - /bin/gxps - name: lilypond - buildsystem: autotools - config-opts: - - --disable-documentation + buildsystem: simple + build-commands: + - ./configure --prefix=/app --disable-documentation --enable-cairo-backend + - make + - make bytecode + - make install + - make install-bytecode sources: - type: archive - url: https://lilypond.org/download/sources/v2.22/lilypond-2.22.2.tar.gz - sha256: dde90854fa7de1012f4e1304a68617aea9ab322932ec0ce76984f60d26aa23be - - type: shell - commands: - - cp -p /usr/share/automake-*/config.{sub,guess} config/ + url: https://lilypond.org/download/sources/v2.24/lilypond-2.24.0.tar.gz + sha256: 3cedbe3b92b02569e3a6f2f0674858967b3da278d70aa3e98aef5bdcd7f78b69 build-options: arch: aarch64: diff --git a/patches/guile-1.8.8-configure.patch b/patches/guile-1.8.8-configure.patch deleted file mode 100644 index 3b04d8e..0000000 --- a/patches/guile-1.8.8-configure.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nrup a/configure.in b/configure.in ---- a/configure.in 2010-12-13 10:24:39.000000000 -0700 -+++ b/configure.in 2019-11-05 16:49:49.268231272 -0700 -@@ -1198,7 +1198,7 @@ GUILE_STRUCT_UTIMBUF - SCM_I_GSC_STACK_GROWS_UP=0 - AC_RUN_IFELSE([AC_LANG_SOURCE( - [AC_INCLUDES_DEFAULT --int -+int __attribute__ ((noipa,noline,noclone)) - find_stack_direction () - { - static char *addr = 0; -diff -Nrup a/configure b/configure ---- a/configure 2010-12-13 12:29:32.000000000 -0700 -+++ b/configure 2019-11-05 16:50:43.151922013 -0700 -@@ -18834,7 +18834,7 @@ else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ - $ac_includes_default --int -+int __attribute__ ((noipa,noinline,noclone)) - find_stack_direction () - { - static char *addr = 0; diff --git a/patches/guile-1.8.8-cve-2016-8605.patch b/patches/guile-1.8.8-cve-2016-8605.patch deleted file mode 100644 index df73a55..0000000 --- a/patches/guile-1.8.8-cve-2016-8605.patch +++ /dev/null @@ -1,54 +0,0 @@ -commit 245608911698adb3472803856019bdd5670b6614 -Author: Ludovic Courtès -Date: Tue Oct 11 10:14:26 2016 +0200 - - Remove 'umask' calls from 'mkdir'. - - Fixes . - - * libguile/filesys.c (SCM_DEFINE): Remove calls to 'umask' when MODE is - unbound; instead, use 0777 as the mode. Update docstring to clarify - this. - * doc/ref/posix.texi (File System): Adjust accordingly. - * NEWS: Mention it. - -diff --git a/libguile/filesys.c b/libguile/filesys.c -index e6e1db5..e6e37b0 100644 ---- a/libguile/filesys.c -+++ b/libguile/filesys.c -@@ -1255,26 +1255,21 @@ SCM_DEFINE (scm_getcwd, "getcwd", 0, 0, 0, - SCM_DEFINE (scm_mkdir, "mkdir", 1, 1, 0, - (SCM path, SCM mode), - "Create a new directory named by @var{path}. If @var{mode} is omitted\n" -- "then the permissions of the directory file are set using the current\n" -- "umask. Otherwise they are set to the decimal value specified with\n" -- "@var{mode}. The return value is unspecified.") -+ "then the permissions of the directory are set to @code{#o777}\n" -+ "masked with the current umask (@pxref{Processes, @code{umask}}).\n" -+ "Otherwise they are set to the value specified with @var{mode}.\n" -+ "The return value is unspecified.") - #define FUNC_NAME s_scm_mkdir - { - int rv; -- mode_t mask; -+ mode_t c_mode; - -- if (SCM_UNBNDP (mode)) -- { -- mask = umask (0); -- umask (mask); -- STRING_SYSCALL (path, c_path, rv = mkdir (c_path, 0777 ^ mask)); -- } -- else -- { -- STRING_SYSCALL (path, c_path, rv = mkdir (c_path, scm_to_uint (mode))); -- } -+ c_mode = SCM_UNBNDP (mode) ? 0777 : scm_to_uint (mode); -+ -+ STRING_SYSCALL (path, c_path, rv = mkdir (c_path, c_mode)); - if (rv != 0) - SCM_SYSERROR; -+ - return SCM_UNSPECIFIED; - } - #undef FUNC_NAME diff --git a/patches/guile-1.8.8-deplibs.patch b/patches/guile-1.8.8-deplibs.patch deleted file mode 100644 index b9fa9ca..0000000 --- a/patches/guile-1.8.8-deplibs.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff -up guile-1.8.8/guile-1.8.pc.in.deplibs guile-1.8.8/guile-1.8.pc.in ---- guile-1.8.8/guile-1.8.pc.in.deplibs 2010-12-13 18:24:39.000000000 +0100 -+++ guile-1.8.8/guile-1.8.pc.in 2011-06-16 15:37:57.614346208 +0200 -@@ -11,5 +11,6 @@ libguileinterface=@LIBGUILE_INTERFACE@ - Name: GNU Guile - Description: GNU's Ubiquitous Intelligent Language for Extension - Version: @GUILE_VERSION@ --Libs: -L${libdir} -lguile @GUILE_LIBS@ -+Libs: -L${libdir} -lguile -+Libs.private: @GUILE_LIBS@ - Cflags: -I${includedir} @GUILE_CFLAGS@ -diff -up guile-1.8.8/guile-config/guile-config.in.deplibs guile-1.8.8/guile-config/guile-config.in ---- guile-1.8.8/guile-config/guile-config.in.deplibs 2010-12-13 18:24:39.000000000 +0100 -+++ guile-1.8.8/guile-config/guile-config.in 2010-12-14 13:49:50.703230447 +0100 -@@ -152,10 +152,10 @@ - (list - (get-build-info 'CFLAGS) - (if (or (string=? libdir "/usr/lib") -- (string=? libdir "/usr/lib/")) -+ (string=? libdir "/usr/lib64")) - "" - (string-append "-L" (get-build-info 'libdir))) -- "-lguile -lltdl" -+ "-lguile" - (string-join other-flags) - - ))) -diff -up guile-1.8.8/libguile/Makefile.in.deplibs guile-1.8.8/libguile/Makefile.in ---- guile-1.8.8/libguile/Makefile.in.deplibs 2010-12-14 13:49:50.698230252 +0100 -+++ guile-1.8.8/libguile/Makefile.in 2010-12-14 13:49:50.705230526 +0100 -@@ -471,7 +471,7 @@ noinst_HEADERS = convert.i.c \ - - libguile_la_DEPENDENCIES = @LIBLOBJS@ - libguile_la_LIBADD = @LIBLOBJS@ --libguile_la_LDFLAGS = @LTLIBINTL@ -version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ -export-dynamic -no-undefined -+libguile_la_LDFLAGS = @LTLIBINTL@ -version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ -export-dynamic -no-undefined -pthread - - # These are headers visible as - pkginclude_HEADERS = gh.h -@@ -2131,8 +2131,8 @@ libpath.h: $(srcdir)/Makefile.in $(top_ - @echo '#define SCM_LIBRARY_DIR "$(pkgdatadir)/$(GUILE_EFFECTIVE_VERSION)"'>>libpath.tmp - @echo '#define SCM_SITE_DIR "$(pkgdatadir)/site"' >> libpath.tmp - @echo '#define SCM_BUILD_INFO { \' >> libpath.tmp -- @echo ' { "srcdir", "'"`cd @srcdir@; pwd`"'" }, \' >> libpath.tmp -- @echo ' { "top_srcdir", "@top_srcdir_absolute@" }, \' >> libpath.tmp -+ @echo ' { "srcdir", "" }, \' >> libpath.tmp -+ @echo ' { "top_srcdir", "" }, \' >> libpath.tmp - @echo ' { "prefix", "@prefix@" }, \' >> libpath.tmp - @echo ' { "exec_prefix", "@exec_prefix@" }, \' >> libpath.tmp - @echo ' { "bindir", "@bindir@" }, \' >> libpath.tmp -@@ -2153,7 +2153,7 @@ libpath.h: $(srcdir)/Makefile.in $(top_ - @echo ' { "guileversion", "@GUILE_VERSION@" }, \' >> libpath.tmp - @echo ' { "libguileinterface", "@LIBGUILE_INTERFACE@" }, \' \ - >> libpath.tmp -- @echo ' { "LIBS", "@GUILE_LIBS@" }, \' >> libpath.tmp -+ @echo ' { "LIBS", "" }, \' >> libpath.tmp - @echo ' { "CFLAGS", "@GUILE_CFLAGS@" }, \' >> libpath.tmp - @echo ' { "buildstamp", "'"`date`"'" }, \' >> libpath.tmp - @echo '}' >> libpath.tmp diff --git a/patches/guile2-never-recompile.patch b/patches/guile2-never-recompile.patch new file mode 100644 index 0000000..270134b --- /dev/null +++ b/patches/guile2-never-recompile.patch @@ -0,0 +1,22 @@ +diff --git a/libguile/load.c b/libguile/load.c +index c209812dc..05f47c09e 100644 +--- a/libguile/load.c ++++ b/libguile/load.c +@@ -550,6 +550,7 @@ static int + compiled_is_fresh (SCM full_filename, SCM compiled_filename, + struct stat *stat_source, struct stat *stat_compiled) + { ++ return 1; + int compiled_is_newer; + struct timespec source_mtime, compiled_mtime; + +@@ -569,8 +570,6 @@ compiled_is_fresh (SCM full_filename, SCM compiled_filename, + scm_display (compiled_filename, scm_current_warning_port ()); + scm_puts ("\n", scm_current_warning_port ()); + } +- +- return compiled_is_newer; + } + + static SCM + From 7284c0c5e049d1a9a0944f22ddecb0977c00aaef Mon Sep 17 00:00:00 2001 From: Federico Bruni Date: Tue, 3 Jan 2023 22:10:53 +0100 Subject: [PATCH 2/2] freedesktop 22.08 runtime Update other dependencies. --- org.denemo.Denemo.yaml | 71 ++++++++++++++++++++++-------------------- shared-modules | 2 +- 2 files changed, 38 insertions(+), 35 deletions(-) diff --git a/org.denemo.Denemo.yaml b/org.denemo.Denemo.yaml index 3e300bc..9b4b6de 100644 --- a/org.denemo.Denemo.yaml +++ b/org.denemo.Denemo.yaml @@ -1,7 +1,7 @@ --- app-id: org.denemo.Denemo runtime: org.freedesktop.Platform -runtime-version: '21.08' +runtime-version: '22.08' sdk: org.freedesktop.Sdk sdk-extensions: - org.freedesktop.Sdk.Extension.texlive @@ -15,6 +15,9 @@ finish-args: # Folder access - --filesystem=home - --filesystem=xdg-music + # Settings for point-and-click. Disabled, because Denemo does not support dbus. + # - --filesystem=/tmp # textedit links point to .ly files in /tmp + # - --talk-name=org.gnome.evince.Daemon # Evince internal synctex requires D-Bus # Needed for PortAudio/MIDI - --device=all # Needed for note playpack @@ -33,6 +36,8 @@ modules: - type: archive url: https://www.hboehm.info/gc/gc_source/gc-8.0.6.tar.gz sha256: 3b4914abc9fa76593596773e4da671d7ed4d5390e3d46fbf2e5f155e121bea11 + cleanup: + - /include buildsystem: autotools config-opts: - --without-threads @@ -46,7 +51,9 @@ modules: path: patches/guile2-never-recompile.patch cleanup: - /include + - /lib/pkgconfig - /share/aclocal + - /share/info - /share/man # Fontforge build dependency @@ -144,13 +151,13 @@ modules: - name: aubio buildsystem: simple build-commands: - - ./waf configure --prefix=/app --libdir=/app/lib + - ./waf configure --prefix=/app --libdir=/app/lib --disable-avcodec - ./waf build -j $FLATPAK_BUILDER_N_JOBS - ./waf install sources: - type: archive - url: https://aubio.org/pub/aubio-0.4.7.tar.bz2 - sha256: cbed4afec5ab3a1a6300c7e3af0a1369379aa94259f5e701a8ca905cdd9fa041 + url: http://aubio.org/pub/aubio-0.4.9.tar.bz2 + sha256: d48282ae4dab83b3dc94c16cf011bcb63835c1c02b515490e1883049c3d1f3da cleanup: - /bin - /include @@ -164,61 +171,56 @@ modules: - --enable-introspection=yes cleanup: - /include + - /lib/pkgconfig + - /share/gtk-doc sources: - type: archive url: https://download.gnome.org/sources/gtksourceview/3.24/gtksourceview-3.24.11.tar.xz sha256: 691b074a37b2a307f7f48edc5b8c7afa7301709be56378ccf9cc9735909077fd - - name: Boost - buildsystem: simple - build-commands: - - ./bootstrap.sh --prefix=/app - - ./b2 install --build-type=complete link=shared --layout=versioned runtime-link=shared cxxflags="$CXXFLAGS" linkflags="$LDFLAGS" -j $FLATPAK_BUILDER_N_JOBS - cleanup: - - /include - sources: - - type: archive - url: https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2 - sha256: f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41 - - name: poppler-data no-autogen: true make-install-args: - prefix=/app sources: - type: archive - url: https://poppler.freedesktop.org/poppler-data-0.4.10.tar.gz - sha256: 6e2fcef66ec8c44625f94292ccf8af9f1d918b410d5aa69c274ce67387967b30 + url: https://poppler.freedesktop.org/poppler-data-0.4.11.tar.gz + sha256: 2cec05cd1bb03af98a8b06a1e22f6e6e1a65b1e2f3816cb3069bb0874825f08c + cleanup: + - /share/pkgconfig - name: poppler buildsystem: cmake-ninja config-opts: - -DCMAKE_INSTALL_LIBDIR=/app/lib - -DCMAKE_INSTALL_INCLUDEDIR=/app/include + - -DENABLE_BOOST=OFF - -DENABLE_LIBOPENJPEG=none cleanup: - /bin - /include + - /lib/pkgconfig + - /share/man - /share/pkgconfig sources: - type: archive - url: https://poppler.freedesktop.org/poppler-21.07.0.tar.xz - sha256: e26ab29f68065de4d6562f0a3e2b5435a83ca92be573b99a1c81998fa286a4d4 + url: https://poppler.freedesktop.org/poppler-22.08.0.tar.xz + sha256: b493328721402f25cb7523f9cdc2f7d7c59f45ad999bde75c63c90604db0f20b - name: evince buildsystem: meson config-opts: - -Dcomics=disabled + # - -Ddbus=true # true by default + - -Dgtk_doc=false + - -Dinternal_synctex=true + - -Dintrospection=true - -Dnautilus=false - - -Dviewer=false - -Dpreviewer=false - - -Ddbus=false - #- -Dbrowser-plugin=false + - -Dsystemduserunitdir=no - -Dthumbnail_cache=disabled - - -Dgtk_doc=false - -Duser_doc=false - - -Dintrospection=true - - -Dsystemduserunitdir=no + - -Dviewer=false cleanup: - /include - /lib/pkgconfig @@ -230,36 +232,34 @@ modules: - /share/metainfo sources: - type: archive - url: https://download.gnome.org/sources/evince/40/evince-40.4.tar.xz - sha256: 33420500e0e060f178a435063197d42dae7b67e39cc437a96510a33ddf7e95fb + url: https://download.gnome.org/sources/evince/43/evince-43.1.tar.xz + sha256: 6d75ca62b73bfbb600f718a098103dc6b813f9050b9594be929e29b4589d2335 - type: shell commands: # Remove libhandy dep, not needed with -Dviewer=false - sed -i '/hdy_dep/d' meson.build # Remove adwaita-icon-theme support, not needed with -Dviewer=false - sed -i '/adwaita_icon_them/d' meson.build - # Force evince to use internal_synctex (make it no find the external one) - - sed -i 's/1.19/8.88/g' meson.build - name: fluidsynth buildsystem: cmake-ninja config-opts: - - -DLIB_SUFFIX= - -DCMAKE_BUILD_TYPE=Release cleanup: - /include + - /lib/pkgconfig - /share/man sources: - type: archive - url: https://github.com/FluidSynth/fluidsynth/archive/v1.1.11.tar.gz - sha256: da8878ff374d12392eecf87e96bad8711b8e76a154c25a571dd8614d1af80de8 + url: https://github.com/FluidSynth/fluidsynth/archive/refs/tags/v2.3.1.tar.gz + sha256: d734e4cf488be763cf123e5976f3154f0094815093eecdf71e0e9ae148431883 - name: vamp-plugin-sdk no-parallel-make: true sources: - type: archive # Official site currently fails with ssl error, use a mirror - #url: https://code.soundsoftware.ac.uk/attachments/download/2450/vamp-plugin-sdk-2.8.0.tar.gz + # url: https://code.soundsoftware.ac.uk/attachments/download/2450/vamp-plugin-sdk-2.8.0.tar.gz url: https://mirror.sobukus.de/files/src/vamp-plugin-sdk/vamp-plugin-sdk-2.8.0.tar.gz sha256: dcc96ae894795822398789f251c2c7effa602fc60e9dd6c7a5c5d2e7a513526c post-install: @@ -284,6 +284,7 @@ modules: - install -Dm644 -t /app/share/licenses/rubberband COPYING cleanup: - /include + - /lib/pkgconfig - /share/ladspa - /share/licenses - "*.a" @@ -292,6 +293,8 @@ modules: buildsystem: cmake-ninja cleanup: - /include + - /lib/pkgconfig + - /share/doc sources: - type: archive url: http://files.portaudio.com/archives/pa_stable_v190700_20210406.tgz diff --git a/shared-modules b/shared-modules index ccb58f2..096ab6b 160000 --- a/shared-modules +++ b/shared-modules @@ -1 +1 @@ -Subproject commit ccb58f2c69950bfbd5df0bc9960070afdbab2a3e +Subproject commit 096ab6b0be271f07a42a647b5ffc83808a160e59