________________________________________ >From: automake-bounces+xochitl_lunde=tripplite....@gnu.org >[automake->bounces+xochitl_lunde=tripplite....@gnu.org] on behalf of Jules >Colding [cold...@venalicium.dk] >Sent: Monday, September 16, 2013 3:34 PM >To: Nate Bargmann >Cc: automake@gnu.org >Subject: Re: Problem with circular dependencies
On Sep 16, 2013, at 4:52 PM, Nate Bargmann <n...@n0nb.us> wrote: >> * On 2013 15 Sep 13:18 -0500, Jules Colding wrote: > >>> So, how do I tell the top-level Makefile.am that it should traverse all >>> sub-directories building only the libraries, and then traverse the >>> sub-directories again building only the test applications? > >> Would it work to break the test programs into their own subdirectory and >> write the Makefile.am as needed? >Yes, that would work. I just wanted to keep each test program together with >the code which is tested. >Anyways, thanks for the advises. I'll read the paper on evil recursiveness and >ponder what to do. >Thanks, > jules Is there any reason that the two libraries have to be compiled as two separate libraries if they depend on each other? You can also have Make create just one library out of the files in the two directories. You can keep the code organized in the structure, but that doesn't mean you can't build it all together into one thing. Or, if you switch to shared libraries, maybe you can use a linker flag if it's supported, such as '-undefined dynamic_lookup' so that the symbols will only be resolved when the test program runs. That only works if you are not running the tests as soon as they are built, because you need both libraries to be already built to run. Best Regards, Xochitl ________________________________ This message is for the addressee's use only. It may contain confidential information. If you receive this message in error, please delete it and notify the sender. Tripp Lite disclaims all warranties and liabilities, and assumes no responsibility for viruses which may infect an email sent to you from Tripp Lite and which damage your electronic systems or information. It is your responsibility to maintain virus detection systems to prevent damage to your electronic systems and information.