Gentoo Archives: gentoo-commits

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