ericpaulbishop / gargoyle

Gargoyle Router Management Utility
http://www.gargoyle-router.com
467 stars 221 forks source link

samba36: Disable parallel build #942

Closed jan-kiszka closed 2 years ago

jan-kiszka commented 2 years ago

This somehow breaks with build errors in ../librpc/ndr/ndr_dcerpc.o with about 12 logical cores:

Compiling ../librpc/ndr/ndr_misc.c ../librpc/ndr/ndr_dcerpc.c:31:107: warning: 'struct dcerpc_sec_vt_count' declared inside parameter list will not be visible outside of this definition or declaration PUBLIC enum ndr_err_code ndr_push_dcerpc_sec_vt_count(struct ndr_push ndr, int ndr_flags, const struct dcerpc_sec_vt_count r) ^~~~~~~ ../librpc/ndr/ndr_dcerpc.c:38:101: warning: 'struct dcerpc_sec_vt_count' declared inside parameter list will not be visible outside of this definition or declaration PUBLIC enum ndr_err_code ndr_pull_dcerpc_sec_vt_count(struct ndr_pull ndr, int ndr_flags, struct dcerpc_sec_vt_count r) ^~~~~~~ ../librpc/ndr/ndr_dcerpc.c: In function 'ndr_pull_dcerpc_sec_vt_count': ../librpc/ndr/ndr_dcerpc.c:48:3: error: dereferencing pointer to incomplete type 'struct dcerpc_sec_vt_count' r->count = 0; ^~ Compiling ../librpc/ndr/ndr_netlogon.c ../librpc/ndr/ndr_dcerpc.c:60:17: error: 'DCERPC_SEC_VT_COMMAND_END' undeclared (first use in this function); did you mean 'DCERPC_SEC_VT_MAGIC'? if (command & DCERPC_SEC_VT_COMMAND_END) { ^~~~~~~~~ DCERPC_SEC_VT_MAGIC ../librpc/ndr/ndr_dcerpc.c:60:17: note: each undeclared identifier is reported only once for each function it appears in ../librpc/ndr/ndr_dcerpc.c: At top level: ../librpc/ndr/ndr_dcerpc.c:71:9: warning: 'struct dcerpc_sec_verification_trailer' declared inside parameter list will not be visible outside of this definition or declaration struct dcerpc_sec_verification_trailer **_r) ^~~~~~~ In file included from ./../lib/util/charset/charset.h:28:0, from ./../lib/util/util.h:24, from include/includes.h:506, from ../librpc/ndr/ndr_dcerpc.c:23: ../librpc/ndr/ndr_dcerpc.c: In function 'ndr_pop_dcerpc_sec_verification_trailer': ../librpc/ndr/ndr_dcerpc.c:83:27: error: invalid application of 'sizeof' to incomplete type 'struct dcerpc_sec_verification_trailer' r = talloc_zero(mem_ctx, struct dcerpc_sec_verification_trailer); ^ ./../lib/talloc/talloc.h:591:65: note: in definition of macro 'talloc_zero'

define talloc_zero(ctx, type) (type *)_talloc_zero(ctx, sizeof(type), #type)

                                                             ^~~~

../librpc/ndr/ndr_dcerpc.c:100:12: error: 'DCERPC_SEC_VT_MAX_SIZE' undeclared (first use in this function); did you mean 'DCERPC_SEC_VT_MAGIC'? if (ofs > DCERPC_SEC_VT_MAX_SIZE) { ^~~~~~ DCERPC_SEC_VT_MAGIC ../librpc/ndr/ndr_dcerpc.c:142:12: warning: implicit declaration of function 'ndr_pull_dcerpc_sec_verification_trailer'; did you mean 'ndr_pop_dcerpc_sec_verification_trailer'? [-Wimplicit-function-declaration] ndr_err = ndr_pull_dcerpc_sec_verification_trailer(sub_ndr, ^~~~~~~~~~~~ ndr_pop_dcerpc_sec_verification_trailer In file included from include/includes.h:23:0, from ../librpc/ndr/ndr_dcerpc.c:23: ../lib/zlib/../replace/replace.h:725:77: error: dereferencing pointer to incomplete type 'struct dcerpc_sec_verification_trailer'

define ZERO_STRUCTP(x) do { if ((x) != NULL) memset((char )(x), 0, sizeof((x))); } while(0)

                                                                         ^~~~

../librpc/ndr/ndr_dcerpc.c:184:2: note: in expansion of macro 'ZERO_STRUCTP' ZERO_STRUCTP(r); ^~~~

Serializing the build works around this.

Closes #941 Signed-off-by: Jan Kiszka jan.kiszka@web.de

lantis1008 commented 2 years ago

Yes ideally for 1.15.x i'll be pushing ksmbd instead of samba36 so this is proably the right solution