summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-db/firebird/ChangeLog13
-rw-r--r--dev-db/firebird/files/firebird-2.5.0.26074.0-Makefile.in.static.createdb66
-rw-r--r--dev-db/firebird/files/firebird-2.5.0.26074.0-build.patch228
-rw-r--r--dev-db/firebird/files/firebird-2.5.0.26074.0-client.patch6
-rw-r--r--dev-db/firebird/files/firebird-2.5.0.26074.0-deps-flags.patch59
-rw-r--r--dev-db/firebird/files/firebird-2.5.0.26074.0-superclassic.patch12
-rw-r--r--dev-db/firebird/files/firebird.xinetd11
-rw-r--r--dev-db/firebird/firebird-2.5.0.26074.0-r2.ebuild305
-rw-r--r--dev-db/firebird/metadata.xml14
9 files changed, 707 insertions, 7 deletions
diff --git a/dev-db/firebird/ChangeLog b/dev-db/firebird/ChangeLog
index a8c0b7680e96..22fa5123bc04 100644
--- a/dev-db/firebird/ChangeLog
+++ b/dev-db/firebird/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for dev-db/firebird
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/ChangeLog,v 1.106 2011/05/12 18:42:35 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/ChangeLog,v 1.107 2011/10/06 09:03:08 patrick Exp $
+
+*firebird-2.5.0.26074.0-r2 (06 Oct 2011)
+
+ 06 Oct 2011; Patrick Lauer <patrick@gentoo.org>
+ +firebird-2.5.0.26074.0-r2.ebuild,
+ +files/firebird-2.5.0.26074.0-Makefile.in.static.createdb,
+ +files/firebird-2.5.0.26074.0-build.patch,
+ files/firebird-2.5.0.26074.0-client.patch,
+ +files/firebird-2.5.0.26074.0-deps-flags.patch,
+ +files/firebird-2.5.0.26074.0-superclassic.patch, +files/firebird.xinetd:
+ Bump for #385137
*firebird-2.5.0.26074.0-r1 (12 May 2011)
diff --git a/dev-db/firebird/files/firebird-2.5.0.26074.0-Makefile.in.static.createdb b/dev-db/firebird/files/firebird-2.5.0.26074.0-Makefile.in.static.createdb
new file mode 100644
index 000000000000..bd5889b488b0
--- /dev/null
+++ b/dev-db/firebird/files/firebird-2.5.0.26074.0-Makefile.in.static.createdb
@@ -0,0 +1,66 @@
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+# You may obtain a copy of the Licence at
+# http://www.gnu.org/licences/lgpl.html
+#
+# As a special exception this file can also be included in modules
+# with other source code as long as that source code has been
+# released under an Open Source Initiative certificed licence.
+# More information about OSI certification can be found at:
+# http://www.opensource.org
+#
+# This module is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public Licence for more details.
+#
+# This module was created by members of the firebird development
+# team. All individual contributions remain the Copyright (C) of
+# those individuals and all rights are reserved. Contributors to
+# this file are either listed below or can be obtained from a CVS
+# history command.
+#
+# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
+#
+# Contributor(s):
+#
+#
+#
+ROOT=..
+ObjModuleType=boot
+CXXFLAGS+= -DBOOT_BUILD
+
+include $(ROOT)/gen/make.defaults
+include $(ROOT)/gen/make.platform
+include $(ROOT)/gen/make.rules
+include $(ROOT)/gen/make.shared.variables
+
+
+@SET_MAKE@
+
+
+CREATEDB_Files= create_db.cpp
+CREATEDB_Sources = $(addprefix utilities/, $(CREATEDB_Files))
+CREATEDB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CREATEDB_Sources))))
+
+
+AllObjects = $(CREATEDB_Object) $(CLUMPLETS_Objects)
+
+Dependencies = $(AllObjects:.o=.d)
+
+
+.PHONY: all create_db
+
+all: create_db
+
+create_db: $(CREATE_DB)
+
+$(CREATE_DB): $(CREATEDB_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
+ $(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
+
+
+include $(ROOT)/gen/make.shared.targets
+
+-include $(Dependencies)
diff --git a/dev-db/firebird/files/firebird-2.5.0.26074.0-build.patch b/dev-db/firebird/files/firebird-2.5.0.26074.0-build.patch
new file mode 100644
index 000000000000..1f44fcc97aed
--- /dev/null
+++ b/dev-db/firebird/files/firebird-2.5.0.26074.0-build.patch
@@ -0,0 +1,228 @@
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.client.util B2_5_Release/builds/posix/Makefile.in.client.util
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.client.util 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.client.util 2011-03-09 23:35:01.000000000 -0500
+@@ -53,11 +53,6 @@
+ $(CLUMPLETS_Objects) $(FBCONFIG_Objects)
+
+
+-CREATEDB_Files= create_db.cpp
+-CREATEDB_Sources = $(addprefix utilities/, $(CREATEDB_Files))
+-CREATEDB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CREATEDB_Sources))))
+-
+-
+ DROP_Other_Sources = common/utils.cpp lock/lock.cpp jrd/isc_sync.cpp jrd/isc.cpp \
+ common/config/config.cpp common/config/config_file.cpp $(OS_SPECIFIC_Sources)
+
+@@ -133,7 +128,7 @@
+ RELAY_Sources = $(addprefix utilities/, $(RELAY_Files))
+ RELAY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(RELAY_Sources))))
+
+-AllObjects = $(CREATEDB_Object) $(DROP_Object) $(GSTAT_Object) $(FBGUARD_Objects) \
++AllObjects = $(DROP_Object) $(GSTAT_Object) $(FBGUARD_Objects) \
+ $(FBMGR_Objects) $(REBUILD_Objects) $(RELAY_Objects) $(FBSVCMGR_Objects) \
+ $(FBTRACEMGR_Objects)
+
+@@ -141,17 +136,11 @@
+ Dependencies = $(AllObjects:.o=.d)
+
+
+-.PHONY: all gstat gsec fbguard fbmgr_bin nbackup gds_drop gds_relay create_db fb_lock_print \
++.PHONY: all gstat gsec fbguard fbmgr_bin nbackup gds_drop gds_relay fb_lock_print \
+ fbsvcmgr fbtracemgr
+
+ all: $(CLIENT_UTIL_TARGETS)
+
+-create_db: $(CREATE_DB)
+-
+-$(CREATE_DB): $(CREATEDB_Objects)
+- $(STATICEXE_LINK) $(LINK_OPTS) $(CREATEDB_Objects) -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
+-
+-
+ nbackup: $(LIBFBCLIENT_SO) $(NBACKUP)
+
+ $(NBACKUP): $(NBACKUP_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects)
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.codes B2_5_Release/builds/posix/Makefile.in.codes
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.codes 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.codes 2011-03-09 23:35:01.000000000 -0500
+@@ -22,7 +22,8 @@
+ #
+ #
+ ROOT=..
+-ObjModuleType=std
++ObjModuleType=boot
++CXXFLAGS+= -DBOOT_BUILD
+
+ include $(ROOT)/gen/make.defaults
+ include $(ROOT)/gen/make.platform
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.embed.util B2_5_Release/builds/posix/Makefile.in.embed.util
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.embed.util 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.embed.util 2011-03-09 23:35:01.000000000 -0500
+@@ -56,11 +56,6 @@
+ $(FBCONFIG_Objects)
+
+
+-CREATEDB_Files= create_db.cpp
+-CREATEDB_Sources = $(addprefix utilities/, $(CREATEDB_Files))
+-CREATEDB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CREATEDB_Sources))))
+-
+-
+ DROP_Other_Sources += common/utils.cpp jrd/isc_sync.cpp jrd/isc.cpp \
+ common/config/config.cpp common/config/config_file.cpp $(OS_SPECIFIC_Sources)
+
+@@ -128,30 +123,19 @@
+ RELAY_Sources = $(addprefix utilities/, $(RELAY_Files))
+ RELAY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(RELAY_Sources))))
+
+-AllObjects = $(CREATEDB_Object) $(DROP_Object) $(FBSVCMGR_Objects) \
++AllObjects = $(DROP_Object) $(FBSVCMGR_Objects) \
+ $(GSEC_Objects) $(GSTAT_Object) $(FBGUARD_Objects) \
+ $(IBMGR_Objects) $(REBUILD_Objects) $(RELAY_Objects) $(CLUMPLETS_Objects)
+
+ Dependencies = $(AllObjects:.o=.d)
+
+
+-.PHONY: create_db gstat gds_drop gds_relay gsec fbguard ibmgr_bin nbackup fb_lock_print \
++.PHONY: gstat gds_drop gds_relay gsec fbguard ibmgr_bin nbackup fb_lock_print \
+ fbsvcmgr fbtracemgr
+
+ all: $(EMBED_UTIL_TARGETS)
+
+
+-# it's important to note here that create_db is linked against the static
+-# 'boot' libraries rather than the later embedded shared library. The
+-# other utilities are released but create_db is used in construction.
+-# MOD 29-July-2002
+-
+-create_db: $(CREATE_DB)
+-
+-$(CREATE_DB): $(CREATEDB_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
+- $(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
+-
+-
+ nbackup: $(LIBFBEMBED_SO) $(NBACKUP)
+
+ $(NBACKUP): $(NBACKUP_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects)
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.examples B2_5_Release/builds/posix/Makefile.in.examples
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.examples 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.examples 2011-03-09 23:35:01.000000000 -0500
+@@ -29,7 +29,8 @@
+ #
+ #
+ ROOT=../..
+-ObjModuleType=std
++ObjModuleType=boot
++CXXFLAGS+= -DBOOT_BUILD
+
+ # Add the install include directory to the search path since the
+ # examples need to build using those headers values.
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.fbtrace B2_5_Release/builds/posix/Makefile.in.fbtrace
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.fbtrace 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.fbtrace 2011-03-21 16:00:40.000000000 -0400
+@@ -71,6 +71,12 @@
+
+ fbtrace: $(FBTRACE)
+
++ifeq (@FIREBIRD_ARCH_TYPE@,classic)
++ LINK_TRACE_LIBS += -lfbembed
++else
++ FBTRACE_Objects += $(addprefix $(OBJ)/, $(addsuffix .o, $(basename jrd/gds.cpp)))
++endif
++
+ $(FBTRACE): $(FBTRACE_Objects)
+ $(LINK_TRACE) -o $@ $^ $(LINK_TRACE_LIBS)
+
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.firebird B2_5_Release/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
++++ B2_5_Release/builds/posix/Makefile.in.firebird 2011-03-09 23:35:01.000000000 -0500
+@@ -263,7 +263,7 @@
+ $(ISC_GDB): create_db empty_db gbak_static isql_static ref_databases
+
+ create_db:
+- $(MAKE) -f $(GEN_ROOT)/Makefile.embed.util $(CREATE_DB)
++ $(MAKE) -f $(GEN_ROOT)/Makefile.static.createdb
+
+ gbak_static:
+ $(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.static.gbak
+@@ -286,8 +286,7 @@
+
+ #--------------------------------------------------------------------------
+ #Phase3: Now we start building the tools we are actually going to use
+-# against the shared library.
+-# an empty database (lock manager and create_db). Then we rebuild all the
++# against the shared library. Then we rebuild all the
+ # items we have built in the static library into a dynamic library.
+ # (It's probably possible to directly build the dynamic library - but thats
+ # for another day). We still don't have the security database stuff.
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.msgs B2_5_Release/builds/posix/Makefile.in.msgs
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.msgs 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.msgs 2011-03-09 23:35:01.000000000 -0500
+@@ -28,7 +28,8 @@
+ #
+ #
+ ROOT=..
+-ObjModuleType=std
++ObjModuleType=boot
++CXXFLAGS+= -DBOOT_BUILD
+
+ include $(ROOT)/gen/make.defaults
+ include $(ROOT)/gen/make.platform
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.refDatabases B2_5_Release/builds/posix/Makefile.in.refDatabases
+--- Firebird-2.5.0.26074-0_orig/builds/posix/Makefile.in.refDatabases 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/Makefile.in.refDatabases 2011-03-09 23:35:01.000000000 -0500
+@@ -29,7 +29,8 @@
+ #
+ #
+ ROOT=..
+-ObjModuleType=std
++ObjModuleType=boot
++CXXFLAGS+= -DBOOT_BUILD
+
+ include $(ROOT)/gen/make.defaults
+ include $(ROOT)/gen/make.platform
+@@ -53,8 +54,8 @@
+
+ .PHONY: empty_db refDatabases
+
+-# This is where you are going to have trouble if there is one, at creating
+-# the first empty database. Things to watch out for, $INTERBASE variable
++# This is where you are going to have trouble if there is one, at creating
++# the first empty database. Things to watch out for, $INTERBASE variable
+ # pointing in the wrong place, shared library path LD_LIBRARY_PATH
+ # not pointing to new stuff (mind you this point it should be creating
+ # using create_db statically linked).
+@@ -62,7 +63,7 @@
+ empty_db : empty.fdb yachts.lnk
+
+ empty.fdb : $(CREATE_DB)
+- $(MAKE) -f $(GEN_ROOT)/Makefile.embed.util $(BIN)/create_db
++ $(MAKE) -f $(GEN_ROOT)/Makefile.static.createdb
+ -$(RM) $@
+ $(BIN)/create_db $@
+ $(TOUCH) $@
+diff -Naur '--exclude=.svn' Firebird-2.5.0.26074-0_orig/builds/posix/make.defaults B2_5_Release/builds/posix/make.defaults
+--- Firebird-2.5.0.26074-0_orig/builds/posix/make.defaults 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/builds/posix/make.defaults 2011-03-09 23:35:01.000000000 -0500
+@@ -49,9 +49,11 @@
+
+ FIREBIRD=$(GEN_ROOT)/firebird
+ INTERBASE=$(FIREBIRD)
++FIREBIRD_LOCK=$(shell cd $(FIREBIRD); pwd)
+
+ export INTERBASE
+ export FIREBIRD
++export FIREBIRD_LOCK
+
+ LIB=$(FIREBIRD)/lib
+ BIN=$(FIREBIRD)/bin
+diff -Naur Firebird-2.5.0.26074-0_orig/configure.in B2_5_Release/configure.in
+--- Firebird-2.5.0.26074-0_orig/configure.in 2010-11-09 12:42:45.000000000 -0500
++++ B2_5_Release/configure.in 2011-06-13 17:10:35.412587676 -0400
+@@ -1359,6 +1389,7 @@
+ gen/Makefile.static.gpre:${MAKE_SRC_DIR}/Makefile.in.static.gpre
+ gen/Makefile.static.gbak:${MAKE_SRC_DIR}/Makefile.in.static.gbak
+ gen/Makefile.static.isql:${MAKE_SRC_DIR}/Makefile.in.static.isql
++gen/Makefile.static.createdb:${MAKE_SRC_DIR}/Makefile.in.static.createdb
+ gen/Makefile.refDatabases:${MAKE_SRC_DIR}/Makefile.in.refDatabases
+ gen/Makefile.fbserver:${MAKE_SRC_DIR}/Makefile.in.fbserver
+ gen/Makefile.smp_server:${MAKE_SRC_DIR}/Makefile.in.smp_server
+
diff --git a/dev-db/firebird/files/firebird-2.5.0.26074.0-client.patch b/dev-db/firebird/files/firebird-2.5.0.26074.0-client.patch
index 7648711363d0..8331c8122faf 100644
--- a/dev-db/firebird/files/firebird-2.5.0.26074.0-client.patch
+++ b/dev-db/firebird/files/firebird-2.5.0.26074.0-client.patch
@@ -1,6 +1,6 @@
-diff -Naur Firebird-2.5.0.26074-0_mod//builds/posix/Makefile.in.firebird Firebird-2.5.0.26074-0/builds/posix/Makefile.in.firebird
---- Firebird-2.5.0.26074-0_mod//builds/posix/Makefile.in.firebird 2010-11-12 15:46:22.000000000 -0500
-+++ Firebird-2.5.0.26074-0/builds/posix/Makefile.in.firebird 2010-11-12 16:36:22.000000000 -0500
+diff -Naur orig/builds/posix/Makefile.in.firebird builds/posix/Makefile.in.firebird
+--- orig/builds/posix/Makefile.in.firebird 2010-11-12 15:46:22.000000000 -0500
++++ builds/posix/Makefile.in.firebird 2010-11-12 16:36:22.000000000 -0500
@@ -145,7 +145,7 @@
firebird : firebird_@FIREBIRD_ARCH_TYPE@ $(PLATFORM_POSTBUILD_TARGET)
diff --git a/dev-db/firebird/files/firebird-2.5.0.26074.0-deps-flags.patch b/dev-db/firebird/files/firebird-2.5.0.26074.0-deps-flags.patch
new file mode 100644
index 000000000000..8be521cc0fac
--- /dev/null
+++ b/dev-db/firebird/files/firebird-2.5.0.26074.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=-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/files/firebird-2.5.0.26074.0-superclassic.patch b/dev-db/firebird/files/firebird-2.5.0.26074.0-superclassic.patch
new file mode 100644
index 000000000000..3891cc776fae
--- /dev/null
+++ b/dev-db/firebird/files/firebird-2.5.0.26074.0-superclassic.patch
@@ -0,0 +1,12 @@
+diff -Naur orig/builds/posix/Makefile.in.firebird builds/posix/Makefile.in.firebird
+--- orig/builds/posix/Makefile.in.firebird 2010-11-09 12:42:45.000000000 -0500
++++ builds/posix/Makefile.in.firebird 2011-03-07 20:26:56.612573632 -0500
+@@ -332,7 +332,7 @@
+ .PHONY: libfbembed inet_server fb_smp_server embed_gfix embed_gbak embed_isql
+ .PHONY: embed_gpre embed_util
+
+-classic_targets: $(PLAT_CLASSIC_PRE_TARGET) libfbembed inet_server fb_smp_server embed_gfix embed_gbak embed_isql \
++classic_targets: $(PLAT_CLASSIC_PRE_TARGET) libfbembed fbserver fb_smp_server embed_gfix embed_gbak embed_isql \
+ embed_gpre libfbclient embed_util embed_gdef embed_qli embed_fbudf $(PLAT_CLASSIC_POST_TARGET)
+
+ libfbembed:
diff --git a/dev-db/firebird/files/firebird.xinetd b/dev-db/firebird/files/firebird.xinetd
new file mode 100644
index 000000000000..01fc102ee3a8
--- /dev/null
+++ b/dev-db/firebird/files/firebird.xinetd
@@ -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/fb_inet_server
+ disable = yes
+}
diff --git a/dev-db/firebird/firebird-2.5.0.26074.0-r2.ebuild b/dev-db/firebird/firebird-2.5.0.26074.0-r2.ebuild
new file mode 100644
index 000000000000..e884406629c3
--- /dev/null
+++ b/dev-db/firebird/firebird-2.5.0.26074.0-r2.ebuild
@@ -0,0 +1,305 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/firebird/firebird-2.5.0.26074.0-r2.ebuild,v 1.1 2011/10/06 09:03:08 patrick Exp $
+
+EAPI=4
+
+inherit flag-o-matic eutils autotools multilib 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"
+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_pretend() {
+ if use client && use superserver ; then
+ die "Use flags client and superserver cannot be used together"
+ fi
+ if use client && use xinetd ; then
+ die "Use flags client and xinetd cannot be used together"
+ fi
+ if use superserver && use xinetd ; then
+ die "Use flags superserver and xinetd cannot be used together"
+ fi
+}
+
+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() {
+ # Fixes bug #347133
+ epatch "${FILESDIR}/${P}-build.patch"
+ cp "${FILESDIR}/${P}-Makefile.in.static.createdb" \
+ "${S}/builds/posix/Makefile.in.static.createdb" \
+ || die "createdb makefile not found"
+
+ # 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}/${P}-deps-flags.patch"
+
+ use client && epatch "${FILESDIR}/${P}-client.patch"
+ if ! use superserver ; then
+ epatch "${FILESDIR}/${P}-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 docs/*.pdf
+ dodoc "${WORKDIR}"/manuals/*
+ 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}"
+
+ elog
+ elog "Firebird is no longer installed in /opt. Binaries are in"
+ elog "/usr/bin. The core, udfs, etc are in /usr/lib/firebird. Logs"
+ elog "are in /var/log/firebird, and lock files in /var/run/firebird"
+ elog "The command line tool isql has been renamed to fbsql."
+ elog "Please report any problems or issues to bugs.gentoo.org."
+ elog
+}
+
+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"
+}
diff --git a/dev-db/firebird/metadata.xml b/dev-db/firebird/metadata.xml
index 2200b0564fe7..469c58f3cf58 100644
--- a/dev-db/firebird/metadata.xml
+++ b/dev-db/firebird/metadata.xml
@@ -1,9 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>maintainer-needed@gentoo.org</email>
- </maintainer>
+<herd>proxy-maintainers</herd>
+<maintainer>
+<email>patrick@gentoo.org</email>
+<name>Patrick Lauer</name>
+<description>Proxy maintainer. CC him on bugs</description>
+</maintainer>
+<maintainer>
+<email>wlt@obsidian-studios.com</email>
+<name>William L. Thomson Jr.</name>
+<description>Maintainer. Assign bugs to him</description>
+</maintainer>
<longdescription>
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.