-
-
Notifications
You must be signed in to change notification settings - Fork 255
[Testing] Attempt to speedup flatpak builds #609
base: master
Are you sure you want to change the base?
Conversation
@@ -161,6 +162,7 @@ | |||
}, | |||
{ | |||
"name": "soundtouch", | |||
"buildsystem": "cmake-ninja", | |||
"sources": [ | |||
{ | |||
"type": "git", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While you're at it, can you update soundtouch to 2.3.1? It has some fixes for CMake. I'm not sure any of those are required for Tenacity, but still good to be on the latest version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, I had already noticed that version difference and was going to look into seeing if there were any breaking changes before doing exactly that
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SoundTouch 2.3.1 has some build fixes for Mixxx. No changes should be required for Tenacity.
3339c81
to
91e6edd
Compare
Skip duplicate CI runs with the same content Skip concurrent CI runs of the same content Cancel old CI runs when a newer commit is pushed on top of a branch Skip CI builds which change documentation and non-build related config files Signed-off-by: Emily Mabrey <[email protected]>
Flatpak builds will only run on merge to master and when manually triggered Signed-off-by: Emily Mabrey <[email protected]>
There were two problems: 1. The vamp-sdk vcpkg port added a `d` suffix for debug builds that upstream did not. 2. The vamp-sdk vcpkg port used the same file name for libraries on every OS but that is not what upstream does. Signed-off-by: Be <[email protected]>
Modify wxwidgets module to use `cmake-ninja` Signed-off-by: Emily Mabrey <[email protected]>
91e6edd
to
5cdd33a
Compare
"-D wxUSE_RIBBON=OFF", | ||
"-D wxUSE_PROPGRID=OFF", | ||
"-D wxUSE_RICHTEXT=OFF", | ||
"-D wxUSE_EXPAT=builtin" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suspect expat is available in some flatpak SDK we depend on anyways, so system version could probably be used as well.
"-D wxUSE_WEBVIEW=OFF", | ||
"-D wxUSE_WEBVIEW_WEBKIT=OFF", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There might be other things we can probably disable that we don't use, out of wx components. I can have a look later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think all these can be disabled:
wxUSE_LIBGNOMEVFS (probably gets disabled automatically due to no legacy gnome-vfs in flatpak SDK, might be good to be explicit)
wxUSE_WEBVIEW
wxUSE_WEBVIEW_WEBKIT
wxUSE_RIBBON
wxUSE_PROPGRID
wxUSE_AUI
wxUSE_STC
wxUSE_MDI
wxUSE_MEDIACTRL
wxUSE_RICHTEXT
For some reason we seem to do something about wxXML and XRC in toplevel cmake file, but I can't spot any actual usage of what would need wxUSE_XML and/or wxUSE_XRC.
We could probably disable some image formats too, like TIFF overall, but we can fine-tune later, it doesn't save much if using system library from SDK. The above are the "big ticket" items.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of these might be useful for non-flatpak CI builds too, where we build wx ourselves too (Ubuntu). For example disabling wxUSE_MEDIACTRL gets rid of the need for gstreamer completely.
"-D wxUSE_LIBPNG=builtin", | ||
"-D wxUSE_ZLIB=builtin", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here about builtin
vs sys
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From some older aarch64 flatpak CI build log I see this:
Which libraries should wxWidgets use?
STL no
jpeg sys
png sys
regex builtin
tiff sys
lzma yes
zlib sys
expat builtin
libmspack no
sdl no
You are changing it from using system libpng and zlib, which are already built and available from the SDK, to bundled copies, increasing build time from sub-configuring and compiling those.
Enable more modules to use CMake+ninja instead of make
Signed-off-by: Emily Mabrey [email protected]
Checklist
-s
orSigned-off-by
* (See: Contributing § DCO)* indicates required