diff options
-rw-r--r-- | media-sound/lilypond/Manifest | 1 | ||||
-rw-r--r-- | media-sound/lilypond/lilypond-2.24.4.ebuild | 134 | ||||
-rw-r--r-- | media-sound/lilypond/lilypond-9999.ebuild | 9 |
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 |