Makefile fix and speed up 'clean'#14767
Conversation
Summary: * Fix Makefile default target (was ordered after a folly target) * Improved the speed of `make clean` by using just one `find` and by pruning "hidden" .* and third-party directories that should not be modified anyway. * Reduce excessive output from `make clean` Test Plan: manual
|
@pdillinger has imported this pull request. If you are a Meta employee, you can view this in D105972958. |
✅ clang-tidy: No findings on changed linesCompleted in 0.0s. |
🟡 Codex Code ReviewAuto-triggered after CI passed — reviewing commit 913debf ❌ Codex review failed before producing findings. ℹ️ About this responseGenerated by Codex CLI. Limitations:
Commands:
|
✅ Claude Code ReviewAuto-triggered after CI passed — reviewing commit 913debf SummarySolid Makefile maintenance PR that fixes a real default-target bug, improves cross-platform consistency, and speeds up High-severity findings (0): No high-severity findings. Full review (click to expand)Findings🟡 MEDIUMM1. Fallback path omits
|
| Context | Affected? | Assessment |
|---|---|---|
| Linux (GNU find) | Yes | Full regex path works correctly. Genuine speedup. |
| macOS (BSD find) | Yes | Fallback triggered. Missing gcov cleanup (M1). |
| OpenBSD (gfind) | Yes | GNU find via gfind. Full regex path works. |
| CI (GitHub Actions) | Yes | Linux-based. No issues. $(FIND) always defined via make_config.mk. |
make (no args) |
Fixed | Default target now correctly resolves to all instead of checkout_folly. |
| Java builds | Yes | rm -rf consolidation is safe and equivalent. |
Assumption stress-test:
- "prune pattern is safe" — Verified.
.gitandthird-party/contain no build artifacts that need cleaning. Claim holds. - "regex correctly matches file extensions" — Verified. GNU find's full-path matching prevents false positives like
.old. Claim holds. - "first rule fix" — Verified.
common.mkdefines no rules. First rule will bedefault: all. Claim holds.
Positive Observations
- The default target bug fix is correct and well-placed.
- The
$(FIND)consistency improvements are good cross-platform hygiene. - The
.gitdirectory pruning alone accounts for the majority of the speedup. - The java/Makefile consolidation is clean and obviously correct.
ℹ️ About this response
Generated by Claude Code.
Review methodology: claude_md/code_review.md
Limitations:
- Claude may miss context from files not in the diff
- Large PRs may be truncated
- Always apply human judgment to AI suggestions
Commands:
/claude-review [context]— Request a code review/claude-query <question>— Ask about the PR or codebase
|
@pdillinger merged this pull request in e82af29. |
Summary: * Fix Makefile default target (was ordered after a folly target) * Improved the speed of `make clean` by using just one `find` and by pruning "hidden" .* and third-party directories that should not be modified anyway. * Reduce excessive output from `make clean` Pull Request resolved: #14767 Test Plan: manual Reviewed By: mszeszko-meta Differential Revision: D105972958 Pulled By: pdillinger fbshipit-source-id: 2c0f6097c74c3129b815450f23c19ef07bfbe656
Summary:
make cleanby using just onefindand by pruning "hidden" .* and third-party directories that should not be modified anyway.make cleanTest Plan: manual