mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-29 05:38:00 +00:00
databases/fireird30-[client|server]: New port: Firebird-3 relational database
Firebird is a relational database offering many ANSI SQL-99 features that runs on Linux, Windows, and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers. It has been used in production systems, under a variety of names since 1981. Firebird is completely free of any registration, licensing or deployment fees. It may be deployed freely for use with any third-party software, whether commercial or not. WWW: https://sourceforge.net/projects/firebird/ WWW: http://www.firebirdsql.org/ PR: 254387
This commit is contained in:
parent
97f088e868
commit
ca43515803
@ -73,7 +73,9 @@
|
||||
SUBDIR += evolution-data-server
|
||||
SUBDIR += fastdb
|
||||
SUBDIR += firebird25-client
|
||||
SUBDIR += firebird30-client
|
||||
SUBDIR += firebird25-server
|
||||
SUBDIR += firebird30-server
|
||||
SUBDIR += fortytwo-bdb
|
||||
SUBDIR += foundationdb
|
||||
SUBDIR += foundationdb-devel
|
||||
|
12
databases/firebird30-client/Makefile
Normal file
12
databases/firebird30-client/Makefile
Normal file
@ -0,0 +1,12 @@
|
||||
PORTNAME= firebird
|
||||
PKGNAMESUFFIX= ${PORTVERSION:R:S/.//}-client
|
||||
|
||||
COMMENT= Firebird-3 database client
|
||||
|
||||
MASTERDIR= ${.CURDIR}/../firebird30-server
|
||||
|
||||
PLIST= ${PKGDIR}/pkg-plist.client
|
||||
|
||||
CLIENT_ONLY= yes
|
||||
|
||||
.include "${MASTERDIR}/Makefile"
|
198
databases/firebird30-server/Makefile
Normal file
198
databases/firebird30-server/Makefile
Normal file
@ -0,0 +1,198 @@
|
||||
PORTNAME= firebird
|
||||
PORTVERSION= 3.0.7
|
||||
CATEGORIES?= databases
|
||||
MASTER_SITES= https://github.com/FirebirdSQL/${PORTNAME}/releases/download/R3_0_7/
|
||||
PKGNAMESUFFIX?= ${PORTVERSION:R:S/.//}-server
|
||||
DISTNAME= ${PORTNAME:S/f/F/}-${PORTVERSION}.33374-0
|
||||
DIST_SUBDIR= ${PORTNAME}
|
||||
|
||||
MAINTAINER= acm@FreeBSD.org
|
||||
COMMENT?= Firebird-3 relational database (server)
|
||||
|
||||
LICENSE= IDPL IPL
|
||||
LICENSE_COMB= multi
|
||||
LICENSE_NAME_IDPL= Initial Developer's Public License
|
||||
LICENSE_NAME_IPL= InterBase Public License
|
||||
LICENSE_FILE_IDPL= ${WRKSRC}/builds/install/misc/IDPLicense.txt
|
||||
LICENSE_FILE_IPL= ${WRKSRC}/builds/install/misc/IPLicense.txt
|
||||
LICENSE_PERMS_IDPL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
|
||||
LICENSE_PERMS_IPL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
|
||||
|
||||
LIB_DEPENDS= libicuuc.so:devel/icu \
|
||||
libtommath.so:math/libtommath
|
||||
|
||||
CONFLICTS_INSTALL= firebird25-* firebird40-*
|
||||
|
||||
USES= cpe gmake pkgconfig localbase:ldflags libedit tar:bzip2
|
||||
USE_CXXSTD= gnu++03
|
||||
GNU_CONFIGURE= yes
|
||||
MAKE_JOBS_UNSAFE= yes
|
||||
|
||||
CONFIGURE_ARGS= --prefix=${LOCALSTATEDIR} \
|
||||
--exec-prefix=${PREFIX} \
|
||||
--with-fbbin=${PREFIX}/bin \
|
||||
--with-fblib=${PREFIX}/lib \
|
||||
--with-fbconf=${PREFIX}/${CONFDIR} \
|
||||
--with-fbglock=${LOCALSTATEDIR} \
|
||||
--with-fbhelp=${LOCALSTATEDIR}/help \
|
||||
--with-fbintl=${LIBEXECDIR}/intl \
|
||||
--with-fblog=${LOCALSTATEDIR} \
|
||||
--with-fbmsg=${DATADIR} \
|
||||
--with-fbplugins=${LIBEXECDIR}/plugins \
|
||||
--with-fbsbin=${PREFIX}/sbin \
|
||||
--with-fbsecure-db=${LOCALSTATEDIR} \
|
||||
--with-fbsample-db=${EXAMPLESDIR} \
|
||||
--with-fbudf=${LIBEXECDIR}/UDF
|
||||
CONFIGURE_ENV+= PTHREAD_LIBS="-lpthread" \
|
||||
ac_cv_header_atomic_ops_h="no" \
|
||||
ac_cv_lib_atomic_ops_main="no"
|
||||
CPPFLAGS+= -DU_NOEXCEPT= # For USE_CXXSTD=gnu++98
|
||||
|
||||
LOCALSTATEDIR= /var/db/firebird
|
||||
CONFDIR= etc/firebird
|
||||
LIBEXECDIR= ${PREFIX}/libexec/firebird
|
||||
PLIST_SUB= FIREBIRD_VERSION=${PORTVERSION} \
|
||||
LOCALSTATEDIR="var/db/firebird" CONFDIR="${CONFDIR}"
|
||||
|
||||
# Don't use ld for linking, use gcc
|
||||
LD= ${CC}
|
||||
|
||||
# Don't strip binary files
|
||||
STRIP=
|
||||
|
||||
ONLY_FOR_ARCHS= i386 amd64
|
||||
# sparc64 fails due to lack of valid AtomicCounter implementation in
|
||||
# src/common/classes/fb_atomic.h; presumably other tier-2s would as well
|
||||
|
||||
INSTALL_FB= ${INSTALL} ${COPY}
|
||||
|
||||
.if !defined(CLIENT_ONLY)
|
||||
# Server part stuff
|
||||
USES+= firebird:3.0
|
||||
|
||||
CONFIGURE_ARGS+=--without-editline
|
||||
|
||||
USE_RC_SUBR= firebird
|
||||
SUB_FILES= pkg-message
|
||||
|
||||
UTIL_SBIN= fbguard firebird
|
||||
UTIL_BIN= fb_lock_print fbsplit fbstat fbsvcmgr fbtracemgr gbak gfix gsec \
|
||||
nbackup
|
||||
UDF_SO= ib_udf.so fbudf.so
|
||||
UDF_SQL= ib_udf.sql ib_udf2.sql fbudf.sql
|
||||
PLUGIN_SO= libEngine12.so libfbtrace.so libLegacy_Auth.so \
|
||||
libLegacy_UserManager.so libSrp.so libudr_engine.so
|
||||
|
||||
PKGINSTALL?= ${PKGDIR}/pkg-install-server
|
||||
.else
|
||||
# Client part stuff
|
||||
USES+= libedit
|
||||
|
||||
CONFIGURE_ARGS+= --with-system-editline
|
||||
CONFIGURE_ENV+= ac_cv_lib_edit_readline="yes"
|
||||
|
||||
USE_LDCONFIG= yes
|
||||
CLIENT_BIN= gpre isql-fb qli
|
||||
CLIENT_HEADER= extlib/ib_util.h include/ibase.h include/iberror.h yvalve/perf.h
|
||||
|
||||
OPTIONS_DEFINE= DOCS
|
||||
|
||||
DOCS_PORTDOCS= *
|
||||
|
||||
FB_DOCS_FILES= WhatsNew README.* Firebird* ambiguity.txt \
|
||||
ods11-index-structure.html
|
||||
FB_DOCS_DIRS= sql.extensions license upgrade
|
||||
.endif
|
||||
|
||||
MAKE_ENV+= FIREBIRD_TMP="${WRKDIR}" FIREBIRD_LOCK="${WRKDIR}"
|
||||
MAKE_ARGS+= PREFIX="${STAGEDIR}${PREFIX}"
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${ARCH} == "amd64"
|
||||
CFLAGS+= -DAMD64
|
||||
.endif
|
||||
|
||||
.if !defined(CLIENT_ONLY)
|
||||
USERS= ${PORTNAME}
|
||||
GROUPS= ${USERS}
|
||||
|
||||
MAKE_ENV+= IsServer=Y
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
${FIND} ${WRKSRC} -name "*.sh" -exec ${CHMOD} +x {} \+
|
||||
${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
|
||||
${WRKSRC}/builds/install/misc/firebird.conf.in
|
||||
|
||||
pre-build:
|
||||
.if !defined(CLIENT_ONLY)
|
||||
@${SETENV} PKG_PREFIX="${STAGEDIR}${PREFIX}" ${SH} ${PKGINSTALL} ${PORTNAME} PRE-INSTALL
|
||||
.endif
|
||||
${MAKE} -C ${WRKSRC}/extern/btyacc
|
||||
|
||||
do-install:
|
||||
.if !defined(CLIENT_ONLY)
|
||||
${INSTALL_PROGRAM} ${UTIL_BIN:S!^!${WRKSRC}/gen/Release/firebird/bin/!} ${STAGEDIR}${PREFIX}/bin
|
||||
${INSTALL_PROGRAM} ${UTIL_SBIN:S!^!${WRKSRC}/gen/Release/firebird/bin/!} ${STAGEDIR}${PREFIX}/sbin
|
||||
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/${CONFDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/databases.conf ${STAGEDIR}${PREFIX}/${CONFDIR}/databases.conf.sample
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/fbtrace.conf ${STAGEDIR}${PREFIX}/${CONFDIR}/fbtrace.conf
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/plugins.conf ${STAGEDIR}${PREFIX}/${CONFDIR}/plugins.conf.sample
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/plugins/udr_engine.conf ${STAGEDIR}${PREFIX}/${CONFDIR}/udr_engine.conf.sample
|
||||
|
||||
${MKDIR} ${STAGEDIR}${LIBEXECDIR}/udf ${STAGEDIR}${LOCALSTATEDIR}/help ${STAGEDIR}${LIBEXECDIR}/intl \
|
||||
${STAGEDIR}${LIBEXECDIR}/plugins ${STAGEDIR}${EXAMPLESDIR}
|
||||
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/lib/libib_util.so ${STAGEDIR}${PREFIX}/lib
|
||||
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/intl/fbintl.conf ${STAGEDIR}${LIBEXECDIR}/intl/fbintl.conf
|
||||
${INSTALL_FB} -m 0555 ${UDF_SO:S!^!${WRKSRC}/gen/Release/firebird/UDF/!} ${STAGEDIR}${LIBEXECDIR}/udf
|
||||
${INSTALL_FB} -m 0444 ${UDF_SQL:S!^!${WRKSRC}/gen/Release/firebird/UDF/!} ${STAGEDIR}${LIBEXECDIR}/udf
|
||||
${INSTALL_FB} -m 0555 ${PLUGIN_SO:S!^!${WRKSRC}/gen/Release/firebird/plugins/!} ${STAGEDIR}${LIBEXECDIR}/plugins
|
||||
|
||||
${INSTALL_FB} -m 0660 ${WRKSRC}/gen/Release/firebird/security3.fdb ${STAGEDIR}${LOCALSTATEDIR}/security3.fdb.sample
|
||||
${INSTALL_FB} -m 0660 ${WRKSRC}/gen/Release/firebird/examples/empbuild/employee.fdb ${STAGEDIR}${EXAMPLESDIR}/employee.fdb
|
||||
|
||||
${INSTALL_FB} -m 0440 ${WRKSRC}/gen/Release/firebird/help/help.fdb ${STAGEDIR}${LOCALSTATEDIR}/help
|
||||
|
||||
${INSTALL_FB} -m 0555 ${WRKSRC}/gen/Release/firebird/intl/libfbintl.so ${STAGEDIR}${LIBEXECDIR}/intl/libfbintl.so
|
||||
.else
|
||||
# defined CLIENT_ONLY
|
||||
${INSTALL_PROGRAM} ${CLIENT_BIN:S!^!${WRKSRC}/gen/Release/firebird/bin/!} ${STAGEDIR}${PREFIX}/bin
|
||||
|
||||
${SED} -e "s=%%PREFIX%%=${PREFIX}=g" ${WRKSRC}/gen/Release/firebird/firebird.conf > ${WRKDIR}/firebird.conf
|
||||
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/${CONFDIR}
|
||||
${INSTALL_DATA} ${WRKDIR}/firebird.conf ${STAGEDIR}${PREFIX}/${CONFDIR}/firebird.conf.sample
|
||||
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/lib/libfbclient.so.${PORTVERSION} \
|
||||
${STAGEDIR}${PREFIX}/lib
|
||||
|
||||
${LN} -fs libfbclient.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libfbclient.so.3
|
||||
${LN} -fs libfbclient.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libfbclient.so
|
||||
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/include/firebird
|
||||
${INSTALL_DATA} ${CLIENT_HEADER:S!^!${WRKSRC}/src/!} ${STAGEDIR}${PREFIX}/include
|
||||
|
||||
@cd ${WRKSRC}/src/include/firebird && \
|
||||
${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${PREFIX}/include/firebird/{}" \;
|
||||
|
||||
@cd ${WRKSRC}/src/include/firebird && \
|
||||
${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${STAGEDIR}${PREFIX}/include/firebird/{}" \;
|
||||
|
||||
@${MKDIR} ${STAGEDIR}${DATADIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/*.msg ${STAGEDIR}${DATADIR}
|
||||
|
||||
post-install-DOCS-on:
|
||||
@${ECHO_MSG} "===> Installing documentation for ${PKGNAME}"
|
||||
@${MKDIR} ${FB_DOCS_DIRS:S!^!${STAGEDIR}${DOCSDIR}/!}
|
||||
${INSTALL_DATA} ${FB_DOCS_FILES:S!^!${WRKSRC}/doc/!} ${STAGEDIR}${DOCSDIR}
|
||||
${LN} -sf README.user ${STAGEDIR}${DOCSDIR}/README
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/sql.extensions/* ${STAGEDIR}${DOCSDIR}/sql.extensions
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/license/* ${STAGEDIR}${DOCSDIR}/license
|
||||
${INSTALL_DATA} ${WRKSRC}/src/misc/upgrade/v3.0/* ${STAGEDIR}${DOCSDIR}/upgrade
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
3
databases/firebird30-server/distinfo
Normal file
3
databases/firebird30-server/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
TIMESTAMP = 1621726682
|
||||
SHA256 (firebird/Firebird-3.0.7.33374-0.tar.bz2) = acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76
|
||||
SIZE (firebird/Firebird-3.0.7.33374-0.tar.bz2) = 9841457
|
61
databases/firebird30-server/files/firebird.in
Normal file
61
databases/firebird30-server/files/firebird.in
Normal file
@ -0,0 +1,61 @@
|
||||
#!/bin/sh
|
||||
|
||||
# PROVIDE: firebird
|
||||
# REQUIRE: LOGIN
|
||||
# KEYWORD: shutdown
|
||||
#
|
||||
# Add the following line to /etc/rc.conf to enable Firebird Database:
|
||||
#
|
||||
#
|
||||
# firebird_enable: Set it to "YES" to enable firebird.
|
||||
# Default is "NO".
|
||||
# firebird_flags: Set options to run firebird.
|
||||
# Default is "-el /var/db/firebird".
|
||||
# firebird_pidfile: Set full path to pid file.
|
||||
# Default is "/var/run/firebird.pid".
|
||||
#
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=firebird
|
||||
rcvar=firebird_enable
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
firebird_enable=${firebird_enable:-"NO"}
|
||||
firebird_flags=${firebird_flags:-"-el /var/db/firebird"}
|
||||
firebird_pidfile=${firebird_pidfile:-"/var/run/${name}.pid"}
|
||||
firebird_user=firebird
|
||||
|
||||
command=%%PREFIX%%/sbin/firebird
|
||||
command_args="${firebird_flags} &"
|
||||
pidfile=${firebird_pidfile}
|
||||
start_precmd="start_precmd"
|
||||
start_postcmd="start_postcmd"
|
||||
stop_postcmd="stop_postcmd"
|
||||
reload_postcmd="reload_postcmd"
|
||||
|
||||
start_precmd()
|
||||
{
|
||||
touch ${firebird_pidfile}
|
||||
chown "${firebird_user}:wheel" ${firebird_pidfile} ||
|
||||
err 1 "Cannot chown ${firebird_pidfile}"
|
||||
}
|
||||
|
||||
start_postcmd()
|
||||
{
|
||||
pgrep -u ${firebird_user} ${name} > ${firebird_pidfile}
|
||||
}
|
||||
|
||||
stop_postcmd()
|
||||
{
|
||||
rm -f ${pidfile}
|
||||
}
|
||||
|
||||
reload_postcmd()
|
||||
{
|
||||
rm -f ${pidfile}
|
||||
run_rc_command start
|
||||
}
|
||||
|
||||
run_rc_command "$1"
|
@ -0,0 +1,20 @@
|
||||
--- builds/posix/prefix.freebsd.orig 2021-03-27 18:59:05 UTC
|
||||
+++ builds/posix/prefix.freebsd
|
||||
@@ -20,5 +20,14 @@
|
||||
|
||||
EXE_LINK_OPTIONS+=-Wl,-rpath,../gen/firebird/lib
|
||||
|
||||
-PROD_FLAGS=-O -fno-builtin -DFREEBSD -pipe -MMD -fPIC
|
||||
-DEV_FLAGS=-ggdb -DFREEBSD -pipe -MMD -p -fPIC -Wall -Wno-non-virtual-dtor
|
||||
+COMMON_FLAGS=-DFREEBSD -pipe -MMD -fPIC
|
||||
+PROD_FLAGS=$(COMMON_FLAGS) -O0 -g -fno-builtin -Wno-deprecated
|
||||
+DEV_FLAGS=$(COMMON_FLAGS) -ggdb -p -Wall -Wno-non-virtual-dtor
|
||||
+
|
||||
+# This file must be compiled with SSE4.2 support
|
||||
+%/CRC32C.o: COMMON_FLAGS += -msse4
|
||||
+
|
||||
+# These files are generated incorrectly (e.g. array.epp => array.cpp)
|
||||
+%/array.o %/blob.o %/alice_meta.o %/restore.o %/backup.o: COMMON_FLAGS += -Wno-narrowing
|
||||
+%/OdsDetection.o %/dba.o: COMMON_FLAGS += -Wno-narrowing
|
||||
+
|
||||
|
@ -0,0 +1,19 @@
|
||||
--- builds/posix/prefix.freebsd_amd64.orig 2020-10-20 08:40:05 UTC
|
||||
+++ builds/posix/prefix.freebsd_amd64
|
||||
@@ -20,5 +20,13 @@
|
||||
|
||||
EXE_LINK_OPTIONS+=-Wl,-rpath,../gen/firebird/lib
|
||||
|
||||
-PROD_FLAGS=-O -fno-builtin -DFREEBSD -DAMD64 -pipe -MMD -fPIC
|
||||
-DEV_FLAGS=-ggdb -DFREEBSD -DAMD64 -pipe -MMD -p -fPIC -Wall -Wno-non-virtual-dtor
|
||||
+COMMON_FLAGS=-DFREEBSD -DAMD64 -pipe -MMD -fPIC
|
||||
+PROD_FLAGS=$(COMMON_FLAGS) -O0 -g -fno-builtin -Wno-deprecated
|
||||
+DEV_FLAGS=$(COMMON_FLAGS) -ggdb -p -Wall -Wno-non-virtual-dtor
|
||||
+
|
||||
+# This file must be compiled with SSE4.2 support
|
||||
+%/CRC32C.o: COMMON_FLAGS += -msse4
|
||||
+
|
||||
+# These files are generated incorrectly (e.g. array.epp => array.cpp)
|
||||
+%/array.o %/blob.o %/alice_meta.o %/restore.o %/backup.o: COMMON_FLAGS += -Wno-narrowing
|
||||
+%/OdsDetection.o %/dba.o: COMMON_FLAGS += -Wno-narrowing
|
||||
|
@ -0,0 +1,34 @@
|
||||
--- builds/posix/Makefile.in 2020-10-20 03:40:05.000000000 -0500
|
||||
+++ builds/posix/Makefile.in 2021-06-25 00:25:25.389776000 -0500
|
||||
@@ -186,16 +186,18 @@
|
||||
$(MAKE) preliminaryCheck
|
||||
$(MAKE) boot
|
||||
$(MAKE) yvalve
|
||||
+ $(MAKE) engine
|
||||
ifeq ($(IsDeveloper), Y)
|
||||
# In developer mode we must regenerate various files in include/gen
|
||||
$(MAKE) ids
|
||||
endif
|
||||
- $(MAKE) engine
|
||||
+ifeq ($(IsServer), Y)
|
||||
$(MAKE) fbintl
|
||||
$(MAKE) utilities
|
||||
+endif
|
||||
# Now having ready such useful tools as gbak and isql, we may restore / create
|
||||
# required databases and switch to full-featured gpre
|
||||
- $(MAKE) gpre
|
||||
+ $(MAKE) gbak gfix gpre
|
||||
# Pay attention - after build force gpre_current to point to gpre
|
||||
# even if gpre itself was not rebuilt
|
||||
-$(RM) $(GPRE_CURRENT)
|
||||
@@ -204,8 +206,10 @@
|
||||
# In developer mode we must regenerate various files in include/gen
|
||||
$(MAKE) codes
|
||||
endif
|
||||
+ifeq ($(IsServer), Y)
|
||||
$(MAKE) plugins
|
||||
$(MAKE) examples
|
||||
+endif
|
||||
$(MAKE) rest
|
||||
|
||||
|
@ -0,0 +1,12 @@
|
||||
--- builds/posix/Makefile.in.plugins_examples.orig 2021-03-27 11:14:37 UTC
|
||||
+++ builds/posix/Makefile.in.plugins_examples
|
||||
@@ -99,7 +99,7 @@ AllObjects += $(CA_Objects)
|
||||
crypt_app: $(CRYPT_APP)
|
||||
|
||||
$(CRYPT_APP): $(CA_Objects)
|
||||
- $(EXE_LINK) $^ -o $@ $(FIREBIRD_LIBRARY_LINK)
|
||||
+ $(EXE_LINK) $^ -o $@ $(LDFLAGS) $(FIREBIRD_LIBRARY_LINK)
|
||||
|
||||
|
||||
include $(ROOT)/gen/make.shared.targets
|
||||
|
@ -0,0 +1,12 @@
|
||||
--- builds/install/misc/firebird.conf.in.orig 2020-10-12 00:02:22 UTC
|
||||
+++ builds/install/misc/firebird.conf.in
|
||||
@@ -189,7 +189,7 @@
|
||||
#
|
||||
# Type: string (special format)
|
||||
#
|
||||
-#UdfAccess = Restrict UDF
|
||||
+UdfAccess = Restrict %%PREFIX%%/libexec/firebird/udf
|
||||
|
||||
|
||||
# ----------------------------
|
||||
|
@ -0,0 +1,9 @@
|
||||
--- builds/posix/empty.vers.orig 2020-10-12 00:02:22 UTC
|
||||
+++ builds/posix/empty.vers
|
||||
@@ -21,3 +21,5 @@
|
||||
# Contributor(s): ______________________________________.
|
||||
|
||||
main
|
||||
+__progname
|
||||
+environ
|
||||
|
@ -0,0 +1,64 @@
|
||||
--- builds/posix/make.defaults 2020-10-20 03:40:05.000000000 -0500
|
||||
+++ builds/posix/make.defaults 2021-06-25 00:23:49.718147000 -0500
|
||||
@@ -134,7 +134,7 @@
|
||||
MATHLIB=@MATHLIB@
|
||||
|
||||
# switch to make sed edit files inplace
|
||||
-INLINE_EDIT_SED:= -i
|
||||
+INLINE_EDIT_SED:= -i ""
|
||||
|
||||
# Default programs and tools to be used in the build process
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
CHMOD= chmod
|
||||
CHMOD_6= chmod 666
|
||||
CHMOD_7= chmod 777
|
||||
-CHMOD_S7= chmod 06777
|
||||
+CHMOD_S7= chmod 04555
|
||||
MV= mv -f
|
||||
TOUCH= touch
|
||||
CP= cp
|
||||
@@ -219,7 +219,7 @@
|
||||
#LibraryFileName=libfbclient
|
||||
LibraryFileName=libfbclient
|
||||
LibraryFullName=$(LibraryFileName).${SHRLIB_EXT}.${FirebirdVersion}
|
||||
-LibrarySoName=$(LibraryFileName).${SHRLIB_EXT}.2
|
||||
+LibrarySoName=$(LibraryFileName).${SHRLIB_EXT}.3
|
||||
LibraryBaseName=$(LibraryFileName).${SHRLIB_EXT}
|
||||
|
||||
LIBFIREBIRD_FULLNAME = $(LIB)/$(LibraryFullName)
|
||||
@@ -240,7 +240,7 @@
|
||||
|
||||
ifeq ($(EDITLINE_FLG),Y)
|
||||
ifeq ($(STD_EDITLINE), true)
|
||||
- LIBEDITLINE := -l$(READLINE)
|
||||
+ LIBEDITLINE := $(shell pkgconf libedit --libs)
|
||||
else
|
||||
LIBEDITLINE := $(LIB)/libedit.a
|
||||
endif
|
||||
@@ -362,7 +362,7 @@
|
||||
GDS_DROP = $(BIN)/gds_drop$(EXEC_EXT)
|
||||
FBSVCMGR = $(BIN)/fbsvcmgr$(EXEC_EXT)
|
||||
FBTRACEMGR = $(BIN)/fbtracemgr$(EXEC_EXT)
|
||||
-GSTAT = $(BIN)/gstat$(EXEC_EXT)
|
||||
+GSTAT = $(BIN)/fbstat$(EXEC_EXT)
|
||||
NBACKUP = $(BIN)/nbackup$(EXEC_EXT)
|
||||
LOCKPRINT = $(BIN)/fb_lock_print$(EXEC_EXT)
|
||||
GSEC = $(BIN)/gsec$(EXEC_EXT)
|
||||
@@ -383,13 +383,13 @@
|
||||
QLI = $(BIN)/qli$(EXEC_EXT)
|
||||
|
||||
# From isql
|
||||
-ISQL = $(BIN)/isql$(EXEC_EXT)
|
||||
-RUN_ISQL = $(RBIN)/isql$(EXEC_EXT)
|
||||
+ISQL = $(BIN)/isql-fb$(EXEC_EXT)
|
||||
+RUN_ISQL = $(RBIN)/isql-fb$(EXEC_EXT)
|
||||
|
||||
# From burp
|
||||
GBAK = $(BIN)/gbak$(EXEC_EXT)
|
||||
RUN_GBAK = $(RBIN)/gbak$(EXEC_EXT)
|
||||
-GSPLIT = $(BIN)/gsplit$(EXEC_EXT)
|
||||
+GSPLIT = $(BIN)/fbsplit$(EXEC_EXT)
|
||||
|
||||
# From gpre
|
||||
# (gpre current is a link to one of the others)
|
@ -0,0 +1,12 @@
|
||||
--- extern/btyacc/Makefile.orig 2020-10-12 00:02:22 UTC
|
||||
+++ extern/btyacc/Makefile
|
||||
@@ -42,7 +42,7 @@ OTHERS = README README.BYACC \
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJS) $(LIBS)
|
||||
- $(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
|
||||
|
||||
clean:; rm -f $(OBJS)
|
||||
|
||||
|
@ -0,0 +1,24 @@
|
||||
--- extern/cloop/Makefile 2020-10-12 00:02:22 UTC
|
||||
+++ extern/cloop/Makefile
|
||||
@@ -6,7 +6,7 @@ TARGET := release
|
||||
|
||||
CC := $(CC)
|
||||
CXX := $(CXX)
|
||||
-LD := $(CXX)
|
||||
+LD := $(CXX) $(LDFLAGS)
|
||||
|
||||
SRC_DIR := src
|
||||
BUILD_DIR := build
|
||||
@@ -27,8 +27,9 @@ SRCS_CPP := $(foreach sdir,$(SRC_DIRS),$
|
||||
OBJS_C := $(patsubst $(SRC_DIR)/%.c,$(OBJ_DIR)/%.o,$(SRCS_C))
|
||||
OBJS_CPP := $(patsubst $(SRC_DIR)/%.cpp,$(OBJ_DIR)/%.o,$(SRCS_CPP))
|
||||
|
||||
-C_FLAGS := -ggdb -fPIC -MMD -MP -W -Wall -Wno-unused-parameter
|
||||
-CXX_FLAGS := $(C_FLAGS)
|
||||
+COMMON_C_FLAGS := -ggdb -fPIC -MMD -MP -W -Wall -Wno-unused-parameter
|
||||
+C_FLAGS := $(COMMON_C_FLAGS) $(CFLAGS) $(CPPFLAGS)
|
||||
+CXX_FLAGS := $(COMMON_C_FLAGS) $(CXXFLAGS) $(CPPFLAGS)
|
||||
FPC_FLAGS := -Mdelphi
|
||||
|
||||
ifeq ($(TARGET),release)
|
||||
|
@ -0,0 +1,25 @@
|
||||
--- src/jrd/os/posix/unix.cpp 2021-06-22 00:38:07.434896000 -0500
|
||||
+++ src/jrd/os/posix/unix.cpp 2021-06-22 00:43:54.988645000 -0500
|
||||
@@ -56,6 +56,13 @@
|
||||
#include <linux/fs.h>
|
||||
#endif
|
||||
|
||||
+#ifdef FREEBSD
|
||||
+#include <sys/disk.h>
|
||||
+#define BLKGETSIZE64 DIOCGMEDIASIZE
|
||||
+#define BLKGETSIZE DIOCGMEDIASIZE
|
||||
+#define BLKSSZGET DIOCGSECTORSIZE
|
||||
+#endif
|
||||
+
|
||||
#endif //SUPPORT_RAW_DEVICES
|
||||
|
||||
#include "../jrd/jrd.h"
|
||||
@@ -495,7 +502,7 @@
|
||||
// Looks like any OS needs own ioctl() to determine raw device size
|
||||
#undef HAS_RAW_SIZE
|
||||
|
||||
-#ifdef LINUX
|
||||
+#if defined(LINUX) || defined(FREEBSD)
|
||||
#ifdef BLKGETSIZE64
|
||||
if (ioctl(file->fil_desc, BLKGETSIZE64, &length) != 0)
|
||||
#endif /*BLKGETSIZE64*/
|
@ -0,0 +1,13 @@
|
||||
--- src/common/os/posix/SyncSignals.cpp.orig 2020-10-12 00:02:22 UTC
|
||||
+++ src/common/os/posix/SyncSignals.cpp
|
||||
@@ -54,9 +54,6 @@
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
-#if defined FREEBSD || defined NETBSD || defined DARWIN || defined HPUX
|
||||
-#define sigset signal
|
||||
-#endif
|
||||
|
||||
namespace {
|
||||
|
||||
|
@ -0,0 +1,25 @@
|
||||
--- src/remote/SockAddr.h.orig 2020-10-12 00:02:22 UTC
|
||||
+++ src/remote/SockAddr.h
|
||||
@@ -112,11 +112,13 @@ public:
|
||||
|
||||
#define AF_INET6_POSIX 10
|
||||
#define AF_INET6_WINDOWS 23
|
||||
+#define AF_INET6_BSD 28
|
||||
#define AF_INET6_DARWIN 30
|
||||
|
||||
#if AF_INET6 == AF_INET6_POSIX
|
||||
#elif AF_INET6 == AF_INET6_WINDOWS
|
||||
#elif AF_INET6 == AF_INET6_DARWIN
|
||||
+#elif AF_INET6 == AF_INET6_BSD
|
||||
#else
|
||||
#error Unknown value of AF_INET6 !
|
||||
#endif
|
||||
@@ -132,6 +134,7 @@ inline void SockAddr::checkAndFixFamily(
|
||||
case AF_INET6_POSIX:
|
||||
case AF_INET6_WINDOWS:
|
||||
case AF_INET6_DARWIN:
|
||||
+ case AF_INET6_BSD:
|
||||
data.sock.sa_family = AF_INET6;
|
||||
fb_assert(len == sizeof(sockaddr_in6));
|
||||
break;
|
||||
|
25
databases/firebird30-server/files/patch-src_remote_inet.cpp
Normal file
25
databases/firebird30-server/files/patch-src_remote_inet.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
--- src/remote/inet.cpp.orig 2020-10-20 08:40:05 UTC
|
||||
+++ src/remote/inet.cpp
|
||||
@@ -962,7 +962,7 @@ rem_port* INET_connect(const TEXT* name,
|
||||
gai_hints.ai_family = ((host.hasData() || !ipv6) ? AF_UNSPEC : AF_INET6);
|
||||
gai_hints.ai_socktype = SOCK_STREAM;
|
||||
|
||||
-#if !defined(WIN_NT) && !defined(__clang__)
|
||||
+#if !defined(WIN_NT) && !defined(__FreeBSD__) && !defined(__DragonFly__)
|
||||
gai_hints.ai_protocol = SOL_TCP;
|
||||
#else
|
||||
gai_hints.ai_protocol = IPPROTO_TCP;
|
||||
@@ -1176,6 +1176,12 @@ static rem_port* listener_socket(rem_port* port, USHOR
|
||||
setFastLoopbackOption(port);
|
||||
|
||||
inet_ports->registerPort(port);
|
||||
+
|
||||
+ char *parent_pid;
|
||||
+ if (parent_pid = getenv("FB_SIGNAL_PROCESS"))
|
||||
+ {
|
||||
+ kill(atoi(parent_pid), SIGUSR1);
|
||||
+ }
|
||||
|
||||
if (flag & SRVR_multi_client)
|
||||
{
|
||||
|
43
databases/firebird30-server/files/pkg-message.in
Normal file
43
databases/firebird30-server/files/pkg-message.in
Normal file
@ -0,0 +1,43 @@
|
||||
[
|
||||
{ type: install
|
||||
message: <<EOM
|
||||
Firebird 3 was installed.
|
||||
|
||||
1) Before start the server ensure that the following line exists in /etc/services:
|
||||
|
||||
gds_db 3050/tcp #InterBase Database Remote Protocol
|
||||
|
||||
2) If you use inetd (Classic Server) then add the following line to /etc/inetd.conf
|
||||
|
||||
gds_db stream tcp nowait firebird %%PREFIX%%/sbin/firebird firebird
|
||||
|
||||
And finally restart inetd.
|
||||
|
||||
3) If you want to use change firebird modes then you must modify the ServerMode
|
||||
variable into %%ETCDIR%%/firebird.conf file.
|
||||
|
||||
ServerMode="Super"
|
||||
# ServerMode="SuperClassic"
|
||||
# ServerMode="Classic"
|
||||
|
||||
4) It is STRONGLY recommended that you change the SYSDBA
|
||||
password with:
|
||||
|
||||
# gsec -user SYSDBA -pass masterkey
|
||||
GSEC> modify SYSDBA -pw newpassword
|
||||
GSEC> quit
|
||||
|
||||
before doing anything serious with Firebird.
|
||||
|
||||
5) See documentation in %%DOCSDIR%%/ for more information.
|
||||
|
||||
6) Some firebird tools were renamed for avoid conflicts with some other ports
|
||||
|
||||
%%PREFIX%%/bin/isql -> %%PREFIX%%/bin/isql-fb
|
||||
%%PREFIX%%/bin/gstat -> %%PREFIX%%/bin/fbstat
|
||||
%%PREFIX%%/bin/gsplit -> %%PREFIX%%/bin/fbsplit
|
||||
|
||||
6) Enjoy it ;)
|
||||
EOM
|
||||
}
|
||||
]
|
12
databases/firebird30-server/pkg-descr
Normal file
12
databases/firebird30-server/pkg-descr
Normal file
@ -0,0 +1,12 @@
|
||||
Firebird is a relational database offering many ANSI SQL-99 features
|
||||
that runs on Linux, Windows, and a variety of Unix platforms. Firebird
|
||||
offers excellent concurrency, high performance, and powerful language
|
||||
support for stored procedures and triggers. It has been used in
|
||||
production systems, under a variety of names since 1981.
|
||||
|
||||
Firebird is completely free of any registration, licensing or deployment
|
||||
fees. It may be deployed freely for use with any third-party software,
|
||||
whether commercial or not.
|
||||
|
||||
WWW: https://sourceforge.net/projects/firebird/
|
||||
WWW: http://www.firebirdsql.org/
|
41
databases/firebird30-server/pkg-install-server
Normal file
41
databases/firebird30-server/pkg-install-server
Normal file
@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
|
||||
PATH=/bin:/usr/bin:/usr/sbin
|
||||
|
||||
buildwarning() {
|
||||
cat <<EOF
|
||||
###############################################################################
|
||||
|
||||
** IMPORTANT **
|
||||
|
||||
If you want to cancel it, press ctrl-C now if you need check some things
|
||||
before of build it.
|
||||
|
||||
###############################################################################
|
||||
EOF
|
||||
sleep 5
|
||||
}
|
||||
|
||||
case $2 in
|
||||
PRE-INSTALL)
|
||||
buildwarning
|
||||
;;
|
||||
POST-INSTALL)
|
||||
cd /var/db/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 security3.fdb
|
||||
|
||||
;;
|
||||
|
||||
esac
|
43
databases/firebird30-server/pkg-plist
Normal file
43
databases/firebird30-server/pkg-plist
Normal file
@ -0,0 +1,43 @@
|
||||
bin/fb_lock_print
|
||||
bin/fbsplit
|
||||
bin/fbstat
|
||||
bin/fbsvcmgr
|
||||
bin/fbtracemgr
|
||||
bin/gbak
|
||||
bin/gfix
|
||||
bin/gsec
|
||||
bin/nbackup
|
||||
sbin/fbguard
|
||||
sbin/firebird
|
||||
@group firebird
|
||||
@sample %%ETCDIR%%/databases.conf.sample
|
||||
%%ETCDIR%%/fbtrace.conf
|
||||
@sample %%ETCDIR%%/plugins.conf.sample
|
||||
@sample %%ETCDIR%%/udr_engine.conf.sample
|
||||
lib/libib_util.so
|
||||
libexec/firebird/intl/fbintl.conf
|
||||
libexec/firebird/intl/libfbintl.so
|
||||
libexec/firebird/plugins/libEngine12.so
|
||||
libexec/firebird/plugins/libLegacy_Auth.so
|
||||
libexec/firebird/plugins/libLegacy_UserManager.so
|
||||
libexec/firebird/plugins/libSrp.so
|
||||
libexec/firebird/plugins/libfbtrace.so
|
||||
libexec/firebird/plugins/libudr_engine.so
|
||||
libexec/firebird/udf/fbudf.so
|
||||
libexec/firebird/udf/fbudf.sql
|
||||
libexec/firebird/udf/ib_udf.so
|
||||
libexec/firebird/udf/ib_udf.sql
|
||||
libexec/firebird/udf/ib_udf2.sql
|
||||
@group
|
||||
@owner firebird
|
||||
@group firebird
|
||||
/%%LOCALSTATEDIR%%/help/help.fdb
|
||||
%%EXAMPLESDIR%%/employee.fdb
|
||||
@sample /%%LOCALSTATEDIR%%/security3.fdb.sample
|
||||
@preunexec [ -s /%%LOCALSTATEDIR%%/firebird.log ] || rm -f /%%LOCALSTATEDIR%%/firebird.log
|
||||
@rmtry /%%LOCALSTATEDIR%%/isc_event1.`hostname`
|
||||
@rmtry /%%LOCALSTATEDIR%%/isc_init1.`hostname`
|
||||
@rmtry /%%LOCALSTATEDIR%%/isc_lock1.`hostname`
|
||||
@dir /%%LOCALSTATEDIR%%/help
|
||||
@dir /%%LOCALSTATEDIR%%
|
||||
@group
|
42
databases/firebird30-server/pkg-plist.client
Normal file
42
databases/firebird30-server/pkg-plist.client
Normal file
@ -0,0 +1,42 @@
|
||||
bin/gpre
|
||||
bin/isql-fb
|
||||
bin/qli
|
||||
%%ETCDIR%%/firebird.conf.sample
|
||||
include/firebird/FirebirdInterface.idl
|
||||
include/firebird/IdlFbInterfaces.h
|
||||
include/firebird/Interface.h
|
||||
include/firebird/Message.h
|
||||
include/firebird/UdrCppEngine.h
|
||||
include/firebird/impl/boost/preprocessor/arithmetic/dec.hpp
|
||||
include/firebird/impl/boost/preprocessor/arithmetic/inc.hpp
|
||||
include/firebird/impl/boost/preprocessor/cat.hpp
|
||||
include/firebird/impl/boost/preprocessor/config/config.hpp
|
||||
include/firebird/impl/boost/preprocessor/control/expr_if.hpp
|
||||
include/firebird/impl/boost/preprocessor/control/expr_iif.hpp
|
||||
include/firebird/impl/boost/preprocessor/control/if.hpp
|
||||
include/firebird/impl/boost/preprocessor/control/iif.hpp
|
||||
include/firebird/impl/boost/preprocessor/debug/error.hpp
|
||||
include/firebird/impl/boost/preprocessor/detail/auto_rec.hpp
|
||||
include/firebird/impl/boost/preprocessor/detail/dmc/auto_rec.hpp
|
||||
include/firebird/impl/boost/preprocessor/facilities/empty.hpp
|
||||
include/firebird/impl/boost/preprocessor/logical/bool.hpp
|
||||
include/firebird/impl/boost/preprocessor/repetition/detail/dmc/for.hpp
|
||||
include/firebird/impl/boost/preprocessor/repetition/detail/edg/for.hpp
|
||||
include/firebird/impl/boost/preprocessor/repetition/detail/for.hpp
|
||||
include/firebird/impl/boost/preprocessor/repetition/detail/msvc/for.hpp
|
||||
include/firebird/impl/boost/preprocessor/repetition/for.hpp
|
||||
include/firebird/impl/boost/preprocessor/seq/elem.hpp
|
||||
include/firebird/impl/boost/preprocessor/seq/for_each_i.hpp
|
||||
include/firebird/impl/boost/preprocessor/seq/seq.hpp
|
||||
include/firebird/impl/boost/preprocessor/seq/size.hpp
|
||||
include/firebird/impl/boost/preprocessor/tuple/eat.hpp
|
||||
include/firebird/impl/boost/preprocessor/tuple/elem.hpp
|
||||
include/firebird/impl/boost/preprocessor/tuple/rem.hpp
|
||||
include/ib_util.h
|
||||
include/ibase.h
|
||||
include/iberror.h
|
||||
include/perf.h
|
||||
lib/libfbclient.so
|
||||
lib/libfbclient.so.3
|
||||
lib/libfbclient.so.%%FIREBIRD_VERSION%%
|
||||
%%DATADIR%%/firebird.msg
|
Loading…
Reference in New Issue
Block a user