commit:     ed13544d06bf1f0245e17c55894745fe0ac56ece
Author:     Wade Cline <wadecline <AT> hotmail <DOT> com>
AuthorDate: Sun Mar 30 21:32:25 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May 26 10:26:41 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed13544d

net-irc/inspircd: add 4.7.0

Bug: https://bugs.gentoo.org/952940
Signed-off-by: Wade Cline <wadecline <AT> hotmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/41394
Closes: https://github.com/gentoo/gentoo/pull/41394
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-irc/inspircd/Manifest              |   2 +
 net-irc/inspircd/inspircd-4.7.0.ebuild | 113 +++++++++++++++++++++++++++++++++
 2 files changed, 115 insertions(+)

diff --git a/net-irc/inspircd/Manifest b/net-irc/inspircd/Manifest
index 75b8ee744ed8..273e2aa090ac 100644
--- a/net-irc/inspircd/Manifest
+++ b/net-irc/inspircd/Manifest
@@ -2,3 +2,5 @@ DIST inspircd-3.18.0-fix-build-paths.patch.bz2 4698 BLAKE2B 
972ee63337cb4eb67f1e
 DIST inspircd-3.18.0.tar.gz 881536 BLAKE2B 
d0241840338fe7d1b71809ecec1e5f99eedf8d7114dad61fd37d85372ec3f8f05c1e0250bd4a04300189c6a4fc0e97a8deff211c26618751a6768b0467b53c5e
 SHA512 
14ee48021f69084b09c09c6660ffdba4368eada488aa90ae47ac783c84bd07e3fb5f2c97aecdfe09d6952be779eac792cfd80ea7e53ed1c129f56f7df57a46db
 DIST inspircd-4.6.0-fix-build-paths.patch.bz2 4512 BLAKE2B 
e0ec7318e6ca3edb3ef643e1ae126aabb24a426a2938a2d3eba6293a16220e8b38f85442b77874d6af42b65ca3cf33cd4642ac24e620d771287b8d54a852b3a4
 SHA512 
225603d49854534b6b04984c6f82c508a75c8a0f22ad5aa9d2008988408bfd54c4148ea322a885e05f8c9dbe18c10692366524a4304717382800fb4263d84394
 DIST inspircd-4.6.0.tar.gz 1024697 BLAKE2B 
a22ba1a2603b0de6117198a540770cf5c51c96d9ad87b07b93f0604a03f6238c4b3bc5eaf5d2b083f3117b2b09e6cdef1d154475cf2f4f4ed291203cc098d638
 SHA512 
559eab2d00934e621e9613b383aff10a21ea94800c2dcbf3647d4d2b2a4aede5ef0e50aef79bf146efee00bff856899bd0ca2f8c2ce77d521506ac8576cdce28
+DIST inspircd-4.7.0-fix-build-paths.patch.bz2 4504 BLAKE2B 
31cfeeba12829ff193310c47b4d393b33c08096bf1ae268717e65ec3db3fde5762e142a1d9604f102c9eddd7d7916df3f92827f6bc81bddf1a2f78fed464ca47
 SHA512 
98044e50acee21a02a1177326afc7e43b28129bcd025013a3654ded94c2420e3633cf6335e539faaf2af82507f76f53d1553b09a1f7e53a61aa035a1bde67502
+DIST inspircd-4.7.0.tar.gz 1027351 BLAKE2B 
74e02c00c2a1cadad7eb29acdeb19cf6217b58c2070f35702e4407cbbb5e41654cb09a5902cb4169a09764e9a062438a8d7725c60e9e17655c881261545b5a57
 SHA512 
547ffc24f5a3fcb4de41b10861144e2f458c50590eddad2e9491a4d569fb5b2d3f7f6efca8dcf26d999fb5340bf890075fcb5a12db4a0ff4df5d431a556afdcd

diff --git a/net-irc/inspircd/inspircd-4.7.0.ebuild 
b/net-irc/inspircd/inspircd-4.7.0.ebuild
new file mode 100644
index 000000000000..8c393d7d475f
--- /dev/null
+++ b/net-irc/inspircd/inspircd-4.7.0.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit readme.gentoo-r1 systemd toolchain-funcs
+
+DESCRIPTION="Inspire IRCd - The Stable, High-Performance Modular IRCd"
+HOMEPAGE="https://www.inspircd.org/";
+SRC_URI="
+       https://github.com/inspircd/inspircd/archive/v${PV}.tar.gz -> 
${P}.tar.gz
+       
https://github.com/clinew/gentoo-distfiles/raw/master/inspircd-${PV}-fix-build-paths.patch.bz2";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="argon2 debug gnutls ldap log-json maxminddb mysql pcre2 postgres re2 
regex-posix sqlite ssl sslrehashsignal syslog"
+
+RDEPEND="
+       acct-group/inspircd
+       acct-user/inspircd
+       dev-lang/perl
+       net-libs/libpsl
+       argon2? ( app-crypt/argon2 )
+       gnutls? ( net-libs/gnutls:= dev-libs/libgcrypt:0 )
+       ldap? ( net-nds/openldap:= )
+       log-json? ( dev-libs/yyjson )
+       maxminddb? ( dev-libs/libmaxminddb:= )
+       mysql? ( dev-db/mysql-connector-c:= )
+       pcre2? ( dev-libs/libpcre2 )
+       postgres? ( dev-db/postgresql:= )
+       re2? ( dev-libs/re2:= )
+       sqlite? ( >=dev-db/sqlite-3.0 )
+       ssl? ( dev-libs/openssl:= )"
+DEPEND="${RDEPEND}"
+
+DOC_CONTENTS="
+       You will find example configuration files under /usr/share/doc/${PN}.\n
+       Read the ${PN}.conf file carefully before starting the service."
+DOCS=( docs/. .configure/apparmor )
+PATCHES=( "${WORKDIR}"/${P}-fix-build-paths.patch )
+
+src_configure() {
+       local extras=""
+
+       use argon2 && extras+="argon2,"
+       use gnutls && extras+="ssl_gnutls,"
+       use ldap && extras+="ldap,"
+       use log-json && extras+="log_json,"
+       use maxminddb && extras+="geo_maxmind,"
+       use mysql && extras+="mysql,"
+       use pcre2 && extras+="regex_pcre2,"
+       use postgres && extras+="pgsql,"
+       use re2 && extras+="regex_re2,"
+       use regex-posix && extras+="regex_posix,"
+       use sqlite && extras+="sqlite3,"
+       use ssl && extras+="ssl_openssl,"
+       use sslrehashsignal && extras+="sslrehashsignal,"
+       use syslog && extras+="log_syslog,"
+
+       # The first configuration run enables certain "extra" InspIRCd
+       # modules, the second run generates the actual makefile.
+       if [[ -n ${extras} ]]; then
+               ./configure --enable-extras=${extras%,} || die
+       fi
+
+       local myconf=(
+               --disable-auto-extras
+               --disable-ownership
+               --system
+               --uid ${PN}
+               --gid ${PN}
+               --binary-dir="/usr/bin"
+               --data-dir="/var/lib/${PN}/data"
+               --example-dir="/usr/share/doc/${P}"
+               --manual-dir="/usr/share/man"
+               --module-dir="/usr/$(get_libdir)/${PN}/modules")
+       CXX="$(tc-getCXX)" ./configure "${myconf[@]}" || die
+}
+
+src_compile() {
+       emake LDFLAGS="${LDFLAGS}" CXXFLAGS="${CXXFLAGS}" $(usev debug 
INSPIRCD_DEBUG=2) INSPIRCD_VERBOSE=1
+}
+
+src_install() {
+       default
+
+       insinto "/usr/include/${PN}"
+       doins -r include/.
+
+       newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+       newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+       systemd_dounit .configure/inspircd.service
+
+       keepdir "/var/log/${PN}"
+       insinto "/etc/logrotate.d"
+       newins .configure/logrotate "${PN}"
+
+       diropts -o"${PN}" -g"${PN}" -m0700
+       keepdir "/var/lib/${PN}/data"
+
+       readme.gentoo_create_doc
+
+       rmdir "${ED}"/run{/inspircd,} || die
+}
+
+pkg_postinst() {
+       readme.gentoo_print_elog
+       if has_version "net-irc/atheme-services"; then
+               ewarn "Atheme does not work with InspIRCd version 4"
+               ewarn "See: https://github.com/atheme/atheme/issues/904";
+       fi
+}

Reply via email to