Page MenuHomeFreeBSD

bsd.progs.mk: Create directories first
ClosedPublic

Authored by cperciva on Jul 8 2024, 4:37 PM.
Tags
None
Referenced Files
F102948868: D45923.diff
Tue, Nov 19, 2:32 AM
Unknown Object (File)
Tue, Oct 29, 5:09 PM
Unknown Object (File)
Sep 22 2024, 3:04 PM
Unknown Object (File)
Sep 22 2024, 2:28 PM
Unknown Object (File)
Sep 20 2024, 5:55 PM
Unknown Object (File)
Sep 20 2024, 5:55 PM
Unknown Object (File)
Sep 20 2024, 5:55 PM
Unknown Object (File)
Sep 20 2024, 5:33 PM

Details

Summary

Order installdirs before the $p.install targets; this is necessary
when a user of <bsd.progs.mk> also creates the directory into which
the binaries are installed.

In particular, without this patch running make installworld -jN can
break when installing tests since the /usr/tests/foo/bar directories
are created during installworld; this has been causing the stable/14
weekly snapshot builds to intermittently fail for months.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 58572
Build 55460: arc lint + arc unit

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Jul 10 2024, 2:47 PM
This revision was automatically updated to reflect the committed changes.
share/mk/bsd.progs.mk
158

FWIW I tend to avoid putting things in .for loops if I can, also you need :
you could put this after the .endfor

.ORDER: installdirs ${PROGS:@p@$p.install@}

share/mk/bsd.progs.mk
158

Oh you just want to ensure installdirs done before $p.install but the later can run in parallel?
In that case you just need :