Re: Changing mkinstalldirs to avoid using mkdir -p

2004-02-11 Thread Alexandre Duret-Lutz
Nathanael Nerode [EMAIL PROTECTED] writes:
 +# Solaris 8's mkdir -p isn't thread-safe!  If you mkdir -p a/b and
 +# mkdir -p a/c at the same time, both will detect that a is missing,
 +# one will create a, then the other will try to create a and die with
 +# a File exists error.  So we have to disable this code on Solaris 8.
 +#
 +#case $dirmode in
 +#  '')
 +#if mkdir -p -- . 2/dev/null; then
 +#  echo mkdir -p -- $*
 +#  exec mkdir -p -- $@
 +#fi
 +#;;
 +#  *)
 +#if mkdir -m $dirmode -p -- . 2/dev/null; then
 +#  echo mkdir -m $dirmode -p -- $*
 +#  exec mkdir -m $dirmode -p -- $@
 +#fi
 +#;;
 +#esac

Does anybody see a way to disable this only when needed?

An idea would be to skip this code if
   1.  -$MAKEFLAGS matches ` -[BdeikrRsSw]*j' or ` ---?jobs'
and
   2. `mkdir -p --help' doesn't work.

That way we would always GNU's mkdir -p, and we would ignore
other mkdir -p implementations only in parallel builds.

Unfortunately, the problem is not only in mkinstalldirs, it is
also in AM_PROG_MKDIR_P, and we cannot check $MAKEFLAGS there.
I presume we will end up setting `mkdir_p = mkdir -p' only if
mkdir supports --help.  I find this quite frustrating.

If you consider a system such as Solaris 8, whose make does not
support parallel builds, there is no reason not to use `mkdir
-p'.  The problem only exist when users mix tools, doesn't it?
It's a bit of a shame, we have to disable `mkdir -p' everywhere
because of such setups.

Other ideas?
-- 
Alexandre Duret-Lutz





installing headers files in /usr/local/include...

2004-02-11 Thread Eric Tchepannou
Hello all,

I have written (I am still writing actually) an application and use 
automake/autoconf. I would like to have my headers to be installed under 
/usr/local/include when applying make install.
I wonder if someone can help me how to reach this with automake.

Thanks for any contribution.




Re: installing headers files in /usr/local/include...

2004-02-11 Thread Andreas Schwab
Eric Tchepannou [EMAIL PROTECTED] writes:

 Hello all,

 I have written (I am still writing actually) an application and use 
 automake/autoconf. I would like to have my headers to be installed under 
 /usr/local/include when applying make install.
 I wonder if someone can help me how to reach this with automake.

include_HEADERS = 

Andreas.

-- 
Andreas Schwab, SuSE Labs, [EMAIL PROTECTED]
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
And now for something completely different.




AM_INIT_AUTOMAKE Call in Automake 1.7

2004-02-11 Thread Drummonds, Scott B
Hi, everyone,

Replies I got from this group with regards to a problem I was having in
my build environment (that used Automake 1.4) led me to request a
version upgrade.  I am now able to use Automake 1.7.  (Better, eh?)

After running automake on my existing configure.in, I received the
following error:

quote
configure.in:10: your implementation of AM_INIT_AUTOMAKE comes from an
configure.in:10: old Automake version.  You should recreate aclocal.m4
configure.in:10: with aclocal and run automake again.
/quote

This surprises me, because I made the changes to my configure.in as
specified in the online documentation:

quote
If your configure.in has: 

  AC_INIT(src/foo.c)
  AM_INIT_AUTOMAKE(mumble, 1.5)
  
you can modernize it as follows: 
  AC_INIT(mumble, 1.5)
  AC_CONFIG_SRCDIR(src/foo.c)
  AM_INIT_AUTOMAKE
/quote

My old format (AM_INIT_AUTOMAKE(package, version)) failed, and now the
new format is failing with Automake 1.7, as well.  What is the correct
usage of this macro call?

Thanks,
Scott




RE: AM_INIT_AUTOMAKE Call in Automake 1.7

2004-02-11 Thread Drummonds, Scott B
From: [EMAIL PROTECTED] 
 I'm not sure, but I think another possibility might be that the
 right aclocal program is still finding the old 1.4 macros.

Hmmm...  I think you're on to something.  The previous build owner added
some additional macros to the default source of aclocal macros.  He put
them in m4 files in the same directory.  As such, when I have the new
aclocal point to the new macro source location (using --acdir),
autoconf fails (additional macros not found).  When I have it point to
the old source, automake fails (AM_INIT_AUTOMAKE fails).

I've tried playing around with different combinations (and sequences) of
--acdir and -I, hoping that I could get an invokation that would get
the 1.7 macros and the original ones provided by the build maintainer,
to no avail.  It seems that as long as the original --acdir directory
is specified (either with --acdir or -I), automake fails with the
same problems.

Any ideas on how I can just use the right files in the old aclocal
config directory?  FWIW, the brute force method of copying out all files
that the previous owner added to the aclocal config directory to another
directory does work.  So, I have a solution to this problem, and am on
to another one.

Also, what exactly is the difference between --acdir and -I?

Thanks,
Scott