|
From: | Jim Duke |
Subject: | RE: Complex/Large Lilypond projects and build automation |
Date: | Mon, 9 Dec 2019 00:27:05 +0000 |
David, Thanks for your response. I’m looking into using Gradle – and I think I’ll be happiest if I invest the time to develop one or more Gradle plugins to define the notion of a Lilypond project. I have a steep learning curve in front of me
since I’m not familiar with Gradle. So part of my interest in using Gradle here is so I have an excuse to learn Gradle. Are you able to share any Gradle build files? I would love to see what you did as I’m learning Gradle. Thanks again, Jim From: David F. <address@hidden> On Dec 7, 2019, at 2:35 PM, Jim Duke <address@hidden> wrote:
Jim, I’m right behind you! I have a collection of just over 100 hymns that are mostly Spanish language, but about 20 of those also have bilingual versions. My build system creates proof PDFs, 4x3 and 16x9 slide images and 4x3 and 16x9
PowerPoint slide decks which get synchronized to a shared Dropbox folder. I started off with make, but switched to gradle because I was already using that at work. I’ve got about 400 lines of Kotlin/gradle code. I haven’t built any hymnals yet, but I plan
to. So far I feel like I’ve gotten further with gradle than I could have with make, but lately I’ve found gradle to be more and more annoying. Both make and gradle struggle with 1-to-many and (especially) many-to-1 type build tasks. So, for
example, taking 8 png files and combining them into one Powerpoint file is doable in gradle, but you’re really fighting the build system and incremental builds start to fail in certain cases (like when a song goes from fitting on 6 slides to taking up 8 slides).
There are other annoyances. Just a couple of weeks ago, I came across this blog post: "The only build system that might someday replace make” So I intend to dig in to the design of the redo system and see if it can match the functionality provided by gradle without the pain and annoyances. David |
[Prev in Thread] | Current Thread | [Next in Thread] |