[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
autoconf problem, related to Swish-e install
From: |
Richard Morin |
Subject: |
autoconf problem, related to Swish-e install |
Date: |
Thu, 23 Sep 2004 09:20:44 -0700 |
The Swish-e package (http://swish-e.org) uses autoconf
(etc) for its build and installation.
# Generated by GNU Autoconf 2.59.
In attempting to use this on a Solaris machine
% uname -a
SunOS flora02 5.9 Generic_117171-05
sun4u sparc SUNW,Sun-Fire-V240
I encountered a peculiar problem, wherein some of the
files got installed in the wrong directory. I have
traced the problem down to a particular Makefile
.../build/filters/Makefile
This file defines a make variable:
nobase_perlmodule_SCRIPTS = \
Filters/Doc2txt.pm \
Filters/Pdf2HTML.pm \
Filters/ID3toHTML.pm \
Filters/XLtoHTML.pm
using it in assorted places. Although I cannot find
any code that modifies the value of the variable, I
found that it had gotten changed by the time it got
to this code:
install-nobase_perlmoduleSCRIPTS: $(nobase_perlmodule_SCRIPTS)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(perlmoduledir)
@list='$(nobase_perlmodule_SCRIPTS)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
if test -f $$d$$p; then \
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
f=`echo "$$p" | sed 's|[^/]*$$||'`"$$f"; \
echo " $(nobase_perlmoduleSCRIPT_INSTALL) $$d$$p
[break]
$(DESTDIR)$(perlmoduledir)/$$f"; \
$(nobase_perlmoduleSCRIPT_INSTALL) $$d$$p
[break]
$(DESTDIR)$(perlmoduledir)/$$f; \
else :; fi; \
done
[Note - I have added two line breaks above, for presentation.]
Inserting a trace statement into this code
@echo ">>> npS='$(nobase_perlmodule_SCRIPTS)'";
just above
@list='$(nobase_perlmodule_SCRIPTS)'; for p in ...
I found that the value of nobase_perlmodule_SCRIPTS had changed:
>>> npS='Filters/Doc2txt.pm
../../../swish-e-2.4.2/filters/SWISH/Filters/Pdf2HTML.pm
[break]
../../../swish-e-2.4.2/filters/SWISH/Filters/ID3toHTML.pm
[break]
Filters/XLtoHTML.pm'
Curiously, this behavior is not present under GNU make.
% gmake -v
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for sparc-sun-solaris2.5.1 ...
I'm running configure by means of the following script:
:
# config_rdm - configure swish-e
CWD=`pwd`
TGT='local'
TGT='ltest' # DEBUG
VER='2.4.2'
echo "CWD='$CWD', HOME='$HOME', TGT='$TGT', VER='$VER'"
../swish-e-$VER/configure \
--disable-shared \
--prefix=$HOME/$TGT \
CPPFLAGS=-I$HOME/$TGT/include \
LDFLAGS="-R$HOME/$TGT/lib -L$HOME/$TGT/lib"
It prints:
CWD='/afs/slac.stanford.edu/u/gl/rdm/swish-e/build'
HOME='/u/gl/rdm', TGT='ltest', VER='2.4.2'
reflecting the fact that my home directory is known
both as '/u/gl/rdm' and '/afs/slac.stanford.edu/u/gl/rdm'
I'm not a make wizard, but I'm willing to add other traces,
send complete copies of files, and so forth if it will help
in tracking down this problem.
-r
- autoconf problem, related to Swish-e install,
Richard Morin <=