This is the mail archive of the automake-prs@sources.redhat.com mailing list for the automake project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

automake/114: aclocal should not use hardcoded prefix.



>Number:         114
>Category:       automake
>Synopsis:       aclocal should not use hardcoded prefix.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    tromey
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Feb 01 07:51:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Brian Cameron
>Release:        automake 1.4
>Organization:
>Environment:
Solaris 2.9
>Description:
I notice that the bin/aclocal Perl script has the following
two  lines:

  $prefix = "/hardcoded/install/directory";
  $acdir = "${prefix}/share/aclocal";

The "$acdir" is used to find config files that may be
installed by other packages.

This creates a problem in our environment...

We have each package (autoconf, gettext, and libtool) are
installed in each directory.  Then we are using a program
that makes a single directory tree with symbolic links to
the various installed programs.

So our system looks like this

   automake is installed in /install/automake
   gettext  is installed in /install/gettext
   libtool  is installed in /install/libtool
   
   So, /install/automake/bin/aclocal obviously has its
   prefix hardcoded to "/install/automake/share/aclocal".

   We create a /usr/local directory tree which contains
   symbolic links to each of the files in the above three
   packages. 
   
   Therefore:
   
   /usr/local/share/aclocal/termios.m4 points to
      /install/automake/share/aclocal/termios.m4
   /usr/local/share/aclocal/progtest.m4 points to 
      /install/gettext/share/aclocal/termois.m4
   /usr/local/bin/aclocal points to 
      /install/automake/bin/aclocal
   etc...
   
   The problem is that when we run /usr/local/bin/aclocal
   it only finds the m4 files in the
   /install/automake/share/aclocal directory and doesn't
   look in the /usr/local/share/aclocal directory, which
   would make the most sense.
   
>How-To-Repeat:

>Fix:
   Therefore, could aclocal be updated so that it uses the
   perl variable "$0" which will contain the path where the
   aclocal script was executed, and find the "share/aclocal"
   directory with a relative path (simply ../share/aclocal")
   rather than using $prefix.

   At any rate making aclocal more smart this way will
   allow people to do more sophisticated setups with 
   automake.
>Release-Note:
>Audit-Trail:
>Unformatted:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]