Date: Tue, 13 Jan 2004 23:41:34 +1100 (EST) From: Chris Knight <chris@e-easy.com.au> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/61310: [MAINTAINER UPDATE] databases/firebird: Update to 1.5 RC8 Message-ID: <200401131241.i0DCfYj4086250@ait0fd03.aims.private> Resent-Message-ID: <200401131250.i0DCoDwm078110@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 61310 >Category: ports >Synopsis: [MAINTAINER UPDATE] databases/firebird: Update to 1.5 RC8 >Confidential: no >Severity: non-critical >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Tue Jan 13 04:50:13 PST 2004 >Closed-Date: >Last-Modified: >Originator: Chris Knight >Release: FreeBSD 5.2-CURRENT i386 >Organization: E-Easy >Environment: System: FreeBSD ait0fd03.aims.private 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Sat Jan 10 18:04:30 EST 2004 root@ait0fd03.aims.private:/u1/obj5/usr/src/sys/OMNIBOOK5 i386 >Description: Update to 1.5 RC8. Please note that libgds.so is now symlinked to libfbembed.so rather than libfbclient.so. This restores Firebird 1.0.x shared library compatibility. libfembed.so contains local database access APIs and doesn't require linking to a library containing POSIX threads APIs (libc_r, libkse, libthr). libfbclient.so is a remote access-only interfaces and also has threads support which requires the target binary to link with a library containing the POSIX threads APIs. Supercedes PR ports/61276. >How-To-Repeat: N/A >Fix: Index: Makefile =================================================================== RCS file: /home/ncvs/ports/databases/firebird/Makefile,v retrieving revision 1.24 diff -u -r1.24 Makefile --- Makefile 4 Dec 2003 17:26:13 -0000 1.24 +++ Makefile 13 Jan 2004 12:23:51 -0000 @@ -6,11 +6,12 @@ # PORTNAME= firebird -PORTVERSION= 1.5.r7 +PORTVERSION= 1.5.r8 CATEGORIES= databases -MASTER_SITES= http://www.aims.net.au/chris/firebird/ +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \ + http://www.aims.net.au/chris/firebird/ MASTER_SITE_SUBDIR=firebird -DISTNAME= firebird15-rc7 +DISTNAME= firebird15-rc8 MAINTAINER= chris@e-easy.com.au COMMENT= The open-source InterBase(tm) 6.0 spin-off (Classic version) @@ -26,7 +27,6 @@ LD= gcc CONFLICTS= firebird-devel-* -NOPACKAGE= pkg-install not finished WRKSRC= ${WRKDIR}/firebird15 INSTALLS_SHLIB= yes @@ -57,13 +57,21 @@ @${DO_NADA} do-configure: - @(cd ${WRKSRC} && ${ENV} CC=${CC} CXX=${CXX} MAKE=${GMAKE} ./autogen.sh --prefix=${PREFIX}/firebird --with-lock-manager --with-editline) + @(cd ${WRKSRC} && ${SETENV} CC=${CC} CXX=${CXX} MAKE=${GMAKE} \ + LIBTOOL=libtool13 LIBTOOLIZE=libtoolize13 ./autogen.sh \ + --prefix=${PREFIX}/firebird --with-lock-manager --with-editline) do-build: @( \ ${SED} 's|%%PREFIX%%|${PREFIX}|g' ${MSG_FILE} > ${PKGMESSAGE}; \ cd ${WRKSRC}; \ - ${ENV} CC=${CC} CXX=${CXX} ${GMAKE} all; \ + ${SETENV} CC=${CC} CXX=${CXX} ${GMAKE} all; \ + ) + +post-install: + @( \ + ${INSTALL_DATA} ${FILESDIR}/RELNOTES ${PREFIX}/firebird; \ + ${CAT} ${PKGMESSAGE}; \ ) .include <bsd.port.post.mk> Index: distinfo =================================================================== RCS file: /home/ncvs/ports/databases/firebird/distinfo,v retrieving revision 1.4 diff -u -r1.4 distinfo --- distinfo 4 Dec 2003 17:26:13 -0000 1.4 +++ distinfo 9 Jan 2004 09:01:21 -0000 @@ -1 +1 @@ -MD5 (firebird15-rc7.tar.bz2) = f6a3a4afa1f2fdfde9a4348a618c4896 +MD5 (firebird15-rc8.tar.bz2) = cb775b56c0b3067994ec78f15a9e757d Index: pkg-descr =================================================================== RCS file: /home/ncvs/ports/databases/firebird/pkg-descr,v retrieving revision 1.5 diff -u -r1.5 pkg-descr --- pkg-descr 4 Dec 2003 17:26:13 -0000 1.5 +++ pkg-descr 13 Jan 2004 12:27:32 -0000 @@ -6,9 +6,6 @@ InterBase 6.0, and a lively bunch of folks has charged themselves with seeing that it lives on through the Firebird project. -Note that as of Firebird 0.9_4, the locksmith back door has -been closed. - For more information on Firebird and InterBase, see: WWW: http://sourceforge.net/projects/firebird/ @@ -16,7 +13,3 @@ WWW: http://www.interbase2000.org/ WWW: http://www.interbase.com/ WWW: http://www.firebirdsql.org/ - -For more information on the locksmith back door, see: - -WWW: https://www.kb.cert.org/vuls/id/247371 Index: pkg-install =================================================================== RCS file: pkg-install diff -N pkg-install --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ pkg-install 13 Jan 2004 07:34:53 -0000 @@ -0,0 +1,171 @@ +#!/bin/sh + +# $FreeBSD$ + +PATH=/bin:/usr/bin:/usr/sbin + +case $2 in +PRE-INSTALL) + +if [ -d $PKG_PREFIX/firebird ]; then + if [ -d $PKG_PREFIX/firebird.old ]; then + rm -rf $PKG_PREFIX/firebird.old + fi + cp -Rp $PKG_PREFIX/firebird $PKG_PREFIX/firebird.old +fi + +if [ `id -u` -ne 0 ]; then + echo; echo "You must be root to run this step!"; echo; echo + exit 1 +fi + +nofbuid=0 +fbUID=`id -u firebird 2>/dev/null` +if [ $? -ne 0 ]; then + fbUID=90 + while [ ! -z `id -un $fbUID 2>/dev/null` ] + do + fbUID=$(($fbUID+1)) + done + nofbuid=1 +fi + +fbGID=`pw groupshow firebird 2>/dev/null` +if [ $? -ne 0 ]; then + fbGID=90 + while [ ! -z `id -gn $fbGID 2>/dev/null` ] + do + fbGID=$(($fbGID+1)) + done + echo "firebird:*:$fbGID:" >> /etc/group +else + fbGID=`echo $fbGID | awk -F: '{print $3}'` +fi + +echo "firebird user using uid $fbUID" +echo "firebird user using gid $fbGID" + +if which -s pw; then + if [ $nofbuid -ne 0 ]; then + pw useradd firebird -u $fbUID -g $fbGID -h - -s /bin/sh \ + -d $PKG_PREFIX/firebird -c "Firebird Database Administrator" + fi +else + echo -n "unable to create user firebird - please create it manually," + echo " before reinstalling this package." + exit 1 +fi +;; + +POST-INSTALL) +chown -R firebird:firebird $PKG_PREFIX/firebird +chmod -R o= $PKG_PREFIX/firebird + +# Now fix up the mess. + +# fix up directories +for i in `find $PKG_PREFIX/firebird -print` +do + FileName=$i + if [ -d $FileName ]; then + chmod u=rwx,go=rx $FileName + fi +done + +# make lib ldconfig-compatible +chown -R root:wheel $PKG_PREFIX/firebird/lib + +# make the following read-only +chmod -R a=r $PKG_PREFIX/firebird/WhatsNew +for i in `find $PKG_PREFIX/firebird/doc -type f -print` +do + chmod a=r $i +done +chmod -R a=r $PKG_PREFIX/firebird/examples/* +chmod -R a=r $PKG_PREFIX/firebird/include/* +chmod -R a=r $PKG_PREFIX/firebird/intl/* +#chmod -R a=r $PKG_PREFIX/firebird/misc/* + +chmod -R ug=rx,o= $PKG_PREFIX/firebird/UDF/* +chmod -R ug=rx,o= $PKG_PREFIX/firebird/intl/fbintl +chmod -R a=rx $PKG_PREFIX/firebird/lib/* + +cd $PKG_PREFIX/firebird/lib +ln -sf libfbembed.so libgds.so +ln -sf libfbembed.so.1 libgds.so.1 + +cd $PKG_PREFIX/firebird/bin +for i in `ls` +do + chmod ug=rx,o= $i +done + +chmod a=rx isql qli + +# SUID is needed for running server programs. +for i in fb_lock_mgr gds_drop fb_inet_server +do + if [ -f $i ]; then + chmod ug=rx,o= $i + chmod ug+s $i + fi +done + + +cd $PKG_PREFIX/firebird + +# Lock files + +for i in isc_init1 isc_lock1 isc_event1 +do + FileName=$i.`hostname` + touch $FileName + chmod uga=rw $FileName + chown firebird:firebird $FileName +done + +touch firebird.log +chown firebird:firebird firebird.log +chmod ug=rw,o= firebird.log +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 + +chmod 440 aliases.conf firebird.conf +chmod 660 security.fdb + +# remove any existing gds service +cp /etc/services /etc/services.old +cp /etc/inetd.conf /etc/inetd.conf.old +cat /etc/services |grep -v gds_db >/etc/services.new +cat /etc/inetd.conf |grep -v gds_db >/etc/inetd.conf.new +mv /etc/services.new /etc/services +mv /etc/inetd.conf.new /etc/inetd.conf + +# add the gds service and restart inetd +cat >>/etc/services <<EOF +gds_db 3050/tcp #InterBase Database Remote Protocol +EOF +cat >>/etc/inetd.conf <<EOF +gds_db stream tcp nowait firebird $PKG_PREFIX/firebird/bin/fb_inet_server fb_inet_server +EOF +if [ -f /var/run/inetd.pid ]; then + kill -HUP `cat /var/run/inetd.pid` +fi + +# shared lib startup script +if [ -d $PKG_PREFIX/etc/rc.d ]; then + ( + echo "#!/bin/sh"; echo "[ -d $PKG_PREFIX/firebird/lib ] && /sbin/ldconfig -m $PKG_PREFIX/firebird/lib" + ) > $PKG_PREFIX/etc/rc.d/000.firebird.sh + chmod a=rx $PKG_PREFIX/etc/rc.d/000.firebird.sh +fi +;; + +esac Index: pkg-message =================================================================== RCS file: /home/ncvs/ports/databases/firebird/pkg-message,v retrieving revision 1.3 diff -u -r1.3 pkg-message --- pkg-message 4 Dec 2003 17:26:13 -0000 1.3 +++ pkg-message 13 Jan 2004 12:25:40 -0000 @@ -2,7 +2,7 @@ --------------------------------------------------------- Firebird is now installed. A symbolic link from /usr/interbase -> %%PREFIX%%/firebird may be needed -for compatibility with existing programs that use +for compatibility with existing programs that use Firebird. The symbolic link can be created with: Index: pkg-plist =================================================================== RCS file: /home/ncvs/ports/databases/firebird/pkg-plist,v retrieving revision 1.5 diff -u -r1.5 pkg-plist --- pkg-plist 4 Dec 2003 17:26:13 -0000 1.5 +++ pkg-plist 13 Jan 2004 11:41:14 -0000 @@ -1,11 +1,14 @@ etc/rc.d/000.firebird.sh firebird/README +firebird/RELNOTES firebird/UDF/fbudf.so firebird/UDF/fbudf.sql firebird/UDF/ib_udf.so firebird/UDF/ib_udf.sql firebird/WhatsNew -firebird/aliases.conf +@unexec if cmp -s %D/firebird/aliases.conf %D/firebird/aliases.conf.sample; then rm -f %D/firebird/aliases.conf; fi +firebird/aliases.conf.sample +@exec [ -f %B/aliases.conf ] || cp %B/%f %B/aliases.conf firebird/bin/fb_inet_server firebird/bin/fb_lock_mgr firebird/bin/fb_lock_print @@ -86,8 +89,10 @@ firebird/examples/stat9.e firebird/examples/udf.sql firebird/examples/udflib.c -firebird/firebird.conf -@unexec rm -f %D/firebird/firebird.log +@unexec if cmp -s %D/firebird/firebird.conf %D/firebird/firebird.conf.sample; then rm -f %D/firebird/firebird.conf; fi +firebird/firebird.conf.sample +@exec [ -f %B/firebird.conf ] || cp %B/%f %B/firebird.conf +@unexec [ -s %D/firebird/firebird.log ] || rm -f %D/firebird/firebird.log firebird/firebird.msg firebird/help/help.fdb firebird/include/blr.h @@ -109,7 +114,9 @@ firebird/lib/libgds.so firebird/lib/libgds.so.1 firebird/lib/libib_util.so -firebird/security.fdb +@unexec if cmp -s %D/firebird/security.fdb %D/firebird/security.fdb.sample; then rm -f %D/firebird/security.fdb; fi +firebird/security.fdb.sample +@exec [ -f %B/security.fdb ] || cp %B/%f %B/security.fdb @dirrm firebird/UDF @dirrm firebird/bin @dirrm firebird/doc/sql.extensions Index: files/RELNOTES =================================================================== RCS file: /home/ncvs/ports/databases/firebird/files/RELNOTES,v retrieving revision 1.5 diff -u -r1.5 RELNOTES --- files/RELNOTES 16 Jan 2003 11:52:00 -0000 1.5 +++ files/RELNOTES 13 Jan 2004 12:19:56 -0000 @@ -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 +FB-V1.5.0.4201 Firebird 1.5 Release Candidate 8 -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. + 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 @@ 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 @@ /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. + + 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 - 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 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 @@ 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> Index: files/patch-autogen.sh =================================================================== RCS file: files/patch-autogen.sh diff -N files/patch-autogen.sh --- files/patch-autogen.sh 14 Dec 2003 11:09:21 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -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 Index: files/patch-src::common::classes::locks.h =================================================================== RCS file: files/patch-src::common::classes::locks.h diff -N files/patch-src::common::classes::locks.h --- files/patch-src::common::classes::locks.h 4 Dec 2003 17:32:30 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -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 Index: files/patch-src::install::arch-specific::freebsd::install.sh.in =================================================================== RCS file: files/patch-src::install::arch-specific::freebsd::install.sh.in diff -N files/patch-src::install::arch-specific::freebsd::install.sh.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-src::install::arch-specific::freebsd::install.sh.in 13 Jan 2004 07:48:29 -0000 @@ -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 >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401131241.i0DCfYj4086250>