Revert "Add workaround for a file with an mtime in the future"

This reverts commit e9ae480a82.

Reason for revert: Should no longer be needed after https://android-review.git.corp.google.com/q/topic:%22use_vendored_java_rules%22

Change-Id: Ic3abed3c27fe4669df811b993d87ae5450c79d7e
This commit is contained in:
Romain Jobredeaux 2023-07-19 20:58:27 +00:00 committed by Gerrit Code Review
parent e9ae480a82
commit e3989a114d
2 changed files with 1 additions and 25 deletions

View file

@ -1336,9 +1336,6 @@ func createCommand(cmd *RuleBuilderCommand, buildStatement *bazel.BuildStatement
for _, outputPath := range buildStatement.OutputPaths { for _, outputPath := range buildStatement.OutputPaths {
cmd.ImplicitOutput(PathForBazelOut(ctx, outputPath)) cmd.ImplicitOutput(PathForBazelOut(ctx, outputPath))
} }
for _, inputPath := range buildStatement.OrderOnlyInputs {
cmd.OrderOnly(PathForBazelOut(ctx, inputPath))
}
for _, inputPath := range buildStatement.InputPaths { for _, inputPath := range buildStatement.InputPaths {
cmd.Implicit(PathForBazelOut(ctx, inputPath)) cmd.Implicit(PathForBazelOut(ctx, inputPath))
} }

View file

@ -115,7 +115,6 @@ type BuildStatement struct {
// input path string, but not both. // input path string, but not both.
InputDepsetHashes []string InputDepsetHashes []string
InputPaths []string InputPaths []string
OrderOnlyInputs []string
FileContents string FileContents string
} }
@ -135,8 +134,6 @@ type aqueryArtifactHandler struct {
depsetHashToArtifactPathsCache sync.Map depsetHashToArtifactPathsCache sync.Map
// Maps artifact ids to fully expanded paths. // Maps artifact ids to fully expanded paths.
artifactIdToPath map[artifactId]string artifactIdToPath map[artifactId]string
extraBuildStatements []*BuildStatement
} }
// The tokens should be substituted with the value specified here, instead of the // The tokens should be substituted with the value specified here, instead of the
@ -166,30 +163,14 @@ func newAqueryHandler(aqueryResult *analysis_v2_proto.ActionGraphContainer) (*aq
return pathFragmentId(pf.Id) return pathFragmentId(pf.Id)
}) })
var extraBuildStatements []*BuildStatement
artifactIdToPath := make(map[artifactId]string, len(aqueryResult.Artifacts)) artifactIdToPath := make(map[artifactId]string, len(aqueryResult.Artifacts))
for _, artifact := range aqueryResult.Artifacts { for _, artifact := range aqueryResult.Artifacts {
artifactPath, err := expandPathFragment(pathFragmentId(artifact.PathFragmentId), pathFragments) artifactPath, err := expandPathFragment(pathFragmentId(artifact.PathFragmentId), pathFragments)
if err != nil { if err != nil {
return nil, err return nil, err
} }
if strings.HasSuffix(artifactPath, "DumpPlatformClassPath.java") {
// TODO(b/291828210): This is a workaround for the fact that DumpPlatformClassPath.java
// has a timestamp in 2033. We'll copy it to a new file using a order-only dep, so that
// the file is not recopied every build. Technically the order-only dep would produce
// incremental build issues if this was a regular file produced as part of the build,
// but this file is actually created by bazel during analysis, so it's not an issue.
outputPath := "hack_for_b291828210/DumpPlatformClassPath.java"
extraBuildStatements = append(extraBuildStatements, &BuildStatement{
Command: fmt.Sprintf("cp %s %s", artifactPath, outputPath),
OutputPaths: []string{outputPath},
OrderOnlyInputs: []string{artifactPath},
})
artifactIdToPath[artifactId(artifact.Id)] = outputPath
} else {
artifactIdToPath[artifactId(artifact.Id)] = artifactPath artifactIdToPath[artifactId(artifact.Id)] = artifactPath
} }
}
// Map middleman artifact ContentHash to input artifact depset ID. // Map middleman artifact ContentHash to input artifact depset ID.
// Middleman artifacts are treated as "substitute" artifacts for mixed builds. For example, // Middleman artifacts are treated as "substitute" artifacts for mixed builds. For example,
@ -215,7 +196,6 @@ func newAqueryHandler(aqueryResult *analysis_v2_proto.ActionGraphContainer) (*aq
depsetHashToArtifactPathsCache: sync.Map{}, depsetHashToArtifactPathsCache: sync.Map{},
emptyDepsetIds: make(map[depsetId]struct{}, 0), emptyDepsetIds: make(map[depsetId]struct{}, 0),
artifactIdToPath: artifactIdToPath, artifactIdToPath: artifactIdToPath,
extraBuildStatements: extraBuildStatements,
} }
// Validate and adjust aqueryResult.DepSetOfFiles values. // Validate and adjust aqueryResult.DepSetOfFiles values.
@ -389,7 +369,6 @@ func AqueryBuildStatements(aqueryJsonProto []byte, eventHandler *metrics.EventHa
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
} }
buildStatements = append(buildStatements, aqueryHandler.extraBuildStatements...)
depsetsByHash := map[string]AqueryDepset{} depsetsByHash := map[string]AqueryDepset{}
depsets := make([]AqueryDepset, 0, len(aqueryHandler.depsetIdToAqueryDepset)) depsets := make([]AqueryDepset, 0, len(aqueryHandler.depsetIdToAqueryDepset))