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:
@@ -12,7 +12,6 @@ login_SOURCES = \
|
||||
login.c \
|
||||
login_access.c \
|
||||
login_locl.h \
|
||||
login-protos.h \
|
||||
loginpaths.h \
|
||||
limits_conf.c \
|
||||
osfc2.c \
|
||||
@@ -32,7 +31,7 @@ LDADD = $(LIB_otp) \
|
||||
$(LIB_security) \
|
||||
$(DBLIB)
|
||||
|
||||
$(srcdir)/login-protos.h:
|
||||
$(srcdir)/login-protos.h: $(login_SOURCES)
|
||||
cd $(srcdir); perl ../../cf/make-proto.pl -o login-protos.h -q -P comment $(login_SOURCES) || rm -f login-protos.h
|
||||
|
||||
$(login_OBJECTS): $(srcdir)/login-protos.h
|
||||
|
@@ -17,14 +17,13 @@ kcm_SOURCES = \
|
||||
glue.c \
|
||||
headers.h \
|
||||
kcm_locl.h \
|
||||
kcm-protos.h \
|
||||
log.c \
|
||||
main.c \
|
||||
protocol.c \
|
||||
sessions.c \
|
||||
renew.c
|
||||
|
||||
$(srcdir)/kcm-protos.h:
|
||||
$(srcdir)/kcm-protos.h: $(kcm_SOURCES)
|
||||
cd $(srcdir); perl ../cf/make-proto.pl -o kcm-protos.h -q -P comment $(kcm_SOURCES) || rm -f kcm-protos.h
|
||||
|
||||
$(kcm_OBJECTS): $(srcdir)/kcm-protos.h
|
||||
|
@@ -36,8 +36,6 @@ kdc_tester_SOURCES = \
|
||||
kdc-tester.c
|
||||
|
||||
libkdc_la_SOURCES = \
|
||||
kdc-private.h \
|
||||
kdc-protos.h \
|
||||
default_config.c \
|
||||
set_dbinfo.c \
|
||||
digest.c \
|
||||
@@ -53,8 +51,19 @@ libkdc_la_SOURCES = \
|
||||
windc.c \
|
||||
rx.h
|
||||
|
||||
KDC_PROTOS = $(srcdir)/kdc-protos.h $(srcdir)/kdc-private.h
|
||||
|
||||
$(libkdc_la_OBJECTS): $(srcdir)/kdc-protos.h $(srcdir)/kdc-private.h
|
||||
ALL_OBJECTS = $(kdc_OBJECTS)
|
||||
ALL_OBJECTS += $(kdc_replay_OBJECTS)
|
||||
ALL_OBJECTS += $(kdc_tester_OBJECTS)
|
||||
ALL_OBJECTS += $(libkdc_la_OBJECTS)
|
||||
ALL_OBJECTS += $(string_to_key_OBJECTS)
|
||||
ALL_OBJECTS += $(kstash_OBJECTS)
|
||||
ALL_OBJECTS += $(hprop_OBJECTS)
|
||||
ALL_OBJECTS += $(hpropd_OBJECTS)
|
||||
ALL_OBJECTS += $(digest_service_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(KDC_PROTOS)
|
||||
|
||||
libkdc_la_LDFLAGS = -version-info 2:0:0
|
||||
|
||||
@@ -63,10 +72,10 @@ libkdc_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
|
||||
endif
|
||||
$(libkdc_la_OBJECTS): $(srcdir)/version-script.map
|
||||
|
||||
$(srcdir)/kdc-protos.h:
|
||||
$(srcdir)/kdc-protos.h: $(libkdc_la_SOURCES)
|
||||
cd $(srcdir) && perl ../cf/make-proto.pl -q -P comment -o kdc-protos.h $(libkdc_la_SOURCES) || rm -f kdc-protos.h
|
||||
|
||||
$(srcdir)/kdc-private.h:
|
||||
$(srcdir)/kdc-private.h: $(libkdc_la_SOURCES)
|
||||
cd $(srcdir) && perl ../cf/make-proto.pl -q -P comment -p kdc-private.h $(libkdc_la_SOURCES) || rm -f kdc-private.h
|
||||
|
||||
|
||||
@@ -125,7 +134,7 @@ digest_service_LDADD = \
|
||||
kdc_replay_LDADD = libkdc.la $(LDADD) $(LIB_pidfile)
|
||||
kdc_tester_LDADD = libkdc.la $(LDADD) $(LIB_pidfile) $(LIB_heimbase)
|
||||
|
||||
include_HEADERS = kdc.h kdc-protos.h
|
||||
include_HEADERS = kdc.h $(srcdir)/kdc-protos.h
|
||||
|
||||
|
||||
krb5dir = $(includedir)/krb5
|
||||
|
@@ -152,7 +152,8 @@ CLEANFILES = \
|
||||
test_template_asn1_files test_template_asn1*.h* \
|
||||
test_asn1_files test_asn1*.h*
|
||||
|
||||
dist_include_HEADERS = der.h heim_asn1.h der-protos.h der-private.h
|
||||
dist_include_HEADERS = der.h heim_asn1.h
|
||||
dist_include_HEADERS += $(srcdir)/der-protos.h $(srcdir)/der-private.h
|
||||
dist_include_HEADERS += asn1-common.h
|
||||
|
||||
nodist_include_HEADERS = asn1_err.h
|
||||
@@ -180,9 +181,8 @@ priv_headers += test_asn1.h test_asn1-priv.h
|
||||
|
||||
|
||||
|
||||
$(asn1_compile_OBJECTS): asn1parse.h asn1parse.c $(srcdir)/der-protos.h $(srcdir)/der-private.h
|
||||
$(libasn1_la_OBJECTS): $(nodist_include_HEADERS) $(priv_headers) asn1_err.h $(srcdir)/der-protos.h $(srcdir)/der-private.h
|
||||
$(libasn1base_la_OBJECTS): asn1_err.h $(srcdir)/der-protos.h $(srcdir)/der-private.h
|
||||
$(asn1_compile_OBJECTS): asn1parse.h asn1parse.c
|
||||
$(libasn1_la_OBJECTS): $(nodist_include_HEADERS) $(priv_headers)
|
||||
$(check_gen_OBJECTS): test_asn1.h
|
||||
$(check_template_OBJECTS): test_template_asn1.h test_template_asn1-priv.h test_template_asn1_files
|
||||
$(asn1_print_OBJECTS): krb5_asn1.h
|
||||
@@ -257,8 +257,19 @@ EXTRA_DIST = \
|
||||
test.gen \
|
||||
version-script.map
|
||||
|
||||
$(srcdir)/der-protos.h:
|
||||
DER_PROTOS = $(srcdir)/der-protos.h $(srcdir)/der-private.h
|
||||
|
||||
ALL_OBJECTS = $(libasn1_la_OBJECTS)
|
||||
ALL_OBJECTS += $(libasn1base_la_OBJECTS)
|
||||
ALL_OBJECTS += $(asn1_print_OBJECTS)
|
||||
ALL_OBJECTS += $(asn1_compile_OBJECTS)
|
||||
ALL_OBJECTS += $(asn1_gen_OBJECTS)
|
||||
ALL_OBJECTS += $(check_template_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(DER_PROTOS) asn1_err.h
|
||||
|
||||
$(srcdir)/der-protos.h: $(dist_libasn1base_la_SOURCES)
|
||||
cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -o der-protos.h $(dist_libasn1base_la_SOURCES) || rm -f der-protos.h
|
||||
|
||||
$(srcdir)/der-private.h:
|
||||
$(srcdir)/der-private.h: $(dist_libasn1base_la_SOURCES)
|
||||
cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p der-private.h $(dist_libasn1base_la_SOURCES) || rm -f der-private.h
|
||||
|
@@ -45,7 +45,7 @@ krb5src = \
|
||||
krb5/external.c \
|
||||
krb5/get_mic.c \
|
||||
krb5/gsskrb5_locl.h \
|
||||
krb5/gsskrb5-private.h \
|
||||
$(srcdir)/krb5/gsskrb5-private.h \
|
||||
krb5/import_name.c \
|
||||
krb5/import_sec_context.c \
|
||||
krb5/indicate_mechs.c \
|
||||
@@ -164,7 +164,7 @@ spnegosrc = \
|
||||
spnego/external.c \
|
||||
spnego/init_sec_context.c \
|
||||
spnego/spnego_locl.h \
|
||||
spnego/spnego-private.h
|
||||
$(srcdir)/spnego/spnego-private.h
|
||||
|
||||
ntlmsrc = \
|
||||
ntlm/accept_sec_context.c \
|
||||
@@ -183,7 +183,6 @@ ntlmsrc = \
|
||||
ntlm/export_sec_context.c \
|
||||
ntlm/external.c \
|
||||
ntlm/ntlm.h \
|
||||
ntlm/ntlm-private.h \
|
||||
ntlm/import_name.c \
|
||||
ntlm/import_sec_context.c \
|
||||
ntlm/indicate_mechs.c \
|
||||
@@ -199,7 +198,7 @@ ntlmsrc = \
|
||||
ntlm/release_name.c \
|
||||
ntlm/kdc.c
|
||||
|
||||
$(srcdir)/ntlm/ntlm-private.h:
|
||||
$(srcdir)/ntlm/ntlm-private.h: $(ntlmsrc)
|
||||
cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p ntlm/ntlm-private.h $(ntlmsrc) || rm -f ntlm/ntlm-private.h
|
||||
|
||||
dist_libgssapi_la_SOURCES = \
|
||||
@@ -234,9 +233,9 @@ man_MANS = gssapi.3 gss_acquire_cred.3 mech/mech.5
|
||||
include_HEADERS = gssapi.h
|
||||
noinst_HEADERS = \
|
||||
gssapi_mech.h \
|
||||
ntlm/ntlm-private.h \
|
||||
spnego/spnego-private.h \
|
||||
krb5/gsskrb5-private.h
|
||||
$(srcdir)/ntlm/ntlm-private.h \
|
||||
$(srcdir)/spnego/spnego-private.h \
|
||||
$(srcdir)/krb5/gsskrb5-private.h
|
||||
|
||||
nobase_include_HEADERS = \
|
||||
gssapi/gssapi.h \
|
||||
|
@@ -85,7 +85,6 @@ dist_libhdb_la_SOURCES = \
|
||||
hdb-keytab.c \
|
||||
hdb-mitdb.c \
|
||||
hdb_locl.h \
|
||||
hdb-private.h \
|
||||
keys.c \
|
||||
keytab.c \
|
||||
dbinfo.c \
|
||||
@@ -97,7 +96,7 @@ nodist_libhdb_la_SOURCES = $(BUILT_SOURCES)
|
||||
|
||||
libhdb_la_DEPENDENCIES = version-script.map
|
||||
|
||||
include_HEADERS = hdb.h hdb-protos.h
|
||||
include_HEADERS = hdb.h $(srcdir)/hdb-protos.h
|
||||
nodist_include_HEADERS = hdb_err.h hdb_asn1.h
|
||||
|
||||
libhdb_la_LIBADD = \
|
||||
@@ -111,13 +110,21 @@ libhdb_la_LIBADD = \
|
||||
$(DBLIB) \
|
||||
$(LIB_NDBM)
|
||||
|
||||
$(libhdb_la_OBJECTS): $(srcdir)/hdb-protos.h $(srcdir)/hdb-private.h
|
||||
HDB_PROTOS = $(srcdir)/hdb-protos.h $(srcdir)/hdb-private.h
|
||||
|
||||
ALL_OBJECTS = $(libhdb_la_OBJECTS)
|
||||
ALL_OBJECTS += $(test_dbinfo_OBJECTS)
|
||||
ALL_OBJECTS += $(test_hdbkeys_OBJECTS)
|
||||
ALL_OBJECTS += $(test_mkey_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(HDB_PROTOS)
|
||||
|
||||
$(libhdb_la_OBJECTS): hdb_asn1.h hdb_asn1-priv.h hdb_err.h
|
||||
|
||||
$(srcdir)/hdb-protos.h:
|
||||
$(srcdir)/hdb-protos.h: $(dist_libhdb_la_SOURCES)
|
||||
cd $(srcdir); perl ../../cf/make-proto.pl -q -P comment -o hdb-protos.h $(dist_libhdb_la_SOURCES) || rm -f hdb-protos.h
|
||||
|
||||
$(srcdir)/hdb-private.h:
|
||||
$(srcdir)/hdb-private.h: $(dist_libhdb_la_SOURCES)
|
||||
cd $(srcdir); perl ../../cf/make-proto.pl -q -P comment -p hdb-private.h $(dist_libhdb_la_SOURCES) || rm -f hdb-private.h
|
||||
|
||||
$(gen_files_hdb) hdb_asn1.hx hdb_asn1-priv.hx: hdb_asn1_files
|
||||
|
@@ -62,8 +62,6 @@ dist_libhx509_la_SOURCES = \
|
||||
error.c \
|
||||
env.c \
|
||||
file.c \
|
||||
hx509-private.h \
|
||||
hx509-protos.h \
|
||||
hx509.h \
|
||||
hx_locl.h \
|
||||
sel.c \
|
||||
@@ -116,7 +114,7 @@ $(gen_files_ocsp) ocsp_asn1.hx ocsp_asn1-priv.hx: ocsp_asn1_files
|
||||
$(gen_files_pkcs10) pkcs10_asn1.hx pkcs10_asn1-priv.hx: pkcs10_asn1_files
|
||||
$(gen_files_crmf) crmf_asn1.hx crmf_asn1-priv.hx: crmf_asn1_files
|
||||
|
||||
dist_include_HEADERS = hx509.h hx509-protos.h
|
||||
dist_include_HEADERS = hx509.h $(srcdir)/hx509-protos.h
|
||||
|
||||
nodist_include_HEADERS = hx509_err.h
|
||||
nodist_include_HEADERS += ocsp_asn1.h
|
||||
@@ -137,13 +135,20 @@ pkcs10_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/pkcs10.asn1 $(srcdir)/pkcs10.op
|
||||
crmf_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/crmf.asn1
|
||||
$(heim_verbose)$(ASN1_COMPILE) $(srcdir)/crmf.asn1 crmf_asn1 || (rm -f crmf_asn1_files ; exit 1)
|
||||
|
||||
$(libhx509_la_OBJECTS): $(srcdir)/hx509-protos.h $(srcdir)/hx509-private.h $(srcdir)/hx_locl.h
|
||||
HX509_PROTOS = $(srcdir)/hx509-protos.h $(srcdir)/hx509-private.h
|
||||
|
||||
ALL_OBJECTS = $(libhx509_la_OBJECTS)
|
||||
ALL_OBJECTS += $(hxtool_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(HX509_PROTOS)
|
||||
|
||||
$(libhx509_la_OBJECTS): $(srcdir)/hx_locl.h
|
||||
$(libhx509_la_OBJECTS): ocsp_asn1.h pkcs10_asn1.h
|
||||
|
||||
$(srcdir)/hx509-protos.h:
|
||||
$(srcdir)/hx509-protos.h: $(dist_libhx509_la_SOURCES)
|
||||
$(heim_verbose)cd $(srcdir) && perl ../../cf/make-proto.pl -R '^(_|^C)' -E HX509_LIB -q -P comment -o hx509-protos.h $(dist_libhx509_la_SOURCES) || rm -f hx509-protos.h
|
||||
|
||||
$(srcdir)/hx509-private.h:
|
||||
$(srcdir)/hx509-private.h: $(dist_libhx509_la_SOURCES)
|
||||
$(heim_verbose)cd $(srcdir) && perl ../../cf/make-proto.pl -q -P comment -p hx509-private.h $(dist_libhx509_la_SOURCES) || rm -f hx509-private.h
|
||||
|
||||
bin_PROGRAMS = hxtool
|
||||
@@ -154,7 +159,7 @@ hxtool-commands.c hxtool-commands.h: hxtool-commands.in $(SLC)
|
||||
dist_hxtool_SOURCES = hxtool.c
|
||||
nodist_hxtool_SOURCES = hxtool-commands.c hxtool-commands.h
|
||||
|
||||
$(hxtool_OBJECTS): hxtool-commands.h
|
||||
$(hxtool_OBJECTS): hxtool-commands.h hx509_err.h
|
||||
|
||||
hxtool_CPPFLAGS = $(INCLUDE_hcrypto)
|
||||
hxtool_LDADD = \
|
||||
|
@@ -33,7 +33,7 @@ kadm5includedir = $(includedir)/kadm5
|
||||
buildkadm5include = $(buildinclude)/kadm5
|
||||
|
||||
dist_kadm5include_HEADERS = admin.h private.h kadm5-pwcheck.h
|
||||
dist_kadm5include_HEADERS += kadm5-protos.h kadm5-private.h
|
||||
dist_kadm5include_HEADERS += $(srcdir)/kadm5-protos.h $(srcdir)/kadm5-private.h
|
||||
|
||||
nodist_kadm5include_HEADERS = kadm5_err.h
|
||||
|
||||
@@ -164,17 +164,29 @@ CLEANFILES = kadm5_err.c kadm5_err.h iprop-commands.h iprop-commands.c
|
||||
|
||||
kadm5_err.h: kadm5_err.et
|
||||
|
||||
$(libkadm5clnt_la_OBJECTS) $(libkadm5srv_la_OBJECTS): $(srcdir)/kadm5-protos.h $(srcdir)/kadm5-private.h
|
||||
ALL_OBJECTS = $(libkadm5clnt_la_OBJECTS)
|
||||
ALL_OBJECTS += $(libkadm5srv_la_OBJECTS)
|
||||
ALL_OBJECTS += $(ipropd_master_OBJECTS)
|
||||
ALL_OBJECTS += $(ipropd_slave_OBJECTS)
|
||||
ALL_OBJECTS += $(iprop_log_OBJECTS)
|
||||
ALL_OBJECTS += $(test_pw_quality_OBJECTS)
|
||||
ALL_OBJECTS += $(sample_passwd_check_la_OBJECTS)
|
||||
ALL_OBJECTS += $(default_keys_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(srcdir)/kadm5-protos.h $(srcdir)/kadm5-private.h
|
||||
|
||||
KADM5_PROTOS_SRCS = $(dist_libkadm5clnt_la_SOURCES)
|
||||
KADM5_PROTOS_SRCS += $(dist_libkadm5srv_la_SOURCES)
|
||||
|
||||
proto_opts = -q -R '^(_|kadm5_c_|kadm5_s_|kadm5_log)' -P comment
|
||||
$(srcdir)/kadm5-protos.h:
|
||||
$(srcdir)/kadm5-protos.h: $(KADM5_PROTOS_SRCS)
|
||||
cd $(srcdir); perl ../../cf/make-proto.pl $(proto_opts) \
|
||||
-o kadm5-protos.h \
|
||||
$(dist_libkadm5clnt_la_SOURCES) \
|
||||
$(dist_libkadm5srv_la_SOURCES) \
|
||||
|| rm -f kadm5-protos.h
|
||||
|
||||
$(srcdir)/kadm5-private.h:
|
||||
$(srcdir)/kadm5-private.h: $(KADM5_PROTOS_SRCS)
|
||||
cd $(srcdir); perl ../../cf/make-proto.pl $(proto_opts) \
|
||||
-p kadm5-private.h \
|
||||
$(dist_libkadm5clnt_la_SOURCES) \
|
||||
|
@@ -15,7 +15,8 @@ noinst_PROGRAMS = \
|
||||
test_gic \
|
||||
test_kuserok \
|
||||
test_renew \
|
||||
test_rfc3961
|
||||
test_rfc3961
|
||||
|
||||
|
||||
noinst_LTLIBRARIES = \
|
||||
librfc3961.la
|
||||
@@ -247,7 +248,22 @@ if versionscript
|
||||
libkrb5_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
|
||||
endif
|
||||
|
||||
$(libkrb5_la_OBJECTS) $(verify_krb5_conf_OBJECTS) $(librfc3961_la_OBJECTS): $(srcdir)/krb5-protos.h $(srcdir)/krb5-private.h krb5_err.h heim_err.h k524_err.h krb5_err.h krb_err.h k524_err.h
|
||||
ALL_OBJECTS = $(libkrb5_la_OBJECTS)
|
||||
ALL_OBJECTS += $(verify_krb5_conf_OBJECTS)
|
||||
ALL_OBJECTS += $(librfc3961_la_OBJECTS)
|
||||
ALL_OBJECTS += $(librfc3961_la_OBJECTS)
|
||||
ALL_OBJECTS += $(krbhst_test_OBJECTS)
|
||||
ALL_OBJECTS += $(test_alname_OBJECTS)
|
||||
ALL_OBJECTS += $(test_crypto_OBJECTS)
|
||||
ALL_OBJECTS += $(test_forward_OBJECTS)
|
||||
ALL_OBJECTS += $(test_get_addrs_OBJECTS)
|
||||
ALL_OBJECTS += $(test_gic_OBJECTS)
|
||||
ALL_OBJECTS += $(test_kuserok_OBJECTS)
|
||||
ALL_OBJECTS += $(test_renew_OBJECTS)
|
||||
ALL_OBJECTS += $(test_rfc3961_OBJECTS)
|
||||
|
||||
$(ALL_OBJECTS): $(srcdir)/krb5-protos.h $(srcdir)/krb5-private.h
|
||||
$(ALL_OBJECTS): krb5_err.h heim_err.h k524_err.h krb5_err.h krb_err.h k524_err.h
|
||||
|
||||
librfc3961_la_SOURCES = \
|
||||
crc.c \
|
||||
@@ -341,8 +357,8 @@ man_MANS = \
|
||||
|
||||
dist_include_HEADERS = \
|
||||
krb5.h \
|
||||
krb5-protos.h \
|
||||
krb5-private.h \
|
||||
$(srcdir)/krb5-protos.h \
|
||||
$(srcdir)/krb5-private.h \
|
||||
krb5_ccapi.h
|
||||
|
||||
nodist_include_HEADERS = krb5_err.h heim_err.h k524_err.h
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user