Support parallelized builds on Windows
This commit is contained in:
		| @@ -31,6 +31,8 @@ | |||||||
|  |  | ||||||
| RELDIR=lib\asn1 | RELDIR=lib\asn1 | ||||||
|  |  | ||||||
|  | intcflags=-I$(SRCDIR) -I$(OBJ) | ||||||
|  |  | ||||||
| !include ../../windows/NTMakefile.w32 | !include ../../windows/NTMakefile.w32 | ||||||
|  |  | ||||||
| gen_files_k5 =						    \ | gen_files_k5 =						    \ | ||||||
| @@ -768,9 +770,3 @@ test-run: | |||||||
|  |  | ||||||
| test:: test-binaries test-run | test:: test-binaries test-run | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: |  | ||||||
| 	$(C2OBJ) -I$(SRCDIR) -I$(OBJ) |  | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: |  | ||||||
| 	$(C2OBJ) -I$(SRCDIR) -I$(OBJ) |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -91,7 +91,6 @@ mechsrc = \ | |||||||
| 	mech/context.h \ | 	mech/context.h \ | ||||||
| 	mech/context.c \ | 	mech/context.c \ | ||||||
| 	mech/cred.h \ | 	mech/cred.h \ | ||||||
| 	mech/doxygen.c \ |  | ||||||
| 	mech/gss_accept_sec_context.c \ | 	mech/gss_accept_sec_context.c \ | ||||||
| 	mech/gss_acquire_cred.c \ | 	mech/gss_acquire_cred.c \ | ||||||
| 	mech/gss_add_cred.c \ | 	mech/gss_add_cred.c \ | ||||||
| @@ -309,7 +308,6 @@ libgssapi_OBJs = \ | |||||||
| 	$(OBJ)\krb5/verify_mic.obj \ | 	$(OBJ)\krb5/verify_mic.obj \ | ||||||
| 	$(OBJ)\krb5/wrap.obj \ | 	$(OBJ)\krb5/wrap.obj \ | ||||||
| 	$(OBJ)\mech/context.obj \ | 	$(OBJ)\mech/context.obj \ | ||||||
| 	$(OBJ)\mech/doxygen.obj \ |  | ||||||
| 	$(OBJ)\mech/gss_accept_sec_context.obj \ | 	$(OBJ)\mech/gss_accept_sec_context.obj \ | ||||||
| 	$(OBJ)\mech/gss_acquire_cred.obj \ | 	$(OBJ)\mech/gss_acquire_cred.obj \ | ||||||
| 	$(OBJ)\mech/gss_add_cred.obj \ | 	$(OBJ)\mech/gss_add_cred.obj \ | ||||||
| @@ -406,38 +404,38 @@ libgssapi_OBJs = \ | |||||||
|  |  | ||||||
| GCOPTS=-I$(SRCDIR) -I$(OBJ) -Igssapi -DBUILD_GSSAPI_LIB | GCOPTS=-I$(SRCDIR) -I$(OBJ) -Igssapi -DBUILD_GSSAPI_LIB | ||||||
|  |  | ||||||
| {$(OBJ)\krb5}.c{$(OBJ)\krb5}.obj: | {$(OBJ)\krb5}.c{$(OBJ)\krb5}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\krb5 $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\krb5\ -Fd$(OBJ)\krb5\ -I$(OBJ)\krb5 $(GCOPTS) | ||||||
|  |  | ||||||
| {krb5}.c{$(OBJ)\krb5}.obj: | {krb5}.c{$(OBJ)\krb5}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\krb5 $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\krb5\ -Fd$(OBJ)\krb5\ -I$(OBJ)\krb5 $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)\mech}.c{$(OBJ)\mech}.obj: | {$(OBJ)\mech}.c{$(OBJ)\mech}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\mech $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\mech\ -Fd$(OBJ)\mech\ -I$(OBJ)\mech $(GCOPTS) | ||||||
|  |  | ||||||
| {mech}.c{$(OBJ)\mech}.obj: | {mech}.c{$(OBJ)\mech}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\mech -I$(OBJ)\gssapi $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\mech\ -Fd$(OBJ)\mech\ -I$(OBJ)\mech -I$(OBJ)\gssapi $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)\ntlm}.c{$(OBJ)\ntlm}.obj: | {$(OBJ)\ntlm}.c{$(OBJ)\ntlm}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\ntlm $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\ntlm\ -Fd$(OBJ)\ntlm\ -I$(OBJ)\ntlm $(GCOPTS) | ||||||
|  |  | ||||||
| {ntlm}.c{$(OBJ)\ntlm}.obj: | {ntlm}.c{$(OBJ)\ntlm}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\ntlm $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\ntlm\ -Fd$(OBJ)\ntlm\ -I$(OBJ)\ntlm $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)\spnego}.c{$(OBJ)\spnego}.obj: | {$(OBJ)\spnego}.c{$(OBJ)\spnego}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\spnego $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\spnego\ -Fd$(OBJ)\spnego\ -I$(OBJ)\spnego $(GCOPTS) | ||||||
|  |  | ||||||
| {spnego}.c{$(OBJ)\spnego}.obj: | {spnego}.c{$(OBJ)\spnego}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\spnego -Imech $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\spnego\ -Fd$(OBJ)\spnego\ -I$(OBJ)\spnego -Imech $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)\gssapi}.c{$(OBJ)\gssapi}.obj: | {$(OBJ)\gssapi}.c{$(OBJ)\gssapi}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ)\gssapi $(GCOPTS) | 	$(C2OBJ_NP) -Fo$(OBJ)\gssapi\ -Fd$(OBJ)\gssapi\ -I$(OBJ)\gssapi $(GCOPTS) | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) $(GCOPTS) | 	$(C2OBJ_P) $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: | {$(OBJ)}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) $(GCOPTS) | 	$(C2OBJ_P) $(GCOPTS) | ||||||
|  |  | ||||||
| {$(OBJ)\spnego}.x{$(OBJ)\spnego}.c: | {$(OBJ)\spnego}.x{$(OBJ)\spnego}.c: | ||||||
| 	$(CP) $** $@ | 	$(CP) $** $@ | ||||||
|   | |||||||
| @@ -139,8 +139,8 @@ $(LIBHCRYPTO): $(libhcrypto_OBJs) | |||||||
|  |  | ||||||
| !endif | !endif | ||||||
|  |  | ||||||
| {imath/}.c{$(OBJ)}.obj: | {imath/}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) | 	$(C2OBJ_P) | ||||||
|  |  | ||||||
| all:: $(LIBHCRYPTO) | all:: $(LIBHCRYPTO) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -187,9 +187,9 @@ openldap_inc_flag= | |||||||
|  |  | ||||||
| hdb_cflags=$(openldap_inc_flag) -I$(OBJ) | hdb_cflags=$(openldap_inc_flag) -I$(OBJ) | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) $(hdb_cflags) | 	$(C2OBJ_P) $(hdb_cflags) | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: | {$(OBJ)}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) $(hdb_cflags) | 	$(C2OBJ_P) $(hdb_cflags) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -259,5 +259,5 @@ test-run: | |||||||
| {}.h{$(KADM5INCDIR)}.h: | {}.h{$(KADM5INCDIR)}.h: | ||||||
| 	$(CP) $< $@ | 	$(CP) $< $@ | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) -I$(OBJ) -I$(KADM5INCDIR) | 	$(C2OBJ_P) -I$(OBJ) -I$(KADM5INCDIR) | ||||||
| @@ -356,11 +356,11 @@ $(BINDIR)\verify_krb5_conf.exe: $(OBJ)\verify_krb5_conf.obj $(LIBKRB5) $(LIBROKE | |||||||
| 	$(_VC_MANIFEST_CLEAN) | 	$(_VC_MANIFEST_CLEAN) | ||||||
| 	$(_CODESIGN) | 	$(_CODESIGN) | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) -DBUILD_KRB5_LIB | 	$(C2OBJ_P) -DBUILD_KRB5_LIB | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: | {$(OBJ)}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) -DBUILD_KRB5_LIB | 	$(C2OBJ_P) -DBUILD_KRB5_LIB | ||||||
|  |  | ||||||
| #---------------------------------------------------------------------- | #---------------------------------------------------------------------- | ||||||
| # Tests | # Tests | ||||||
|   | |||||||
| @@ -112,8 +112,8 @@ libroken_la_OBJS =			\ | |||||||
| 	$(OBJ)\warnx.obj		\ | 	$(OBJ)\warnx.obj		\ | ||||||
| 	$(OBJ)\xfree.obj | 	$(OBJ)\xfree.obj | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) -DBUILD_ROKEN_LIB | 	$(C2OBJ_P) -DBUILD_ROKEN_LIB | ||||||
|  |  | ||||||
| $(LIBROKEN): $(libroken_la_OBJS) | $(LIBROKEN): $(libroken_la_OBJS) | ||||||
| 	$(LIBCON_C) -out:$@ @<< | 	$(LIBCON_C) -out:$@ @<< | ||||||
|   | |||||||
| @@ -120,8 +120,8 @@ TEST_BINARIES=\ | |||||||
| 	$(OBJ)\test-ldap.exe	\ | 	$(OBJ)\test-ldap.exe	\ | ||||||
| 	$(OBJ)\test-utf8.exe | 	$(OBJ)\test-utf8.exe | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: | {$(OBJ)}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) -I$(SRCDIR) | 	$(C2OBJ_P) -I$(SRCDIR) | ||||||
|  |  | ||||||
| {$(OBJ)}.obj{$(OBJ)}.exe: | {$(OBJ)}.obj{$(OBJ)}.exe: | ||||||
| 	$(EXECONLINK) $(LIBWIND) $(LIBROKEN) | 	$(EXECONLINK) $(LIBWIND) $(LIBROKEN) | ||||||
|   | |||||||
| @@ -160,7 +160,7 @@ libmach=/machine:X64 | |||||||
|  |  | ||||||
| !ifndef STATICRUNTIME | !ifndef STATICRUNTIME | ||||||
|  |  | ||||||
| C2OBJ_C = $(CC) $(cdebug) $(cflags) $(cvarsdll) $(AUXCFLAGS) $(cdefines) $(cincdirs) $(cwarn) | C2OBJ_C = $(CC) $(cdebug) $(cflags) $(cvarsdll) $(AUXCFLAGS) $(intcflags) $(cdefines) $(cincdirs) $(cwarn) | ||||||
| EXECONLINK_C = $(LINK) $(ldebug) $(conlflags) $(conlibsdll) | EXECONLINK_C = $(LINK) $(ldebug) $(conlflags) $(conlibsdll) | ||||||
| EXEGUILINK_C = $(LINK) $(ldebug) $(guilflags) $(guilibsdll) | EXEGUILINK_C = $(LINK) $(ldebug) $(guilflags) $(guilibsdll) | ||||||
| DLLCONLINK_C = $(LINK) $(ldebug) $(dlllflags) $(conlibsdll) | DLLCONLINK_C = $(LINK) $(ldebug) $(dlllflags) $(conlibsdll) | ||||||
| @@ -168,7 +168,7 @@ DLLGUILINK_C = $(LINK) $(ldebug) $(dlllflags) $(guilibsdll) | |||||||
|  |  | ||||||
| !else # STATICRUNTIME | !else # STATICRUNTIME | ||||||
|  |  | ||||||
| C2OBJ_C = $(CC) $(cdebug) $(cflags) $(cvarsmt) $(AUXCFLAGS) $(cdefines) $(cincdirs) $(cwarn) | C2OBJ_C = $(CC) $(cdebug) $(cflags) $(cvarsmt) $(AUXCFLAGS) $(intcflags) $(cdefines) $(cincdirs) $(cwarn) | ||||||
| EXECONLINK_C = $(LINK) $(ldebug) $(conlflags) $(conlibsmt) | EXECONLINK_C = $(LINK) $(ldebug) $(conlflags) $(conlibsmt) | ||||||
| EXEGUILINK_C = $(LINK) $(ldebug) $(guilflags) $(guilibsmt) | EXEGUILINK_C = $(LINK) $(ldebug) $(guilflags) $(guilibsmt) | ||||||
| DLLCONLINK_C = $(LINK) $(ldebug) $(dlllflags) $(conlibsmt) | DLLCONLINK_C = $(LINK) $(ldebug) $(dlllflags) $(conlibsmt) | ||||||
| @@ -180,6 +180,8 @@ LIBGUI_C = $(LM) /nologo $(libmach) /SUBSYSTEM:WINDOWS | |||||||
| LIBCON_C = $(LM) /nologo $(libmach) /SUBSYSTEM:CONSOLE | LIBCON_C = $(LM) /nologo $(libmach) /SUBSYSTEM:CONSOLE | ||||||
|  |  | ||||||
| C2OBJ = $(C2OBJ_C) -Fo$@ -Fd$(@D)\ $** | C2OBJ = $(C2OBJ_C) -Fo$@ -Fd$(@D)\ $** | ||||||
|  | C2OBJ_NP = $(C2OBJ_C) -MP $< | ||||||
|  | C2OBJ_P = $(C2OBJ_NP) -Fo$(OBJ)\ -Fd$(OBJ)\ # | ||||||
| EXECONLINK = $(EXECONLINK_C) -OUT:$@ $** | EXECONLINK = $(EXECONLINK_C) -OUT:$@ $** | ||||||
| EXEGUILINK = $(EXEGUILINK_C) -OUT:$@ $** | EXEGUILINK = $(EXEGUILINK_C) -OUT:$@ $** | ||||||
| DLLCONLINK = $(DLLCONLINK_C) -OUT:$@ $** | DLLCONLINK = $(DLLCONLINK_C) -OUT:$@ $** | ||||||
| @@ -249,17 +251,25 @@ prep:: show-cmds | |||||||
|  |  | ||||||
| !endif | !endif | ||||||
|  |  | ||||||
| {}.c{$(OBJ)}.obj: | {}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) | 	$(C2OBJ_C) /Fd$(OBJ)\ /Fo$(OBJ)\ /MP @<< | ||||||
|  | $< | ||||||
|  | << | ||||||
|  |  | ||||||
| {$(OBJ)}.c{$(OBJ)}.obj: | {$(OBJ)}.c{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) | 	$(C2OBJ_C) /Fd$(OBJ)\ /Fo$(OBJ)\ /MP @<< | ||||||
|  | $< | ||||||
|  | << | ||||||
|  |  | ||||||
| {}.cpp{$(OBJ)}.obj: | {}.cpp{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) | 	$(C2OBJ_C) /Fd$(OBJ)\ /Fo$(OBJ)\ /MP @<< | ||||||
|  | $< | ||||||
|  | << | ||||||
|  |  | ||||||
| {$(OBJ)}.cpp{$(OBJ)}.obj: | {$(OBJ)}.cpp{$(OBJ)}.obj:: | ||||||
| 	$(C2OBJ) | 	$(C2OBJ_C) /Fd$(OBJ)\ /Fo$(OBJ)\ /MP @<< | ||||||
|  | $< | ||||||
|  | << | ||||||
|  |  | ||||||
| {}.hin{$(INCDIR)}.h: | {}.hin{$(INCDIR)}.h: | ||||||
| 	$(CP) $< $@ | 	$(CP) $< $@ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Asanka Herath
					Asanka Herath