From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-db/firebird/Manifest | 10 + .../firebird-3.0.2.32703.0-cloop-compiler.patch | 15 ++ .../files/firebird-3.0.2.32703.0-gcc6.patch | 19 ++ .../files/firebird-3.0.2.32703.0-unbundle.patch | 51 +++++ dev-db/firebird/files/firebird.init.d.3.0 | 22 ++ dev-db/firebird/files/firebird.logrotate | 10 + dev-db/firebird/files/firebird.xinetd.3.0 | 11 + dev-db/firebird/firebird-3.0.2.32703.0-r2.ebuild | 235 +++++++++++++++++++++ dev-db/firebird/metadata.xml | 21 ++ 9 files changed, 394 insertions(+) create mode 100644 dev-db/firebird/Manifest create mode 100644 dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch create mode 100644 dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch create mode 100644 dev-db/firebird/files/firebird-3.0.2.32703.0-unbundle.patch create mode 100644 dev-db/firebird/files/firebird.init.d.3.0 create mode 100644 dev-db/firebird/files/firebird.logrotate create mode 100644 dev-db/firebird/files/firebird.xinetd.3.0 create mode 100644 dev-db/firebird/firebird-3.0.2.32703.0-r2.ebuild create mode 100644 dev-db/firebird/metadata.xml (limited to 'dev-db/firebird') diff --git a/dev-db/firebird/Manifest b/dev-db/firebird/Manifest new file mode 100644 index 000000000000..2e956af20077 --- /dev/null +++ b/dev-db/firebird/Manifest @@ -0,0 +1,10 @@ +AUX firebird-3.0.2.32703.0-cloop-compiler.patch 349 BLAKE2B 6906993819f5aa68c39522d82bb7fb57b910f8f311d173a326147a98e983d8cd95ca90dbb538a5caa696ce4337305ece744306bf88f608cc8639bdda198e4576 SHA512 1d57f26ada2023d8bd04d73dd0f55951cef6b373710c8cf73b6bea0b4d54f879d689644d26541b2366bd1071b08eda2e1b531f3779a88b8fb52d3c9312f0c091 +AUX firebird-3.0.2.32703.0-gcc6.patch 806 BLAKE2B 85109e33f130582110e37188ef99cec5e5f0f3f95c481580df3a8c8a97215cd8e070e3febe47e46659e025b8a0c138fd0b271a5fd4b4aa67ca52419cef88db04 SHA512 184f754c4c23b7917acfabf1a5024069b8f35f58e667112a203a02e906560f2f5fea711b12975dafb3adcbe5159999e40fa459898a41d88e6de9b3499d8eaa67 +AUX firebird-3.0.2.32703.0-unbundle.patch 1786 BLAKE2B 660af04975ecfdac0ae12a1ee89e0a4d97d321ac7de7e17ba53484a909962584828c18d1f119ecc1af63c1cb2b93f451b847c9363a25831630a807b89ad13bc8 SHA512 bb0f8cb283ee230f9128a9da16da21933a1709615b34bbfac117a0563e2451a07381b52ffc1fed665e74688ff8e2c2548f86c1413427665914cb3df8500543c5 +AUX firebird.init.d.3.0 642 BLAKE2B 70f9b07a69c01e391ea8b1f1747a35eb303ff43a4923d65f76064257bfe5178601fa0b06dbf332b6a3529df30ddbe3e3c58e170ca33acfeb06a32474f1806938 SHA512 0805311d7e4ceb9cd5266be88fe61fb7d2d7cf5bf3c9482841c6431767cba9960d4f38418629519b23cdf64893173ebd01641056123ddc7f24c1f1bbf969812b +AUX firebird.logrotate 169 BLAKE2B e73e2ff85882cda144f969a9a20426f2e5bfbaf2ce894e4e7adf67a33eb4cb5f1bc2039385437dcc60436145b0d29bd1b9311d8328f68ad7870aea50b8e5402d SHA512 f99edc010272af28f18e2b89e420aabc204feda918a1181e477edb56612b6af97ca6bab2e39989db401eb8296e3233a64853f824af437329e117f09aa9868823 +AUX firebird.xinetd.3.0 193 BLAKE2B 34017b978344bc2b05cfe7b92eafd56ba20dd78d1fa21dfb5455d7972325cedae9a6ac25b4fa491899b19cb3bbe2949b8ca78626467100661767f6c944b01c20 SHA512 e02c011b55c1d6823b051d14dbfabef6d034db32ee8046adc796fdf393c837b995c270e0efdcb97950f6fead82cd73773099a247dc29961b0e8f6c4f6c0723ae +DIST Firebird-3.0.2.32703-0.tar.bz2 9536416 BLAKE2B 58afbdb430adb5f9aafe33d5459fb4fe8607e9440b6b114291777e43d447a7a5b5696c9f5903a10b63217a15836ce6386569e636369e37bf83195ec0b96e4fc6 SHA512 5950d1689c77fbcda22f1bd8015321d887dec3c7ef39665428a8bda9122838e767b168442ce7d8fb3b9b80cbd1206725b0f54bd215c5c9eb1d322b546cb042e6 +DIST ib_b60_doc.zip 10530848 BLAKE2B b4008b3e8b0416014d024cbbc9ac2e648ad671c71b91b7aeb0eedf0f8479aef80e22aff7105c5e7417e88bcf57f2cdacbc2d5f51a2ef7fb870f9d361c5f0ed6d SHA512 59eccf1d6b1f0410eddbc5967fd77a3d00e09749640b3f81e2f8b624f5a45461dffad4af5ec61488e941fb3d3af266fe86c0b56e6b7e023239537cb6557a145a +EBUILD firebird-3.0.2.32703.0-r2.ebuild 6156 BLAKE2B 7894504d0d0b888a7c735538e6e262b3e0bde8c2b5c1b7a7de39dc9374187ebb81781390be9ca8d98c612da32138ffe71714815b1bf0a8793ee19e3c92e98b25 SHA512 b02a546183c0d704c8f40bac27e2185d8b3abdd58ef92f1d3eacf76261490a652540ac2998411a8492960cd2ebdb4b104d0797cfb296e19dea1f81f603955e9f +MISC metadata.xml 837 BLAKE2B 91e52f426cd9364da97ed6969369c3fa14a37e195f79192357d245e2e1ff90e20ada790e0a1904b05c4e9e0cdf25dec55aa4dbe14e2db32feb83bd5d465846a0 SHA512 98379c40f675f7b53e90e5327b76e554c17bda1ef7484165785b3d04884dd92fc3034c6b3f0f93667c456e7b23dc83f5143a8ec358759e2a0218c94e96127912 diff --git a/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch b/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch new file mode 100644 index 000000000000..363602bed8f4 --- /dev/null +++ b/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch @@ -0,0 +1,15 @@ +Source: LibreOffice git master + + +diff -ur firebird.org/extern/cloop/Makefile firebird/extern/cloop/Makefile +--- firebird.org/extern/cloop/Makefile 2016-08-17 18:32:59.078044357 +0200 ++++ firebird/extern/cloop/Makefile 2016-08-17 18:33:14.430518561 +0200 +@@ -4,8 +4,6 @@ + + TARGET := release + +-CC := gcc +-CXX := g++ + LD := $(CXX) + + SRC_DIR := src diff --git a/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch b/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch new file mode 100644 index 000000000000..e1361415c03b --- /dev/null +++ b/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch @@ -0,0 +1,19 @@ +commit 3618aa2171674babf79ef935aa049c40a3db1321 +Author: asfernandes +Date: Sat Mar 5 03:39:36 2016 +0000 + + Make the generated code compatible with gcc 6 in C++-14 mode. + +diff --git a/src/gpre/c_cxx.cpp b/src/gpre/c_cxx.cpp +index 2af96c6..2dcffd6 100644 +--- a/src/gpre/c_cxx.cpp ++++ b/src/gpre/c_cxx.cpp +@@ -2820,7 +2820,7 @@ static void gen_request(const gpre_req* request) + printa(0, "static %sshort\n isc_%dl = %d;", + (request->req_flags & REQ_extend_dpb) ? "" : CONST_STR, + request->req_ident, request->req_length); +- printa(0, "static %schar\n isc_%d [] = {", CONST_STR, request->req_ident); ++ printa(0, "static %sunsigned char\n isc_%d [] = {", CONST_STR, request->req_ident); + + const TEXT* string_type = "blr"; + if (gpreGlob.sw_raw) diff --git a/dev-db/firebird/files/firebird-3.0.2.32703.0-unbundle.patch b/dev-db/firebird/files/firebird-3.0.2.32703.0-unbundle.patch new file mode 100644 index 000000000000..6fdd657223d4 --- /dev/null +++ b/dev-db/firebird/files/firebird-3.0.2.32703.0-unbundle.patch @@ -0,0 +1,51 @@ +diff -ruN Firebird-3.0.2.32703-0.orig/builds/posix/Makefile.in Firebird-3.0.2.32703-0/builds/posix/Makefile.in +--- Firebird-3.0.2.32703-0.orig/builds/posix/Makefile.in 2017-03-21 10:11:35.000000000 +0100 ++++ Firebird-3.0.2.32703-0/builds/posix/Makefile.in 2017-05-14 01:32:34.032241679 +0200 +@@ -123,7 +123,6 @@ + # + + extern: +- $(MAKE) -C $(ROOT)/extern/btyacc + $(MAKE) -C $(ROOT)/extern/cloop TARGET=release WITH_FPC=0 BUILD_DIR=$(TMP_ROOT)/cloop OUT_DIR=$(GEN_ROOT)/$(TARGET)/cloop + + ifeq ($(TOMBUILD_FLG),Y) +@@ -648,7 +647,7 @@ + # various cleaning + # + .PHONY: clean clean_objects clean_dependancies clean_extern_objects clean_build \ +- clean_gpre_gen clean_icu clean_dbs clean_examples clean_makefiles \ ++ clean_gpre_gen clean_dbs clean_examples clean_makefiles \ + clean_editline clean_all + + +@@ -669,8 +668,6 @@ + $(RM) $(ROOT)/libtool + $(RM_R) $(ROOT)/autom4te.cache + -$(MAKE) -C $(ROOT)/extern/editline distclean +-# -$(MAKE) -C $(ROOT)/extern/icu/source distclean +- -$(MAKE) -C $(ROOT)/extern/btyacc distclean + + clean_dbs: + $(RM) *.fdb *.FDB msg.timestamp +@@ -687,9 +684,6 @@ + clean_editline: + -$(MAKE) -C $(ROOT)/extern/editline clean + +-#clean_icu: +-# -$(MAKE) -C $(ROOT)/extern/icu/source clean +- + clean_tommath: + -$(MAKE) -C $(ROOT)/extern/libtommath clean + +diff -ruN Firebird-3.0.2.32703-0.orig/builds/posix/make.defaults Firebird-3.0.2.32703-0/builds/posix/make.defaults +--- Firebird-3.0.2.32703-0.orig/builds/posix/make.defaults 2017-03-21 10:11:35.000000000 +0100 ++++ Firebird-3.0.2.32703-0/builds/posix/make.defaults 2017-05-14 01:29:54.590235045 +0200 +@@ -155,7 +155,7 @@ + AR= ar @AR_OPTIONS@ + LN= @LN_S@ + RANLIB= @RANLIB@ +-BTYACC=$(ROOT)/extern/btyacc/btyacc ++BTYACC=/usr/bin/btyacc + CLOOP=$(GEN_ROOT)/$(TARGET)/cloop/release/bin/cloop + + CC = @CC@ diff --git a/dev-db/firebird/files/firebird.init.d.3.0 b/dev-db/firebird/files/firebird.init.d.3.0 new file mode 100644 index 000000000000..9fd4f8504769 --- /dev/null +++ b/dev-db/firebird/files/firebird.init.d.3.0 @@ -0,0 +1,22 @@ +#!/sbin/openrc-run +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later + +name=${RC_SVCNAME} + +fbhomedir="/var/run/firebird" +fblogdir="/var/log/firebird" +pidfile="${fbhomedir}/firebird.pid" +command="/usr/sbin/fbguard" +command_args="-forever -daemon -pidfile $pidfile" + +start_stop_daemon_args="-p ${pidfile} -u ${FBUSER:-firebird}:${FBGROUP:-firebird}" + +depend() { + need net +} + +start_pre() { + checkpath -q -d -m 0770 -o ${FBUSER:-firebird}:${FBGROUP:-firebird} ${fbhomedir} || return 1 + checkpath -q -d -m 0770 -o ${FBUSER:-firebird}:${FBGROUP:-firebird} ${fblogdir} || return 1 +} diff --git a/dev-db/firebird/files/firebird.logrotate b/dev-db/firebird/files/firebird.logrotate new file mode 100644 index 000000000000..c87cd43f30f8 --- /dev/null +++ b/dev-db/firebird/files/firebird.logrotate @@ -0,0 +1,10 @@ +/var/log/firebird/firebird.log { + compress + weekly + missingok + rotate 52 + size=+1024k + delaycompress + notifempty + create 644 firebird + } diff --git a/dev-db/firebird/files/firebird.xinetd.3.0 b/dev-db/firebird/files/firebird.xinetd.3.0 new file mode 100644 index 000000000000..4e094bdf0627 --- /dev/null +++ b/dev-db/firebird/files/firebird.xinetd.3.0 @@ -0,0 +1,11 @@ +service gds_db +{ + flags = REUSE + socket_type = stream + wait = no + user = firebird + log_on_success += USERID + log_on_failure += USERID + server = /usr/bin/firebird + disable = yes +} diff --git a/dev-db/firebird/firebird-3.0.2.32703.0-r2.ebuild b/dev-db/firebird/firebird-3.0.2.32703.0-r2.ebuild new file mode 100644 index 000000000000..8ab5dd6952cf --- /dev/null +++ b/dev-db/firebird/firebird-3.0.2.32703.0-r2.ebuild @@ -0,0 +1,235 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools flag-o-matic user versionator + +MY_P=${PN/f/F}-$(replace_version_separator 4 -) + +DESCRIPTION="Relational database offering many ANSI SQL:2003 and some SQL:2008 features" +HOMEPAGE="https://www.firebirdsql.org/" +SRC_URI=" + mirror://sourceforge/firebird/${MY_P}.tar.bz2 + doc? ( ftp://ftpc.inprise.com/pub/interbase/techpubs/ib_b60_doc.zip )" + +LICENSE="IDPL Interbase-1.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="doc examples +server xinetd" + +# FIXME: cloop? +CDEPEND=" + dev-libs/libtommath + dev-libs/icu:= + dev-libs/libedit +" +DEPEND="${CDEPEND} + >=dev-util/btyacc-3.0-r2 + doc? ( app-arch/unzip ) +" +RDEPEND="${CDEPEND} + xinetd? ( virtual/inetd ) + !sys-cluster/ganglia +" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${P}"-unbundle.patch + "${FILESDIR}/${P}"-gcc6.patch + "${FILESDIR}/${P}"-cloop-compiler.patch +) + +pkg_pretend() { + if [[ -e /var/run/${PN}/${PN}.pid ]] ; then + ewarn + ewarn "The presence of server connections may prevent isql or gsec" + ewarn "from establishing an embedded connection. Accordingly," + ewarn "creating employee.fdb or security3.fdb could fail." + ewarn "It is more secure to stop the firebird daemon before running emerge." + ewarn + fi +} + +pkg_setup() { + enewgroup firebird 450 + enewuser firebird 450 /bin/sh /usr/$(get_libdir)/firebird firebird +} + +check_sed() { + MSG="sed of $3, required $2 line(s) modified $1" + einfo "${MSG}" + [[ $1 -ge $2 ]] || die "${MSG}" +} + +src_unpack() { + unpack "${MY_P}.tar.bz2" + if use doc; then + # Unpack docs + mkdir "manuals" || die + cd "manuals" || die + unpack ib_b60_doc.zip + fi +} + +src_prepare() { + default + + # Rename references to isql to fbsql + # sed vs patch for portability and addtional location changes + check_sed "$(sed -i -e 's:"isql :"fbsql :w /dev/stdout' \ + src/isql/isql.epp | wc -l)" "1" "src/isql/isql.epp" # 1 line + check_sed "$(sed -i -e 's:isql :fbsql :w /dev/stdout' \ + src/msgs/history2.sql | wc -l)" "4" "src/msgs/history2.sql" # 4 lines + check_sed "$(sed -i -e 's:--- ISQL:--- FBSQL:w /dev/stdout' \ + -e 's:isql :fbsql :w /dev/stdout' \ + -e 's:ISQL :FBSQL :w /dev/stdout' \ + src/msgs/messages2.sql | wc -l)" "6" "src/msgs/messages2.sql" # 6 lines + + find . -name \*.sh -exec chmod +x {} + || die + rm -r extern/{btyacc,editline,icu} || die + + eautoreconf +} + +src_configure() { + filter-flags -fprefetch-loop-arrays + filter-mfpmath sse + + # otherwise this doesnt build with gcc-6 + # http://tracker.firebirdsql.org/browse/CORE-5099 + append-cflags -fno-sized-deallocation -fno-delete-null-pointer-checks + append-cxxflags -fno-sized-deallocation -fno-delete-null-pointer-checks -std=c++11 + + econf \ + --prefix=/usr/$(get_libdir)/firebird \ + --with-editline \ + --with-system-editline \ + --with-fbbin=/usr/bin \ + --with-fbsbin=/usr/sbin \ + --with-fbconf=/etc/${PN} \ + --with-fblib=/usr/$(get_libdir) \ + --with-fbinclude=/usr/include \ + --with-fbdoc=/usr/share/doc/${PF} \ + --with-fbudf=/usr/$(get_libdir)/${PN}/UDF \ + --with-fbsample=/usr/share/doc/${PF}/examples \ + --with-fbsample-db=/usr/share/doc/${PF}/examples/db \ + --with-fbhelp=/usr/$(get_libdir)/${PN}/help \ + --with-fbintl=/usr/$(get_libdir)/${PN}/intl \ + --with-fbmisc=/usr/share/${PN} \ + --with-fbsecure-db=/etc/${PN} \ + --with-fbmsg=/usr/$(get_libdir)/${PN} \ + --with-fblog=/var/log/${PN}/ \ + --with-fbglock=/var/run/${PN} \ + --with-fbplugins=/usr/$(get_libdir)/${PN}/plugins \ + --with-gnu-ld \ + ${myconf} +} + +# from linux underground, merging into this here +src_install() { + if use doc; then + dodoc -r doc + find "${WORKDIR}"/manuals -type f -iname "*.pdf" -exec dodoc '{}' + || die + fi + + cd "${S}/gen/Release/${PN}" || die + + doheader include/* + dolib.so lib/*.so* + + # links for backwards compatibility + insinto /usr/$(get_libdir) + dosym libfbclient.so /usr/$(get_libdir)/libgds.so + dosym libfbclient.so /usr/$(get_libdir)/libgds.so.0 + dosym libfbclient.so /usr/$(get_libdir)/libfbclient.so.1 + + insinto /usr/share/${PN}/msg + doins *.msg + + use server || return + + einfo "Renaming isql -> fbsql" + mv bin/isql bin/fbsql || die "failed to rename isql -> fbsql" + + dobin bin/{fb_config,fbsql,fbsvcmgr,fbtracemgr,gbak,gfix,gpre,gsec,gsplit,gstat,nbackup,qli} + dosbin bin/{firebird,fbguard,fb_lock_print} + + insinto /usr/share/${PN}/help + # why??? + insopts -m0660 -o firebird -g firebird + doins help/help.fdb + + exeinto /usr/$(get_libdir)/${PN}/intl + doexe intl/libfbintl.so + dosym libfbintl.so /usr/$(get_libdir)/${PN}/intl/fbintl.so + + insinto /usr/$(get_libdir)/${PN}/intl + insopts -m0644 -o root -g root + doins intl/fbintl.conf + + # plugins + exeinto /usr/$(get_libdir)/${PN}/plugins + doexe plugins/*.so + exeinto /usr/$(get_libdir)/${PN}/plugins/udr + doexe plugins/udr/*.so + + exeinto /usr/$(get_libdir)/${PN}/UDF + doexe UDF/*.so + + # logging (do we really need the perms?) + diropts -m 755 -o firebird -g firebird + dodir /var/log/${PN} + keepdir /var/log/${PN} + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}/${PN}.logrotate" ${PN} + + # configuration files + insinto /etc/${PN}/plugins + doins plugins/udr_engine.conf + insinto /etc/${PN} + doins {databases,fbtrace,firebird,plugins}.conf + + # install secutity3.fdb + insopts -m0660 -o firebird -g firebird + doins security3.fdb + + if use xinetd; then + insinto /etc/xinetd.d + newins "${FILESDIR}/${PN}.xinetd.3.0" ${PN} + else + newinitd "${FILESDIR}/${PN}.init.d.3.0" ${PN} + fi + + if use examples; then + cd examples + insinto /usr/share/${PN}/examples + insopts -m0644 -o root -g root + doins -r api + doins -r dbcrypt + doins -r include + doins -r interfaces + doins -r package + doins -r stat + doins -r udf + doins -r udr + doins CMakeLists.txt + doins functions.c + doins README + insinto /usr/share/${PN}/examples/empbuild + insopts -m0660 -o firebird -g firebird + doins empbuild/employee.fdb + fi + + einfo + elog "Starting with version 3, server mode is set in firebird.conf" + elog "The default setting is superserver." + einfo + elog "If you're using UDFs, please remember to move them to /usr/$(get_libdir)/firebird/UDF" + einfo + ewarn "${CATEGORY}/${PF} is still a tad experimental. Please test and file bugs!" +} diff --git a/dev-db/firebird/metadata.xml b/dev-db/firebird/metadata.xml new file mode 100644 index 000000000000..dfb6ac14ceca --- /dev/null +++ b/dev-db/firebird/metadata.xml @@ -0,0 +1,21 @@ + + + + + Firebird is a relational database offering many ANSI SQL standard + features that runs on Linux, Windows, and a variety of Unix platforms. + Firebird offers excellent concurrency, high performance, and powerful + language support for stored procedures and triggers. It has been used + in production systems, under a variety of names, since 1981. + + + Install the server components of Firebird, not just the client + Install ClassicServer + + + firebird + + + office@gentoo.org + + -- cgit v1.2.3