infra/pkg-golang: enforce number of parallel jobs
authorYann E. MORIN <yann.morin.1998@free.fr>
Sun, 25 Nov 2018 09:19:48 +0000 (10:19 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 29 Nov 2018 20:21:36 +0000 (21:21 +0100)
By default, the go compiler will spawn as many jobs as there are CPUs
available, thus possibily over-shooting the limits set by the user.

Make it abide by the user's wish, and specify the number of jobs allowed
to run.

We can do so without fear of a package failing to build in parallel,
because they were already all building in parallel, as that is the
default for the go compiler.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/pkg-golang.mk

index 6eacd1418063f45075141e0b3fd9ff5b48187e2f..4f2c7e77e123cc9c9ef98bb34ce8ecd6c127d8a0 100644 (file)
@@ -55,8 +55,10 @@ ifeq ($(BR2_STATIC_LIBS),y)
 $(2)_LDFLAGS += -extldflags '-static'
 endif
 
-$(2)_BUILD_OPTS += -ldflags "$$($(2)_LDFLAGS)"
-$(2)_BUILD_OPTS += -tags "$$($(2)_TAGS)"
+$(2)_BUILD_OPTS += \
+       -ldflags "$$($(2)_LDFLAGS)" \
+       -tags "$$($(2)_TAGS)" \
+       -p $(PARALLEL_JOBS)
 
 # Target packages need the Go compiler on the host.
 $(2)_DEPENDENCIES += host-go