Bug#1354: bigloo: several problems (ELF, packaging, manpage)
Package: bigloo
Version: 1.7b-2
1. Problem noted when compiling using elf-libc 5.0.9-2.
The following piece of code appears in distribution/bigloo.h.tail,
and is therefore included in distribution/bigloo.h and in lib/1.7/bigloo.h:
--
#if( !defined( __alpha ) )
extern int toupper(), tolower();
#endif
--
This breaks ELF compiles, since toupper and tolower are actually
macros calling internal functions in the ELF <ctype.h>.
<ctype.h> is the standard location for toupper and tolower
(according to appendix B of Kernighan & Ritchie, 2nd edition).
Solution: replace the aforementioned code with
--
#include <ctype.h>
--
(Perhaps the #ifndef __alpha is still needed, although I can't imagine
why).
Declaring library functions extern instead of including appropriate
headers is a Bad Thing.
2. The Makefile starts several "make"s in a subshell (parentheses
construction), without doing a subsequent "|| exit 1".
Errors in sub-makes therefore do not necessarily cause errors
in the top make. A compile can therefore look like it succeeded
("make gave no error"), while in fact it went wrong.
A result of this is that "debian.rules binary" can produce an invalid
debian package.
3. The Makefile uses the "@" construction to suppress command echoing.
This can cause much confusion.
4. Nitpicking: small manpage fixes.
Can a native speaker go over these fixes and the manpage please?
Some words ("genericity") and constructions ring alarm bells with me,
but I can't be sure if they are errors.
-- cut me --
--- documentation/bigloo.1.orig Mon Sep 11 21:39:05 1995
+++ documentation/bigloo.1 Mon Sep 11 22:03:00 1995
@@ -60,13 +60,13 @@
Do not load an init file.
.TP
.B -s
-compile silently. Print only warning and error messages.
+Compile silently. Print only warning and error messages.
.TP
.B -v
-be verbose, print some compilation information.
+Be verbose, print some compilation information.
.TP
.B -i
-interprete rather than compile the \fIinput\fR. If no input file is
+Interpret rather than compile the \fIinput\fR. If no input file is
specified then enter the read-eval-print loop.
.TP
.B -E
@@ -98,9 +98,9 @@
Produce some debug information for \fI.o\fR file.
.TP
.B -unsafe[\fIatrsv\fR]
-The compiler produces `runtime safe test' to ensure the safety of the
-executable. It's possible to suppress several or all this runtime test.
--unsafe suppress all of it. Here are the meaning of the partial flags:
+The compiler produces `runtime safe tests' to ensure the safety of the
+executable. It's possible to suppress several or all of these runtime tests.
+-unsafe suppress all of them. Here are the meanings of the partial flags:
.RS
.RS
.TP
@@ -120,7 +120,7 @@
.TP
.B s
Don't check that an object is a well tagged structure before accessing
-to a field. This option is a specialisation of the -t flag.
+a field. This option is a specialisation of the -t flag.
.TP
.B v
Don't check version soundness.
@@ -182,7 +182,7 @@
but they are not. If you want `call/cc' use this option.
.TP
.B -mklib
-Use the compiler to compile the bigloo's librarie. This needs a compilation
+Use the compiler to compile the bigloo's library. This needs a compilation
special mode.
.TP
.B -mkheap
@@ -220,7 +220,7 @@
Set the environment size (in megabytes). The default value is 4.
.TP 16
.B BIGLOOLIB
-The path to find the Bigloo's librarie.
+The path to find the Bigloo's library.
.TP 16
.B BIGLOOINCLUDE
The path to find the Bigloo's include.
-- ouch --
Please go over these problems/suggestions, and pass them on to the
upstream maintainer if they are considered valid.
Ray
--
PATRIOTISM A great British writer once said that if he had to choose
between betraying his country and betraying a friend he hoped he would
have the decency to betray his country.
- The Hipcrime Vocab by Chad C. Mulligan
Reply to: