diff --git a/databases/firebird30-server/Makefile b/databases/firebird30-server/Makefile index 31ca0ea05725..dbe2740e02a7 100644 --- a/databases/firebird30-server/Makefile +++ b/databases/firebird30-server/Makefile @@ -1,200 +1,198 @@ PORTNAME= firebird -PORTVERSION= 3.0.11 +DISTVERSION= 3.0.12 CATEGORIES?= databases MASTER_SITES= https://github.com/FirebirdSQL/${PORTNAME}/releases/download/v${PORTVERSION}/ PKGNAMESUFFIX?= ${PORTVERSION:R:S/.//}-server -DISTNAME= ${PORTNAME:S/f/F/}-${PORTVERSION}.33703-0 +DISTNAME= ${PORTNAME:S/f/F/}-${PORTVERSION}.33787-0 DIST_SUBDIR= ${PORTNAME} MAINTAINER= acm@FreeBSD.org COMMENT?= Firebird-3 relational database (server) WWW= https://www.firebirdsql.org/ 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= firebird40 USES= cpe gmake pkgconfig localbase:ldflags libedit tar:bzip2 USE_CXXSTD= gnu++03 GNU_CONFIGURE= yes MAKE_JOBS_UNSAFE= yes CPE_VENDOR= firebirdsql 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= -fno-delete-null-pointer-checks # 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 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 -BROKEN= Fails to build with ICU 76.1 - CONFIGURE_ARGS+= --with-system-editline CONFIGURE_ENV+= ac_cv_lib_edit_readline="yes" USE_LDCONFIG= yes CLIENT_BIN= gpre isql-fb qli CLIENT_HEADER= ib_util.h ibase.h iberror.h 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 .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}/gen/Release/firebird/include/!} ${STAGEDIR}${PREFIX}/include @cd ${WRKSRC}/gen/Release/firebird/include/firebird && \ ${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${PREFIX}/include/firebird/{}" \; @cd ${WRKSRC}/gen/Release/firebird/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 diff --git a/databases/firebird30-server/distinfo b/databases/firebird30-server/distinfo index 763e6ad40185..e03b88e83476 100644 --- a/databases/firebird30-server/distinfo +++ b/databases/firebird30-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1705644395 -SHA256 (firebird/Firebird-3.0.11.33703-0.tar.bz2) = c716fc1c788ed614050f5469e1ba0ff442c2f1f7b907a2c808a8bac1dc3d6f83 -SIZE (firebird/Firebird-3.0.11.33703-0.tar.bz2) = 13066796 +TIMESTAMP = 1742902536 +SHA256 (firebird/Firebird-3.0.12.33787-0.tar.bz2) = 85b2bf0dd8f71d4814e077fac3f4dcb3015f4b4eaa76ffa0e7549f216602811f +SIZE (firebird/Firebird-3.0.12.33787-0.tar.bz2) = 13324704 diff --git a/databases/firebird30-server/files/patch-builds_posix_make.defaults b/databases/firebird30-server/files/patch-builds_posix_make.defaults index 79982d81f157..5ac7fc1044dd 100644 --- a/databases/firebird30-server/files/patch-builds_posix_make.defaults +++ b/databases/firebird30-server/files/patch-builds_posix_make.defaults @@ -1,64 +1,73 @@ ---- builds/posix/make.defaults.orig 2022-06-07 08:18:52 UTC +--- builds/posix/make.defaults.orig 2024-08-08 09:26:44 UTC +++ builds/posix/make.defaults -@@ -134,7 +134,7 @@ CAS_OPTIONS=@CAS_OPTIONS@ +@@ -102,7 +102,7 @@ GLOB_OPTIONS:= + #____________________________________________________________________________ + + # Firebird needs no RTTI +-RTTI_FLAG:= -fno-rtti ++RTTI_FLAG:= -fno-rtti -DU_SHOW_CPLUSPLUS_API=0 -DU_SHOW_CPLUSPLUS_HEADER_API=0 + + # If this is defined then we use special rules useful for developers only + IsDeveloper = @DEVEL_FLG@ +@@ -134,7 +134,7 @@ MATHLIB=@MATHLIB@ 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 @@ RM_R= rm -rf +@@ -144,7 +144,7 @@ CHMOD_7= chmod 777 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 @@ vpath %.dll $(LIB) +@@ -219,7 +219,7 @@ LibraryFullName=$(LibraryFileName).${SHRLIB_EXT}.${Fir #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 @@ LIBFBINTL_SO = $(FB_BUILD)/intl/$(LIB_PREFIX)fbintl.$( +@@ -240,7 +240,7 @@ ifeq ($(EDITLINE_FLG),Y) 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 @@ CREATE_DB = $(RBIN)/create_db$(EXEC_EXT) +@@ -362,7 +362,7 @@ FBTRACEMGR = $(BIN)/fbtracemgr$(EXEC_EXT) 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 @@ SECURITY_FDB = $(FIREBIRD)/security3.fdb +@@ -383,13 +383,13 @@ QLI = $(BIN)/qli$(EXEC_EXT) 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) diff --git a/databases/firebird30-server/files/patch-src_remote_inet.cpp b/databases/firebird30-server/files/patch-src_remote_inet.cpp index 269a80fd8457..ab24e5fdb44f 100644 --- a/databases/firebird30-server/files/patch-src_remote_inet.cpp +++ b/databases/firebird30-server/files/patch-src_remote_inet.cpp @@ -1,24 +1,24 @@ ---- src/remote/inet.cpp.orig 2022-06-07 08:18:52 UTC +--- src/remote/inet.cpp.orig 2024-08-08 09:26:45 UTC +++ src/remote/inet.cpp @@ -960,7 +960,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; -@@ -1174,6 +1174,12 @@ static rem_port* listener_socket(rem_port* port, USHOR +@@ -1175,6 +1175,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) {