summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-sound/lilypond/Manifest1
-rw-r--r--media-sound/lilypond/lilypond-2.24.4.ebuild134
-rw-r--r--media-sound/lilypond/lilypond-9999.ebuild9
3 files changed, 137 insertions, 7 deletions
diff --git a/media-sound/lilypond/Manifest b/media-sound/lilypond/Manifest
index 7d87edd6af13..ead69c5feba8 100644
--- a/media-sound/lilypond/Manifest
+++ b/media-sound/lilypond/Manifest
@@ -1 +1,2 @@
DIST lilypond-2.24.3.tar.gz 19441299 BLAKE2B 6be6ca1f090869a8d545befe3d1f54122514e7dcf9aff1bcc2d78819820da8cef908c5033039eb231b48ae914c1ebd6d766566862a40721580747f017f1445ad SHA512 5153f6cbe5e68e4b3dfcc03a8299ef6b82fbfb487eb3e4f9d631b9dc5a07a972168c3f141d6d50eac936f5c7aeeacd19837c0c9ab70f11dfd5c7efe085d5b56e
+DIST lilypond-2.24.4.tar.gz 19442316 BLAKE2B 12e05f4f9831b9e0eb589b970b16dfde9fe8d4a82d93990e77a8c57cc696bb851e444c65c7f050a457973f5594bfe3e1847bde4adcce82618fd6f5a926eefebb SHA512 f350d1bf6d653c3af9e0b6b12457bbc5f6f3b27d4116ef25d8809e515cef3a28f569f00845a1144f3b4dd8b2fff5265de8f5b338506db4aca2a2928d0ecca726
diff --git a/media-sound/lilypond/lilypond-2.24.4.ebuild b/media-sound/lilypond/lilypond-2.24.4.ebuild
new file mode 100644
index 000000000000..bd18392af3a7
--- /dev/null
+++ b/media-sound/lilypond/lilypond-2.24.4.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit elisp-common autotools python-single-r1 toolchain-funcs xdg-utils
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/lilypond.git"
+else
+ MAIN_VER=$(ver_cut 1-2)
+ SRC_URI="https://lilypond.org/download/sources/v${MAIN_VER}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~riscv ~x86"
+fi
+
+DESCRIPTION="GNU Music Typesetter"
+HOMEPAGE="http://lilypond.org/"
+
+LICENSE="GPL-3 FDL-1.3"
+SLOT="0"
+LANG_USE="l10n_ca l10n_cs l10n_de l10n_en l10n_fr l10n_hu l10n_it l10n_ja l10n_nl l10n_pt l10n_zh"
+IUSE="debug doc emacs profile ${LANG_USE}"
+unset LANG_USE
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ dev-texlive/texlive-metapost
+ sys-apps/texinfo
+ app-alternatives/yacc
+ app-alternatives/lex
+ virtual/pkgconfig
+ doc? ( app-text/texi2html )
+"
+RDEPEND="app-text/ghostscript-gpl
+ >=dev-scheme/guile-2.2:12=[deprecated,regex]
+ media-fonts/tex-gyre
+ media-libs/fontconfig
+ media-libs/freetype:2
+ >=x11-libs/pango-1.40
+ emacs? ( >=app-editors/emacs-23.1:* )
+ ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/t1utils
+ dev-lang/perl
+ dev-libs/kpathsea
+ media-gfx/fontforge[png,python]
+ sys-devel/gettext
+ doc? (
+ dev-texlive/texlive-langcyrillic
+ l10n_cs? ( dev-texlive/texlive-xetex )
+ l10n_ja? ( dev-texlive/texlive-langjapanese )
+ l10n_zh? ( dev-texlive/texlive-langchinese )
+ )
+"
+# Correct output data for tests isn't bundled with releases
+RESTRICT="test"
+
+DOCS=( DEDICATION README.md ROADMAP )
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+src_prepare() {
+ default
+
+ # respect CFLAGS
+ sed -i 's/OPTIMIZE -g/OPTIMIZE/' aclocal.m4 || die
+
+ eautoreconf
+
+ xdg_environment_reset #586592
+}
+
+src_configure() {
+ # fix hardcoded `ar`
+ sed -i "s/AR=ar/AR=$(tc-getAR)/g" flower/GNUmakefile || die "Failed to fix ar command"
+
+ local myeconfargs=(
+ --disable-optimising
+ --disable-pipe
+ $(use_enable debug debugging)
+ $(use_enable doc documentation)
+ $(use_enable profile profiling)
+ )
+
+ export VARTEXFONTS="${T}/fonts" # https://bugs.gentoo.org/692010
+
+ econf "${myeconfargs[@]}" AR="$(tc-getAR)"
+}
+
+src_compile() {
+ default
+
+ # http://lilypond.org/doc/v2.24/Documentation/changes/index#notes-for-source-compilation-and-packagers
+ emake bytecode
+
+ use doc && emake LANGS="${L10N}" doc info
+
+ if use emacs ; then
+ elisp-compile elisp/lilypond-{font-lock,indent,mode,what-beat}.el \
+ || die "elisp-compile failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" vimdir=/usr/share/vim/vimfiles install install-bytecode
+
+ use doc && emake DESTDIR="${D}" install-doc
+
+ # remove elisp files since they are in the wrong directory
+ rm -r "${ED}"/usr/share/emacs || die
+
+ if use emacs ; then
+ elisp-install ${PN} elisp/*.{el,elc} elisp/out/*.el \
+ || die "elisp-install failed"
+ elisp-site-file-install "${FILESDIR}"/50${PN}-gentoo.el
+ fi
+
+ python_fix_shebang "${ED}"
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/media-sound/lilypond/lilypond-9999.ebuild b/media-sound/lilypond/lilypond-9999.ebuild
index 3d18994e27df..ae3457cd2655 100644
--- a/media-sound/lilypond/lilypond-9999.ebuild
+++ b/media-sound/lilypond/lilypond-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{9..13} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit elisp-common autotools python-single-r1 toolchain-funcs xdg-utils
@@ -39,7 +39,7 @@ RDEPEND="app-text/ghostscript-gpl
media-fonts/tex-gyre
media-libs/fontconfig
media-libs/freetype:2
- x11-libs/pango
+ >=x11-libs/pango-1.40
emacs? ( >=app-editors/emacs-23.1:* )
${PYTHON_DEPS}"
DEPEND="${RDEPEND}
@@ -58,11 +58,6 @@ DEPEND="${RDEPEND}
# Correct output data for tests isn't bundled with releases
RESTRICT="test"
-PATCHES=(
- "${FILESDIR}"/${PN}-2.23.0-fix-font-size.patch
- "${FILESDIR}"/${PN}-2.22.1-free_font.patch
-)
-
DOCS=( DEDICATION README.md ROADMAP )
# guile generates ELF files without use of C or machine code