# [PATCH] ci: make MAKEFLAGS available inside the Docker container in the Linux32 job

3 messages from 2020-04-01 to 2020-04-02. Participants: SZEDER Gábor, Junio C Hamano.
Thread: https://gitlist.dev/t/53155

## SZEDER Gábor, 2020-04-01 21:21

Subject: [PATCH] ci: make MAKEFLAGS available inside the Docker container in the Linux32 job
Message-ID: <20200401212151.15164-1-szeder.dev@gmail.com>
URL: https://gitlist.dev/e/20200401212151.15164-1-szeder.dev%40gmail.com

```
Once upon a time we ran 'make --jobs=2 ...' to build Git, its
documentation, or to apply Coccinelle semantic patches.  Then commit
eaa62291ff (ci: inherit --jobs via MAKEFLAGS in run-build-and-tests,
2019-01-27) came along, and started using the MAKEFLAGS environment
variable to centralize setting the number of parallel jobs in
'ci/libs.sh'.  Alas, it forgot to update 'ci/run-linux32-docker.sh' to
make MAKEFLAGS available inside the Docker container running the 32
bit Linux job, and, consequently, since then that job builds Git
sequentially, and it ignores any Makefile knobs that we might set in
MAKEFLAGS (though we don't set any for the 32 bit Linux job at the
moment).

So update the 'docker run' invocation in 'ci/run-linux32-docker.sh' to
make MAKEFLAGS available inside the Docker container as well.  Set
CC=gcc for the 32 bit Linux job, because that's the compiler installed
in the 32 bit Linux Docker image that we use (Travis CI nowadays sets
CC=clang by default, but clang is not installed in this image).

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
---

The 'dd/musl-libc-travis-ci' topic needs some more updates, and those
will depend on this fix.

 ci/lib.sh                | 3 +++
 ci/run-linux32-docker.sh | 1 +
 2 files changed, 4 insertions(+)

diff --git a/ci/lib.sh b/ci/lib.sh
index c3a8cd2104..d637825222 100755
--- a/ci/lib.sh
+++ b/ci/lib.sh
@@ -198,6 +198,9 @@ osx-clang|osx-gcc)
 GIT_TEST_GETTEXT_POISON)
 	export GIT_TEST_GETTEXT_POISON=true
 	;;
+Linux32)
+	CC=gcc
+	;;
 esac
 
 MAKEFLAGS="$MAKEFLAGS CC=${CC:-cc}"
diff --git a/ci/run-linux32-docker.sh b/ci/run-linux32-docker.sh
index 751acfcf8a..ebb18fa747 100755
--- a/ci/run-linux32-docker.sh
+++ b/ci/run-linux32-docker.sh
@@ -20,6 +20,7 @@ docker run \
 	--env GIT_PROVE_OPTS \
 	--env GIT_TEST_OPTS \
 	--env GIT_TEST_CLONE_2GB \
+	--env MAKEFLAGS \
 	--env cache_dir="$container_cache_dir" \
 	--volume "${PWD}:/usr/src/git" \
 	--volume "$cache_dir:$container_cache_dir" \
-- 
2.26.0.483.g160d1dcc28


```

## Junio C Hamano, 2020-04-02 17:03

Subject: Re: [PATCH] ci: make MAKEFLAGS available inside the Docker container in the Linux32 job
Message-ID: <xmqqftdl4y7s.fsf@gitster.c.googlers.com>
URL: https://gitlist.dev/e/xmqqftdl4y7s.fsf%40gitster.c.googlers.com
In-Reply-To: <20200401212151.15164-1-szeder.dev@gmail.com>

```
SZEDER Gábor <szeder.dev@gmail.com> writes:

> Once upon a time we ran 'make --jobs=2 ...' to build Git, its
> documentation, or to apply Coccinelle semantic patches.  Then commit
> eaa62291ff (ci: inherit --jobs via MAKEFLAGS in run-build-and-tests,
> 2019-01-27) came along, and started using the MAKEFLAGS environment
> variable to centralize setting the number of parallel jobs in
> 'ci/libs.sh'.  Alas, it forgot to update 'ci/run-linux32-docker.sh' to
> make MAKEFLAGS available inside the Docker container running the 32
> bit Linux job, and, consequently, since then that job builds Git
> sequentially, and it ignores any Makefile knobs that we might set in
> MAKEFLAGS (though we don't set any for the 32 bit Linux job at the
> moment).
>
> So update the 'docker run' invocation in 'ci/run-linux32-docker.sh' to
> make MAKEFLAGS available inside the Docker container as well.  Set
> CC=gcc for the 32 bit Linux job, because that's the compiler installed
> in the 32 bit Linux Docker image that we use (Travis CI nowadays sets
> CC=clang by default, but clang is not installed in this image).
>
> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
> ---
>
> The 'dd/musl-libc-travis-ci' topic needs some more updates, and those
> will depend on this fix.

Thanks.  I'll queue this on top of v2.26.0 so that others can be
rebased on top of it.

```

## Junio C Hamano, 2020-04-02 18:14

Subject: Re: [PATCH] ci: make MAKEFLAGS available inside the Docker container in the Linux32 job
Message-ID: <xmqqk12x3gc3.fsf@gitster.c.googlers.com>
URL: https://gitlist.dev/e/xmqqk12x3gc3.fsf%40gitster.c.googlers.com
In-Reply-To: <xmqqftdl4y7s.fsf@gitster.c.googlers.com>

```
Junio C Hamano <gitster@pobox.com> writes:

> SZEDER Gábor <szeder.dev@gmail.com> writes:
>
>> Once upon a time we ran 'make --jobs=2 ...' to build Git, its
>> documentation, or to apply Coccinelle semantic patches.  Then commit
>> eaa62291ff (ci: inherit --jobs via MAKEFLAGS in run-build-and-tests,
>> 2019-01-27) came along, and started using the MAKEFLAGS environment
>> variable to centralize setting the number of parallel jobs in
>> 'ci/libs.sh'.  Alas, it forgot to update 'ci/run-linux32-docker.sh' to
>> make MAKEFLAGS available inside the Docker container running the 32
>> bit Linux job, and, consequently, since then that job builds Git
>> sequentially, and it ignores any Makefile knobs that we might set in
>> MAKEFLAGS (though we don't set any for the 32 bit Linux job at the
>> moment).
>>
>> So update the 'docker run' invocation in 'ci/run-linux32-docker.sh' to
>> make MAKEFLAGS available inside the Docker container as well.  Set
>> CC=gcc for the 32 bit Linux job, because that's the compiler installed
>> in the 32 bit Linux Docker image that we use (Travis CI nowadays sets
>> CC=clang by default, but clang is not installed in this image).
>>
>> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
>> ---
>>
>> The 'dd/musl-libc-travis-ci' topic needs some more updates, and those
>> will depend on this fix.
>
> Thanks.  I'll queue this on top of v2.26.0 so that others can be
> rebased on top of it.

Actually, the updated dd/ci-musl-libc has this at the bottom of the
series, so I won't have a separate topic for this patch.

Thanks anyway.

```
