View Raw Ebuild
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit call toolchain-funcs
DESCRIPTION="A JSON formatter prettifier, minifier and validator plugin for Geany editor"
HOMEPAGE="https://plugins.geany.org/jsonprettifier.html"
MY_PN=Geany-JSON-Prettifier
MY_P=${MY_PN}-${PV}
SRC_URI="https://github.com/zhgzhg/${MY_PN}/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
S=${WORKDIR}/${MY_P}
LICENSE="GPL-2+"
SLOT=0
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
RDEPEND="dev-util/geany"
BDEPEND="
${RDEPEND}
app-shells/bash
dev-build/cmake
virtual/pkgconfig
"
RESTRICT="mirror"
src_configure() {
( cd ./lloyd-yajl-66cb08c && call "${BROOT}/bin/bash" ./configure -p "${EPREFIX}/usr" ) || die
cp ./lloyd-yajl-66cb08c/src/api/yajl_common.h \
./lloyd-yajl-66cb08c/build/yajl-2.1.0/include/yajl || die
}
src_compile() {
local CC=$(tc-getCC) LD=$(tc-getLD) geany_cflags geany_libs
geany_cflags=$(pkg-config --cflags geany) && [[ ${geany_cflags} ]] || \
die "Failed to get Geany CFLAGS."
geany_libs=$(pkg-config --libs geany) && [[ ${geany_libs} ]] || \
die "Failed to get Geany linker flags."
emake -C ./lloyd-yajl-66cb08c CC="${CC}" CFLAGS="${CFLAGS}" distro || die
call "${CC}" '-DLOCALEDIR=""' '-DGETTEXT_PACKAGE="zhgzhg"' -c ./geany_json_prettifier.c -fPIC \
${geany_cflags} ${CFLAGS} || die
call "${LD}" geany_json_prettifier.o -o jsonprettifier.so \
"./lloyd-yajl-66cb08c/build/yajl-2.1.0/lib/libyajl_s.a" -shared ${geany_libs} || die
}
src_install() {
insopts -m 755
insinto "/usr/$(get_libdir)/geany"
doins jsonprettifier.so
}