bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

problem building on AIX 4


From: Bruno Haible
Subject: problem building on AIX 4
Date: Wed, 11 Jun 2008 02:18:55 +0200
User-agent: KMail/1.5.4

Hi,

I'm trying to build coreutils-6.12.29-a16be on AIX 4.3.2. It was built
with autoconf 2.62.

$ ./configure
...
$ make
"Makefile", line 541: make: 1254-055 Dependency line needs colon or double 
colon operator.
"Makefile", line 542: make: 1254-055 Dependency line needs colon or double 
colon operator.
...
make: 1254-058 Fatal errors encountered -- cannot continue.

The Makefile contains this at line 540ff:

----------------------------
MAN = uname.1
chroot.1
hostid.1
nice.1
who.1
users.1
pinky.1
uptime.1
stty.1
df.1

chcon.1
chgrp.1
chown.1
chmod.1
cp.1
dd.1
dircolors.1
du.1
\.1
install.1
link.1
ln.1
dir.1
vdir.1
ls.1
mkdir.1
\.1
mkfifo.1
mknod.1
mktemp.1
\.1
mv.1
nohup.1
readlink.1
rm.1
rmdir.1
shred.1
stat.1
sync.1
touch.1
unlink.1
\.1
cat.1
cksum.1
comm.1
csplit.1
cut.1
expand.1
fmt.1
fold.1
head.1
join.1
groups.1
md5sum.1
\.1
nl.1
od.1
paste.1
pr.1
ptx.1
sha1sum.1
sha224sum.1
sha256sum.1
sha384sum.1
sha512sum.1
\.1
shuf.1
sort.1
split.1
sum.1
tac.1
tail.1
tr.1
tsort.1
unexpand.1
uniq.1
wc.1
\.1
basename.1
date.1
dirname.1
echo.1
env.1
expr.1
factor.1
false.1
\.1
id.1
kill.1
logname.1
pathchk.1
printenv.1
printf.1
pwd.1
\.1
runcon.1
seq.1
sleep.1
tee.1
\.1
test.1
timeout.1
true.1
truncate.1
tty.1
whoami.1
yes.1
\.1
base64.1
MKDIR_P = /opt/gnu/bin/mkdir -p
-------------------------------------

As you can see, there is a problem with missing backslashes.

Makefile.in has this:

-------------------------------------
MAN = @MAN@
MKDIR_P = @MKDIR_P@
-------------------------------------

config.status has this:

-------------------------------------
AWK='nawk'
...
S["MAN"]="uname.1\n"\
"chroot.1\n"\
"hostid.1\n"\
"nice.1\n"\
"who.1\n"\
"users.1\n"\
"pinky.1\n"\
"uptime.1\n"\
"stty.1\n"\
"df.1\n"\
"\n"\
"chcon.1\n"\
"chgrp.1\n"\
"chown.1\n"\
"chmod.1\n"\
"cp.1\n"\
"dd.1\n"\
"dircolors.1\n"\
"du.1\n"\
"\\.1\n"\
"install.1\n"\
"link.1\n"\
"ln.1\n"\
"dir.1\n"\
"vdir.1\n"\
"ls.1\n"\
"mkdir.1\n"\
"\\.1\n"\
"mkfifo.1\n"\
"mknod.1\n"\
"mktemp.1\n"\
"\\.1\n"\
"mv.1\n"\
"nohup.1\n"\
"readlink.1\n"\
"rm.1\n"\
"rmdir.1\n"\
"shred.1\n"\
"stat.1\n"\
"sync.1\n"\
"touch.1\n"\
"unlink.1\n"\
"\\.1\n"\
"cat.1\n"\
"cksum.1\n"\
"comm.1\n"\
"csplit.1\n"\
"cut.1\n"\
"expand.1\n"\
"fmt.1\n"\
"fold.1\n"\
"head.1\n"\
"join.1\n"\
"groups.1\n"\
"md5sum.1\n"\
"\\.1\n"\
"nl.1\n"\
"od.1\n"\
"paste.1\n"\
"pr.1\n"\
"ptx.1\n"\
"sha1sum.1\n"\
"sha224sum.1\n"\
"sha256sum.1\n"\
"sha384sum.1\n"\
"sha512sum.1\n"\
"\\.1\n"\
"shuf.1\n"\
"sort.1\n"\
"split.1\n"\
"sum.1\n"\
"tac.1\n"\
"tail.1\n"\
"tr.1\n"\
"tsort.1\n"\
"unexpand.1\n"\
"uniq.1\n"\
"wc.1\n"\
"\\.1\n"\
"basename.1\n"\
"date.1\n"\
"dirname.1\n"\
"echo.1\n"\
"env.1\n"\
"expr.1\n"\
"factor.1\n"\
"false.1\n"\
"\\.1\n"\
"id.1\n"\
"kill.1\n"\
"logname.1\n"\
"pathchk.1\n"\
"printenv.1\n"\
"printf.1\n"\
"pwd.1\n"\
"\\.1\n"\
"runcon.1\n"\
"seq.1\n"\
"sleep.1\n"\
"tee.1\n"\
"\\.1\n"\
"test.1\n"\
"timeout.1\n"\
"true.1\n"\
"truncate.1\n"\
"tty.1\n"\
"whoami.1\n"\
"yes.1\n"\
"\\.1\n"\
"base64.1"
S["U"]=""
---------------------
and also
S["SHELL"]="/bin/sh"
S["POSIX_SHELL"]="/bin/sh"
S["PREFERABLY_POSIX_SHELL"]="/bin/sh"

The problem lies in the second MAN assignment in configure.ac:

MAN=`for m in $MAN; do test $m = ginstall.1 && m=install.1; echo $m; done \
  | tr '\015\012' ' '; echo`

On Linux:
$ MAN="abc.1 def.1 "; for m in $MAN; do echo $m; done | tr '\015\012' ' '; echo
abc.1 def.1 

On AIX:
$ MAN="abc.1 def.1 "; for m in $MAN; do echo $m; done | tr '\015\012' ' '; echo
abc.1
def.1

The fix is to change the second argument of the 'tr' command from a single space
to a double space; then it works.


2008-06-10  Bruno Haible  <address@hidden>

        * configure.ac: Fix unportable invocation of 'tr', introduced on
        2008-04-22.

--- configure.ac.bak    2008-06-08 15:16:02.000000000 +0200
+++ configure.ac        2008-06-11 02:15:48.000000000 +0200
@@ -313,7 +313,7 @@
 
 # Change ginstall.1 to "install.h" in $MAN.
 MAN=`for m in $MAN; do test $m = ginstall.1 && m=install.1; echo $m; done \
-  | tr '\015\012' ' '; echo`
+  | tr '\015\012' '  '; echo`
 
 # Remove [.1, since writing a portable rule for it in man/Makefile.am
 # is not practical.  The sed LHS below uses the autoconf quadrigraph





reply via email to

[Prev in Thread] Current Thread [Next in Thread]