Created attachment 190758 [details]
patch to fix Makefile dependancy needed for parallel make
net/socat occasionally fails to build on all three of my poudriere build servers. When I investigated I found that the Makefile was missing dependencies on two object files: vsnprintf_r.o snprinterr.o
Here's an example build failure:
cc -O2 -pipe -I/usr/local/include -Wno-unused-comparison -fstack-protector -fno-strict-aliasing -D_GNU_SOURCE -Wall -Wno-parentheses -DHAVE_CONFIG_H -I. -Wl,-rpath,/usr/local/lib -L/usr/local/lib -fstack-protector -o filan filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o vsnprintf_r.o snprinterr.o -lwrap -lrt -lutil -lssl -lcrypto
cc: error: no such file or directory: 'vsnprintf_r.o'
*** [filan] Error code 1
As expected it's one of the missing dependencies.
I submitted a patch upstream last September. The attached will solve this problem between now and (I assume) the next release of socat.
Assuming this looks ok, I'm happy to work this PR or if you want to take it that's good too.
Looks good to me. Please feel free to commit.
A commit references this bug:
Date: Mon Feb 19 22:38:05 UTC 2018
New revision: 462355
Patch socat/Makefile to reference all of dependencies when
linking filan so that parallel make is reliable again.
Reviewed by: ler (mentor)
Approved by: ler (mentor)
Differential Revision: https://reviews.freebsd.org/D14445