aboutsummaryrefslogtreecommitdiffstats
path: root/databases/firebird-server
diff options
context:
space:
mode:
authorskv <skv@FreeBSD.org>2005-05-23 19:13:23 +0800
committerskv <skv@FreeBSD.org>2005-05-23 19:13:23 +0800
commit13d3d3c4032c3778bd51f4b70295eab0b85427e5 (patch)
treea15214d2beac44009894b7c54b3183e5824aeba3 /databases/firebird-server
parentbf2ff73b4b377baa19ef1776f7aa649959d10542 (diff)
downloadfreebsd-ports-gnome-13d3d3c4032c3778bd51f4b70295eab0b85427e5.tar.gz
freebsd-ports-gnome-13d3d3c4032c3778bd51f4b70295eab0b85427e5.tar.zst
freebsd-ports-gnome-13d3d3c4032c3778bd51f4b70295eab0b85427e5.zip
Unbreak firebird-client (firebird-server seems to be still broken):
* fix patch-src::jrd::gds.cpp * use "libdata/firebird" for *.msg * install all *.msg files (not only firebird.msg) * fix pkg-plist * use more strict permissions * use INSTALL_DATA instead of INSTALL_PROGRAM to install shared libs and similar files * clean Makefile * update RELNOTES PR: ports/81363 Submitted by: skv Approved by: maintainer
Diffstat (limited to 'databases/firebird-server')
-rw-r--r--databases/firebird-server/Makefile70
-rw-r--r--databases/firebird-server/files/RELNOTES4
-rw-r--r--databases/firebird-server/files/patch-src::jrd::gds.cpp20
-rw-r--r--databases/firebird-server/pkg-plist2
-rw-r--r--databases/firebird-server/pkg-plist.client7
5 files changed, 52 insertions, 51 deletions
diff --git a/databases/firebird-server/Makefile b/databases/firebird-server/Makefile
index 6d800a8bdd19..1cb4d6faf078 100644
--- a/databases/firebird-server/Makefile
+++ b/databases/firebird-server/Makefile
@@ -7,7 +7,7 @@
PORTNAME?= firebird
PORTVERSION= 1.5.2
-PORTREVISION= 1
+PORTREVISION?= 2
CATEGORIES?= databases
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR=firebird
@@ -49,10 +49,8 @@ ALL_TARGET= firebird_boot ref_databases msgs intl otherfiles \
inet_server extlib
# Use own user and group when install server part
-BINOWN= firebird
BINGRP= firebird
BINMODE= 550
-SHAREOWN= firebird
SHAREGRP= firebird
SUB_FILES= pkg-install pkg-message aliases.conf
@@ -60,6 +58,10 @@ SUB_FILES= pkg-install pkg-message aliases.conf
PKGMESSAGE= ${WRKDIR}/pkg-message
PKGINSTALL= ${WRKDIR}/pkg-install
+SERVER_BIN= fb_inet_server fb_lock_mgr
+UDF_SO= ib_udf.so fbudf.so
+UDF_SQL= src/extlib/ib_udf.sql src/extlib/fbudf/fbudf.sql
+
CONFLICTS= firebird-devel-[0-9]*
.else
# Client part stuff
@@ -70,6 +72,9 @@ ALL_TARGET= firebird_basic libfbembed embed_gfix embed_gbak embed_isql embed_gpr
embed_util embed_gdef embed_qli libfbclient extlib
INSTALLS_SHLIB= yes
+LIBDATADIR= ${PREFIX}/libdata/firebird
+PLIST_SUB+= LIBDATADIR="libdata/firebird"
+CLIENT_BIN= fb_lock_print gbak gdef gds_drop gfix gpre gsec gstat isql qli
.if !defined(NOPORTDOCS)
PORTDOCS= *
@@ -99,7 +104,7 @@ post-patch:
@${REINPLACE_CMD} -e 's|^\(LINK_OPTS +=.*\)$$|\1 -L${LOCALBASE}/lib|' \
${WRKSRC}/builds/posix/Makefile.in.inet_server
.endif
- @${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}|g' \
+ @${REINPLACE_CMD} -e 's|%%LIBDATADIR%%|${LIBDATADIR}|g' \
${WRKSRC}/src/jrd/gds.cpp
.if !defined(CLIENT_ONLY)
@@ -129,41 +134,35 @@ do-install:
.if !defined(CLIENT_ONLY)
${MKDIR} ${PREFIX}/firebird
- ${CHOWN} ${BINOWN}:${BINGRP} ${PREFIX}/firebird
-
.for f in UDF bin help intl
${MKDIR} ${PREFIX}/firebird/${f}
${CHOWN} ${BINOWN}:${BINGRP} ${PREFIX}/firebird/${f}
.endfor
${INSTALL_DATA} ${WRKDIR}/aliases.conf ${PREFIX}/firebird/aliases.conf.sample
- ${INSTALL_DATA} ${WRKSRC}/gen/firebird/security.fdb ${PREFIX}/firebird/security.fdb.sample
- ${CHMOD} 660 ${PREFIX}/firebird/security.fdb.sample
+ ${INSTALL_DATA} -m 660 -o firebird ${WRKSRC}/gen/firebird/security.fdb \
+ ${PREFIX}/firebird/security.fdb.sample
+ ${INSTALL_DATA} -m 0440 ${WRKSRC}/gen/firebird/help/help.fdb ${PREFIX}/firebird/help
- ${INSTALL_DATA} ${WRKSRC}/gen/firebird/help/help.fdb ${PREFIX}/firebird/help
-
-.for f in ib_udf.so fbudf.so
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/UDF/${f} ${PREFIX}/firebird/UDF
-.endfor
+ ${INSTALL_DATA} ${UDF_SO:S!^!${WRKSRC}/gen/firebird/UDF/!} \
+ ${UDF_SQL:S!^!${WRKSRC}/!} ${PREFIX}/firebird/UDF
-.for f in src/extlib/ib_udf.sql src/extlib/fbudf/fbudf.sql
- ${INSTALL_SCRIPT} ${WRKSRC}/${f} ${PREFIX}/firebird/UDF
-.endfor
-
-.for f in fb_inet_server fb_lock_mgr
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/bin/${f} ${PREFIX}/firebird/bin
- ${CHMOD} u+s ${PREFIX}/firebird/bin/${f}
-.endfor
+ ${INSTALL_PROGRAM} -o firebird \
+ ${SERVER_BIN:S!^!${WRKSRC}/gen/firebird/bin/!} ${PREFIX}/firebird/bin
+ ${CHMOD} u+s ${SERVER_BIN:S!^!${PREFIX}/firebird/bin/!}
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/intl/libfbintl.so ${PREFIX}/firebird/intl/fbintl
+ ${INSTALL_DATA} ${WRKSRC}/gen/firebird/intl/libfbintl.so ${PREFIX}/firebird/intl/fbintl
${INSTALL_DATA} ${FILESDIR}/RELNOTES ${PREFIX}/firebird
-.else
+ # runtime files (.lock, .log) still placed to ${PREFIX}/firebird
+ ${CHOWN} firebird:firebird ${PREFIX}/firebird
+ ${CHOWN} -R firebird:firebird ${PREFIX}/firebird/help
-.for f in fb_lock_print gbak gdef gds_drop gfix gpre gsec gstat isql qli
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/bin/${f} ${PREFIX}/bin
-.endfor
+.else
+# defined CLIENT_ONLY
+ ${INSTALL_PROGRAM} ${CLIENT_BIN:S!^!${WRKSRC}/gen/firebird/bin/!} \
+ ${PREFIX}/bin
@${MKDIR} ${PREFIX}/etc
.if !exists(${PREFIX}/etc/firebird.conf)
@@ -171,34 +170,33 @@ do-install:
.endif
${INSTALL_DATA} ${WRKSRC}/gen/firebird/misc/firebird.conf ${PREFIX}/etc/firebird.conf.sample
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/lib/libfbclient.so.${PORTVERSION} ${PREFIX}/lib
+ ${INSTALL_DATA} ${WRKSRC}/gen/firebird/lib/libib_util.so \
+ ${WRKSRC}/gen/firebird/lib/libfbclient.so.${PORTVERSION} \
+ ${WRKSRC}/gen/firebird/lib/libfbembed.so.${PORTVERSION} \
+ ${PREFIX}/lib
+
${LN} -fs libfbclient.so.${PORTVERSION} ${PREFIX}/lib/libfbclient.so.1
${LN} -fs libfbclient.so.1 ${PREFIX}/lib/libfbclient.so
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/lib/libfbembed.so.${PORTVERSION} ${PREFIX}/lib
${LN} -fs libfbembed.so.${PORTVERSION} ${PREFIX}/lib/libfbembed.so.1
${LN} -fs libfbembed.so.1 ${PREFIX}/lib/libfbembed.so
-
${LN} -fs libfbembed.so.1 ${PREFIX}/lib/libgds.so.1
${LN} -fs libfbembed.so.1 ${PREFIX}/lib/libgds.so
- ${INSTALL_PROGRAM} ${WRKSRC}/gen/firebird/lib/libib_util.so ${PREFIX}/lib
-
@${MKDIR} ${PREFIX}/include
${INSTALL_DATA} ${WRKSRC}/gen/firebird/include/*.h ${PREFIX}/include
- @${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/gen/firebird/firebird.msg ${DATADIR}
+ @${MKDIR} ${LIBDATADIR}
+ ${INSTALL_DATA} ${WRKSRC}/gen/firebird/*.msg ${LIBDATADIR}
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}/sql.extensions
- ${INSTALL_DATA} ${WRKSRC}/doc/WhatsNew ${DOCSDIR}
- ${INSTALL_DATA} ${WRKSRC}/doc/README.* ${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/doc/WhatsNew ${WRKSRC}/doc/README.* ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/doc/README.user ${DOCSDIR}/README
${INSTALL_DATA} ${WRKSRC}/doc/sql.extensions/README.* ${DOCSDIR}/sql.extensions
.endif
- # Install examples
+ @${ECHO_MSG} "===> Installing examples for ${PKGNAME}"
@${MKDIR} ${EXAMPLESDIR}
${INSTALL_DATA} ${WRKSRC}/gen/firebird/examples/v5/* ${EXAMPLESDIR}
.endif
diff --git a/databases/firebird-server/files/RELNOTES b/databases/firebird-server/files/RELNOTES
index 818320129f53..0af872b2d234 100644
--- a/databases/firebird-server/files/RELNOTES
+++ b/databases/firebird-server/files/RELNOTES
@@ -1,6 +1,6 @@
-Firebird 1.5.1 FreeBSD Release Notes 19-Jul-2004
+Firebird 1.5.2 FreeBSD Release Notes
--------------------------------------
-FB-V1.5.1.4481 Firebird 1.5 Release
+FB-V1.5.2.4731 Firebird 1.5 Release
Welcome to the FreeBSD Firebird port!
diff --git a/databases/firebird-server/files/patch-src::jrd::gds.cpp b/databases/firebird-server/files/patch-src::jrd::gds.cpp
index 12c0cd025551..c9c19d9fe829 100644
--- a/databases/firebird-server/files/patch-src::jrd::gds.cpp
+++ b/databases/firebird-server/files/patch-src::jrd::gds.cpp
@@ -1,12 +1,12 @@
---- src/jrd/gds.cpp.orig Fri May 20 16:14:19 2005
-+++ src/jrd/gds.cpp Fri May 20 16:31:25 2005
-@@ -1736,8 +1736,7 @@
- gds__prefix(ib_prefix_msg, "");
+--- src/jrd/gds.cpp.orig Sun May 22 18:52:41 2005
++++ src/jrd/gds.cpp Sun May 22 18:55:44 2005
+@@ -1732,8 +1732,8 @@
+
+ if (ib_prefix_msg == NULL) {
+ if (!(ib_prefix_msg = getenv(FB_MSG_ENV))) {
++ strncpy(ib_prefix_msg_val, "%%LIBDATADIR%%", MAXPATHLEN);
+ ib_prefix_msg = ib_prefix_msg_val;
+- gds__prefix(ib_prefix_msg, "");
}
else {
-- strcat(ib_prefix_msg_val, ib_prefix_msg);
-- ib_prefix_msg = ib_prefix_msg_val;
-+ strcpy(ib_prefix_msg, "%%DATADIR%%");
- }
- }
- strcat(string, ib_prefix_msg);
+ strcat(ib_prefix_msg_val, ib_prefix_msg);
diff --git a/databases/firebird-server/pkg-plist b/databases/firebird-server/pkg-plist
index e8024dcf4eae..76072509a40e 100644
--- a/databases/firebird-server/pkg-plist
+++ b/databases/firebird-server/pkg-plist
@@ -22,4 +22,4 @@ firebird/security.fdb.sample
@dirrm firebird/bin
@dirrm firebird/help
@dirrm firebird/intl
-@dirrm firebird
+@unexec rmdir %D/firebird 2>/dev/null || true
diff --git a/databases/firebird-server/pkg-plist.client b/databases/firebird-server/pkg-plist.client
index 03fb94025663..69f089b9f4a9 100644
--- a/databases/firebird-server/pkg-plist.client
+++ b/databases/firebird-server/pkg-plist.client
@@ -27,8 +27,11 @@ lib/libib_util.so
@unexec if cmp -s %D/etc/firebird.conf %D/etc/firebird.conf.sample; then rm -f %D/etc/firebird.conf; fi
etc/firebird.conf.sample
@exec [ -f %B/firebird.conf ] || cp %B/%f %B/firebird.conf
-%%DATADIR%%/firebird.msg
-@dirrm %%DATADIR%%
+%%LIBDATADIR%%/de_DE.msg
+%%LIBDATADIR%%/firebird.msg
+%%LIBDATADIR%%/fr_FR.msg
+%%LIBDATADIR%%/ja_JP.msg
+@dirrm %%LIBDATADIR%%
%%EXAMPLESDIR%%/align.h
%%EXAMPLESDIR%%/api1.c
%%EXAMPLESDIR%%/api10.c