commit:     b2abc9c8da4427601dd4d03f8c7f007e4acaabcc
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  7 13:46:06 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Mon Dec  7 13:46:06 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2abc9c8

app-editors/scite: migrate to lua-single.eclass

Closes: https://bugs.gentoo.org/752531
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-editors/scite/scite-4.4.4-r10.ebuild | 119 +++++++++++++++++++++++++++++++
 profiles/package.mask                    |   1 +
 2 files changed, 120 insertions(+)

diff --git a/app-editors/scite/scite-4.4.4-r10.ebuild 
b/app-editors/scite/scite-4.4.4-r10.ebuild
new file mode 100644
index 00000000000..cc44dcb5cad
--- /dev/null
+++ b/app-editors/scite/scite-4.4.4-r10.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-1 )
+
+inherit lua-single toolchain-funcs xdg-utils
+
+DESCRIPTION="A very powerful, highly configurable, small editor with syntax 
coloring"
+HOMEPAGE="https://www.scintilla.org/SciTE.html";
+SRC_URI="https://www.scintilla.org/${PN}${PV//./}.tgz -> ${P}.tgz"
+
+LICENSE="HPND lua? ( MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="lua"
+
+REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
+
+RDEPEND="
+       dev-libs/glib:2
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf
+       x11-libs/gtk+:3
+       x11-libs/pango
+       lua? ( ${LUA_DEPS} )"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+       virtual/pkgconfig"
+
+DOCS=("../README")
+
+S="${WORKDIR}/${PN}/gtk"
+
+pkg_pretend() {
+       if tc-is-clang ; then
+               # need c++17 features
+               [[ "${MERGE_TYPE}" != "binary" &&
+               $(clang-major-version) -lt 5 ]] &&
+               die "Sorry, SCiTE uses C++17 Features and needs 
>sys-devel/clang-5
+               ($(clang-major-version))."
+
+       elif tc-is-gcc; then
+               # older gcc is not supported
+               [[ "${MERGE_TYPE}" != "binary" &&
+               $(gcc-major-version) -lt 7 ]] &&
+               die "Sorry, Scite uses C++17 Features, need >sys-devel/gcc-7."
+       else
+               die "Either gcc or clang should be configured for building 
scite"
+       fi
+}
+
+src_prepare() {
+       tc-export AR CC CXX RANLIB
+
+       # remove hardcoded CC, Optimizations and clang unknown flags
+       sed -i "${WORKDIR}/scintilla/gtk/makefile" \
+       -e "s#^CC = gcc#CC = ${CC}#" \
+       -e "s#^CC = clang#CC = ${CC}#" \
+       -e "s#^CXX = clang++#CXX = ${CXX}#" \
+       -e "s#-Os##" \
+       -e "s#-Wno-misleading-indentation##" \
+       || die "error patching /scintilla/gtk/makefile"
+
+       sed -i "${S}/makefile" \
+       -e "s#^CC = clang#CC = ${CC}#" \
+       -e "s#^CXX = clang++#CXX = ${CXX}#" \
+       -e "s#-rdynamic#-rdynamic ${LDFLAGS}#" \
+       -e "s#-Os##" \
+       || die "error patching gtk/makefile"
+
+       # repair and enhance the .desktop file
+       sed -i "${S}/SciTE.desktop" \
+       -e "s#text/plain#text/\*;application/xhtml+xml#" \
+       -e "s#^Categories=\(.*\)#Categories=Development;#" \
+       || die "error patching /scite/gtk/SciTe.desktop"
+
+       #  add the ebuild suffix as shell type for working with ebuilds
+       sed -i "${WORKDIR}/scite/src/perl.properties" \
+       -e "s#\*.sh;\*.bsh;#\*.ebuild;\*.sh;\*.bsh;#" \
+       || die "error patching /scite/src/perl.properties"
+
+       # it seems that pwd here is ${S}, but user patches are relative to 
${workdir}
+       # Bug #576162
+
+       cd "${WORKDIR}" || die "couldn't cd into ${WORKDIR}"
+       eapply_user
+}
+
+src_compile() {
+       # prepare make options
+       local emake_pars=("GTK3=1")
+
+       tc-is-clang && emake_pars+=("CLANG=1")
+       use !lua    && emake_pars+=("NO_LUA=1")
+
+       emake -C "${WORKDIR}/scintilla/gtk" "${emake_pars[@]}"
+       emake "${emake_pars[@]}"
+}
+
+# want to use the base src_install() as base_src_install()
+
+src_install() {
+       default
+       dosym SciTE /usr/bin/scite
+}
+
+pkg_postinst() {
+       xdg_icon_cache_update
+       xdg_desktop_database_update
+}
+
+pkg_postrm() {
+       xdg_icon_cache_update
+       xdg_desktop_database_update
+}

diff --git a/profiles/package.mask b/profiles/package.mask
index ac51af5d9ea..dc77a49acb7 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -519,6 +519,7 @@ gnome-base/orbit
 >=app-benchmarks/wrk-4.1.0-r100
 >=app-crypt/cardpeek-0.8.4
 >=app-crypt/ekeyd-1.1.5-r100
+=app-editors/scite-4.4.4-r10
 >=app-misc/worker-3.8.3-r100
 >=dev-games/cegui-0.8.7-r100
 =dev-games/openscenegraph-openmw-3.4_p20200425-r100

Reply via email to