Hi Pablo, Thanks for your reply. I actually do not know how many targets will be compiled (we have more than 10k targets in a Makefile). So, is there a straightforward way to know that only a single code file is changed and it will be an incremental build and not a full build ?
Regarding return value of make - I want to print the status of make before make exit. Somewhere in main.c at the end ? Can I do this ? Which variable holds the status inside make source code ? thanks in advance! You guys are awesome. On Thu, May 5, 2022 at 5:56 PM Juan Pablo Garibotti Arias < jp.garibo...@gmail.com> wrote: > You can do a run dry, which will print what recipes to run without running > them. From > https://www.gnu.org/software/make/manual/html_node/Instead-of-Execution.html > : > ‘-n’ > ‘--just-print’ > ‘--dry-run’ > ‘--recon’ > “No-op”. Causes make to print the recipes that are needed to make the > targets up to date, but not actually execute them. Note that some recipes > are still executed, even with this flag (see How the MAKE Variable Works). > Also any recipes needed to update included makefiles are still executed > (see How Makefiles Are Remade). > > Aside from that, make always does incremental builds, since it only > updates what it believes needs to be updated. Poorly set up makefiles may > cause it to build more or less than is actually required. > > To know if it passed or failed you can check the return value of calling > make. If it encountered no errors it should return 0. > > On Thu, May 5, 2022 at 2:11 PM nikhil jain <jainnikhi...@gmail.com> wrote: > >> Hi Guys, >> >> I have been using gmake from a long time. >> I wanted to know 2 things - >> >> 1) How do I know if the compilation is incremental or full ? I mean is >> there a way in make to know that the compile is incremental ? Any variable >> which is set ? any ENV variable ? >> 2) How do I know the status of the make in main function ? How to know if >> the build passed or failed ? >> >> This is extremely urgent. Please help. >> >> On Sun, Jan 24, 2021 at 10:59 AM nikhil jain <jainnikhi...@gmail.com> >> wrote: >> >> > Hi, >> > >> > There are few like you said SGE's qmake. There is one from IBM called >> > lsmake but it needs LSF to run. >> > You can actually develop your own non-standard gmake build by filling >> out >> > the stubs in the remote-stub.c file. That will be much easier. >> > >> > Thanks >> > Nikhil >> > >> > On Sat, Jan 23, 2021 at 2:13 AM Cook, Malcolm <m...@stowers.org> wrote: >> > >> >> >The standard build of GNU make does not support any remote operations >> and >> >> >it links in the remote-stub.c file which provides do-nothing versions >> of >> >> >all the remote functions. >> >> >> >> Is there a non-standard build that *does* support remote operations? I >> >> am familiar with SGE's qmake. Is this such a build? Are there others? >> >> >> >> Inquiring minds.... >> >> >> > >> >