Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.os.linux.development.apps > #778

How do I configure Autotools files for libexec installs?

From Lew Pitcher <lew.pitcher@digitalfreehold.ca>
Subject How do I configure Autotools files for libexec installs?
Newsgroups comp.os.linux.development.apps
Organization The Pitcher Digital Freehold
Message-ID <RZGax.14329$FK.8477@fx13.iad> (permalink)
Date 2015-05-31 12:50 -0400

Show all headers | View raw


I have a home-grown app that I'd like to package up with GNU autotools
(automake/autoconf/libtool).

My specific dilemma is that I have a number of shell scripts that the app
invokes, and I'd like these scripts to end up installed in the
<prefix>/libexec/<project> directory.

I've read through the documentation on each command, the "Autotools book", and
the config files from various example (both real and contrived)
installations. From what I can find out, my target directory is named by the
autotools @libexecdir@ (for <prefix>/libexec) or (possibly) the @pkglibexec@
variable.

What I want to do is write my Makefile.in (or Makefile.am) to invoke the GNU
install program, so that the ultimate Makefile will "install" the scripts in
the appropriate directory

For instance, given a package libexec directory path
of /usr/local/libexec/mypackage, my final Makefile should look something like

  install: example.exit
        echo install -o root -g bin -m 755 -d /usr/local/libexec/mypackage
        echo install -o root -g bin -m 755 -t /usr/local/libexec/mypackage $?

I have tried all sorts of solutions, primarily focussing on the relevant
Makefile.in (after I abandoned automake and Makefile.am as being so poorly
documented as to be unusable in this situation). Various attempts have looked
like

  INSTALLDIR = ${exec_prefix}/libexec

  install: example.exit
        echo install -o root -g bin -m 755 -d ${INSTALLDIR}/mypackage
        echo install -o root -g bin -m 755 -t ${INSTALLDIR}/mypackage $?

and

  INSTALLDIR = @libexec@

  install: example.exit
        echo install -o root -g bin -m 755 -d ${INSTALLDIR}/mypackage
        echo install -o root -g bin -m 755 -t ${INSTALLDIR}/mypackage $?
and

  install: example.exit
        echo install -o root -g bin -m 755 -d @libexec@/mypackage
        echo install -o root -g bin -m 755 -t @libexec@/mypackage $?

but none have resulted in a Makefile that would actually install the file into
the intended directory. Usually the @libexec@ just expands into a
literal '${exec_prefix}/libexec' path, without expanding the ${exec_prefix}.
Even the explicit '${exec_prefix}/libexec' just "expands"
into '${prefix}/libexec', still leaving the path unusable.

Do I actually have to hand-expand the @libexec@ path manually in my Makefile,
or is there some way to get autoconf to process my Makefile.in to properly
and *completely* expand the variable when generating the target Makefile?

Any advice?
-- 
Lew Pitcher
"In Skills, We Trust"
PGP public key available upon request

Back to comp.os.linux.development.apps | Previous | NextNext in thread | Find similar


Thread

How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 12:50 -0400
  Re: How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 12:55 -0400
    Re: How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 13:12 -0400
  Re: How do I configure Autotools files for libexec installs? Richard Kettlewell <rjk@greenend.org.uk> - 2015-05-31 18:20 +0100
    Re: How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 13:31 -0400
    Re: How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 13:32 -0400
    Re: How do I configure Autotools files for libexec installs? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-05-31 13:56 -0400

csiph-web