[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Making scripts
From: |
Eric Siegerman |
Subject: |
Making scripts |
Date: |
Fri, 29 Mar 2002 00:04:35 -0500 |
User-agent: |
Mutt/1.2.5i |
Ok, it feels as though I'm trying to accomplish the impossible
... which means that the obvious thing I'm missing must be
*really* obvious :-/
I'm trying to do config-variable substitutions on some scripts,
to get @datadir@ and the like inserted into them.
The value of @datadir@ that gets substituted into the script
needs to be the actual pathname, e.g. "/usr/local/share", rather
than still having shell variables in it, like "${prefix}/share".
The autoconf documentation says to accomplish this by doing the
substitutions at "make" time, not at "configure" time (Autoconf
2.53 manual; section "Installation Directory Variables"; near the
bottom, starting at the paragraph "In order to support these
features...")
Question: How to accomplish that using Automake 1.6?
I tried:
SUFFIXES = .sh
.sh:
rm -f $@ address@hidden
sed 's,@datadir\@,$(pkgdatadir),g' $< >address@hidden
chmod +x address@hidden
mv address@hidden $@
bin_PROGRAMS = myscript
myscript_SOURCES = myscript.sh
where the ".sh" default rule is taken verbatim from the Autoconf
manual. But that insisted on trying to "cc" myscript; I guess
PROGRAMS is specifically for load modules (the manual probably
even says that someplace :-)
Then I tried changing PROGRAMS to SCRIPTS:
bin_SCRIPTS = myscript
but then automake complained of:
invalid unused variable name: `myscript_SOURCES'
Automake must not expect SCRIPTS to need any sort of building; it
must assume they can just be copied verbatim from $(srcdir) at
install time.
So ... how does one convince Automake to build a new kind of
target, when the build procedure does not ultimately involve
compiling to $(OBJEXT) files, and then linking?
Thanks in advance.
--
| | /\
|-_|/ > Eric Siegerman, Toronto, Ont. address@hidden
| | /
"Outlook not so good." That magic 8-ball knows everything!
I'll ask about Exchange Server next.
- Anonymous
- Making scripts,
Eric Siegerman <=