summaryrefslogtreecommitdiff
path: root/dev-db
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2014-12-16 10:14:12 +0000
committerPacho Ramos <pacho@gentoo.org>2014-12-16 10:14:12 +0000
commitcaf90284570b5c7529514b9b48836a4834383790 (patch)
tree97f5a72bd8f31c1f849f057a04d35a822b5bdaad /dev-db
parentfix corosync version dep wrt #531762 (diff)
downloadgentoo-2-caf90284570b5c7529514b9b48836a4834383790.tar.gz
gentoo-2-caf90284570b5c7529514b9b48836a4834383790.tar.bz2
gentoo-2-caf90284570b5c7529514b9b48836a4834383790.zip
Patch should not remove MSG_NOSIGNAL flag on x86 (#424161 by Maciej Szmigiero)
(Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key A188FBD4)
Diffstat (limited to 'dev-db')
-rw-r--r--dev-db/firebird/ChangeLog9
-rw-r--r--dev-db/firebird/files/firebird-2.5.3.26780.0-deps-flags.patch59
-rw-r--r--dev-db/firebird/firebird-2.5.3.26780.0-r1.ebuild290
3 files changed, 357 insertions, 1 deletions
diff --git a/dev-db/firebird/ChangeLog b/dev-db/firebird/ChangeLog
index 8a71c40dd7ca..a02532150431 100644
--- a/dev-db/firebird/ChangeLog
+++ b/dev-db/firebird/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-db/firebird
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/ChangeLog,v 1.117 2014/12/11 11:51:32 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/ChangeLog,v 1.118 2014/12/16 10:14:12 pacho Exp $
+
+*firebird-2.5.3.26780.0-r1 (16 Dec 2014)
+
+ 16 Dec 2014; Pacho Ramos <pacho@gentoo.org>
+ +files/firebird-2.5.3.26780.0-deps-flags.patch,
+ +firebird-2.5.3.26780.0-r1.ebuild:
+ Patch should not remove MSG_NOSIGNAL flag on x86 (#424161 by Maciej Szmigiero)
*firebird-2.5.3.26780.0 (11 Dec 2014)
diff --git a/dev-db/firebird/files/firebird-2.5.3.26780.0-deps-flags.patch b/dev-db/firebird/files/firebird-2.5.3.26780.0-deps-flags.patch
new file mode 100644
index 000000000000..506a6c07a79c
--- /dev/null
+++ b/dev-db/firebird/files/firebird-2.5.3.26780.0-deps-flags.patch
@@ -0,0 +1,59 @@
+diff -Naur Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.firebird Firebird-2.5.0.26074-0_deps-flags/builds/posix/Makefile.in.firebird
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.firebird 2010-11-09 12:42:45.000000000 -0500
++++ Firebird-2.5.0.26074-0_deps-flags/builds/posix/Makefile.in.firebird 2011-03-28 15:10:09.814370706 -0400
+@@ -158,7 +158,7 @@
+ # some complications particularly for super in needing to start the server
+ # that you are currently building. MOD 28-July-2002
+
+-firebird_basic: btyacc_binary external_libraries firebird_boot basic_targets
++firebird_basic: firebird_boot basic_targets
+
+ firebird_boot: updateBuildNum boot_phase1 boot_phase2
+
+diff -Naur Firebird-2.5.0.26074-0_orig/builds/posix/make.defaults Firebird-2.5.0.26074-0_deps-flags/builds/posix/make.defaults
+--- Firebird-2.5.0.26074-0_orig/builds/posix/make.defaults 2010-11-09 12:42:45.000000000 -0500
++++ Firebird-2.5.0.26074-0_deps-flags/builds/posix/make.defaults 2011-03-28 15:21:26.904370708 -0400
+@@ -138,7 +138,7 @@
+ AR= ar @AR_OPTIONS@ crsu
+ LN= @LN_S@
+ RANLIB= @RANLIB@
+-BTYACC=$(ROOT)/extern/btyacc/btyacc
++BTYACC=/usr/bin/btyacc
+
+ CC = @CC@
+ CXX = @CXX@
+diff -Naur Firebird-2.5.0.26074-0_orig/builds/posix/prefix.linux Firebird-2.5.0.26074-0_deps-flags/builds/posix/prefix.linux
+--- Firebird-2.5.0.26074-0_orig/builds/posix/prefix.linux 2010-11-09 12:42:45.000000000 -0500
++++ Firebird-2.5.0.26074-0_deps-flags/builds/posix/prefix.linux 2011-03-25 21:38:29.031037374 -0400
+@@ -18,11 +18,10 @@
+ #
+ # 2 Oct 2002, Nickolay Samofatov - Major cleanup
+
+-COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -pipe -MMD -fPIC -fmessage-length=0
+-OPTIMIZE_FLAGS=-O3 -march=i586 -mtune=i686 -fno-omit-frame-pointer
++COMMON_FLAGS=-DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -MMD -fPIC -fmessage-length=0
+ WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable
+
+-PROD_FLAGS=-DNDEBUG $(COMMON_FLAGS) $(OPTIMIZE_FLAGS)
++PROD_FLAGS=$(COMMON_FLAGS)
+ #DEV_FLAGS=-DUSE_VALGRIND -p $(COMMON_FLAGS) $(WARN_FLAGS)
+ DEV_FLAGS=-p $(COMMON_FLAGS) $(WARN_FLAGS)
+
+diff -Naur Firebird-2.5.0.26074-0_orig/builds/posix/prefix.linux_amd64 Firebird-2.5.0.26074-0_deps-flags/builds/posix/prefix.linux_amd64
+--- Firebird-2.5.0.26074-0_orig/builds/posix/prefix.linux_amd64 2010-11-09 12:42:45.000000000 -0500
++++ Firebird-2.5.0.26074-0_deps-flags/builds/posix/prefix.linux_amd64 2011-03-25 21:39:15.134370707 -0400
+@@ -18,12 +18,11 @@
+ #
+ # 2 Oct 2002, Nickolay Samofatov - Major cleanup
+
+-COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -pipe -MMD -fPIC -fmessage-length=0
+-OPTIMIZE_FLAGS=-O3 -fno-omit-frame-pointer
++COMMON_FLAGS=-DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -MMD -fPIC -fmessage-length=0
+ WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable
+ CXXFLAGS:= $(CXXFLAGS) -fno-rtti
+
+-PROD_FLAGS=-DNDEBUG $(COMMON_FLAGS) $(OPTIMIZE_FLAGS)
++PROD_FLAGS=$(COMMON_FLAGS)
+ #DEV_FLAGS=-DUSE_VALGRIND $(COMMON_FLAGS) $(WARN_FLAGS)
+ DEV_FLAGS=$(COMMON_FLAGS) $(WARN_FLAGS)
+
diff --git a/dev-db/firebird/firebird-2.5.3.26780.0-r1.ebuild b/dev-db/firebird/firebird-2.5.3.26780.0-r1.ebuild
new file mode 100644
index 000000000000..487da35a9a88
--- /dev/null
+++ b/dev-db/firebird/firebird-2.5.3.26780.0-r1.ebuild
@@ -0,0 +1,290 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/firebird-2.5.3.26780.0-r1.ebuild,v 1.1 2014/12/16 10:14:12 pacho Exp $
+
+EAPI=5
+inherit flag-o-matic eutils autotools multilib user readme.gentoo versionator
+
+MY_P=${PN/f/F}-$(replace_version_separator 4 -)
+#MY_P=${PN/f/F}-${PV/_rc/-ReleaseCandidate}
+
+DESCRIPTION="A relational database offering many ANSI SQL:2003 and some SQL:2008 features"
+HOMEPAGE="http://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 -ia64 ~x86"
+
+IUSE="doc client superserver xinetd examples debug"
+REQUIRED_USE="
+ client? ( !superserver )
+ client? ( !xinetd )
+ superserver? ( !xinetd )
+"
+
+RESTRICT="userpriv"
+
+RDEPEND="
+ dev-libs/libedit
+ dev-libs/icu:=
+"
+DEPEND="${RDEPEND}
+ >=dev-util/btyacc-3.0-r2
+ doc? ( app-arch/unzip )
+"
+RDEPEND="${RDEPEND}
+ xinetd? ( virtual/inetd )
+ !sys-cluster/ganglia
+"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ enewgroup firebird 450
+ enewuser firebird 450 /bin/bash /usr/$(get_libdir)/firebird firebird
+}
+
+function check_sed() {
+ MSG="sed of $3, required $2 lines modified $1"
+ einfo "${MSG}"
+ [[ $1 -ge $2 ]] || die "${MSG}"
+}
+
+src_unpack() {
+ if use doc; then
+ # Unpack docs
+ mkdir "${WORKDIR}/manuals"
+ cd "${WORKDIR}/manuals"
+ unpack ib_b60_doc.zip
+ cd "${WORKDIR}"
+ fi
+ unpack "${MY_P}.tar.bz2"
+ cd "${S}"
+}
+
+src_prepare() {
+ # This patch might be portable, and not need to be duplicated per version
+ # also might no longer be necessary to patch deps or libs, just flags
+ epatch "${FILESDIR}/${PN}-2.5.3.26780.0-deps-flags.patch"
+
+ use client && epatch "${FILESDIR}/${PN}-2.5.1.26351.0-client.patch"
+ if ! use superserver ; then
+ epatch "${FILESDIR}/${PN}-2.5.1.26351.0-superclassic.patch"
+ fi
+
+ # 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 "${S}" -name \*.sh -print0 | xargs -0 chmod +x
+ rm -rf "${S}"/extern/{btyacc,editline,icu}
+
+ eautoreconf
+}
+
+src_configure() {
+ filter-flags -fprefetch-loop-arrays
+ filter-mfpmath sse
+
+ econf \
+ --prefix=/usr/$(get_libdir)/firebird \
+ $(use_enable superserver superserver) \
+ $(use_enable debug) \
+ --with-editline \
+ --with-system-editline \
+ --with-system-icu \
+ --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/${P} \
+ --with-fbudf=/usr/$(get_libdir)/${PN}/UDF \
+ --with-fbsample=/usr/share/doc/${P}/examples \
+ --with-fbsample-db=/usr/share/doc/${P}/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}
+}
+
+src_compile() {
+ MAKEOPTS="${MAKEOPTS/-j*/-j1} ${MAKEOPTS/-j/CPU=}"
+ emake
+}
+
+src_install() {
+ cd "${S}/gen/${PN}"
+
+ if use doc; then
+ dodoc "${S}"/doc/*.pdf
+ find "${WORKDIR}"/manuals -type f -iname "*.pdf" -exec dodoc '{}' + || die
+ fi
+
+ insinto /usr/include
+ doins include/*
+
+ rm lib/libfbstatic.a
+
+ insinto /usr/$(get_libdir)
+ dolib.so lib/*.so*
+
+ # links for backwards compatibility
+ 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/$(get_libdir)/${PN}
+ doins *.msg
+
+ use client && return
+
+ einfo "Renaming isql -> fbsql"
+ mv bin/isql bin/fbsql
+
+ local bins="fbsql fbsvcmgr fbtracemgr gbak gdef gfix gpre gsec gstat nbackup qli"
+ for bin in ${bins[@]}; do
+ dobin bin/${bin}
+ done
+
+ dosbin bin/fb_lock_print
+ # SuperServer
+ if use superserver ; then
+ dosbin bin/{fbguard,fbserver}
+ # ClassicServer
+ elif use xinetd ; then
+ dosbin bin/fb_inet_server
+ # SuperClassic
+ else
+ dosbin bin/{fbguard,fb_smp_server}
+
+ #Temp should not be necessary, need to patch/fix
+ dosym "${D}"/usr/$(get_libdir)/libib_util.so /usr/$(get_libdir)/${PN}/lib/libib_util.so
+ fi
+
+ exeinto /usr/bin/${PN}
+ exeopts -m0755
+ doexe bin/{changeRunUser,restoreRootRunUser,changeDBAPassword}.sh
+
+ insinto /usr/$(get_libdir)/${PN}/help
+ doins help/help.fdb
+
+ exeinto /usr/$(get_libdir)/firebird/intl
+ dolib.so intl/libfbintl.so
+ dosym "${D}"/usr/$(get_libdir)/libfbintl.so /usr/$(get_libdir)/${PN}/intl/fbintl
+ dosym "${D}"/etc/firebird/fbintl.conf /usr/$(get_libdir)/${PN}/intl/fbintl.conf
+
+ exeinto /usr/$(get_libdir)/${PN}/plugins
+ dolib.so plugins/libfbtrace.so
+ dosym "${D}"/usr/$(get_libdir)/libfbtrace.so /usr/$(get_libdir)/${PN}/plugins/libfbtrace.so
+
+ exeinto /usr/$(get_libdir)/${PN}/UDF
+ doexe UDF/*.so
+
+ insinto /usr/share/${PN}/upgrade
+ doins "${S}"/src/misc/upgrade/v2/*
+
+ insinto /etc/${PN}
+ insopts -m0644 -o firebird -g firebird
+ doins ../install/misc/*.conf
+ insopts -m0660 -o firebird -g firebird
+ doins security2.fdb
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/${PN}.xinetd" ${PN}
+ else
+ newinitd "${FILESDIR}/${PN}.init.d.2.5" ${PN}
+ newconfd "${FILESDIR}/${PN}.conf.d.2.5" ${PN}
+ fperms 640 /etc/conf.d/${PN}
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+ diropts -m 755 -o firebird -g firebird
+ dodir /var/log/${PN}
+ dodir /var/run/${PN}
+ keepdir /var/log/${PN}
+ keepdir /var/run/${PN}
+
+ use examples && docinto examples
+}
+
+pkg_postinst() {
+ use client && return
+
+ # Hack to fix ownership/perms
+ chown -fR firebird:firebird "${ROOT}/etc/${PN}" "${ROOT}/usr/$(get_libdir)/${PN}"
+ chmod 750 "${ROOT}/etc/${PN}"
+}
+
+pkg_config() {
+ use client && return
+
+ # if found /etc/security.gdb from previous install, backup, and restore as
+ # /etc/security2.fdb
+ if [ -f "${ROOT}/etc/firebird/security.gdb" ] ; then
+ # if we have scurity2.fdb already, back it 1st
+ if [ -f "${ROOT}/etc/firebird/security2.fdb" ] ; then
+ cp "${ROOT}/etc/firebird/security2.fdb" "${ROOT}/etc/firebird/security2.fdb.old"
+ fi
+ gbak -B "${ROOT}/etc/firebird/security.gdb" "${ROOT}/etc/firebird/security.gbk"
+ gbak -R "${ROOT}/etc/firebird/security.gbk" "${ROOT}/etc/firebird/security2.fdb"
+ mv "${ROOT}/etc/firebird/security.gdb" "${ROOT}/etc/firebird/security.gdb.old"
+ rm "${ROOT}/etc/firebird/security.gbk"
+
+ # make sure they are readable only to firebird
+ chown firebird:firebird "${ROOT}/etc/firebird/{security.*,security2.*}"
+ chmod 660 "${ROOT}/etc/firebird/{security.*,security2.*}"
+
+ einfo
+ einfo "Converted old security.gdb to security2.fdb, security.gdb has been "
+ einfo "renamed to security.gdb.old. if you had previous security2.fdb, "
+ einfo "it's backed to security2.fdb.old (all under ${ROOT}/etc/firebird)."
+ einfo
+ fi
+
+ # we need to enable local access to the server
+ if [ ! -f "${ROOT}/etc/hosts.equiv" ] ; then
+ touch "${ROOT}/etc/hosts.equiv"
+ chown root:0 "${ROOT}/etc/hosts.equiv"
+ chmod u=rw,go=r "${ROOT}/etc/hosts.equiv"
+ fi
+
+ # add 'localhost.localdomain' to the hosts.equiv file...
+ if [ grep -q 'localhost.localdomain$' "${ROOT}/etc/hosts.equiv" 2>/dev/null ] ; then
+ echo "localhost.localdomain" >> "${ROOT}/etc/hosts.equiv"
+ einfo "Added localhost.localdomain to ${ROOT}/etc/hosts.equiv"
+ fi
+
+ # add 'localhost' to the hosts.equiv file...
+ if [ grep -q 'localhost$' "${ROOT}/etc/hosts.equiv" 2>/dev/null ] ; then
+ echo "localhost" >> "${ROOT}/etc/hosts.equiv"
+ einfo "Added localhost to ${ROOT}/etc/hosts.equiv"
+ fi
+
+ HS_NAME=`hostname`
+ if [ grep -q ${HS_NAME} "${ROOT}/etc/hosts.equiv" 2>/dev/null ] ; then
+ echo "${HS_NAME}" >> "${ROOT}/etc/hosts.equiv"
+ einfo "Added ${HS_NAME} to ${ROOT}/etc/hosts.equiv"
+ fi
+
+ einfo "If you're using UDFs, please remember to move them"
+ einfo "to /usr/lib/firebird/UDF"
+}