automake
[Top][All Lists]
Advanced

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

Automake barfing on $(shell ...) syntax?


From: Philip Prindeville
Subject: Automake barfing on $(shell ...) syntax?
Date: Mon, 20 Dec 2010 17:39:39 -0800
User-agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7

The odd thing is that even though it complains, it still generates the correct 
Makefile in the first case:

SYMFILES = $(srcdir)/uni.h $(shell $(CC) $(CFLAGS) -E $(srcdir)/header.c | 
$(AWK) -f $(srcdir)/script.awk)

Does automake need to be $(shell ...)-aware?


The code in question lives here.

http://linux-atm.cvs.sourceforge.net/viewvc/linux-atm/linux-atm/

Also in the case of nested directories where everything is built recursively 
from a single invocation at the project root directory, what is the methodology 
for specifying one compiler for host builds, i.e. $(HOSTCC), one compiler for 
target builds i.e. $(CC), one set of CFLAGS for stuff compiled natively (e.g. 
in this case we build and run a preprocessor that generates intermediate state 
tables, which we then include as a header file that then gets cross-compiled to 
the target binary).

In that case, we have CFLAGS for the local host that the build is running on, 
and CFLAGS for the target host as well, and need to specify both.

http://linux-atm.cvs.sourceforge.net/viewvc/linux-atm/linux-atm/src/qgen/Makefile.am?view=markup


-------- Original Message --------
Subject:        Due for a new release?
Date:   Sun, 19 Dec 2010 20:14:28 -0800
From:   Philip Prindeville <address@hidden>
To:     address@hidden



2.5.1 has now been out over a year.

Noticed that there are some issues w/ building this version, especially in 
cross-compilation environments.

...
Running libtoolize...
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize:   `/usr/share/aclocal/libtool.m4'
libtoolize:   `/usr/share/aclocal/ltoptions.m4'
libtoolize:   `/usr/share/aclocal/ltversion.m4'
libtoolize:   `/usr/share/aclocal/ltsugar.m4'
libtoolize:   `/usr/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
Running aclocal...
Running autoconf...
Running autoheader...
Running automake...
src/q2931/Makefile.am:21: shell $(CC: non-POSIX variable name
src/q2931/Makefile.am:21: (probably a GNU make extension)
src/qgen/Makefile.am:8: `CFLAGS' is a user variable, you should not override it;
src/qgen/Makefile.am:8: use `AM_CFLAGS' instead.
Finished...  Now run './configure' and 'make'...
...

The first warning comes from:

SYMFILES = $(srcdir)/uni.h $(shell $(CC) $(CFLAGS) -E $(srcdir)/header.c | 
$(AWK) -f $(srcdir)/script.awk)


and the second warning from:

CFLAGS = @CFLAGS_FOR_BUILD@


Could we do a little cleanup on it and release 2.5.2?

Thanks,

-Philip







reply via email to

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