MFH: r525523 misc/brs: Update to 4.3.0
misc/brs currently builds with many warnings and segfaults at runtime, likely a missing prototypes issue as that's what most of the warnings are. A much more recent version (4.30 as opposed to 4.03) of this is widely available on linux under the name "bible-kjv", which also exists as an OpenBSD port. This change updates brs to 4.30, switching upstream to DEBIAN [1], and the first step commit to renaming the port. While here: - Include the "randverse" program - Wordsmith pkg-descr: It's all very well saying that the port includes libraries, but it doesn't install them. - Remove patches: no longer relevent [1] Use a temporary MASTER_SITES workaround, instead of 'DEBIAN' directly because it does not currently use or support DISTNAME. PR: 243886 Submitted by: Andrew <andrew tao11.riddles.org.uk> Approved by: <user unknown nu> (implicit, approves maintainer change) Approved by: portmgr (blanket: run (crash) fixes) Approved by: ports-secteam (blanket: run (crash) fixes)
This commit is contained in:
parent
72084d1010
commit
e01d5c9ec9
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/branches/2020Q1/; revision=525774
@ -2,23 +2,50 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= brs
|
||||
PORTVERSION= 4.03
|
||||
PORTVERSION= 4.30
|
||||
CATEGORIES= misc
|
||||
MASTER_SITES= http://www.unknown.nu/ports/
|
||||
DISTFILES= bible.data.tar.bz2 bible.tar.bz2
|
||||
DIST_SUBDIR= brs
|
||||
MASTER_SITES= ${MASTER_SITE_DEBIAN:C|/%SUBDIR%/|/pool/main/${DISTNAME:C/^(.).*$/\1/}/${DISTNAME:C/_.*//}/|}
|
||||
DISTNAME= bible-kjv_${DISTVERSION}
|
||||
|
||||
MAINTAINER= user@unknown.nu
|
||||
MAINTAINER= andrew@tao11.riddles.org.uk
|
||||
COMMENT= Interactive King James Bible
|
||||
|
||||
USES= tar:bzip2
|
||||
NO_WRKSUBDIR= yes
|
||||
ALL_TARGET=
|
||||
CFLAGS+= -Wno-error=return-type
|
||||
LICENSE= GPLv2+
|
||||
|
||||
post-patch:
|
||||
${REINPLACE_CMD} 's=%%PREFIX%%=${PREFIX}=g' \
|
||||
${WRKSRC}/brl.c ${WRKSRC}/bible.1
|
||||
${REINPLACE_CMD} '/chown.*/d' ${WRKSRC}/Makefile
|
||||
USES= readline shebangfix perl5
|
||||
USE_PERL5= build
|
||||
|
||||
# Upstream makefile does unsafe things with recursive sub-makes for
|
||||
# building its build tools. Parallel build randomly fails.
|
||||
MAKE_JOBS_UNSAFE=yes
|
||||
|
||||
WRKSRC= ${WRKDIR}/${DISTNAME:C/_.*//}
|
||||
|
||||
# makeindex2 asks for bash, but contains no shell construct more
|
||||
# complex than an if...then, so use sh instead.
|
||||
|
||||
bash_CMD= /bin/sh
|
||||
SHEBANG_FILES= makeindex2 makeconc.pl
|
||||
|
||||
# We don't really need all the warning options that the port uses.
|
||||
PORT_CFLAGS= -DDESTLIB=\\\"${DATADIR}\\\"
|
||||
|
||||
MAKE_ARGS= DEST="${PREFIX}" \
|
||||
CFLAGS="${CPPFLAGS} ${CFLAGS} ${PORT_CFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
|
||||
post-build:
|
||||
${REINPLACE_CMD} 's=/usr/=${PREFIX}/=g' ${WRKSRC}/bible.1
|
||||
cd ${WRKSRC} && \
|
||||
${CC} ${CPPFLAGS} ${CFLAGS} -o randverse debian/randverse.c
|
||||
|
||||
do-install:
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/bible ${STAGEDIR}${PREFIX}/bin
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/randverse ${STAGEDIR}${PREFIX}/bin
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/bible.data ${STAGEDIR}${DATADIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/bible.data.conc ${STAGEDIR}${DATADIR}
|
||||
${INSTALL_MAN} ${WRKSRC}/bible.1 ${STAGEDIR}${PREFIX}/man/man1
|
||||
${INSTALL_MAN} ${WRKSRC}/debian/randverse.1 ${STAGEDIR}${PREFIX}/man/man1
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
@ -1,4 +1,3 @@
|
||||
SHA256 (brs/bible.data.tar.bz2) = f20aa348df82a2511748719d85c95d3abe39ef8bc5f73a1d6a02bae2286d8de0
|
||||
SIZE (brs/bible.data.tar.bz2) = 2438121
|
||||
SHA256 (brs/bible.tar.bz2) = 31ee6b18b5f969500e6798cda63f82a22dcc76d47cba26d20939a100d376ed6f
|
||||
SIZE (brs/bible.tar.bz2) = 153375
|
||||
TIMESTAMP = 1580855102
|
||||
SHA256 (bible-kjv_4.30.tar.gz) = 138ca15baedcfaccc99da3663a6bcfdc493fabf4aa90554e056a2a829778f4a0
|
||||
SIZE (bible-kjv_4.30.tar.gz) = 1412282
|
||||
|
@ -1,120 +0,0 @@
|
||||
--- Makefile.orig 1995-08-10 07:49:09.000000000 +0800
|
||||
+++ Makefile 2014-07-15 20:46:53.626067731 +0800
|
||||
@@ -177,9 +177,6 @@ README = README.$(PROGRAM)
|
||||
# primary man page
|
||||
MAN = $(PROGRAM).1
|
||||
|
||||
-# raw data file
|
||||
-RAWDATA = $(PROGRAM).rawtext
|
||||
-
|
||||
# Derived data file. Comes from processing raw data file.
|
||||
DATA = $(PROGRAM).data
|
||||
|
||||
@@ -187,12 +184,12 @@ DATA = $(PROGRAM).data
|
||||
NINSTPKG = $(PROGRAM).pkg
|
||||
|
||||
# where to install this stuff
|
||||
-DEST = /usr/local
|
||||
+DEST = $(PREFIX)
|
||||
#DEST = $(HOME)/local
|
||||
DESTBIN = $(DEST)/bin
|
||||
-DESTLIB = $(DEST)/lib
|
||||
+DESTLIB = $(DEST)/share/brs
|
||||
DESTMAN = $(DEST)/man
|
||||
-DESTMAN1 = $(DESTMAN)/man1.Z
|
||||
+DESTMAN1 = $(DESTMAN)/man1
|
||||
|
||||
# release directories. Nobody should care about this but me
|
||||
FTPHOME = /mnt/ftp
|
||||
@@ -349,10 +346,6 @@ squish.stats squish.data: $(RAWDATA)
|
||||
else rm squish.tmpdata squish.stats; fi
|
||||
|
||||
|
||||
-$(PROGINDEX).c: $(RAWDATA)
|
||||
- make makeindex
|
||||
- ./makeindex $(RAWDATA) > $@
|
||||
-
|
||||
$(DATA): squish.stats squish.data
|
||||
make buildcmp
|
||||
./buildcmp
|
||||
@@ -366,19 +359,6 @@ $(DATA): squish.stats squish.data
|
||||
# Note that $(PROGINDEX).c is included in source distributions, while
|
||||
# $(RAWDATA) is NOT included in all distributions. $(PROGINDEX).c does NOT
|
||||
# need to be rebuilt unless someone (probably me) has munged $(RAWDATA).
|
||||
-SAFEDATE = 0101000193
|
||||
-$(RAWDATA):
|
||||
- @touch $(SAFEDATE) $@
|
||||
- @if [ -r $(SAFEDATE) ]; then \
|
||||
- /bin/rm $(SAFEDATE) $@; \
|
||||
- if [ -x /usr/5bin/touch ]; then \
|
||||
- /usr/5bin/touch $(SAFEDATE) $@; \
|
||||
- else \
|
||||
- # major kludge alert! ... \
|
||||
- touch brl-startverse.h brl-startchapter.h $(PROGINDEX).c; \
|
||||
- fi; \
|
||||
- fi
|
||||
- @echo " A dummy $(RAWDATA) file has been created."
|
||||
|
||||
# The dependency on $(RAWDATA) helps to ensure that the raw concordance file
|
||||
# is not rebuilt unnecessarily.
|
||||
@@ -392,10 +372,6 @@ $(PROGRAM).rawconcordance: $(RAWDATA)
|
||||
./makeconc.pl
|
||||
# ./makeconcordance
|
||||
|
||||
-$(MAN).Z: $(MAN)
|
||||
- /bin/rm $@
|
||||
- compress < $(MAN) > $(MAN).Z
|
||||
-
|
||||
clean:; @rm -f $(PROGOBJS) $(TOOLOBJS) core
|
||||
|
||||
clobber:; @rm -f $(PROGOBJS) $(TOOLOBJS) $(PROGRAM) $(TOOLS) $(DATA) \
|
||||
@@ -536,31 +512,28 @@ ninstall: $(NINSTPKG)
|
||||
# The "install" target could be of general use. That's why there are
|
||||
# no explicit dependencies here. They just confuse things...
|
||||
install:
|
||||
- @if [ ! -r $(DEST) ]; then mkdir $(DEST); fi
|
||||
+ @if [ ! -r $(DESTDIR)$(DEST) ]; then mkdir $(DESTDIR)$(DEST); fi
|
||||
@echo Installing $(PROGRAM) in $(DESTBIN)
|
||||
@-strip $(PROGRAM)
|
||||
- @if [ ! -r $(DESTBIN) ]; then mkdir $(DESTBIN); fi
|
||||
- @if [ $(DESTBIN) != . ]; then \
|
||||
- ((cd $(DESTBIN);rm -f $(PROGRAM)); \
|
||||
- cp $(PROGRAM) $(DESTBIN)); \
|
||||
- chown bin $(DESTBIN)/$(PROGRAM); \
|
||||
- chgrp bin $(DESTBIN)/$(PROGRAM); \
|
||||
- chmod 755 $(DESTBIN)/$(PROGRAM); fi
|
||||
+ @if [ ! -r $(DESTDIR)$(DESTBIN) ]; then mkdir $(DESTDIR)$(DESTBIN); fi
|
||||
+ @if [ $(DESTDIR)$(DESTBIN) != . ]; then \
|
||||
+ ((cd $(DESTDIR)$(DESTBIN);rm -f $(PROGRAM)); \
|
||||
+ cp $(PROGRAM) $(DESTDIR)$(DESTBIN)); \
|
||||
+ chown root:wheel $(DESTDIR)$(DESTBIN)/$(PROGRAM); \
|
||||
+ chmod 755 $(DESTDIR)$(DESTBIN)/$(PROGRAM); fi
|
||||
@echo Installing $(DATA) and $(DATA).conc in $(DESTLIB)
|
||||
- @if [ ! -r $(DESTLIB) ]; then mkdir $(DESTLIB); fi
|
||||
- @if [ $(DESTLIB) != . ]; then \
|
||||
- cp $(DATA) $(DATA).conc $(DESTLIB); \
|
||||
- chown bin $(DESTLIB)/$(DATA) $(DESTLIB)/$(DATA).conc; \
|
||||
- chgrp bin $(DESTLIB)/$(DATA) $(DESTLIB)/$(DATA).conc; \
|
||||
- chmod 644 $(DESTLIB)/$(DATA) $(DESTLIB)/$(DATA).conc; fi
|
||||
- @if [ ! -r $(DESTMAN) ]; then mkdir $(DESTMAN); fi
|
||||
+ @if [ ! -r $(DESTDIR)$(DESTLIB) ]; then mkdir $(DESTDIR)$(DESTLIB); fi
|
||||
+ @if [ $(DESTDIR)$(DESTLIB) != . ]; then \
|
||||
+ cp $(DATA) $(DATA).conc $(DESTDIR)$(DESTLIB); \
|
||||
+ chown root:wheel $(DESTDIR)$(DESTLIB)/$(DATA) $(DESTDIR)$(DESTLIB)/$(DATA).conc; \
|
||||
+ chmod 644 $(DESTDIR)$(DESTLIB)/$(DATA) $(DESTDIR)$(DESTLIB)/$(DATA).conc; fi
|
||||
+ @if [ ! -r $(DESTDIR)$(DESTMAN) ]; then mkdir $(DESTDIR)$(DESTMAN); fi
|
||||
@echo Installing $(MAN) in $(DESTMAN1)
|
||||
- @if [ ! -r $(DESTMAN1) ]; then mkdir $(DESTMAN1); fi
|
||||
- @if [ $(DESTMAN1) != . ]; then \
|
||||
- cp $(MAN).Z $(DESTMAN1)/$(MAN); \
|
||||
- chown bin $(DESTMAN1)/$(MAN); \
|
||||
- chgrp bin $(DESTMAN1)/$(MAN); \
|
||||
- chmod 644 $(DESTMAN1)/$(MAN); fi
|
||||
+ @if [ ! -r $(DESTDIR)$(DESTMAN1) ]; then mkdir $(DESTDIR)$(DESTMAN1); fi
|
||||
+ @if [ $(DESTDIR)$(DESTMAN1) != . ]; then \
|
||||
+ cp $(MAN) $(DESTDIR)$(DESTMAN1)/$(MAN); \
|
||||
+ chown root:wheel $(DESTDIR)$(DESTMAN1)/$(MAN); \
|
||||
+ chmod 644 $(DESTDIR)$(DESTMAN1)/$(MAN); fi
|
||||
|
||||
uninstall:; @echo Un-installing $(PROGRAM), $(DATA) and $(MAN)
|
||||
rm -f $(DESTBIN)/$(PROGRAM)
|
@ -1,60 +0,0 @@
|
||||
*** bible.1.orig Fri Apr 23 15:07:57 1993
|
||||
--- bible.1 Thu Jul 10 22:55:07 2003
|
||||
***************
|
||||
*** 314,330 ****
|
||||
Miscellaneous program control commands:
|
||||
|
||||
.TP 15 "\w'\-t\ prefix\ \ 'u"
|
||||
! .B \?, ?h, ?help
|
||||
Prints help text.
|
||||
.TP
|
||||
! .B \?f
|
||||
Toggles output formatting modes.
|
||||
.TP
|
||||
! .BI \?w file
|
||||
Begin writing program output to a file. If file exists, output is
|
||||
appended to what's there already.
|
||||
.TP
|
||||
! .B \?w
|
||||
Stop writing to a file.
|
||||
.TP
|
||||
.B \>, \<
|
||||
--- 314,330 ----
|
||||
Miscellaneous program control commands:
|
||||
|
||||
.TP 15 "\w'\-t\ prefix\ \ 'u"
|
||||
! .B ?, ?h, ?help
|
||||
Prints help text.
|
||||
.TP
|
||||
! .B ?f
|
||||
Toggles output formatting modes.
|
||||
.TP
|
||||
! .BI ?w file
|
||||
Begin writing program output to a file. If file exists, output is
|
||||
appended to what's there already.
|
||||
.TP
|
||||
! .B ?w
|
||||
Stop writing to a file.
|
||||
.TP
|
||||
.B \>, \<
|
||||
***************
|
||||
*** 369,377 ****
|
||||
results in a range of Matthew 1:1 to Revelation 1:1, instead of extending
|
||||
all the way to Revelation 22:21.
|
||||
.SH FILES
|
||||
! /usr/local/lib/bible.data
|
||||
.br
|
||||
! /usr/local/lib/bible.data.conc
|
||||
.SH SEE ALSO
|
||||
Rev3:20
|
||||
.SH AUTHOR
|
||||
--- 369,377 ----
|
||||
results in a range of Matthew 1:1 to Revelation 1:1, instead of extending
|
||||
all the way to Revelation 22:21.
|
||||
.SH FILES
|
||||
! %%PREFIX%%/share/brs/bible.data
|
||||
.br
|
||||
! %%PREFIX%%/share/brs/bible.data.conc
|
||||
.SH SEE ALSO
|
||||
Rev3:20
|
||||
.SH AUTHOR
|
@ -1,19 +0,0 @@
|
||||
*** brl.c.orig Tue Apr 12 19:31:59 1994
|
||||
--- brl.c Thu Jul 10 23:06:55 2003
|
||||
***************
|
||||
*** 1146,1152 ****
|
||||
if (dfname == NULL)
|
||||
dfname = "bible.data";
|
||||
if (dfpath == NULL)
|
||||
! dfpath = "./ /usr/local/lib/";
|
||||
tsl_init( dfname, dfpath, memlimit );
|
||||
|
||||
/* Set (low) illegal value for current context.
|
||||
--- 1146,1152 ----
|
||||
if (dfname == NULL)
|
||||
dfname = "bible.data";
|
||||
if (dfpath == NULL)
|
||||
! dfpath = "./ %%PREFIX%%/share/brs/";
|
||||
tsl_init( dfname, dfpath, memlimit );
|
||||
|
||||
/* Set (low) illegal value for current context.
|
@ -1,63 +0,0 @@
|
||||
*** tsl.c.orig Wed Aug 9 19:47:29 1995
|
||||
--- tsl.c Fri Nov 21 17:31:35 2003
|
||||
***************
|
||||
*** 106,112 ****
|
||||
\*----------------------------------------------------------------------*/
|
||||
|
||||
#include <stdio.h>
|
||||
! #include <varargs.h>
|
||||
#include "tsl.h"
|
||||
|
||||
|
||||
--- 106,112 ----
|
||||
\*----------------------------------------------------------------------*/
|
||||
|
||||
#include <stdio.h>
|
||||
! #include <stdarg.h>
|
||||
#include "tsl.h"
|
||||
|
||||
|
||||
***************
|
||||
*** 155,161 ****
|
||||
|
||||
|
||||
|
||||
! tsl_error( fatal, va_alist )
|
||||
/*----------------------------------------------------------------------
|
||||
| NAME:
|
||||
| tsl_error
|
||||
--- 155,161 ----
|
||||
|
||||
|
||||
|
||||
! tsl_error( int fatal, ... )
|
||||
/*----------------------------------------------------------------------
|
||||
| NAME:
|
||||
| tsl_error
|
||||
***************
|
||||
*** 172,184 ****
|
||||
|
|
||||
\*----------------------------------------------------------------------*/
|
||||
|
||||
- int fatal;
|
||||
- va_dcl
|
||||
{
|
||||
va_list ap;
|
||||
char *format;
|
||||
|
||||
! va_start(ap);
|
||||
|
||||
format = va_arg(ap, char *);
|
||||
vfprintf(stderr, format, ap);
|
||||
--- 172,182 ----
|
||||
|
|
||||
\*----------------------------------------------------------------------*/
|
||||
|
||||
{
|
||||
va_list ap;
|
||||
char *format;
|
||||
|
||||
! va_start(ap, fatal);
|
||||
|
||||
format = va_arg(ap, char *);
|
||||
vfprintf(stderr, format, ap);
|
@ -1,5 +1,4 @@
|
||||
Bible Retrieval System (BRS) consists of a textual database of the
|
||||
Authorized ("King James") Version of the Old and New Testaments, a set
|
||||
of libraries for finding and retrieving text, and a program ("bible")
|
||||
which uses the libraries to retrieve Bible passages given references
|
||||
on the command line or from standard input.
|
||||
Textual database of the Authorized ("King James") Version of the Old
|
||||
and New Testaments with concordance, and a program ("bible") to
|
||||
retrieve and browse passages from the command line. Also includes a
|
||||
random verse program.
|
||||
|
@ -1,4 +1,6 @@
|
||||
bin/bible
|
||||
bin/randverse
|
||||
man/man1/bible.1.gz
|
||||
man/man1/randverse.1.gz
|
||||
%%DATADIR%%/bible.data
|
||||
%%DATADIR%%/bible.data.conc
|
||||
|
Loading…
Reference in New Issue
Block a user