automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: shell pwd: non-POSIX variable name ??


From: Stepan Kasal
Subject: Re: shell pwd: non-POSIX variable name ??
Date: Thu, 29 Mar 2007 16:19:33 +0200
User-agent: Mutt/1.4.2.1i

Hi,

On Thu, Mar 29, 2007 at 02:25:31PM +0200, Jules Colding posted an
Automake question to the Autoconf list.  (Understandable mistake, of
course.)

I suppose the question can be deduced from my answer.  :-)

> What is the recommended and portable way of doing what I do above to
> avoid the warnings and to be nice to automake?

>    OBJS            = $(patsubst %.c,%.o,$(STUB_SRC))

this can ce written portably as:

OBJS = $(STUB_SRC:.c=.o)

>    EXTRA_DIST = 
> $(pkgconfig_DATA:-$(LIBBRUTUS_CURRENT).$(LIBBRUTUS_REVISION).pc=.pc.in)

It is not portable to use immersed variable expansion.
But if LIBBRUTUS_CURRENT and LIBBRUTUS_REVISION are AC_SUBSTed
variables, you can use the @...@ form here:

EXTRA_DIST = $(pkgconfig_DATA:address@hidden@address@hidden@.pc=.pc.in)

>    CWD             = $(shell pwd)
>    BARE_NAMES      = $(notdir $(IDL_FILES))
>    LOCAL_IDL_FILES = $(addprefix $(CWD)/,$(BARE_NAMES))

I do not know any easy way to replace these.  You would have to change
the logic of the makefile.

> Needless to say that all of this worked without any warnings prior to
> automake-1.10. 

To switch these warnings off for a particular Makefile.am, use

AUTOMAKE_OPTIONS = -Wno-portability

To switch them off glibally, use

AM_INIT_AUTOMAKE([-Wno-portability])

in your configure.ac.

For your information, I found this comment in Automake 1.9.5:
(and I believe is was there since 1.7 till 1.9.6)

  # FIXME: 'portability' warnings are currently disabled by default.
  # Eventually we want to turn them on in GNU and GNITS modes, but
  # we don't do this yet in Automake 1.7 to help the 1.6/1.7
  # transition.
  #
  # Indeed there would be only two ways to get rid of these new
  # warnings:
  #  1. adjusting Makefile.am
  #     This is not always easy (or wanted).  Consider %-rules or
  #     $(function args) variables.
  #  2. using -Wno-portability
  #     This means there is no way to have the same Makefile.am
  #     working both with Automake 1.6 and 1.7 (since 1.6 does not
  #     understand -Wno-portability).
  #
  # In Automake 1.8 (or whatever it is called) we can turn these
  # warnings on, since -Wno-portability will not be an issue for
  # the 1.7/1.8 transition.

Have a nice day,
        Stepan Kasal




reply via email to

[Prev in Thread] Current Thread [Next in Thread]