pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
firebird50, p5-DBD-Firebird: initial import of client library for Firebird
Module Name: pkgsrc-wip
Committed By: Bartosz Kuzma <bartosz.kuzma%gmail.com@localhost>
Pushed By: bartosz.kuzma
Date: Tue Jun 23 12:43:47 2026 +0200
Changeset: a55f3dee0dd031d91c777c1982dbaeebdbd457de
Modified Files:
Makefile
Added Files:
firebird50/DESCR
firebird50/Makefile
firebird50/PLIST
firebird50/TODO
firebird50/buildlink3.mk
firebird50/distinfo
firebird50/patches/patch-builds__install__arch-specific__netbsd__install_sh_in
firebird50/patches/patch-builds__posix__make_defaults
firebird50/patches/patch-configure
firebird50/patches/patch-src__common__common_h
firebird50/patches/patch-src__common__isc_sync_cpp
firebird50/patches/patch-src__common__utils_cpp
firebird50/patches/patch-src__remote__SockAddr_h
firebird50/patches/patch-src__remote__inet_cpp
p5-DBD-Firebird/DESCR
p5-DBD-Firebird/Makefile
p5-DBD-Firebird/PLIST
p5-DBD-Firebird/distinfo
p5-DBD-Firebird/patches/patch-Makefile.PL
Log Message:
firebird50, p5-DBD-Firebird: initial import of client library for Firebird
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=a55f3dee0dd031d91c777c1982dbaeebdbd457de
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 2 +
firebird50/DESCR | 5 ++
firebird50/Makefile | 50 ++++++++++++++++
firebird50/PLIST | 68 ++++++++++++++++++++++
firebird50/TODO | 3 +
firebird50/buildlink3.mk | 12 ++++
firebird50/distinfo | 13 +++++
...__install__arch-specific__netbsd__install_sh_in | 19 ++++++
.../patches/patch-builds__posix__make_defaults | 15 +++++
firebird50/patches/patch-configure | 40 +++++++++++++
firebird50/patches/patch-src__common__common_h | 40 +++++++++++++
firebird50/patches/patch-src__common__isc_sync_cpp | 28 +++++++++
firebird50/patches/patch-src__common__utils_cpp | 13 +++++
firebird50/patches/patch-src__remote__SockAddr_h | 26 +++++++++
firebird50/patches/patch-src__remote__inet_cpp | 24 ++++++++
p5-DBD-Firebird/DESCR | 2 +
p5-DBD-Firebird/Makefile | 20 +++++++
p5-DBD-Firebird/PLIST | 11 ++++
p5-DBD-Firebird/distinfo | 6 ++
p5-DBD-Firebird/patches/patch-Makefile.PL | 17 ++++++
20 files changed, 414 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index e88fd44fdd..60c58e0b5e 100644
--- a/Makefile
+++ b/Makefile
@@ -1007,6 +1007,7 @@ SUBDIR+= filevercmp
SUBDIR+= fim
SUBDIR+= findugendev
SUBDIR+= firebird
+SUBDIR+= firebird50
SUBDIR+= fireflysung-ttf
SUBDIR+= firefox-wrapper
SUBDIR+= firefox102
@@ -2918,6 +2919,7 @@ SUBDIR+= p5-Class-Date
SUBDIR+= p5-Config-YAML
SUBDIR+= p5-Crypt-CAST5
SUBDIR+= p5-Crypt-Serpent
+SUBDIR+= p5-DBD-Firebird
SUBDIR+= p5-DBD-Sybase
SUBDIR+= p5-DBIx-Class-ResultSet-RecursiveUpdate
SUBDIR+= p5-DBIx-Easy
diff --git a/firebird50/DESCR b/firebird50/DESCR
new file mode 100644
index 0000000000..1e58276935
--- /dev/null
+++ b/firebird50/DESCR
@@ -0,0 +1,5 @@
+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.
diff --git a/firebird50/Makefile b/firebird50/Makefile
new file mode 100644
index 0000000000..9f898ff620
--- /dev/null
+++ b/firebird50/Makefile
@@ -0,0 +1,50 @@
+# $NetBSD$
+#
+DISTNAME= Firebird-5.0.4.1812-0-source
+PKGNAME= firebird-5.0.4
+CATEGORIES= databases
+MASTER_SITES= ${MASTER_SITE_GITHUB:=FirebirdSQL/}
+GITHUB_PROJECT= firebird
+GITHUB_RELEASE= v5.0.4
+EXTRACT_SUFX= .tar.xz
+LICENSE= mpl-1.1
+
+MAINTAINER= bartosz.kuzma%gmail.com@localhost
+HOMEPAGE= https://www.firebirdsql.org/
+COMMENT= SQL database, opensource version of InterBase
+
+USE_LANGUAGES= c c++
+USE_LIBTOOL= yes
+USE_PKGLOCALEDIR= yes
+USE_TOOLS+= cmake gmake
+
+GNU_CONFIGURE= yes
+
+CONFIGURE_ARGS+= --enable-client-only \
+ --with-gnu-ld \
+ --with-fbmsg=${PREFIX}/share/firebird \
+ --sysconfdir=${PKG_SYSCONFDIR} \
+ --libexecdir=${PREFIX}/libexec
+
+.if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "i386"
+CXXFLAGS+= -msse4.2
+.endif
+
+INSTALLATION_DIRS= lib share/firebird
+
+do-install:
+ cp -R ${WRKSRC}/gen/Release/firebird/include \
+ ${DESTDIR}${PREFIX}
+ ${INSTALL_DATA} ${WRKSRC}/gen/Release/firebird/firebird.msg \
+ ${DESTDIR}${PREFIX}/share/firebird/
+ ${INSTALL_LIB} ${WRKSRC}/gen/Release/firebird/lib/libfbclient.so.5.0.4 \
+ ${DESTDIR}${PREFIX}/lib
+ ${LN} -s ${DESTDIR}${PREFIX}/lib/libfbclient.so.5.0.4 \
+ ${DESTDIR}${PREFIX}/lib/libfbclient.so.2
+ ${LN} -s ${DESTDIR}${PREFIX}/lib/libfbclient.so.5.0.4 \
+ ${DESTDIR}${PREFIX}/lib/libfbclient.so
+
+.include "../../devel/readline/buildlink3.mk"
+.include "../../security/libtomcrypt/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/firebird50/PLIST b/firebird50/PLIST
new file mode 100644
index 0000000000..3197761f39
--- /dev/null
+++ b/firebird50/PLIST
@@ -0,0 +1,68 @@
+@comment $NetBSD$
+include/firebird/FirebirdInterface.idl
+include/firebird/IdlFbInterfaces.h
+include/firebird/Interface.h
+include/firebird/Message.h
+include/firebird/TimeZones.h
+include/firebird/UdrCppEngine.h
+include/firebird/fb_c_api.h
+include/firebird/fb_c_api.hdr
+include/firebird/ib_util.h
+include/firebird/ibase.h
+include/firebird/iberror.h
+include/firebird/impl/blr.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/firebird/impl/consts_pub.h
+include/firebird/impl/dsc_pub.h
+include/firebird/impl/iberror_c.h
+include/firebird/impl/inf_pub.h
+include/firebird/impl/msg/all.h
+include/firebird/impl/msg/dsql.h
+include/firebird/impl/msg/dyn.h
+include/firebird/impl/msg/fbsvcmgr.h
+include/firebird/impl/msg/fbtracemgr.h
+include/firebird/impl/msg/gbak.h
+include/firebird/impl/msg/gfix.h
+include/firebird/impl/msg/gsec.h
+include/firebird/impl/msg/gstat.h
+include/firebird/impl/msg/isql.h
+include/firebird/impl/msg/jrd.h
+include/firebird/impl/msg/jrd_bugchk.h
+include/firebird/impl/msg/nbackup.h
+include/firebird/impl/msg/sqlerr.h
+include/firebird/impl/msg/sqlwarn.h
+include/firebird/impl/msg/utl.h
+include/firebird/impl/msg_helper.h
+include/firebird/impl/sqlda_pub.h
+include/firebird/impl/types_pub.h
+include/ib_util.h
+include/ibase.h
+include/iberror.h
+lib/libfbclient.so
+lib/libfbclient.so.2
+lib/libfbclient.so.${PKGVERSION}
+share/firebird/firebird.msg
diff --git a/firebird50/TODO b/firebird50/TODO
new file mode 100644
index 0000000000..92bfb95f0a
--- /dev/null
+++ b/firebird50/TODO
@@ -0,0 +1,3 @@
+- Client only due to missing implementation of
+ pthread_mutexattr_getpshared() and pthread_mutexattr_setpshared()
+- Tested only with p5-DBD-Firebird and Firebird 2.0.7 server
diff --git a/firebird50/buildlink3.mk b/firebird50/buildlink3.mk
new file mode 100644
index 0000000000..5d7c14e51c
--- /dev/null
+++ b/firebird50/buildlink3.mk
@@ -0,0 +1,12 @@
+# $NetBSD$
+
+BUILDLINK_TREE+= firebird
+
+.if !defined(FIREBIRD_BUILDLINK3_MK)
+FIREBIRD_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.firebird+= firebird>=5.0.4
+BUILDLINK_PKGSRCDIR.firebird?= ../../wip/firebird50
+.endif # FIREBIRD_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -firebird
diff --git a/firebird50/distinfo b/firebird50/distinfo
new file mode 100644
index 0000000000..d73146f895
--- /dev/null
+++ b/firebird50/distinfo
@@ -0,0 +1,13 @@
+$NetBSD: distinfo,v 1.11 2008/08/29 22:41:04 hoka_adam Exp $
+
+BLAKE2s (Firebird-5.0.4.1812-0-source.tar.xz) = 40add0e366dfc2b6528b20f3fd5f5d9922420d5dd18092d8aa358a1170028460
+SHA512 (Firebird-5.0.4.1812-0-source.tar.xz) = b0680584487b8f25c11ed6ee8cc7df67494f2aceb341e368054743eafd20b6d00e83d4e70733d028751c6830bf772d8e79953ff075628833718600d7e5827540
+Size (Firebird-5.0.4.1812-0-source.tar.xz) = 29758832 bytes
+SHA1 (patch-builds__install__arch-specific__netbsd__install_sh_in) = 132f2e3c4b0c58966181854d3ad728c991190cbf
+SHA1 (patch-builds__posix__make_defaults) = c2e17b5d8c8da91d444d9c69d33f2126b3ec194b
+SHA1 (patch-configure) = e9efff3560ced4bcf14c0b6a0e7994dffbe84aa1
+SHA1 (patch-src__common__common_h) = 1037c27568933148b7ab5aab8cbbffba739c1857
+SHA1 (patch-src__common__isc_sync_cpp) = bef07c34617a0f5721b6d8406b1845fad059c52c
+SHA1 (patch-src__common__utils_cpp) = a38123528cf98cf8265dd7a7bc9ab05b35548101
+SHA1 (patch-src__remote__SockAddr_h) = 7658ef900604e1370c1250ceef18a9e1228d8fd9
+SHA1 (patch-src__remote__inet_cpp) = 76c54540702acb4975a7ef2d2bc8d87db53f337c
diff --git a/firebird50/patches/patch-builds__install__arch-specific__netbsd__install_sh_in b/firebird50/patches/patch-builds__install__arch-specific__netbsd__install_sh_in
new file mode 100644
index 0000000000..196d0520c5
--- /dev/null
+++ b/firebird50/patches/patch-builds__install__arch-specific__netbsd__install_sh_in
@@ -0,0 +1,19 @@
+$NetBSD$
+
+--- builds/install/arch-specific/netbsd/install.sh.in.orig 2026-02-18 04:16:23.500440752 +0000
++++ builds/install/arch-specific/netbsd/install.sh.in
+@@ -55,14 +55,6 @@ InstallFirebirdPrefix=@prefix@
+ InstallPrefix=${InstallFirebirdPrefix%/firebird}
+ unset InstallFirebirdPrefix
+
+-if [ -d @prefix@ ]; then
+- echo Backing up @prefix@ to $InstallPrefix/firebird.old
+- if [ -d $InstallPrefix/firebird.old ]; then
+- rm -rf $InstallPrefix/firebird.old
+- fi
+- cp -Rp @prefix@ $InstallPrefix/firebird.old
+-fi
+-
+ if [ `id -u` -ne 0 ]; then
+ echo; echo "You must be root to run this step!"; echo; echo
+ exit 1
diff --git a/firebird50/patches/patch-builds__posix__make_defaults b/firebird50/patches/patch-builds__posix__make_defaults
new file mode 100644
index 0000000000..40e0f3dfb8
--- /dev/null
+++ b/firebird50/patches/patch-builds__posix__make_defaults
@@ -0,0 +1,15 @@
+$NetBSD$
+
+--- builds/posix/make.defaults.orig 2026-02-18 04:06:43.566366223 +0000
++++ builds/posix/make.defaults
+@@ -207,8 +207,8 @@ ifeq ($(PLATFORM),DARWIN)
+ LIB_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS)
+ EXE_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS)
+ else
+-LIB_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS) -static-libstdc++
+-EXE_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS) -static-libstdc++
++LIB_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS)
++EXE_LINK = $(CXX) $(GLOB_OPTIONS) $(CXXFLAGS) $(WLDFLAGS)
+ endif
+
+ STATICLIB_LINK = $(AR) crus
diff --git a/firebird50/patches/patch-configure b/firebird50/patches/patch-configure
new file mode 100644
index 0000000000..357ec3d60b
--- /dev/null
+++ b/firebird50/patches/patch-configure
@@ -0,0 +1,40 @@
+$NetBSD$
+
+--- configure.orig 2025-08-10 08:47:13.170088793 +0000
++++ configure
+@@ -24210,7 +24210,7 @@ ac_config_files="$ac_config_files gen/$f
+ if test "$CLIENT_ONLY_FLG" = "N"; then
+ ac_config_files="$ac_config_files gen/$fb_tgt/firebird/databases.conf:builds/install/misc/databases.conf gen/$fb_tgt/firebird/fbtrace.conf:src/utilities/ntrace/fbtrace.conf gen/$fb_tgt/firebird/replication.conf:builds/install/misc/replication.conf"
+
+-if test "x$fb_tgt" != "xNative" && [[ x$CROSS = xandroid* ]]; then
++if test "x$fb_tgt" != "xNative" && [ x$(echo $CROSS | cut -c 1-7) = xandroid ]; then
+ ac_config_files="$ac_config_files gen/$fb_tgt/firebird/fbintl.conf:builds/install/misc/fbintl.conf"
+
+ else
+@@ -24225,7 +24225,7 @@ ac_config_files="$ac_config_files gen/ma
+
+ fi
+
+-if [[ x$CROSS != xandroid* ]]; then
++if [ x$(echo $CROSS | cut -c 1-7) != xandroid ]; then
+ ac_config_files="$ac_config_files gen/Release/firebird/bin/fb_config:builds/install/posix-common/fb_config.in gen/Release/firebird/bin/posixLibrary.sh:builds/install/posix-common/posixLibrary.sh.in gen/Release/firebird/bin/install.sh:builds/install/posix-common/install.sh.in gen/Release/firebird/bin/FirebirdUninstall.sh:builds/install/posix-common/FirebirdUninstall.sh.in gen/Release/firebird/bin/changeServerMode.sh:builds/install/posix-common/changeServerMode.sh.in gen/Release/firebird/bin/registerDatabase.sh:builds/install/posix-common/registerDatabase.sh.in"
+
+ fi
+@@ -24243,7 +24243,7 @@ case "$PLATFORM" in
+ ac_config_files="$ac_config_files gen/install/makeInstallImage.sh:builds/install/arch-specific/linux/makeInstallImage.sh.in gen/install/misc/firebird.init.d.generic:builds/install/arch-specific/linux/firebird.init.d.generic.in gen/install/misc/firebird.init.d.mandrake:builds/install/arch-specific/linux/firebird.init.d.mandrake.in gen/install/misc/firebird.init.d.suse:builds/install/arch-specific/linux/firebird.init.d.suse.in gen/install/misc/firebird.init.d.debian:builds/install/arch-specific/linux/firebird.init.d.debian.in gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/firebird.init.d.gentoo.in gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/firebird.init.d.slackware.in gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/rc.config.firebird.in gen/install/misc/firebird.service:builds/install/arch-specific/linux/firebird.service.in"
+
+
+- if [[ x$CROSS != xandroid* ]]; then
++ if [ x$(echo $CROSS | cut -c 1-7) != xandroid ]; then
+ ac_config_files="$ac_config_files gen/Release/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/linuxLibrary.sh.in"
+
+ fi
+@@ -25385,7 +25385,7 @@ for fb_tgt in \$FB_TARGETS; do
+ echo "Creating \$fb_tgt directories"
+
+
+- if test "x\$fb_tgt" = "xNative" || [[ x$CROSS != xandroid* ]]; then
++ if test "x\$fb_tgt" = "xNative" || [ x$(echo $CROSS | cut -c 1-7) != xandroid ]; then
+ mkdir -p gen/\$fb_tgt/firebird/bin
+ mkdir -p gen/\$fb_tgt/firebird/lib
+ mkdir -p gen/\$fb_tgt/firebird/tests
diff --git a/firebird50/patches/patch-src__common__common_h b/firebird50/patches/patch-src__common__common_h
new file mode 100644
index 0000000000..f0c3bbaa4c
--- /dev/null
+++ b/firebird50/patches/patch-src__common__common_h
@@ -0,0 +1,40 @@
+$NetBSD$
+
+--- src/common/common.h.orig 2025-08-10 04:35:07.925119400 +0000
++++ src/common/common.h
+@@ -323,19 +323,19 @@
+ #define FB_OS OsNetBsd
+ #define FB_CC CcGcc
+
+-#if defined(__i386__)
+-
++#define UNIX
+ #define IEEE
++
++/* TODO */
++#if defined(__i386__)
+ #define I386
+ #define FB_CPU CpuIntel
+-
+-#define QUADFORMAT "ll"
+-#define QUADCONST(n) (n##LL)
+ #else /* !__i386__ */
+-#error Please add support for other ports
++#define FB_CPU CpuAmd
+ #endif
+
+-#define UNIX
++#define QUADFORMAT "ll"
++#define QUADCONST(n) (n##LL)
+ #define NO_NFS /* no MTAB_OPEN or MTAB_CLOSE in isc_file.c */
+
+ #endif /* NETBSD */
+@@ -348,7 +348,7 @@
+
+ #define NO_NFS /* no MTAB_OPEN or MTAB_CLOSE in isc_file.c */
+
+-#endif /* NETBSD */
++#endif /* ANDROID */
+
+
+ /*****************************************************
diff --git a/firebird50/patches/patch-src__common__isc_sync_cpp b/firebird50/patches/patch-src__common__isc_sync_cpp
new file mode 100644
index 0000000000..4f6deb9386
--- /dev/null
+++ b/firebird50/patches/patch-src__common__isc_sync_cpp
@@ -0,0 +1,28 @@
+$NetBSD$
+
+--- src/common/isc_sync.cpp.orig 2025-08-10 08:15:38.243745665 +0000
++++ src/common/isc_sync.cpp
+@@ -622,8 +622,10 @@ int SharedMemoryBase::eventInit(event_t*
+ #ifdef PTHREAD_PROCESS_SHARED
+ if (!isSandboxed())
+ {
++#ifndef __NetBSD__
+ PTHREAD_ERROR(pthread_mutexattr_setpshared(&mattr, PTHREAD_PROCESS_SHARED));
+ PTHREAD_ERROR(pthread_condattr_setpshared(&cattr, PTHREAD_PROCESS_SHARED));
++#endif
+ }
+ #else
+ #error Your system must support PTHREAD_PROCESS_SHARED to use firebird.
+@@ -1401,8 +1403,11 @@ SharedMemoryBase::SharedMemoryBase(const
+
+ PTHREAD_ERR_RAISE(pthread_mutexattr_init(&mattr));
+ #ifdef PTHREAD_PROCESS_SHARED
+- if (!isSandboxed())
++ if (!isSandboxed()) {
++#ifndef __NetBSD__
+ PTHREAD_ERR_RAISE(pthread_mutexattr_setpshared(&mattr, PTHREAD_PROCESS_SHARED));
++#endif
++ }
+ #else
+ #error Your system must support PTHREAD_PROCESS_SHARED to use pthread shared futex in Firebird.
+ #endif
diff --git a/firebird50/patches/patch-src__common__utils_cpp b/firebird50/patches/patch-src__common__utils_cpp
new file mode 100644
index 0000000000..f199c3e276
--- /dev/null
+++ b/firebird50/patches/patch-src__common__utils_cpp
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- src/common/utils.cpp.orig 2025-08-10 05:34:10.521870398 +0000
++++ src/common/utils.cpp
+@@ -1047,7 +1047,7 @@ SINT64 query_performance_counter()
+
+ // Use high-resolution clock
+ struct timespec tp;
+- if (clock_gettime(CLOCK_MONOTONIC_RAW, &tp) != 0)
++ if (clock_gettime(CLOCK_MONOTONIC, &tp) != 0)
+ return 0;
+
+ return static_cast<SINT64>(tp.tv_sec) * BILLION + tp.tv_nsec;
diff --git a/firebird50/patches/patch-src__remote__SockAddr_h b/firebird50/patches/patch-src__remote__SockAddr_h
new file mode 100644
index 0000000000..5d6799969e
--- /dev/null
+++ b/firebird50/patches/patch-src__remote__SockAddr_h
@@ -0,0 +1,26 @@
+$NetBSD$
+
+--- src/remote/SockAddr.h.orig 2025-08-09 04:35:37.575900839 +0000
++++ src/remote/SockAddr.h
+@@ -112,11 +112,13 @@ public:
+
+ #define AF_INET6_POSIX 10
+ #define AF_INET6_WINDOWS 23
++#define AF_INET6_NETBSD 24
+ #define AF_INET6_FREEBSD 28
+ #define AF_INET6_DARWIN 30
+
+ #if AF_INET6 == AF_INET6_POSIX
+ #elif AF_INET6 == AF_INET6_WINDOWS
++#elif AF_INET6 == AF_INET6_NETBSD
+ #elif AF_INET6 == AF_INET6_FREEBSD
+ #elif AF_INET6 == AF_INET6_DARWIN
+ #else
+@@ -133,6 +135,7 @@ inline void SockAddr::checkAndFixFamily(
+
+ case AF_INET6_POSIX:
+ case AF_INET6_WINDOWS:
++ case AF_INET6_NETBSD:
+ case AF_INET6_FREEBSD:
+ case AF_INET6_DARWIN:
+ data.sock.sa_family = AF_INET6;
diff --git a/firebird50/patches/patch-src__remote__inet_cpp b/firebird50/patches/patch-src__remote__inet_cpp
new file mode 100644
index 0000000000..1de59357cd
--- /dev/null
+++ b/firebird50/patches/patch-src__remote__inet_cpp
@@ -0,0 +1,24 @@
+$NetBSD$
+
+--- src/remote/inet.cpp.orig 2025-08-09 04:39:17.218907549 +0000
++++ src/remote/inet.cpp
+@@ -97,6 +97,10 @@
+
+ #endif // !WIN_NT
+
++#if !defined(SOL_TCP) && defined(IPPROTO_TCP)
++#define SOL_TCP IPPROTO_TCP
++#endif
++
+ const int INET_RETRY_CALL = 5;
+
+ #include "../remote/remote.h"
+@@ -967,7 +971,7 @@ rem_port* INET_connect(const TEXT* name,
+ #endif
+
+ gai_hints.ai_flags =
+-#ifndef ANDROID
++#ifdef AI_V4MAPPED
+ ((af == AF_UNSPEC) ? AI_V4MAPPED : 0) |
+ #endif
+ AI_ADDRCONFIG | (packet ? 0 : AI_PASSIVE);
diff --git a/p5-DBD-Firebird/DESCR b/p5-DBD-Firebird/DESCR
new file mode 100644
index 0000000000..e5bc7c5ab3
--- /dev/null
+++ b/p5-DBD-Firebird/DESCR
@@ -0,0 +1,2 @@
+DBD::Firebird is a Perl module which works with the
+DBI module to provide access to Firebird databases.
diff --git a/p5-DBD-Firebird/Makefile b/p5-DBD-Firebird/Makefile
new file mode 100644
index 0000000000..40eb453f40
--- /dev/null
+++ b/p5-DBD-Firebird/Makefile
@@ -0,0 +1,20 @@
+# $NetBSD$
+
+DISTNAME= DBD-Firebird-1.39
+PKGNAME= p5-${DISTNAME}
+CATEGORIES= databases
+MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=DBD/}
+
+MAINTAINER= bartosz.kuzma%gmail.com@localhost
+HOMEPAGE= https://metacpan.org/pod/DBD::Firebird
+COMMENT= DBI driver for Firebird RDBMS server
+LICENSE= ${PERL5_LICENSE}
+
+DEPENDS= p5-File-Which-[0-9]*:../../devel/p5-File-Which
+
+MAKE_ENV+= FIREBIRD_INCLUDE=${PREFIX}/include
+
+.include "../../lang/perl5/module.mk"
+.include "../../databases/p5-DBI/buildlink3.mk"
+.include "../../wip/firebird50/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/p5-DBD-Firebird/PLIST b/p5-DBD-Firebird/PLIST
new file mode 100644
index 0000000000..40db5cc8ae
--- /dev/null
+++ b/p5-DBD-Firebird/PLIST
@@ -0,0 +1,11 @@
+@comment $NetBSD$
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird.pm
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird/GetInfo.pm
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird/TableInfo.pm
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird/TableInfo/Basic.pm
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird/TableInfo/Firebird21.pm
+${PERL5_SUB_INSTALLVENDORARCH}/DBD/Firebird/TypeInfo.pm
+${PERL5_SUB_INSTALLVENDORARCH}/auto/DBD/Firebird/.packlist
+${PERL5_SUB_INSTALLVENDORARCH}/auto/DBD/Firebird/Firebird.so
+${PERL5_SUB_INSTALLVENDORMAN3DIR}/DBD::Firebird.3
+${PERL5_SUB_INSTALLVENDORMAN3DIR}/DBD::Firebird::TableInfo::Basic.3
diff --git a/p5-DBD-Firebird/distinfo b/p5-DBD-Firebird/distinfo
new file mode 100644
index 0000000000..adf02d54a7
--- /dev/null
+++ b/p5-DBD-Firebird/distinfo
@@ -0,0 +1,6 @@
+$NetBSD$
+
+BLAKE2s (DBD-Firebird-1.39.tar.gz) = 6e8a88eb615a6099acf4d7226d0677309c7864cd70239eb90c1c6b246bb729cd
+SHA512 (DBD-Firebird-1.39.tar.gz) = 5902fc7bed25f67fdec70709b9853752a25f18405a8ebf307531502e309c888068fc58c962353b46041295cce92534a8e517de56da4c98f2bc8ea03fe1b0b32b
+Size (DBD-Firebird-1.39.tar.gz) = 109753 bytes
+SHA1 (patch-Makefile.PL) = bfe06633fbd9c73771a7a9b44db3097fefd10825
diff --git a/p5-DBD-Firebird/patches/patch-Makefile.PL b/p5-DBD-Firebird/patches/patch-Makefile.PL
new file mode 100644
index 0000000000..6050f0113c
--- /dev/null
+++ b/p5-DBD-Firebird/patches/patch-Makefile.PL
@@ -0,0 +1,17 @@
+$NetBSD$
+
+NetBSD support
+
+--- Makefile.PL.orig 2026-06-23 06:29:57.969257022 +0000
++++ Makefile.PL
+@@ -291,6 +291,10 @@ SWITCH: {
+ $MakeParams{LIBS} = "-L$FB::LIB -l$client_lib ";
+ last SWITCH;
+ };
++ $os eq 'netbsd' && do {
++ $MakeParams{LIBS} = "-L$FB::LIB -l$client_lib ";
++ last SWITCH;
++ };
+ $os eq 'darwin' && do {
+ my $framework_dir = dirname $FB::HOME; #"/Library/Frameworks/Firebird.framework";
+ my $framework_name = File::Spec->catfile( $framework_dir, "Firebird");
Home |
Main Index |
Thread Index |
Old Index