ports/81363: Update port: databases/firebird-server

skv at FreeBSD.org skv at FreeBSD.org
Sun May 22 16:40:03 UTC 2005


>Number:         81363
>Category:       ports
>Synopsis:       Update port: databases/firebird-server
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun May 22 16:40:02 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Sergey Skvortsov
>Release:        FreeBSD 4.11-STABLE i386
>Organization:
<Organization of PR author (multiple lines)>
>Environment:

	<Relevant environment information (multiple lines)>

>Description:

Update port: databases/firebird-server 

* 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

Note that this PR mainly fixes firebird-client.

firebird-server still broken after split.

Related BROKEN variable must be set.

 How-To-Repeat: 

	<Code/input/activities to reproduce the problem (multiple lines)>

>How-To-Repeat:
>Fix:

Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/databases/firebird-server/Makefile,v
retrieving revision 1.40
diff -u -r1.40 Makefile
--- Makefile	21 May 2005 08:01:23 -0000	1.40
+++ Makefile	22 May 2005 16:27:26 -0000
@@ -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 @@
 		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 @@
 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 @@
 		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 @@
 	@${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 @@
 .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} ${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
-
-.for f in src/extlib/ib_udf.sql src/extlib/fbudf/fbudf.sql
-	${INSTALL_SCRIPT} ${WRKSRC}/${f} ${PREFIX}/firebird/UDF
-.endfor
+	${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} ${UDF_SO:S!^!${WRKSRC}/gen/firebird/UDF/!} \
+		${UDF_SQL:S!^!${WRKSRC}/!} ${PREFIX}/firebird/UDF
+
+	${INSTALL_PROGRAM} -o firebird \
+	   ${SERVER_BIN:S!^!${WRKSRC}/gen/firebird/bin/!} ${PREFIX}/firebird/bin
+	${CHMOD} u+s ${SERVER_BIN:S!^!${PREFIX}/firebird/bin/!}
 
-.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} ${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 @@
 .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
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/databases/firebird-server/pkg-plist,v
retrieving revision 1.10
diff -u -r1.10 pkg-plist
--- pkg-plist	21 May 2005 08:01:23 -0000	1.10
+++ pkg-plist	22 May 2005 16:13:57 -0000
@@ -22,4 +22,4 @@
 @dirrm firebird/bin
 @dirrm firebird/help
 @dirrm firebird/intl
- at dirrm firebird
+ at unexec rmdir %D/firebird 2>/dev/null || true
Index: pkg-plist.client
===================================================================
RCS file: /home/ncvs/ports/databases/firebird-server/pkg-plist.client,v
retrieving revision 1.2
diff -u -r1.2 pkg-plist.client
--- pkg-plist.client	21 May 2005 08:01:23 -0000	1.2
+++ pkg-plist.client	22 May 2005 16:13:57 -0000
@@ -27,8 +27,11 @@
 @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
- at dirrm %%DATADIR%%
+%%LIBDATADIR%%/de_DE.msg
+%%LIBDATADIR%%/firebird.msg
+%%LIBDATADIR%%/fr_FR.msg
+%%LIBDATADIR%%/ja_JP.msg
+ at dirrm %%LIBDATADIR%%
 %%EXAMPLESDIR%%/align.h
 %%EXAMPLESDIR%%/api1.c
 %%EXAMPLESDIR%%/api10.c
Index: files/RELNOTES
===================================================================
RCS file: /home/ncvs/ports/databases/firebird-server/files/RELNOTES,v
retrieving revision 1.9
diff -u -r1.9 RELNOTES
--- files/RELNOTES	22 Jul 2004 07:57:37 -0000	1.9
+++ files/RELNOTES	22 May 2005 16:14:52 -0000
@@ -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!
 
Index: files/patch-src::jrd::gds.cpp
===================================================================
RCS file: /home/ncvs/ports/databases/firebird-server/files/patch-src::jrd::gds.cpp,v
retrieving revision 1.1
diff -u -r1.1 patch-src::jrd::gds.cpp
--- files/patch-src::jrd::gds.cpp	21 May 2005 08:01:24 -0000	1.1
+++ files/patch-src::jrd::gds.cpp	22 May 2005 16:14:01 -0000
@@ -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);
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list