If make fails in a multi-process invocation, the log is pretty much unreadable. To make it readable, build as much as can be built without failing. Then run a single-process make again. If we succeeded previously, this should be a no-op. If not, this run will stop at the first error, which should be more readable, and will only print the few lines we're interested in. This has some side effects: Now we build as much as we can, instead of failing as early as possible; this may make CI a bit slower. However, it also has the benefit that you see _all_ the error messages that could be given, instead of needing to fix the first error to see the next and so on. Cc: Iker Pedrosa <ipedrosa@redhat.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
		
			
				
	
	
		
			19 lines
		
	
	
		
			493 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			493 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
ARG OS_IMAGE="alpine:latest"
 | 
						|
 | 
						|
FROM "${OS_IMAGE}" AS build
 | 
						|
 | 
						|
RUN apk add autoconf automake build-base byacc expect gettext-dev git \
 | 
						|
        libbsd-dev libeconf-dev libtool libxslt pkgconf
 | 
						|
 | 
						|
COPY ./ /usr/local/src/shadow/
 | 
						|
WORKDIR /usr/local/src/shadow/
 | 
						|
 | 
						|
RUN ./autogen.sh --without-selinux --disable-man --disable-nls --with-yescrypt
 | 
						|
RUN make -kj4 || true
 | 
						|
RUN make
 | 
						|
RUN make install
 | 
						|
 | 
						|
FROM scratch AS export
 | 
						|
COPY --from=build /usr/local/src/shadow/config.log \
 | 
						|
    /usr/local/src/shadow/config.h ./
 |