summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2020-12-07 15:46:06 +0200
committerJoonas Niilola <juippis@gentoo.org>2020-12-07 15:46:06 +0200
commitb2abc9c8da4427601dd4d03f8c7f007e4acaabcc (patch)
tree4378f301d5ce7740ae0729951ae06455bbb1ae1d /app-editors
parentdev-libs/libprelude: migrate to lua eclass (diff)
downloadgentoo-b2abc9c8da4427601dd4d03f8c7f007e4acaabcc.tar.gz
gentoo-b2abc9c8da4427601dd4d03f8c7f007e4acaabcc.tar.bz2
gentoo-b2abc9c8da4427601dd4d03f8c7f007e4acaabcc.zip
app-editors/scite: migrate to lua-single.eclass
Closes: https://bugs.gentoo.org/752531 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'app-editors')
-rw-r--r--app-editors/scite/scite-4.4.4-r10.ebuild119
1 files changed, 119 insertions, 0 deletions
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 000000000000..cc44dcb5cad6
--- /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
+}