HomePhabricator

Fix missing build dependency on omp_gen.

Authored by simon_tatham on Jul 2 2020, 1:16 AM.

Description

Fix missing build dependency on omp_gen.

Summary:
include/llvm/Frontend/OpenMP/CMakeLists.txt creates a new target
called omp_gen which builds the generated include file OMP.h.inc.
This target must therefore be a dependency of every compilation step
whose transitive #include dependencies contain OMP.h.inc, or else
it's possible for builds to fail if Ninja (or make or whatever)
schedules that compilation step before building OMP.h.inc at all.

A few of those dependencies are currently missing, which leads to
intermittent build failures, depending on the order that Ninja (or
whatever) happens to schedule its commands. As far as I can see,
compiles in clang/lib/CodeGen, clang/lib/Frontend, and
clang/examples all depend transitivily on OMP.h.inc (usually via
clang/AST/AST.h), but don't have the formal dependency in the ninja
graph.

Adding omp_gen to the dependencies of clang-tablegen-targets seems
to be the way to get the missing dependency into the clang/examples
subdirectory. This also fixes the other two clang subdirectories, as
far as I can see.

Reviewers: clementval, thakis, chandlerc, jdoerfert

Reviewed By: clementval

Subscribers: cfe-commits, jdenny, mgorny, sstefan1, llvm-commits

Tags: #llvm, #clang

Differential Revision: https://reviews.llvm.org/D82659

Details

Committed
simon_tathamJul 2 2020, 1:16 AM
Reviewer
clementval
Differential Revision
D82659: Fix missing build dependency on omp_gen.
Parents
rGc7df35d2b28e: [CodeGen] Fix warnings in getCopyToPartsVector
Branches
Unknown
Tags
Unknown