Heres an example, ebuilds are named package-version.ebuild and that version in the filename is used to define variables (such as $P here which is the name-version) to make new versions as simple as copying the ebuild with the new version in the filename.
use_enable is used to generate the --enable-(option) or --disable-(option) as set by the user.
For more info, see the devmanual. They’re nice relatively straightforward bash like PKGBUILDs, but with the repetitious stuff taken out.
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="GNU charset conversion library for libc which doesn't implement it"
HOMEPAGE="https://www.gnu.org/software/libiconv/"
SRC_URI="ftp://ftp.gnu.org/pub/gnu/libiconv/${P}.tar.gz"
LICENSE="LGPL-2+ GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
IUSE="nls"
RDEPEND="!sys-libs/glibc"
DEPEND="${RDEPEND}"
src_configure() {
econf $(use_enable nls)
}
I mostly stick to things in the repos, if theres something I want that's not yet packaged I package it myself because Gentoo packages are fancy bash scripts with libraries (eclasses) to handle the normal make && make install sort of things for most build systems