# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

MAIN_PH=cfa4833190e35d41d9a806449796e35799d650e3
AUX_PH=2f21baedb7ef12616caee35af15a254de376b93a

inherit racket

DESCRIPTION="The Scheme-PLUS-for-Racket Racket package"
HOMEPAGE="https://pkgs.racket-lang.org/package/Scheme-PLUS-for-Racket"
SRC_URI="https://github.com/damien-mattei/Scheme-PLUS-for-Racket/archive/${MAIN_PH}.tar.gz -> ${P}.tar.gz
	https://github.com/damien-mattei/SRFI-110-for-Racket/archive/${AUX_PH}.tar.gz -> ${PN}_aux_SRFI-110-for-Racket-${PV}.tar.gz"
S="${WORKDIR}/Scheme-PLUS-for-Racket-${MAIN_PH}/"

LICENSE="LGPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"

RDEPEND="dev-racket/reprovide-lang-lib
	dev-racket/scribble-code-examples
	dev-racket/srfi105-for-racket
	dev-racket/try-catch"
BDEPEND="${RDEPEND}"
PDEPEND="dev-racket/srfi110-for-racket"

src_compile() {
	pushd "${WORKDIR}/SRFI-110-for-Racket-${AUX_PH}/" >/dev/null || die
	raco_bare_install user SRFI-110-for-Racket
	popd >/dev/null || die

	racket_src_compile
}

pkg_prerm() {
	if [[ -z "${REPLACED_BY_VERSION}" ]] && racket-where SRFI-110-for-Racket ; then
		raco_remove "${RACKET_PN}" SRFI-110-for-Racket
	fi
}

pkg_postinst() {
	! racket-where "${RACKET_PN}" && raco_system_install

	has_version dev-racket/srfi110-for-racket &&
		raco_system_setup "${RACKET_PN}" SRFI-110-for-Racket
}