-
Notifications
You must be signed in to change notification settings - Fork 708
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parallel build failure due to automakes BUILT_SOURCES and subdir-objects #156
Comments
@ncopa, can you submit a Pull Request so we can review and merge in your fix? Do you think it would be possible to test this issue in the Travis CI environment? |
This is a bug that got overlooked in the conversion to
I've never run into the reporter's problem on my desktop system, but I only have four CPU cores, so... I'm not sure we can test for this in travis-ci, though. |
Actually, wait, listing @ncopa Can you confirm what |
I doubt this will be reproduceable in travis. looks like they give you 1.5 virutal cpus... the make command I used is something like It also happens with
This did not solve it. I think you maybe meant:
But that is also wrong because it adds the needed header as a link time dependency of the final executable. What we need is adding I don't think automake gives any proper way to specify dependencies of the _SOURCES. But what we could do is add this line:
That will the t/test-full.pb.h as a dependency for all the code2_cxx_generate_packed_data objects, including the cxx-generate-packed-data.$(OBJEXT) and the test-full.pb.h should always get generated first. I tested it, it works - and I think that is better than my originally proposed patch since this is not as dependant on the automake internals. |
The object file name is not what expected when building non-recursive. Rather that expect autoamek to generate a specific filename, we simply make the generated header a dependency of all objects for cxx-generate-packed-data. This fixes issue protobuf-c#156.
Fix commited to |
hi,but it's not slove my problem,it is not work,i don't konw why. |
I get build failure on my 12 core (with HT so 24 "cpus") build server with -j24:
I dont know if this is an automake bug or "feature". It seems like this row in Makefile.am is supposed to make sure that the generated t/test-full.pb.h is built first:
but it seems like automake adds some extra prefix due to building things in subdirs (and enabling 'subdir-objects' in with AM_INIT_AUTOMAKE) so there should probably be another line with:
The text was updated successfully, but these errors were encountered: