[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #57575] --load-average changes order or jobs
From: |
Andre Heider |
Subject: |
[bug #57575] --load-average changes order or jobs |
Date: |
Fri, 10 Jan 2020 12:23:40 -0500 (EST) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0 |
URL:
<https://savannah.gnu.org/bugs/?57575>
Summary: --load-average changes order or jobs
Project: make
Submitted by: aheider
Submitted on: Fri 10 Jan 2020 05:23:38 PM UTC
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: 4.2.1
Operating System: POSIX-Based
Fixed Release: None
Triage Status: None
_______________________________________________________
Details:
When using -l, it seems the order of jobs is different compared to not using
-l.
For some projects, this difference is enough to break the build.
For the cases where I observed this, it was always a bug in a Makefile.
Examples are GNU screen and bash. Both projects create a header using a make
rule, with missing dependencies for the files including it.
Another example is MAME, where the directory for a to-be created object file
was not created in time (missing " | $(OBJDIR)")
Building those projects without -l always succeeds.
For distros, which compile many packages in parallel, -l is a gift, but breaks
random packages too easily. Is it possible to not change the behavior when
using -l?
I can easily reproduce this locally (8 core box) with GNU screen 4.6.2 using
make 4.2.1 or 4.2.93:
./configure
while true; do make clean; make -j8 -l0.5 || break; done
...
screen.h:48:10: fatal error: comm.h: No such file or directory
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?57575>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [bug #57575] --load-average changes order or jobs,
Andre Heider <=