[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Reg Make build on LINUX
From: |
A, Sravanthi |
Subject: |
RE: Reg Make build on LINUX |
Date: |
Sat, 24 May 2008 12:18:24 +0530 |
Smith,
Thanks for your advise on stopping build on first error. It worked when
I called folders individually. Please reply to me me on another question
how to rebuild objects automatically when depencies changes. Is there
any replacement for Solaris Keep_State in Linux?
Thanks,
Sravanthi
-----Original Message-----
From: A, Sravanthi [CCC-OT_IT]
Sent: Saturday, May 24, 2008 11:33 AM
To: 'address@hidden'
Cc: address@hidden; Dave Korn
Subject: RE: Reg Make build on LINUX
Smith,
Thanks a lot for your reply. That answers my problem. Let me try this
and get back. I have one more issues if you can help?
My make doesn't build with latest files if any changes done. Let me know
any alternative without makedepends.
Also can you send me link for [ You should rewrite your recursion as
discussed in the GNU make manual, with a separate rule for each
subdirectory.]
Thanks,
Sravanthi
-----Original Message-----
From: Paul Smith [mailto:address@hidden
Sent: Friday, May 23, 2008 11:52 PM
To: Dave Korn
Cc: A, Sravanthi [CCC-OT_IT]; address@hidden
Subject: RE: Reg Make build on LINUX
On Fri, 2008-05-23 at 19:14 +0100, Dave Korn wrote:
> A, Sravanthi wrote on 23 May 2008 12:14:
>
> > Hi team,
> >
> > Iam trying to build my application using make on Linux server. But
> > my build doesn't stop after first error. I tried -S options but
> > doesn't seems to help.
>
> The top-level makefile might be invoking the sub-makes using "-" at
> the start of the commandline to suppress errors? See the "Errors in
Commands"
> section of the man/info page.
It's almost certainly the classic case of using a for-loop to do
recursion, like this:
all:
for dir in $(SUBDIRS); do cd $$dir && $(MAKE) all; done
or similar. If one of the sub-makes other than the last one fails, the
loop doesn't fail it just keeps going.
Solaris make invokes all shells with the "-e" flag, which causes the
command to exit immediately on any error, so the above "works".
However, it is not conformant to the POSIX spec for make, and GNU make
has never worked like that.
You should rewrite your recursion as discussed in the GNU make manual,
with a separate rule for each subdirectory. That way when one fails,
the make will fail (and flags like -k and -j will work properly as
well).
--
------------------------------------------------------------------------
-------
Paul D. Smith <address@hidden> Find some GNU make tips at:
http://www.gnu.org http://make.mad-scientist.us
"Please remain calm...I may be mad, but I am a professional." --Mad
Scientist