Make concurrent builds work.

To stop the errors when building concurrently, we make a number of
changes:

        1.  stop including generated files in *_SOURCES,

        2.  make *-protos.h and *-private.h depend on the *_SOURCES,

        3.  make all objects depend on *-{protos,private}.h,

        4.  in a few places change dir/header.h to $(srcdir)/dir/header.h,

This appears to work for me with make -j16 on a 4-way box.
This commit is contained in:
Roland C. Dowdeswell
2012-08-08 00:04:04 +01:00
parent d9d8e94d66
commit be5afdbf7f
10 changed files with 102 additions and 45 deletions

View File

@@ -6,7 +6,7 @@ AM_CPPFLAGS += $(INCLUDE_hcrypto)
lib_LTLIBRARIES = libheimntlm.la
dist_include_HEADERS = heimntlm.h heimntlm-protos.h
dist_include_HEADERS = heimntlm.h $(srcdir)/heimntlm-protos.h
nodist_include_HEADERS = ntlm_err.h
@@ -26,7 +26,7 @@ libheimntlm_la_LIBADD = \
$(LIB_hcrypto) \
$(LIBADD_roken)
$(srcdir)/heimntlm-protos.h:
$(srcdir)/heimntlm-protos.h: $(dist_libheimntlm_la_SOURCES)
cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -o heimntlm-protos.h $(dist_libheimntlm_la_SOURCES) || rm -f heimntlm-protos.h
$(libheimntlm_la_OBJECTS): $(srcdir)/heimntlm-protos.h ntlm_err.h