mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 16:43:03 +01:00
CORE-2921: still miss superclassic support
This commit is contained in:
parent
39a46f57d3
commit
c6372d4a9d
233
builds/install/arch-specific/freebsd/freebsdLibrary.sh.in
Normal file
233
builds/install/arch-specific/freebsd/freebsdLibrary.sh.in
Normal file
@ -0,0 +1,233 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# The contents of this file are subject to the Initial
|
||||
# Developer's Public License Version 1.0 (the "License");
|
||||
# you may not use this file except in compliance with the
|
||||
# License. You may obtain a copy of the License at
|
||||
# http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
|
||||
#
|
||||
# Software distributed under the License is distributed AS IS,
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing rights
|
||||
# and limitations under the License.
|
||||
#
|
||||
# The Original Code was created by Mark O'Donohue
|
||||
# for the Firebird Open Source RDBMS project.
|
||||
#
|
||||
# Copyright (c) Mark O'Donohue <mark.odonohue@ludwig.edu.au>
|
||||
# and all contributors signed below.
|
||||
#
|
||||
# All Rights Reserved.
|
||||
# Contributor(s): ______________________________________.
|
||||
# Alex Peshkoff
|
||||
#
|
||||
|
||||
RunUser=firebird
|
||||
export RunUser
|
||||
RunGroup=firebird
|
||||
export RunGroup
|
||||
PidDir=/var/run/firebird
|
||||
export PidDir
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# Get correct options & misc.
|
||||
|
||||
psOptions=aww
|
||||
export psOptions
|
||||
mktOptions=-q
|
||||
export mktOptions
|
||||
tarOptions=z
|
||||
export tarOptions
|
||||
tarExt=tar.gz
|
||||
export tarExt
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# Add new user and group
|
||||
|
||||
addFirebirdUser() {
|
||||
|
||||
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 @FB_CONFDIR@ -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
|
||||
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# print location of init script
|
||||
|
||||
getInitScriptLocation() {
|
||||
if [ -f /etc/rc.d/init.d/*firebird* ]
|
||||
then
|
||||
echo -n /etc/rc.d/init.d/*firebird*
|
||||
elif [ -f /etc/rc.d/*firebird* ]
|
||||
then
|
||||
echo -n /etc/rc.d/*firebird*
|
||||
elif [ -f /etc/init.d/*firebird* ]
|
||||
then
|
||||
echo -n /etc/init.d/*firebird*
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# stop super server if it is running
|
||||
|
||||
stopSuperServerIfRunning() {
|
||||
checkString=`ps -af | egrep "\b(fbserver|fbguard|fb_smp_server)\b" |grep -v grep`
|
||||
|
||||
if [ ! -z "$checkString" ]
|
||||
then
|
||||
init_d=`getInitScriptLocation`
|
||||
|
||||
if [ -x "$init_d" ]
|
||||
then
|
||||
i=1
|
||||
while [ $i -le 20 ]
|
||||
do
|
||||
$init_d stop
|
||||
sleep 1
|
||||
checkString=`ps -eaf | egrep "\b(fbserver|fbguard|fb_smp_server)\b" |grep -v grep`
|
||||
if [ -z "$checkString" ]
|
||||
then
|
||||
return
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# Generate new sysdba password - this routine is used only in the
|
||||
# rpm file not in the install script.
|
||||
|
||||
generateNewDBAPassword() {
|
||||
# openssl generates random data.
|
||||
openssl </dev/null >/dev/null 2&>/dev/null
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# We generate 20 random chars, strip any '/''s and get the first 8
|
||||
NewPasswd=`openssl rand -base64 20 | tr -d '/' | cut -c1-8`
|
||||
fi
|
||||
|
||||
# mkpasswd is a bit of a hassle, but check to see if it's there
|
||||
if [ -z "$NewPasswd" ]
|
||||
then
|
||||
if [ -f /usr/bin/mkpasswd ]
|
||||
then
|
||||
NewPasswd=`/usr/bin/mkpasswd -l 8`
|
||||
fi
|
||||
fi
|
||||
|
||||
# On some systems the mkpasswd program doesn't appear and on others
|
||||
# there is another mkpasswd which does a different operation. So if
|
||||
# the specific one isn't available then keep the original password.
|
||||
if [ -z "$NewPasswd" ]
|
||||
then
|
||||
NewPasswd="masterkey"
|
||||
fi
|
||||
|
||||
writeNewPassword $NewPasswd
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# change init.d RunUser
|
||||
|
||||
changeInitRunUser() {
|
||||
NewUser=$1
|
||||
|
||||
InitFile=`getInitScriptLocation`
|
||||
if [ -f "$InitFile" ]
|
||||
then
|
||||
editFile "$InitFile" FBRunUser "FBRunUser=$NewUser"
|
||||
chmod u=rwx,g=rx,o= "$InitFile"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# installInitdScript
|
||||
# Everbody stores this one in a seperate location, so there is a bit of
|
||||
# running around to actually get it for each packager.
|
||||
# Update rcX.d with Firebird initd entries
|
||||
# initd script for SuSE >= 7.2 is a part of RPM package
|
||||
|
||||
installInitdScript() {
|
||||
Arch=$1
|
||||
if [ "$Arch" != super ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
# dummy for a while
|
||||
return 1
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# start init.d service
|
||||
|
||||
startService() {
|
||||
Arch=$1
|
||||
if [ "$Arch" != super ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
InitFile=`getInitScriptLocation`
|
||||
if [ -f "$InitFile" ]
|
||||
then
|
||||
"$InitFile" start
|
||||
|
||||
checkString=`ps -af | egrep "\b(fbserver|fb_smp_server)\b" |grep -v grep`
|
||||
if [ -z "$checkString" ]
|
||||
then
|
||||
# server didn't start - possible reason bad shell /bin/false for user "firebird"
|
||||
echo
|
||||
echo Fixing firebird\'s shell to /bin/sh
|
||||
echo
|
||||
pw usermod firebird -s /bin/sh
|
||||
"$InitFile" start
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# If we have right systems remove the service autostart stuff.
|
||||
|
||||
removeServiceAutostart() {
|
||||
# dummy for a while
|
||||
return 1
|
||||
}
|
@ -1,38 +1,68 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# This library is part of the FirebirdSQL project
|
||||
# The contents of this file are subject to the Initial
|
||||
# Developer's Public License Version 1.0 (the "License");
|
||||
# you may not use this file except in compliance with the
|
||||
# License. You may obtain a copy of the License at
|
||||
# http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
|
||||
#
|
||||
# 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
|
||||
# Software distributed under the License is distributed AS IS,
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing rights
|
||||
# and limitations under the License.
|
||||
#
|
||||
# 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
|
||||
# The Original Code was created by Mark O'Donohue
|
||||
# for the Firebird Open Source RDBMS project.
|
||||
#
|
||||
# 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: Chris Knight <chris@e-easy.com.au>
|
||||
#
|
||||
# Contributor(s):
|
||||
# Copyright (c) Mark O'Donohue <mark.odonohue@ludwig.edu.au>
|
||||
# and Chris Knight <chris@e-easy.com.au>
|
||||
# and all contributors signed below.
|
||||
#
|
||||
# All Rights Reserved.
|
||||
# Contributor(s): ______________________________________.
|
||||
# Alex Peshkoff
|
||||
#
|
||||
|
||||
# Install script for FirebirdSQL database engine
|
||||
# Script to copy install files from the build/transport area
|
||||
|
||||
|
||||
# This script builds an image of the installed system into
|
||||
# the gen/buildroot directory.
|
||||
|
||||
if [ "`whoami`" != "root" ]; then
|
||||
echo 'You must be root to install'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Making an assumption that this program is being run in the gen directory
|
||||
BuildRootDir=..
|
||||
BuiltFBDir=./firebird # Where the just build fb exists.
|
||||
TargetDir= # Install in real FS
|
||||
SecurityDatabase=security2.fdb
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# addLibs
|
||||
# Add required libraries in the beginning of script.
|
||||
# Place it to target directory.
|
||||
|
||||
addLibs() {
|
||||
libSdir=$1
|
||||
libScript=$2
|
||||
libTdir=$3
|
||||
libTarget=$libTdir/$libScript
|
||||
|
||||
rm -f $libTarget
|
||||
touch $libTarget
|
||||
for i in posixLibrary.sh @FIREBIRD_ARCH_TYPE@Library.sh freebsdLibrary.sh
|
||||
do
|
||||
echo "# $i" >>$libTarget
|
||||
cat $libSdir/$i >>$libTarget
|
||||
echo "" >>$libTarget # avoid missing linefeed
|
||||
done
|
||||
cat $libSdir/$libScript >>$libTarget
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# copyIfExists
|
||||
@ -40,31 +70,319 @@
|
||||
#
|
||||
|
||||
copyIfExists() {
|
||||
OldFile=$1
|
||||
NewFile=$2
|
||||
Files=""
|
||||
while [ ${#} -gt 1 ]; do
|
||||
Files="$Files ${1}"
|
||||
shift
|
||||
done
|
||||
NewDir=${1}
|
||||
|
||||
if [ -f $OldFile ]
|
||||
then
|
||||
cp $OldFile $NewFile
|
||||
fi
|
||||
for OldFile in $Files; do
|
||||
if [ -f $OldFile ]; then
|
||||
cp -Rf $OldFile $NewDir
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# linkFiles
|
||||
# This function creates soft links
|
||||
|
||||
linkFiles() {
|
||||
From=$1
|
||||
Files=$2
|
||||
To=$3
|
||||
Check=$4
|
||||
|
||||
if [ "$To" = "$Check" ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
for file in $Files; do
|
||||
rm -f $To/$file
|
||||
ln -s $From/$file $To/$file
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# makeDirs
|
||||
# Make paths, passed as a list in 1st arg
|
||||
|
||||
makeDirs() {
|
||||
Dirs=$1
|
||||
for d in $Dirs; do
|
||||
Dir=${TargetDir}${d}
|
||||
if [ ! -d $Dir ]; then
|
||||
rm -f $Dir
|
||||
mkdir -p $Dir
|
||||
chown root:wheel $Dir
|
||||
chmod 0755 $Dir
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# copyFiles
|
||||
# This function copies all the files into the installation directory(ies).
|
||||
|
||||
copyFiles() {
|
||||
# The guts of the tranfer of files and other directories
|
||||
|
||||
#directories
|
||||
makeDirs "@FB_BINDIR@ @FB_SBINDIR@ @FB_CONFDIR@ @FB_LIBDIR@ @FB_INCDIR@ @FB_DOCDIR@/sql.extensions @FB_UDFDIR@ @FB_SAMPLEDIR@ \
|
||||
@FB_SAMPLEDBDIR@ @FB_HELPDIR@ @FB_INTLDIR@ @FB_MISCDIR@ @FB_SECDBDIR@ @FB_MSGDIR@ @FB_LOGDIR@ @FB_GUARDDIR@ @FB_PLUGDIR@"
|
||||
|
||||
for i in ib_udf metadata security; do
|
||||
makeDirs @FB_MISCDIR@/upgrade/$i
|
||||
done
|
||||
|
||||
makeDirs @libdir@
|
||||
makeDirs /usr/include
|
||||
|
||||
#bin
|
||||
cp $BuiltFBDir/bin/gbak ${TargetDir}@FB_BINDIR@/gbak
|
||||
cp $BuiltFBDir/bin/gdef ${TargetDir}@FB_BINDIR@/gdef
|
||||
cp $BuiltFBDir/bin/gfix ${TargetDir}@FB_BINDIR@/gfix
|
||||
cp $BuiltFBDir/bin/gpre ${TargetDir}@FB_BINDIR@/gpre
|
||||
cp $BuiltFBDir/bin/gsec ${TargetDir}@FB_BINDIR@/gsec
|
||||
cp $BuiltFBDir/bin/nbackup ${TargetDir}@FB_BINDIR@/nbackup
|
||||
copyIfExists $BuiltFBDir/bin/gsplit ${TargetDir}@FB_BINDIR@
|
||||
cp $BuiltFBDir/bin/gstat ${TargetDir}@FB_BINDIR@/gstat
|
||||
copyIfExists $BuiltFBDir/bin/fbsvcmgr ${TargetDir}@FB_BINDIR@
|
||||
copyIfExists $BuiltFBDir/bin/fbtracemgr ${TargetDir}@FB_BINDIR@
|
||||
cp $BuiltFBDir/bin/isql ${TargetDir}@FB_BINDIR@/isql
|
||||
cp $BuiltFBDir/bin/qli ${TargetDir}@FB_BINDIR@/qli
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_BINDIR@/*
|
||||
chmod 0755 ${TargetDir}@FB_BINDIR@/*
|
||||
|
||||
#sbin
|
||||
copyIfExists $BuiltFBDir/bin/fb_inet_server ${TargetDir}@FB_SBINDIR@
|
||||
copyIfExists $BuiltFBDir/bin/fb_smp_server ${TargetDir}@FB_SBINDIR@
|
||||
copyIfExists $BuiltFBDir/bin/fbserver ${TargetDir}@FB_SBINDIR@
|
||||
cp -f $BuiltFBDir/bin/fbguard ${TargetDir}@FB_SBINDIR@
|
||||
copyIfExists $BuiltFBDir/bin/fb_lock_print ${TargetDir}@FB_SBINDIR@
|
||||
copyIfExists $BuiltFBDir/bin/fbmgr.bin ${TargetDir}@FB_SBINDIR@
|
||||
|
||||
addLibs $BuildRootDir/gen/firebird/bin changeRunUser.sh ${TargetDir}@FB_SBINDIR@
|
||||
addLibs $BuildRootDir/gen/firebird/bin restoreRootRunUser.sh ${TargetDir}@FB_SBINDIR@
|
||||
addLibs $BuildRootDir/gen/firebird/bin changeDBAPassword.sh ${TargetDir}@FB_SBINDIR@
|
||||
addLibs $BuildRootDir/gen/firebird/bin changeMultiConnectMode.sh ${TargetDir}@FB_SBINDIR@
|
||||
addLibs $BuiltFBDir/bin changeGdsLibraryCompatibleLink.sh ${TargetDir}@FB_SBINDIR@
|
||||
cp $BuiltFBDir/bin/createAliasDB.sh ${TargetDir}@FB_SBINDIR@
|
||||
cp $BuiltFBDir/bin/fb_config ${TargetDir}@FB_SBINDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_SBINDIR@/*
|
||||
chmod 0755 ${TargetDir}@FB_SBINDIR@/*
|
||||
chmod 0700 ${TargetDir}@FB_SBINDIR@/*.sh
|
||||
|
||||
#install scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin tarMainInstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin tarinstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin preinstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin postinstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin preuninstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin postuninstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin taruninstall.sh $BuildRootDir/gen/install/scripts
|
||||
addLibs $BuildRootDir/gen/firebird/bin tarMainUninstall.sh $BuildRootDir/gen/install/scripts
|
||||
|
||||
#examples - copy only if we have them
|
||||
exampleFiles=`find $BuiltFBDir/examples/README -type f -print`
|
||||
if [ -z "$exampleFiles" ]; then
|
||||
echo "Example files have not been built!"
|
||||
else
|
||||
(cd $BuiltFBDir/examples; tar cf - .) | (cd ${TargetDir}@FB_SAMPLEDIR@; tar xf -)
|
||||
rm -rf ${TargetDir}@FB_SAMPLEDIR@/empbuild
|
||||
|
||||
for i in `find ${TargetDir}@FB_SAMPLEDIR@ -type d -print`
|
||||
do
|
||||
chown root:wheel $i
|
||||
chmod 0555 $i
|
||||
done
|
||||
for i in `find ${TargetDir}@FB_SAMPLEDIR@ -type f -print`
|
||||
do
|
||||
chown root:wheel $i
|
||||
chmod 0444 $i
|
||||
done
|
||||
|
||||
makeDirs @FB_SAMPLEDBDIR@
|
||||
cp $BuiltFBDir/examples/empbuild/*.fdb ${TargetDir}@FB_SAMPLEDBDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_SAMPLEDBDIR@/*.fdb
|
||||
chmod 0444 ${TargetDir}@FB_SAMPLEDBDIR@/*.fdb
|
||||
fi
|
||||
|
||||
#QLI help
|
||||
copyIfExists $BuiltFBDir/help/help.gbak ${TargetDir}@FB_HELPDIR@
|
||||
cp $BuiltFBDir/help/help.fdb ${TargetDir}@FB_HELPDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_HELPDIR@/*.fdb
|
||||
chmod 0444 ${TargetDir}@FB_HELPDIR@/*.fdb
|
||||
|
||||
#message file
|
||||
cp $BuiltFBDir/*.msg ${TargetDir}@FB_MSGDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_MSGDIR@/*.msg
|
||||
chmod 0444 ${TargetDir}@FB_MSGDIR@/*.msg
|
||||
|
||||
#secureDB (access rights will be set at install time)
|
||||
cp $BuiltFBDir/$SecurityDatabase ${TargetDir}@FB_SECDBDIR@
|
||||
|
||||
#.h files
|
||||
cp $BuiltFBDir/include/*.h ${TargetDir}@FB_INCDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_INCDIR@/*.h
|
||||
chmod 0444 ${TargetDir}@FB_INCDIR@/*.h
|
||||
|
||||
#lib
|
||||
copyIfExists $BuiltFBDir/lib/libfbembed.so* ${TargetDir}@FB_LIBDIR@
|
||||
cp -f $BuiltFBDir/lib/libfbclient.so* ${TargetDir}@FB_LIBDIR@
|
||||
cp -f $BuiltFBDir/lib/libib_util.so ${TargetDir}@FB_LIBDIR@/libib_util.so
|
||||
copyIfExists $BuiltFBDir/lib/libicu*.so* ${TargetDir}@FB_LIBDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_LIBDIR@/*.so*
|
||||
chmod 0755 ${TargetDir}@FB_LIBDIR@/*.so*
|
||||
|
||||
#plugins
|
||||
cp -f $BuiltFBDir/plugins/* ${TargetDir}@FB_PLUGDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_PLUGDIR@/*.so*
|
||||
chmod 0755 ${TargetDir}@FB_PLUGDIR@/*.so*
|
||||
|
||||
#intl
|
||||
cp $BuiltFBDir/intl/libfbintl.so ${TargetDir}@FB_INTLDIR@/fbintl
|
||||
cp $BuiltFBDir/intl/fbintl.conf ${TargetDir}@FB_INTLDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_INTLDIR@/fbintl*
|
||||
chmod 0755 ${TargetDir}@FB_INTLDIR@/fbintl
|
||||
chmod 0644 ${TargetDir}@FB_INTLDIR@/fbintl.conf
|
||||
|
||||
#UDF
|
||||
cp $BuiltFBDir/UDF/ib_udf.so ${TargetDir}@FB_UDFDIR@
|
||||
cp $BuiltFBDir/UDF/fbudf.so ${TargetDir}@FB_UDFDIR@
|
||||
# Note that the following items copy files from outside the build tree.
|
||||
# Copy the sql-declarations into the UDF-directory
|
||||
cp $BuildRootDir/src/extlib/ib_udf.sql ${TargetDir}@FB_UDFDIR@
|
||||
cp $BuildRootDir/src/extlib/ib_udf2.sql ${TargetDir}@FB_UDFDIR@
|
||||
cp $BuildRootDir/src/extlib/fbudf/fbudf.sql ${TargetDir}@FB_UDFDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_UDFDIR@/*.so ${TargetDir}@FB_UDFDIR@/*.sql
|
||||
chmod 0755 ${TargetDir}@FB_UDFDIR@/*.so
|
||||
chmod 0644 ${TargetDir}@FB_UDFDIR@/*.sql
|
||||
|
||||
#doc
|
||||
cp $BuildRootDir/doc/README.* ${TargetDir}@FB_DOCDIR@
|
||||
cp $BuildRootDir/doc/sql.extensions/README* ${TargetDir}@FB_DOCDIR@/sql.extensions
|
||||
cp $BuildRootDir/doc/WhatsNew ${TargetDir}@FB_CONFDIR@/WhatsNew
|
||||
cp $BuildRootDir/doc/README.user ${TargetDir}@FB_CONFDIR@/README
|
||||
|
||||
chown -R root:wheel ${TargetDir}@FB_MISCDIR@
|
||||
for i in `find ${TargetDir}@FB_MISCDIR@ -print`; do
|
||||
chown root:wheel $i
|
||||
if [ -d $i ]; then
|
||||
chmod 0755 $i
|
||||
else
|
||||
chmod 0644 $i
|
||||
fi
|
||||
done
|
||||
|
||||
#misc
|
||||
cp $BuildRootDir/src/misc/intl.sql ${TargetDir}@FB_MISCDIR@
|
||||
cp $BuildRootDir/src/misc/upgrade/v2/ib_udf* ${TargetDir}@FB_MISCDIR@/upgrade/ib_udf
|
||||
cp $BuildRootDir/src/misc/upgrade/v2/security_database* ${TargetDir}@FB_MISCDIR@/upgrade/security
|
||||
cp $BuildRootDir/src/misc/upgrade/v2.1/metadata_charset* ${TargetDir}@FB_MISCDIR@/upgrade/metadata
|
||||
|
||||
chown -R root:wheel ${TargetDir}@FB_MISCDIR@
|
||||
chmod -R go-rwx ${TargetDir}@FB_MISCDIR@
|
||||
|
||||
#conf
|
||||
cp $BuiltFBDir/firebird.conf ${TargetDir}@FB_CONFDIR@
|
||||
cp $BuiltFBDir/aliases.conf ${TargetDir}@FB_CONFDIR@
|
||||
cp $BuiltFBDir/fbtrace.conf ${TargetDir}@FB_CONFDIR@
|
||||
|
||||
chown root:wheel ${TargetDir}@FB_CONFDIR@/*.conf
|
||||
chmod 0644 ${TargetDir}@FB_CONFDIR@/*.conf
|
||||
|
||||
# Create links from @libdir@ to install area.
|
||||
origDir=`pwd`
|
||||
cd $BuiltFBDir/lib
|
||||
Libraries=`echo libfb*.so* libib_util.so`
|
||||
cd $origDir
|
||||
linkFiles "@FB_LIBDIR@" "$Libraries" "${TargetDir}@libdir@" "${TargetDir}@FB_LIBDIR@"
|
||||
|
||||
# link include files to /usr/include
|
||||
linkFiles "@FB_INCDIR@" "iberror.h ibase.h ib_util.h" "${TargetDir}/usr/include" "${TargetDir}@FB_INCDIR@"
|
||||
|
||||
}
|
||||
|
||||
InstallFirebirdPrefix=@prefix@
|
||||
InstallPrefix=${InstallFirebirdPrefix%/firebird}
|
||||
|
||||
if [ -d $InstallFirebirdPrefix ]; then
|
||||
if [ -d $InstallPrefix/firebird.old ]; then
|
||||
rm -rf $InstallPrefix/firebird.old
|
||||
#------------------------------------------------------------------------
|
||||
# For security reasons most files in firebird installation are
|
||||
# root-owned and world-readable(executable) only (including firebird).
|
||||
|
||||
# For some files RunUser and RunGroup (firebird)
|
||||
# must have write access - lock and log for example.
|
||||
|
||||
MakeFileFirebirdWritable() {
|
||||
FileName=$1
|
||||
chown $RunUser:$RunGroup $FileName
|
||||
|
||||
if [ "$RunUser" = "root" ]
|
||||
# In that case we must open databases, locks, etc. to the world...
|
||||
# That's a pity, but required if root RunUser choosen.
|
||||
then
|
||||
chmod a=rw $FileName
|
||||
else
|
||||
# This is good secure setting
|
||||
chmod ug=rw,o= $FileName
|
||||
fi
|
||||
cp -Rp $InstallFirebirdPrefix $InstallPrefix/firebird.old
|
||||
fi
|
||||
}
|
||||
|
||||
if [ `id -u` -ne 0 ]; then
|
||||
echo; echo "You must be root to run this step!"; echo; echo
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
# fixFilePermissions
|
||||
# Change the permissions to restrict access to server programs to
|
||||
# firebird group only. This is MUCH better from a safety point of
|
||||
# view than installing as root user, even if it requires a little
|
||||
# more work.
|
||||
|
||||
fixFilePermissions() {
|
||||
# Lock files
|
||||
cd @FB_GUARDDIR@
|
||||
for FileName in fb_guard
|
||||
do
|
||||
touch $FileName
|
||||
MakeFileFirebirdWritable $FileName
|
||||
done
|
||||
|
||||
# Log file
|
||||
cd @FB_LOGDIR@
|
||||
touch firebird.log
|
||||
MakeFileFirebirdWritable firebird.log
|
||||
|
||||
# Security database
|
||||
cd @FB_SECDBDIR@
|
||||
MakeFileFirebirdWritable $SecurityDatabase
|
||||
|
||||
# make examples DB(s) writable
|
||||
for i in `find @FB_SAMPLEDBDIR@ -name '*.fdb' -print`
|
||||
do
|
||||
MakeFileFirebirdWritable $i
|
||||
done
|
||||
|
||||
cd @FB_HELPDIR@
|
||||
chmod a=r help.fdb
|
||||
}
|
||||
|
||||
|
||||
#=== MAIN ====================================================================
|
||||
|
||||
copyFiles
|
||||
|
||||
# add firebird user
|
||||
nofbuid=0
|
||||
fbUID=`id -u firebird 2>/dev/null`
|
||||
if [ $? -ne 0 ]; then
|
||||
@ -94,7 +412,7 @@ 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 $InstallFirebirdPrefix -c "Firebird Database Administrator"
|
||||
-d @FB_CONFDIR@ -c "Firebird Database Administrator"
|
||||
fi
|
||||
else
|
||||
echo -n "unable to create user firebird - please create it manually,"
|
||||
@ -102,184 +420,7 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Making an assumption that this program is being run in the gen directory
|
||||
BuildRootDir=..
|
||||
BuiltFBDir=./firebird # Where the just build fb exists.
|
||||
DestDir=$InstallFirebirdPrefix
|
||||
|
||||
# The guts of the tranfer of files and other directories
|
||||
|
||||
mkdir -p $DestDir
|
||||
mkdir $DestDir/bin
|
||||
mkdir $DestDir/examples
|
||||
mkdir $DestDir/help
|
||||
mkdir $DestDir/include
|
||||
mkdir $DestDir/intl
|
||||
mkdir $DestDir/lib
|
||||
mkdir $DestDir/doc
|
||||
mkdir $DestDir/doc/sql.extensions
|
||||
mkdir $DestDir/UDF
|
||||
#mkdir $DestDir/misc
|
||||
|
||||
cp -f $BuiltFBDir/bin/fb_inet_server $DestDir/bin/fb_inet_server
|
||||
cp $BuiltFBDir/bin/gbak $DestDir/bin/gbak
|
||||
cp $BuiltFBDir/bin/gds_drop $DestDir/bin/gds_drop
|
||||
copyIfExists $BuiltFBDir/bin/fb_lock_mgr $DestDir/bin/fb_lock_mgr
|
||||
copyIfExists $BuiltFBDir/bin/fb_lock_print $DestDir/bin/fb_lock_print
|
||||
copyIfExists $BuiltFBDir/bin/gds_pipe $DestDir/bin/gds_pipe
|
||||
cp $BuiltFBDir/bin/gfix $DestDir/bin/gfix
|
||||
cp $BuiltFBDir/bin/gpre $DestDir/bin/gpre
|
||||
cp $BuiltFBDir/bin/gsec $DestDir/bin/gsec
|
||||
copyIfExists $BuiltFBDir/bin/gsplit $DestDir/bin/gsplit
|
||||
cp $BuiltFBDir/bin/gstat $DestDir/bin/gstat
|
||||
copyIfExists $BuiltFBDir/bin/isc4.gbak $DestDir/bin/isc4.gbk
|
||||
cp $BuiltFBDir/bin/isql $DestDir/bin/isql
|
||||
cp $BuiltFBDir/bin/qli $DestDir/bin/qli
|
||||
|
||||
#cp $BuiltFBDir/bin/CSchangeRunUser.sh $DestDir/bin
|
||||
#cp $BuiltFBDir/bin/CSrestoreRootRunUser.sh $DestDir/bin
|
||||
#cp $BuiltFBDir/bin/changeDBAPassword.sh $DestDir/bin
|
||||
|
||||
# Copy examples only if we have them
|
||||
|
||||
exampleFiles=`find $BuiltFBDir/examples/v5 -type f -print`
|
||||
if [ -z "$exampleFiles" ]; then
|
||||
echo "Example files have not been built!"
|
||||
else
|
||||
for i in $exampleFiles
|
||||
do
|
||||
cp $i $DestDir/examples
|
||||
done
|
||||
fi
|
||||
|
||||
copyIfExists $BuiltFBDir/help/help.gbak $DestDir/help
|
||||
cp $BuiltFBDir/help/help.fdb $DestDir/help
|
||||
|
||||
#cp -r $BuildSrcDir/doc $DestDir
|
||||
#cp -r $BuiltFBDir/doc $DestDir
|
||||
|
||||
cp $BuiltFBDir/firebird.msg $DestDir/firebird.msg
|
||||
cp $BuiltFBDir/security2.fdb $DestDir/security2.fdb.sample
|
||||
|
||||
|
||||
#cp $BuiltFBDir/include/gds.f $DestDir/include
|
||||
cp $BuiltFBDir/include/*.h $DestDir/include
|
||||
|
||||
cp -Rf $BuiltFBDir/lib/libfbembed.so* $DestDir/lib
|
||||
cp -Rf $BuiltFBDir/lib/libfbclient.so* $DestDir/lib
|
||||
|
||||
#cp -f $BuiltFBDir/lib/gds.a /usr/lib/libgds.a
|
||||
cp -f $BuiltFBDir/lib/libib_util.so $DestDir/lib/libib_util.so
|
||||
|
||||
cp $BuiltFBDir/intl/libfbintl.so $DestDir/intl/fbintl
|
||||
cp $BuiltFBDir/UDF/ib_udf.so $DestDir/UDF/
|
||||
cp $BuiltFBDir/UDF/fbudf.so $DestDir/UDF/
|
||||
|
||||
# Copy the sql-declarations into the UDF-directory
|
||||
cp $BuildRootDir/src/extlib/ib_udf.sql $DestDir/UDF/
|
||||
cp $BuildRootDir/src/extlib/fbudf/fbudf.sql $DestDir/UDF/
|
||||
|
||||
# Note that this copies files from outside the build tree.
|
||||
#cp $BuildRootDir/doc/*.pdf $DestDir/doc
|
||||
cp $BuildRootDir/doc/README.* $DestDir/doc
|
||||
cp $BuildRootDir/doc/sql.extensions/* $DestDir/doc/sql.extensions
|
||||
cp $BuildRootDir/doc/WhatsNew $DestDir/WhatsNew
|
||||
cp $BuildRootDir/doc/README.user $DestDir/README
|
||||
|
||||
cp $BuiltFBDir/misc/firebird.conf $DestDir/firebird.conf.sample
|
||||
|
||||
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
|
||||
chmod -R o= $InstallFirebirdPrefix
|
||||
|
||||
# Now fix up the mess.
|
||||
|
||||
# fix up directories
|
||||
for i in `find $InstallFirebirdPrefix -print`
|
||||
do
|
||||
FileName=$i
|
||||
if [ -d $FileName ]; then
|
||||
chmod u=rwx,go=rx $FileName
|
||||
fi
|
||||
done
|
||||
|
||||
# make lib ldconfig-compatible
|
||||
chown -R root:wheel $InstallFirebirdPrefix/lib
|
||||
|
||||
# make the following read-only
|
||||
chmod -R a=r $InstallFirebirdPrefix/WhatsNew
|
||||
for i in `find $InstallFirebirdPrefix/doc -type f -print`
|
||||
do
|
||||
chmod a=r $i
|
||||
done
|
||||
#chmod -R a=r $InstallFirebirdPrefix/examples/*
|
||||
chmod -R a=r $InstallFirebirdPrefix/include/*
|
||||
chmod -R a=r $InstallFirebirdPrefix/intl/*
|
||||
#chmod -R a=r $InstallFirebirdPrefix/misc/*
|
||||
|
||||
chmod -R ug=rx,o= $InstallFirebirdPrefix/UDF/*
|
||||
chmod -R ug=rx,o= $InstallFirebirdPrefix/intl/fbintl
|
||||
chmod -R a=rx $InstallFirebirdPrefix/lib/*
|
||||
|
||||
#cd $InstallFirebirdPrefix/lib
|
||||
#ln -sf libfbembed.so libgds.so
|
||||
#ln -sf libfbembed.so.2 libgds.so.2
|
||||
|
||||
cd $InstallFirebirdPrefix/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 $InstallFirebirdPrefix
|
||||
|
||||
# Lock files
|
||||
|
||||
for i in fb_guard
|
||||
do
|
||||
FileName=$i
|
||||
touch $FileName
|
||||
chmod ug=rw,o= $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
|
||||
|
||||
# install the samples if they don't exist
|
||||
[ -f aliases.conf ] || install -o firebird -g firebird -m 440 aliases.conf.sample aliases.conf
|
||||
[ -f firebird.conf ] || install -o firebird -g firebird -m 440 firebird.conf.sample firebird.conf
|
||||
[ -f security2.fdb ] || install -o firebird -g firebird -m 660 security2.fdb.sample security2.fdb
|
||||
fixFilePermissions
|
||||
|
||||
# remove any existing gds service
|
||||
cp /etc/services /etc/services.old
|
||||
@ -294,17 +435,17 @@ cat >>/etc/services <<EOF
|
||||
gds_db 3050/tcp #Firebird Database Remote Protocol
|
||||
EOF
|
||||
cat >>/etc/inetd.conf <<EOF
|
||||
gds_db stream tcp nowait firebird $InstallFirebirdPrefix/bin/fb_inet_server fb_inet_server
|
||||
gds_db stream tcp nowait firebird ${TargetDir}@FB_SBINDIR@/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 $InstallPrefix/etc/rc.d ]; then
|
||||
if [ -d /etc/rc.d ]; then
|
||||
(
|
||||
echo "#!/bin/sh"; echo "[ -d $InstallFirebirdPrefix/lib ] && /sbin/ldconfig -m $InstallFirebirdPrefix/lib"
|
||||
) > $InstallPrefix/etc/rc.d/000.firebird.sh
|
||||
chmod a=rx $InstallPrefix/etc/rc.d/000.firebird.sh
|
||||
echo "#!/bin/sh"; echo "[ -d @FB_LIBDIR@ ] && /sbin/ldconfig -m @FB_LIBDIR@"
|
||||
) > /etc/rc.d/000.firebird.sh
|
||||
chmod a=rx /etc/rc.d/000.firebird.sh
|
||||
fi
|
||||
|
||||
|
31
configure.in
31
configure.in
@ -1235,7 +1235,19 @@ gen/firebird/bin/posixLibrary.sh:builds/install/misc/posixLibrary.sh.in
|
||||
gen/firebird/bin/classicLibrary.sh:builds/install/misc/classicLibrary.sh.in
|
||||
gen/firebird/bin/superLibrary.sh:builds/install/misc/superLibrary.sh.in
|
||||
gen/firebird/bin/changeRunUser.sh:builds/install/misc/changeRunUser.sh.in
|
||||
gen/firebird/bin/restoreRootRunUser.sh:builds/install/misc/restoreRootRunUser.sh.in],
|
||||
gen/firebird/bin/restoreRootRunUser.sh:builds/install/misc/restoreRootRunUser.sh.in
|
||||
gen/firebird/bin/tarMainInstall.sh:builds/install/misc/tarMainInstall.sh.in
|
||||
gen/firebird/bin/tarinstall.sh:builds/install/misc/tarinstall.sh.in
|
||||
gen/firebird/bin/preinstall.sh:builds/install/misc/preinstall.sh.in
|
||||
gen/firebird/bin/postinstall.sh:builds/install/misc/postinstall.sh.in
|
||||
gen/firebird/bin/preuninstall.sh:builds/install/misc/preuninstall.sh.in
|
||||
gen/firebird/bin/postuninstall.sh:builds/install/misc/postuninstall.sh.in
|
||||
gen/firebird/bin/taruninstall.sh:builds/install/misc/taruninstall.sh.in
|
||||
gen/firebird/bin/tarMainUninstall.sh:builds/install/misc/tarMainUninstall.sh.in
|
||||
gen/firebird/bin/changeDBAPassword.sh:builds/install/misc/changeDBAPassword.sh.in
|
||||
gen/firebird/bin/changeMultiConnectMode.sh:builds/install/misc/changeMultiConnectMode.sh.in
|
||||
gen/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
|
||||
gen/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in],
|
||||
[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
|
||||
|
||||
dnl: Platform Specific Files
|
||||
@ -1252,14 +1264,6 @@ case "$PLATFORM" in
|
||||
AC_CONFIG_FILES([gen/install/makeInstallImage.sh:builds/install/arch-specific/linux/misc/makeInstallImage.sh.in
|
||||
gen/install/scripts/rpmheader.txt:${INSTALL_SRC_DIR}/rpmheader.txt.in
|
||||
gen/install/scripts/rpmfiles.txt:${INSTALL_SRC_DIR}/rpmfiles.txt.in
|
||||
gen/firebird/bin/tarMainInstall.sh:builds/install/arch-specific/linux/misc/tarMainInstall.sh.in
|
||||
gen/firebird/bin/tarinstall.sh:builds/install/arch-specific/linux/misc/tarinstall.sh.in
|
||||
gen/firebird/bin/preinstall.sh:builds/install/arch-specific/linux/misc/preinstall.sh.in
|
||||
gen/firebird/bin/postinstall.sh:builds/install/arch-specific/linux/misc/postinstall.sh.in
|
||||
gen/firebird/bin/preuninstall.sh:builds/install/arch-specific/linux/misc/preuninstall.sh.in
|
||||
gen/firebird/bin/postuninstall.sh:builds/install/arch-specific/linux/misc/postuninstall.sh.in
|
||||
gen/firebird/bin/taruninstall.sh:builds/install/arch-specific/linux/misc/taruninstall.sh.in
|
||||
gen/firebird/bin/tarMainUninstall.sh:builds/install/arch-specific/linux/misc/tarMainUninstall.sh.in
|
||||
gen/install/misc/firebird.xinetd:builds/install/arch-specific/linux/misc/firebird.xinetd.in
|
||||
gen/install/misc/firebird.init.d.generic:builds/install/arch-specific/linux/misc/firebird.init.d.generic.in
|
||||
gen/install/misc/firebird.init.d.mandrake:builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in
|
||||
@ -1268,10 +1272,6 @@ case "$PLATFORM" in
|
||||
gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/misc/firebird.init.d.gentoo.in
|
||||
gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/misc/firebird.init.d.slackware.in
|
||||
gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/misc/rc.config.firebird.in
|
||||
gen/firebird/bin/changeDBAPassword.sh:builds/install/misc/changeDBAPassword.sh.in
|
||||
gen/firebird/bin/changeMultiConnectMode.sh:builds/install/misc/changeMultiConnectMode.sh.in
|
||||
gen/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
|
||||
gen/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in
|
||||
gen/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/misc/linuxLibrary.sh.in]
|
||||
,[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
|
||||
;;
|
||||
@ -1320,8 +1320,9 @@ case "$PLATFORM" in
|
||||
[chmod a+x gen/install/scripts/*.sh gen/install/*.sh 2>/dev/null])
|
||||
;;
|
||||
FREEBSD)
|
||||
AC_CONFIG_FILES([gen/install/install.sh:builds/install/arch-specific/freebsd/install.sh.in]
|
||||
,[chmod a+x gen/install/install.sh 2>/dev/null])
|
||||
AC_CONFIG_FILES([gen/install/install.sh:builds/install/arch-specific/freebsd/install.sh.in
|
||||
gen/firebird/bin/freebsdLibrary.sh:builds/install/arch-specific/freebsd/freebsdLibrary.sh.in]
|
||||
,[chmod a+x gen/install/*.sh gen/firebird/bin/*sh 2>/dev/null])
|
||||
;;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user