automake
[Top][All Lists]
Advanced

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

Testing automate builds with -q


From: Rob Napier
Subject: Testing automate builds with -q
Date: Fri, 5 Aug 2011 21:20:56 -0400

I've seen the following issue on two automake-based libraries (libevent and
libidn), leading me to believe it's an issue with automake rather than the
individual libraries. The following always fails:

   make && make -q

"make -q" should return 0 if the previous make completed successfully, but
it doesn't. It return 2 indicating an error. I haven't been able to figure
out what the actual error is, though:

monoceros:bld rnapier$ make
make  all-recursive
Making all in .
Making all in include
make[2]: Nothing to be done for `all'.
Making all in sample
make[2]: Nothing to be done for `all'.
Making all in test
make  all-am
make[3]: Nothing to be done for `all-am'.
monoceros:bld rnapier$ make -q
make  all-recursive
Making all in .
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
monoceros:bld rnapier$ echo $?
2
monoceros:bld rnapier$

As part of my build, I compile various libraries like libevent. If I always
call "make install" in the build, it will force my entire project to rebuild
(because this touches all the files). So I've been trying to use the
following make rule:

all: $(BUILDDIR)/Makefile
$(MAKE) -q -s -C $(BUILDDIR) || $(MAKE) -C $(BUILDDIR) install

Unfortunately, the -q part always returns 2 for automake-based builds.

Is there another way to achieve the underlying goal (automatically build
third-party libraries, including correctly rebuilding them if there were
local changes, but with correct dependency checking)?

This is make 3.81 on Mac, but I'm seeing the same behavior on Linux.

I haven't been able to find an error in the "make -q -d" output.

Thanks,
-Rob


reply via email to

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