Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-irc/inspircd/files/, net-irc/inspircd/
Date: Sun, 01 Sep 2019 11:50:25
Message-Id: 1567338607.a68d056da9b8ce8e9b57ef1c29d34dc58b53fa32.juippis@gentoo
1 commit: a68d056da9b8ce8e9b57ef1c29d34dc58b53fa32
2 Author: Wade Cline <wadecline <AT> hotmail <DOT> com>
3 AuthorDate: Mon Aug 26 02:24:15 2019 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 1 11:50:07 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a68d056d
7
8 net-irc/inspircd: Add 2.0.28
9
10 Signed-off-by: Wade Cline <wadecline <AT> hotmail.com>
11 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
12
13 net-irc/inspircd/Manifest | 1 +
14 .../files/inspircd-2.0.28-fix-path-builds.patch | 257 +++++++++++++++++++++
15 net-irc/inspircd/inspircd-2.0.28.ebuild | 115 +++++++++
16 3 files changed, 373 insertions(+)
17
18 diff --git a/net-irc/inspircd/Manifest b/net-irc/inspircd/Manifest
19 index 345c2aeed3f..d884e77a92b 100644
20 --- a/net-irc/inspircd/Manifest
21 +++ b/net-irc/inspircd/Manifest
22 @@ -1,4 +1,5 @@
23 DIST inspircd-2.0.25.tar.gz 734017 BLAKE2B d67af67a68d55e107c4492561fcc181ca17fda8b59d53e14e2a585057507f035d3178a9f5f04a22b8969f0fe6f331833e412f410f3276a610dc179ebf16c2399 SHA512 c404d3c296b48d34ad43f576eba1a1fe96ae3d644f032d11cb6050b8e777f93efe33715b0676f481ac3878eea1c17c884a26bff86b909f71f7329ebcfb97add8
24 DIST inspircd-2.0.27.tar.gz 735970 BLAKE2B 74a262ddd5f7d2fd61a1a01cddb0d61bf58e9fcdb3a69ebda15d711f3439b7b8e4387ee9ef3b55309e213e1e8bdc2978ca5b319720b0fcf71d9645f13102c2a2 SHA512 56f03c3259fad54365e97fd82f4e309edc60b641ccadd7916d04156fd157858f79930c8b9df99aa98c5505f76ab19e6bcd150ae5ed04d2bddfff572e18226cdd
25 +DIST inspircd-2.0.28.tar.gz 735981 BLAKE2B d467b4d31db4cbafeba655a4e129766ec780b2244f1945da6e25e9d70a8c7f946ea6258cc4e1189029a9f3be4d93b3d943f0bd20ccb85951f001268c2e460805 SHA512 0e8082a03e65f350ac423cc0781506c0eb40151d6e8d250067288b2a1d42087f10c159472ad76028aa986f6764180fdc493893984cadc0064715853472fa3e2a
26 DIST inspircd-3.2.0.tar.gz 799842 BLAKE2B 87f8465479f01587b669c926c9097e14e441d40d6f37be2971863b40c2cef3d962acaf2cc84879d1d813819bcb512adfc58723b6adac5dfc35b240d4068b40f6 SHA512 8792614785d7f0415a38d49cc1786204d838917df54792ee6755b9ad8fd895020539364fdfc6daae60a911b8f39af1326e172ac40335b700241ca832410a4498
27 DIST inspircd-3.3.0.tar.gz 803449 BLAKE2B 2b396db9d4bc84af33367715acb7f82299211ab31975310de0da4e3fe74385085b801c3bce6fe835b0f9e9857b1b457e037eb72e91d4455dc5918ad8d5bc844d SHA512 067904d877803c370873b5e79860fe0ac68529e740283e7e78dcd4dbbea30e19841a1f2e7e57e3e0b701704224369dbd484562e7edbbcd775bf85c18a4d340c3
28
29 diff --git a/net-irc/inspircd/files/inspircd-2.0.28-fix-path-builds.patch b/net-irc/inspircd/files/inspircd-2.0.28-fix-path-builds.patch
30 new file mode 100644
31 index 00000000000..da00a8491d1
32 --- /dev/null
33 +++ b/net-irc/inspircd/files/inspircd-2.0.28-fix-path-builds.patch
34 @@ -0,0 +1,257 @@
35 +diff --git a/docs/conf/inspircd.conf.example b/docs/conf/inspircd.conf.example
36 +index d54cdc916..ee21be7f3 100644
37 +--- a/docs/conf/inspircd.conf.example
38 ++++ b/docs/conf/inspircd.conf.example
39 +@@ -425,11 +425,11 @@
40 +
41 + # This file has all the information about oper classes, types and o:lines.
42 + # You *MUST* edit it.
43 +-<include file="conf/examples/opers.conf.example">
44 ++<include file="/etc/inspircd/opers.conf.example">
45 +
46 + # This file has all the information about server links and ulined servers.
47 + # You *MUST* edit it if you intend to link servers.
48 +-<include file="conf/examples/links.conf.example">
49 ++<include file="/etc/inspircd/links.conf.example">
50 +
51 + #-#-#-#-#-#-#-#-#-#- MISCELLANEOUS CONFIGURATION -#-#-#-#-#-#-#-#-#-#
52 + # #
53 +@@ -439,7 +439,8 @@
54 + # motd - displayed on connect and when a user executes /MOTD
55 + # rules - displayed when the user executes /RULES
56 + # Modules can also define their own files
57 +-<files motd="conf/examples/motd.txt.example" rules="conf/examples/rules.txt.example">
58 ++<files motd="/etc/inspircd/motd.txt.example"
59 ++ rules="/etc/inspircd/rules.txt.example">
60 +
61 + # Example of an executable file include. Note this will be read on rehash,
62 + # not when the command is run.
63 +@@ -485,7 +486,7 @@
64 + # the default of 'inspircd.pid' is used. #
65 + # #
66 +
67 +-#<pid file="/path/to/inspircd.pid">
68 ++<pid file="/var/run/inspircd/inspircd.pid">
69 +
70 + #-#-#-#-#-#-#-#-#-#-#-#-#- BANLIST LIMITS #-#-#-#-#-#-#-#-#-#-#-#-#-#-#
71 + # #
72 +@@ -994,7 +995,7 @@
73 + # provide almost all the features of InspIRCd. :) #
74 + # #
75 + # The default does nothing -- we include it for simplicity for you. #
76 +-<include file="conf/examples/modules.conf.example">
77 ++<include file="/etc/inspircd/modules.conf.example">
78 +
79 + # Here are some pre-built modules.conf files that closely match the
80 + # default configurations of some popular IRCd's. You still may want to
81 +@@ -1006,10 +1007,10 @@
82 + # recommended that you make your own modules file based on modules.conf.example.
83 +
84 + # Settings similar to UnrealIRCd defaults.
85 +-#<include file="conf/examples/modules/unrealircd.conf.example">
86 ++#<include file="/etc/inspircd/modules/unrealircd.conf.example">
87 +
88 + # Settings similar to Charybdis IRCd defaults.
89 +-#<include file="conf/examples/modules/charybdis.conf.example">
90 ++#<include file="/etc/inspircd/modules/charybdis.conf.example">
91 +
92 +
93 + #########################################################################
94 +diff --git a/docs/conf/modules.conf.example b/docs/conf/modules.conf.example
95 +index c3f074b94..4b0a584bb 100644
96 +--- a/docs/conf/modules.conf.example
97 ++++ b/docs/conf/modules.conf.example
98 +@@ -315,7 +315,7 @@
99 + # specify some censor tags. See also: #
100 + # https://wiki.inspircd.org/Modules/2.0/censor #
101 + #
102 +-#<include file="conf/examples/censor.conf.example">
103 ++#<include file="/etc/inspircd/censor.conf.example">
104 +
105 + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
106 + # CGI:IRC module: Adds support for automatic host changing in CGI:IRC
107 +@@ -790,7 +790,7 @@
108 + # specify below the path to the filter.conf file, or define some #
109 + # <filter> tags. #
110 + # #
111 +-#<include file="conf/examples/filter.conf.example">
112 ++#<include file="/etc/inspircd/filter.conf.example">
113 +
114 + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
115 + # Gecos ban: Implements extended ban 'r', which stops anyone matching
116 +@@ -849,7 +849,7 @@
117 + # #
118 + # If you specify to use the m_helpop.so module, then specify below #
119 + # the path to the helpop.conf file. #
120 +-#<include file="conf/examples/helpop-full.conf.example">
121 ++#<include file="/etc/inspircd/helpop-full.conf.example">
122 +
123 + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
124 + # Hide chans module: Allows users to hide their channels list from non-
125 +@@ -1304,7 +1304,7 @@
126 + # Read the comment above <connect:allowmotdcolors> in #
127 + # inspircd.conf.example for details. #
128 + # #
129 +-#<opermotd file="conf/examples/opermotd.txt.example" onoper="yes" processcolors="false">
130 ++#<opermotd file="/etc/inspircd/opermotd.txt.example" onoper="yes" processcolors="false">
131 +
132 + #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
133 + # Override module: Adds support for oper override.
134 +diff --git a/make/template/main.mk b/make/template/main.mk
135 +index 23daa7efc..386e0138a 100644
136 +--- a/make/template/main.mk
137 ++++ b/make/template/main.mk
138 +@@ -34,7 +34,7 @@ CC = @CC@
139 + SYSTEM = @SYSTEM@
140 + BUILDPATH = @BUILD_DIR@
141 + SOCKETENGINE = @SOCKETENGINE@
142 +-CXXFLAGS = -pipe -fPIC -DPIC
143 ++MYCXXFLAGS = -pipe -fPIC -DPIC
144 + LDLIBS = -pthread -lstdc++
145 + LDFLAGS =
146 + CORELDFLAGS = -rdynamic -L. $(LDFLAGS)
147 +@@ -52,9 +52,9 @@ INSTMODE_BIN = 0755
148 + INSTMODE_LIB = 0644
149 +
150 + @IFEQ $(CC) icpc
151 +- CXXFLAGS += -Wshadow
152 ++ MYCXXFLAGS += -Wshadow
153 + @ELSE
154 +- CXXFLAGS += -pedantic -Woverloaded-virtual -Wshadow -Wformat=2 -Wmissing-format-attribute -Wall
155 ++ MYCXXFLAGS += -pedantic -Woverloaded-virtual -Wshadow -Wformat=2 -Wmissing-format-attribute -Wall
156 + @ENDIF
157 +
158 +
159 +@@ -76,46 +76,46 @@ INSTMODE_LIB = 0644
160 + INSTALL = ginstall
161 + @ENDIF
162 + @IFEQ $(SYSTEM) darwin
163 +- CXXFLAGS += -DDARWIN -frtti
164 ++ MYCXXFLAGS += -DDARWIN -frtti
165 + LDLIBS += -ldl
166 + CORELDFLAGS = -dynamic -bind_at_load -L. $(LDFLAGS)
167 + PICLDFLAGS = -fPIC -shared -twolevel_namespace -undefined dynamic_lookup $(LDFLAGS)
168 + @ENDIF
169 + @IFEQ $(SYSTEM) interix
170 +- CXXFLAGS += -D_ALL_SOURCE -I/usr/local/include
171 ++ MYCXXFLAGS += -D_ALL_SOURCE -I/usr/local/include
172 + @ENDIF
173 +
174 +-@IFNDEF D
175 +- D=0
176 ++@IFNDEF DEBUGLEVEL
177 ++ DEBUGLEVEL=0
178 + @ENDIF
179 +
180 + GCC6=@GCC6@
181 + @IFEQ $(GCC6) true
182 +- CXXFLAGS += -fno-delete-null-pointer-checks
183 ++ MYCXXFLAGS += -fno-delete-null-pointer-checks
184 + @ENDIF
185 +
186 + DBGOK=0
187 +-@IFEQ $(D) 0
188 +- CXXFLAGS += -O2
189 ++@IFEQ $(DEBUGLEVEL) 0
190 ++ MYCXXFLAGS += -O2
191 + @IFEQ $(CC) g++
192 +- CXXFLAGS += -g1
193 ++ MYCXXFLAGS += -g1
194 + @ENDIF
195 + HEADER = std-header
196 + DBGOK=1
197 + @ENDIF
198 +-@IFEQ $(D) 1
199 +- CXXFLAGS += -O0 -g3 -Werror
200 ++@IFEQ $(DEBUGLEVEL) 1
201 ++ MYCXXFLAGS += -O0 -g3 -Werror
202 + HEADER = debug-header
203 + DBGOK=1
204 + @ENDIF
205 +-@IFEQ $(D) 2
206 +- CXXFLAGS += -O2 -g3
207 ++@IFEQ $(DEBUGLEVEL) 2
208 ++ MYCXXFLAGS += -O2 -g3
209 + HEADER = debug-header
210 + DBGOK=1
211 + @ENDIF
212 + FOOTER = finishmessage
213 +
214 +-CXXFLAGS += -Iinclude
215 ++MYCXXFLAGS += -Iinclude
216 +
217 + @GNU_ONLY MAKEFLAGS += --no-print-directory
218 +
219 +@@ -135,10 +135,11 @@ CXXFLAGS += -Iinclude
220 + @ENDIF
221 +
222 + @IFDEF PURE_STATIC
223 +- CXXFLAGS += -DPURE_STATIC
224 ++ MYCXXFLAGS += -DPURE_STATIC
225 + @ENDIF
226 +
227 +-@DO_EXPORT RUNCC RUNLD CXXFLAGS LDLIBS PICLDFLAGS VERBOSE SOCKETENGINE CORELDFLAGS
228 ++MYCXXFLAGS += $(CXXFLAGS)
229 ++@DO_EXPORT RUNCC RUNLD MYCXXFLAGS LDLIBS PICLDFLAGS VERBOSE SOCKETENGINE CORELDFLAGS
230 + @DO_EXPORT SOURCEPATH BUILDPATH PURE_STATIC SPLIT_CC
231 +
232 + # Default target
233 +@@ -151,10 +152,10 @@ TARGET = all
234 + @GNU_ONLY TARGET = modules/$(M:.so=).so
235 + @ENDIF
236 +
237 +-@IFDEF T
238 ++@IFDEF TGT
239 + HEADER =
240 + FOOTER = target
241 +- TARGET = $(T)
242 ++ TARGET = $(TGT)
243 + @ENDIF
244 +
245 + @IFEQ $(DBGOK) 0
246 +@@ -229,8 +230,8 @@ install: target
247 + @-$(INSTALL) -d -o $(INSTUID) -m $(INSTMODE_DIR) $(DATPATH)
248 + @-$(INSTALL) -d -o $(INSTUID) -m $(INSTMODE_DIR) $(LOGPATH)
249 + @-$(INSTALL) -d -m $(INSTMODE_DIR) $(BINPATH)
250 +- @-$(INSTALL) -d -m $(INSTMODE_DIR) $(CONPATH)/examples/aliases
251 +- @-$(INSTALL) -d -m $(INSTMODE_DIR) $(CONPATH)/examples/modules
252 ++ @-$(INSTALL) -d -m $(INSTMODE_DIR) $(CONPATH)/aliases
253 ++ @-$(INSTALL) -d -m $(INSTMODE_DIR) $(CONPATH)/modules
254 + @-$(INSTALL) -d -m $(INSTMODE_DIR) $(MODPATH)
255 + [ "$(BUILDPATH)/bin/" -ef $(BINPATH) ] || $(INSTALL) -m $(INSTMODE_BIN) "$(BUILDPATH)/bin/inspircd" $(BINPATH)
256 + @IFNDEF PURE_STATIC
257 +@@ -238,9 +239,9 @@ install: target
258 + @ENDIF
259 + -$(INSTALL) -m $(INSTMODE_BIN) @STARTSCRIPT@ $(BASE) 2>/dev/null
260 + -$(INSTALL) -m $(INSTMODE_LIB) tools/gdbargs $(BASE)/.gdbargs 2>/dev/null
261 +- -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/*.example $(CONPATH)/examples
262 +- -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/aliases/*.example $(CONPATH)/examples/aliases
263 +- -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/modules/*.example $(CONPATH)/examples/modules
264 ++ -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/*.example $(CONPATH)
265 ++ -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/aliases/*.example $(CONPATH)/aliases
266 ++ -$(INSTALL) -m $(INSTMODE_LIB) docs/conf/modules/*.example $(CONPATH)/modules
267 + @echo ""
268 + @echo "*************************************"
269 + @echo "* INSTALL COMPLETE! *"
270 +@@ -253,7 +254,7 @@ install: target
271 + @echo ' Data:' $(DATPATH)
272 + @echo 'To start the ircd, run:' $(BASE)/inspircd start
273 + @echo 'Remember to create your config file:' $(CONPATH)/inspircd.conf
274 +- @echo 'Examples are available at:' $(CONPATH)/examples/
275 ++ @echo 'Examples are available at:' $(CONPATH)
276 +
277 + @GNU_ONLY RCS_FILES = $(wildcard .git/index src/version.sh)
278 + @BSD_ONLY RCS_FILES = src/version.sh
279 +diff --git a/make/unit-cc.pl b/make/unit-cc.pl
280 +index a494fb74b..2a570ec91 100755
281 +--- a/make/unit-cc.pl
282 ++++ b/make/unit-cc.pl
283 +@@ -113,7 +113,7 @@ sub do_compile {
284 + my $libs = '';
285 + my $binary = $ENV{RUNCC};
286 + if ($do_compile) {
287 +- $flags = $ENV{CXXFLAGS};
288 ++ $flags = $ENV{MYCXXFLAGS};
289 + $flags =~ s/ -pedantic// if nopedantic($file);
290 + $flags .= ' ' . getcompilerflags($file);
291 +
292
293 diff --git a/net-irc/inspircd/inspircd-2.0.28.ebuild b/net-irc/inspircd/inspircd-2.0.28.ebuild
294 new file mode 100644
295 index 00000000000..41581c0c6c1
296 --- /dev/null
297 +++ b/net-irc/inspircd/inspircd-2.0.28.ebuild
298 @@ -0,0 +1,115 @@
299 +# Copyright 1999-2019 Gentoo Authors
300 +# Distributed under the terms of the GNU General Public License v2
301 +
302 +EAPI="7"
303 +
304 +inherit toolchain-funcs
305 +
306 +DESCRIPTION="Inspire IRCd - The Stable, High-Performance Modular IRCd"
307 +HOMEPAGE="https://inspircd.github.com/"
308 +SRC_URI="https://github.com/inspircd/inspircd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
309 +
310 +LICENSE="GPL-2"
311 +SLOT="0"
312 +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
313 +IUSE="geoip gnutls ipv6 ldap mysql pcre posix postgres sqlite ssl tre"
314 +
315 +RDEPEND="
316 + acct-group/inspircd
317 + acct-user/inspircd
318 + dev-lang/perl
319 + ssl? ( dev-libs/openssl:= )
320 + geoip? ( dev-libs/geoip )
321 + gnutls? ( net-libs/gnutls:= dev-libs/libgcrypt:0 )
322 + ldap? ( net-nds/openldap )
323 + mysql? ( dev-db/mysql-connector-c:= )
324 + postgres? ( dev-db/postgresql:= )
325 + pcre? ( dev-libs/libpcre )
326 + sqlite? ( >=dev-db/sqlite-3.0 )
327 + tre? ( dev-libs/tre )"
328 +DEPEND="${RDEPEND}"
329 +
330 +DOCS=( docs/. )
331 +PATCHES=( "${FILESDIR}"/${P}-fix-path-builds.patch )
332 +
333 +src_prepare() {
334 + default
335 +
336 + # Patch the inspircd launcher with the inspircd user
337 + sed -i -e "s/@UID@/${PN}/" "${S}/make/template/${PN}" || die
338 +}
339 +
340 +src_configure() {
341 + local extras=""
342 +
343 + use geoip && extras+="m_geoip.cpp,"
344 + use gnutls && extras+="m_ssl_gnutls.cpp,"
345 + use ldap && extras+="m_ldapauth.cpp,m_ldapoper.cpp,"
346 + use mysql && extras+="m_mysql.cpp,"
347 + use pcre && extras+="m_regex_pcre.cpp,"
348 + use posix && extras+="m_regex_posix.cpp,"
349 + use postgres && extras+="m_pgsql.cpp,"
350 + use sqlite && extras+="m_sqlite3.cpp,"
351 + use ssl && extras+="m_ssl_openssl.cpp,"
352 + use tre && extras+="m_regex_tre.cpp,"
353 +
354 + # The first configuration run enables certain "extra" InspIRCd
355 + # modules, the second run generates the actual makefile.
356 + if [[ -n "${extras}" ]]; then
357 + ./configure --disable-interactive --enable-extras=${extras%,}
358 + fi
359 +
360 + local myconf=(
361 + --with-cc="$(tc-getCXX)"
362 + --disable-interactive
363 + --prefix="/usr/$(get_libdir)/${PN}"
364 + --config-dir="/etc/${PN}"
365 + --data-dir="/var/lib/${PN}/data"
366 + --log-dir="/var/log/${PN}"
367 + --binary-dir="/usr/bin"
368 + --module-dir="/usr/$(get_libdir)/${PN}/modules"
369 + $(usex ipv6 '' '--disable-ipv6')
370 + $(usex gnutls '--enable-gnutls' '')
371 + $(usex ssl '--enable-openssl' ''))
372 + ./configure "${myconf[@]}"
373 +}
374 +
375 +src_compile() {
376 + emake V=1 LDFLAGS="${LDFLAGS}" CXXFLAGS="${CXXFLAGS}"
377 +}
378 +
379 +src_install() {
380 + emake INSTUID=${PN} DESTDIR="${D%/}" install
381 +
382 + insinto "/usr/include/${PN}"
383 + doins -r include/.
384 +
385 + einstalldocs
386 +
387 + newinitd "${FILESDIR}/${PN}.initd" "${PN}"
388 + newconfd "${FILESDIR}/${PN}.confd" "${PN}"
389 +
390 + keepdir "/var/log/${PN}"
391 +
392 + diropts -o"${PN}" -g"${PN}" -m0700
393 + keepdir "/var/lib/${PN}/data"
394 +}
395 +
396 +pkg_postinst() {
397 + if [[ -z "${REPLACING_VERSIONS}" ]]; then
398 + # This is a new installation
399 + elog "You will find example configuration files under "
400 + elog "/usr/share/doc/${PN}"
401 + elog "Read the ${PN}.conf.example file carefully before "
402 + elog "starting the service."
403 + fi
404 + local pv
405 + for pv in ${REPLACING_VERSIONS}; do
406 + if ver_test "${pv}" -lt "2.0.24-r1"; then
407 + elog "Starting with 2.0.24-r1 the daemon is no longer started"
408 + elog "with the --logfile option and you are thus expected to define"
409 + elog "logging in the InspIRCd configuration file if you want it."
410 + break
411 + fi
412 + done
413 +}