summaryrefslogtreecommitdiff
path: root/databases/firebird-server/files
diff options
context:
space:
mode:
authorAlex Dupre <ale@FreeBSD.org>2004-01-13 16:11:11 +0000
committerAlex Dupre <ale@FreeBSD.org>2004-01-13 16:11:11 +0000
commitf18b6b01304df83941f96b515932897cc118a304 (patch)
tree7ede63f375b7fc26d2d877a8b79c4cd7948d2e41 /databases/firebird-server/files
parent- fix *squirrelmail ports. (diff)
- Update to 1.5 RC8. [1] [2]
- Note that libgds.so is now symlinked to libfbembed.so rather than libfbclient.so. This restores Firebird 1.0.x shared library compatibility and fixes PHP build. [2] PR: ports/61276 [1], ports/61310 [2] Submitted by: Gleb Smirnoff <glebius@cell.sick.ru> [1], Chris Knight <chris@e-easy.com.au> (maintainer) [2] Approved by: nork (mentor)
Notes
Notes: svn path=/head/; revision=98080
Diffstat (limited to 'databases/firebird-server/files')
-rw-r--r--databases/firebird-server/files/RELNOTES78
-rw-r--r--databases/firebird-server/files/patch-autogen.sh26
-rw-r--r--databases/firebird-server/files/patch-src::common::classes::locks.h49
-rw-r--r--databases/firebird-server/files/patch-src::install::arch-specific::freebsd::install.sh.in92
4 files changed, 142 insertions, 103 deletions
diff --git a/databases/firebird-server/files/RELNOTES b/databases/firebird-server/files/RELNOTES
index 607bc697877a..3b45cce72c4b 100644
--- a/databases/firebird-server/files/RELNOTES
+++ b/databases/firebird-server/files/RELNOTES
@@ -1,22 +1,8 @@
-Firebird 1.0.2 FreeBSD Release Notes 05-Jan-2003
+Firebird 1.5.0 FreeBSD Release Notes 11-Jan-2004
--------------------------------------
-FB-T6.2.908 Firebird Final Release
-
-Welcome to the FreeBSD Firebird port! Users should note that there
-was a package called `firebird-1.0.tgz' released in mid-August
-2000. Unfortunately, that package was released before Firebird
-version numbering conventions were established, so although the
-version number would suggest that it is newer than the current
-release, it is certainly not. Users of the August 1.0 package
-should upgrade to 0.9_4 or later, which has fixed many bugs and
-security problems, including the recently-discovered back door.
-
- Firebird originally required a running copy of Firebird (or
-InterBase) in order to build itself. This port uses a boot kit to
-overcome that, so that it does not require itself to build.
-Unfortunately, the side effect of this is that if you have a lock
-manager running from an already-installed version of Firebird or
-InterBase, this port will not build.
+FB-V1.5.0.4201 Firebird 1.5 Release Candidate 8
+
+ Welcome to the FreeBSD Firebird port!
Firebird is installed SUID with owner and group `firebird'.
This does affect where you can and cannot create databases when
@@ -30,12 +16,12 @@ etc.) gives you the message "semget failed". One surefire way to
do this is to build and install the port. :) If this happens,
make sure that the lock manager is not running and its semaphores
have been removed. The former can be accomplished with 'ps ax
-|grep gds' and 'kill'; the latter with 'ipcs -s' and 'ipcrm -s'.
+|grep fb' and 'kill'; the latter with 'ipcs -s' and 'ipcrm -s'.
For example, after building and installing the port, you will
probably go through something like this:
-# isql /usr/interbase/isc4.gdb
+# isql /usr/local/firebird/security.fdb
Statement failed, SQLCODE = -902
operating system directive semget failed
@@ -62,14 +48,47 @@ try stopping PostgreSQL:
/usr/local/etc/rc.d/pgsql.sh stop
-and see if that helps.
+and see if that helps. Alternatively, increase the value of SEMMNS
+by 48 in your kernel configuration file. This can be found by getting
+the current value with 'sysctl -a | grep semmns'. You can either add
+this to your kernel config, or add the following line to /boot/loader.conf:
+
+ kern.ipc.semmns=X
+
+where is is the current value plus 48. If this doesn't resolve the issue,
+try adding 48 again.
+
+ Please note that RC8 has changed the libgds.so symlink to point to
+libfbembed.so. This has been done to resolve compatability issues with
+older versions of Firebird. The FreeBSD port of RC7 had libgds.so
+pointing to libfbclient.so. libfbclient.so is a remote access-only
+shared library with threaded support, which requires target applications
+to link with a threaded library such as libc_r.so, libkse.so or libthr.so.
+
+ Super Server support in Firebird 1.5 for FreeBSD is not currently
+available due to the Firebird code using POSIX threads APIs not available
+in FreeBSD 4.x or not yet complete in FreeBSD 5.x. This issue will become
+more important once the scalability issues of Super Server have been
+resolved.
- Super Server support has recently been added. However, there is
-anecdotal evidence that it is not as reliable nor as scalable as the
-Classic Server version. For this reason, I have not included a
-start up method for Super Server. For those that are interested,
-traversing to /usr/interbase/misc will find the startup scripts for
-the various flavours of Linux.
+ This installation has already inserted the necessary line to
+/etc/inetd.conf so that you can connect to Firebird across the network.
+However you may need to add the remote host to /etc/hosts.equiv. For
+example, to allow the local machine to make connections to Firebird
+using TCP, the following command needs running:
+
+ echo localhost >> /etc/hosts.equiv
+
+Please note that adding machines to /etc/hosts.equiv can reduce the
+security of your system. If in doubt, try connecting to Firebird with
+a username and password already defined in security.fdb. For example:
+
+gsec
+> add myuser -pass mypass
+> quit
+isql -u myuser -p mypass localhost:/usr/local/firebird/examples/employee.fdb
+
+This should reduce the need for hosts defined in /etc/hosts.equiv.
Complete documentation for InterBase(tm) is available (free of
charge) from http://www.interbase.com/ in PDF format. While
@@ -82,5 +101,8 @@ and InterBase can be found at the following:
http://www.interbase2000.org/
http://www.firebirdsql.org/
+ Please also see the doc directory in the Firebird package for
+documentation specific to Firebird.
+
Chris Knight
-<chris@aims.com.au>
+<chris@aims.net.au>
diff --git a/databases/firebird-server/files/patch-autogen.sh b/databases/firebird-server/files/patch-autogen.sh
deleted file mode 100644
index 9b7c52d77778..000000000000
--- a/databases/firebird-server/files/patch-autogen.sh
+++ /dev/null
@@ -1,26 +0,0 @@
---- autogen.sh.orig Fri Apr 18 04:41:28 2003
-+++ autogen.sh Sun Aug 24 18:39:45 2003
-@@ -20,7 +20,7 @@
- ;;
- esac
-
--VER=`libtool --version|grep ' libtool)'|sed 's/.*) \([0-9][0-9.]*\) .*/\1/'`
-+VER=`libtool13 --version|grep ' libtool)'|sed 's/.*) \([0-9][0-9.]*\) .*/\1/'`
- case "$VER" in
- 0* | 1\.[0-2] | 1\.[0-2][a-z]* | \
- 1\.3\.[0-2] | 1\.3\.[0-2][a-z]* )
-@@ -50,12 +50,12 @@
-
- # Generate configure from configure.in
- echo "Running libtoolize ..."
--LIBTOOL_M4=`libtoolize --copy --force --dry-run|grep 'You should add the contents of'|sed "s,^[^/]*\(/[^']*\).*$,\1,"`
-+LIBTOOL_M4=`libtoolize13 --copy --force --dry-run|grep 'You should add the contents of'|sed "s,^[^/]*\(/[^']*\).*$,\1,"`
- if test "x$LIBTOOL_M4" != "x"; then
- rm -f aclocal.m4
- cp $LIBTOOL_M4 aclocal.m4
- fi
--libtoolize --copy --force || exit 1
-+libtoolize13 --copy --force || exit 1
-
- echo "Running autoconf ..."
- autoconf || exit 1
diff --git a/databases/firebird-server/files/patch-src::common::classes::locks.h b/databases/firebird-server/files/patch-src::common::classes::locks.h
deleted file mode 100644
index e2948dd4bbd2..000000000000
--- a/databases/firebird-server/files/patch-src::common::classes::locks.h
+++ /dev/null
@@ -1,49 +0,0 @@
---- src/common/classes/locks.h.orig Sun Aug 17 14:56:47 2003
-+++ src/common/classes/locks.h Wed Nov 12 11:12:25 2003
-@@ -77,7 +77,7 @@
-
- /* Process-local spinlock. Used to manage memory heaps in threaded environment. */
- // Pthreads version of the class
--#ifndef SOLARIS
-+#if !defined(SOLARIS) && !defined(DARWIN) && !defined(FREEBSD)
- class Spinlock {
- private:
- pthread_spinlock_t spinlock;
-@@ -100,6 +100,7 @@
- }
- };
- #else
-+#ifdef SOLARIS
- // Who knows why Solaris 2.6 have not THIS funny spins?
- //The next code is not comlpeted but let me compile //Konstantin
- class Spinlock {
-@@ -123,6 +124,29 @@
- system_call_failed::raise();
- }
- };
-+#else // DARWIN and FREEBSD
-+class Spinlock {
-+private:
-+ pthread_mutex_t mlock;
-+public:
-+ Spinlock() {
-+ if (pthread_mutex_init(&mlock, 0))
-+ system_call_failed::raise();
-+ }
-+ ~Spinlock() {
-+ if (pthread_mutex_destroy(&mlock))
-+ system_call_failed::raise();
-+ }
-+ void enter() {
-+ if (pthread_mutex_lock(&mlock))
-+ system_call_failed::raise();
-+ }
-+ void leave() {
-+ if (pthread_mutex_unlock(&mlock))
-+ system_call_failed::raise();
-+ }
-+};
-+#endif
-
- #endif
- #endif
diff --git a/databases/firebird-server/files/patch-src::install::arch-specific::freebsd::install.sh.in b/databases/firebird-server/files/patch-src::install::arch-specific::freebsd::install.sh.in
new file mode 100644
index 000000000000..d0c86385ae63
--- /dev/null
+++ b/databases/firebird-server/files/patch-src::install::arch-specific::freebsd::install.sh.in
@@ -0,0 +1,92 @@
+--- src/install/arch-specific/freebsd/install.sh.in.orig Thu Nov 6 23:23:29 2003
++++ src/install/arch-specific/freebsd/install.sh.in Tue Jan 13 17:36:16 2004
+@@ -59,7 +59,7 @@
+ if [ -d $InstallPrefix/firebird.old ]; then
+ rm -rf $InstallPrefix/firebird.old
+ fi
+- mv $InstallFirebirdPrefix $InstallPrefix/firebird.old
++ cp -Rp $InstallFirebirdPrefix $InstallPrefix/firebird.old
+ fi
+
+ if [ `id -u` -ne 0 ]; then
+@@ -162,7 +162,7 @@
+ #cp -r $BuiltFBDir/doc $DestDir
+
+ cp $BuiltFBDir/firebird.msg $DestDir/firebird.msg
+-cp $BuiltFBDir/security.fdb $DestDir/security.fdb
++cp $BuiltFBDir/security.fdb $DestDir/security.fdb.sample
+
+
+ #cp $BuiltFBDir/include/gds.f $DestDir/include
+@@ -190,19 +190,19 @@
+ cp $BuildRootDir/doc/WhatsNew $DestDir/WhatsNew
+ cp $BuildRootDir/doc/README.user $DestDir/README
+
+-cp $BuiltFBDir/misc/firebird.conf $DestDir/firebird.conf
++cp $BuiltFBDir/misc/firebird.conf $DestDir/firebird.conf.sample
+
+-echo "#" >> $DestDir/aliases.conf
+-echo "# List of known database aliases" >> $DestDir/aliases.conf
+-echo "# ------------------------------" >> $DestDir/aliases.conf
+-echo "#" >> $DestDir/aliases.conf
+-echo "# Examples:" >> $DestDir/aliases.conf
+-echo "#" >> $DestDir/aliases.conf
+-echo "# employee = /$FBRootDir/examples/employee.fdb" >> $DestDir/aliases.conf
+-echo "#" >> $DestDir/aliases.conf
++echo "#" >> $DestDir/aliases.conf.sample
++echo "# List of known database aliases" >> $DestDir/aliases.conf.sample
++echo "# ------------------------------" >> $DestDir/aliases.conf.sample
++echo "#" >> $DestDir/aliases.conf.sample
++echo "# Examples:" >> $DestDir/aliases.conf.sample
++echo "#" >> $DestDir/aliases.conf.sample
++echo "# employee = $DestDir/examples/employee.fdb" >> $DestDir/aliases.conf.sample
++echo "#" >> $DestDir/aliases.conf.sample
+
+
+-chown -R firebird:firebird $InstallFirebirdPrefix
++chown -R $fbUID:$fbGID $InstallFirebirdPrefix
+ chmod -R o= $InstallFirebirdPrefix
+
+ # Now fix up the mess.
+@@ -235,8 +235,8 @@
+ chmod -R a=rx $InstallFirebirdPrefix/lib/*
+
+ cd $InstallFirebirdPrefix/lib
+-ln -sf libfbclient.so libgds.so
+-ln -sf libfbclient.so.1 libgds.so.1
++ln -sf libfbembed.so libgds.so
++ln -sf libfbembed.so.1 libgds.so.1
+
+ cd $InstallFirebirdPrefix/bin
+ for i in `ls`
+@@ -265,19 +265,25 @@
+ FileName=$i.`hostname`
+ touch $FileName
+ chmod ug=rw,o= $FileName
+- chown firebird:firebird $FileName
++ chown $fbUID:$fbGID $FileName
+ done
+
+-touch firebird.log aliases.conf firebird.conf
+-chown firebird:firebird firebird.log
++touch firebird.log
++chown $fbUID:$fbGID firebird.log
+ chmod ug=rw,o= firebird.log
+-chmod a=r firebird.msg aliases.conf firebird.conf README
++chmod a=r firebird.msg README
++chown root:wheel *.sample
++chmod ug=r,o= *.sample
+
+ # make databases writable by firebird only
+ # local database connections are not a good idea
+ chmod ug=rw,o= examples/*.fdb
+ chmod ug=rw,o= help/*.fdb
+-chmod ug=rw,o= security.fdb
++
++# install the samples if they don't exist
++[ -f aliases.conf ] || install -o $fbUID -g $fbGID -m 440 aliases.conf.sample aliases.conf
++[ -f firebird.conf ] || install -o $fbUID -g $fbGID -m 440 firebird.conf.sample firebird.conf
++[ -f security.fdb ] || install -o $fbUID -g $fbGID -m 660 security.fdb.sample security.fdb
+
+ # remove any existing gds service
+ cp /etc/services /etc/services.old