cb424d7448
verify-patch-sanity.py validates every active recipe .patch has internally- consistent hunk line counts — catching the 'malformed patch at line N' failure at commit/CI/preflight time instead of hours into a cook. This cycle hit that class three times (qtwaylandscanner, sddm, xwayland), each only discovered when cookbook tried to apply the patch. Running it across the repo found 29 latent malformed patches (validated against GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22'). They were harmless only because they sit in vendored recipes (baked, not re- applied) — but would fail on any version-bump re-derivation. --fix recounts the hunk headers (body untouched) and repaired all 29. Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test (test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats (empty placeholders, bare-@@ git hunks).
119 lines
4.0 KiB
Plaintext
119 lines
4.0 KiB
Plaintext
|
|
README for the LLVM* OpenMP* Runtime Library
|
|
============================================
|
|
|
|
How to Build Documentation
|
|
==========================
|
|
|
|
The main documentation is in Doxygen* format, and this distribution
|
|
should come with pre-built PDF documentation in doc/Reference.pdf.
|
|
However, an HTML version can be built by executing:
|
|
|
|
% doxygen doc/doxygen/config
|
|
|
|
in the runtime directory.
|
|
|
|
That will produce HTML documentation in the doc/doxygen/generated
|
|
directory, which can be accessed by pointing a web browser at the
|
|
index.html file there.
|
|
|
|
If you don't have Doxygen installed, you can download it from
|
|
www.doxygen.org.
|
|
|
|
|
|
How to Build the LLVM* OpenMP* Runtime Library
|
|
==============================================
|
|
In-tree build:
|
|
|
|
$ cd where-you-want-to-live
|
|
Check out openmp into llvm/projects
|
|
$ cd where-you-want-to-build
|
|
$ mkdir build && cd build
|
|
$ cmake path/to/llvm -DCMAKE_C_COMPILER=<C compiler> -DCMAKE_CXX_COMPILER=<C++ compiler>
|
|
$ make omp
|
|
|
|
Out-of-tree build:
|
|
|
|
$ cd where-you-want-to-live
|
|
Check out openmp
|
|
$ cd where-you-want-to-live/openmp/runtime
|
|
$ mkdir build && cd build
|
|
$ cmake path/to/openmp -DCMAKE_C_COMPILER=<C compiler> -DCMAKE_CXX_COMPILER=<C++ compiler>
|
|
$ make
|
|
|
|
For details about building, please look at README.rst in the parent directory.
|
|
|
|
Architectures Supported
|
|
=======================
|
|
* IA-32 architecture
|
|
* Intel(R) 64 architecture
|
|
* Intel(R) Many Integrated Core Architecture
|
|
* ARM* architecture
|
|
* Aarch64 (64-bit ARM) architecture
|
|
* IBM(R) Power architecture (big endian)
|
|
* IBM(R) Power architecture (little endian)
|
|
* MIPS and MIPS64 architecture
|
|
* RISCV64 architecture
|
|
* LoongArch64 architecture
|
|
|
|
Supported RTL Build Configurations
|
|
==================================
|
|
|
|
Supported Architectures: IA-32 architecture, Intel(R) 64, and
|
|
Intel(R) Many Integrated Core Architecture
|
|
|
|
----------------------------------------------
|
|
| icc/icl | gcc | clang |
|
|
--------------|---------------|----------------------------|
|
|
| Linux* OS | Yes(1,5) | Yes(2,4) | Yes(4,6,7) |
|
|
| FreeBSD* | No | No | Yes(4,6,7,8) |
|
|
| OS X* | Yes(1,3,4) | No | Yes(4,6,7) |
|
|
| Windows* OS | Yes(1,4) | No | No |
|
|
------------------------------------------------------------
|
|
|
|
(1) On IA-32 architecture and Intel(R) 64, icc/icl versions 12.x are
|
|
supported (12.1 is recommended).
|
|
(2) GCC* version 4.7 is supported.
|
|
(3) For icc on OS X*, OS X* version 10.5.8 is supported.
|
|
(4) Intel(R) Many Integrated Core Architecture not supported.
|
|
(5) On Intel(R) Many Integrated Core Architecture, icc/icl versions 13.0
|
|
or later are required.
|
|
(6) Clang* version 3.3 is supported.
|
|
(7) Clang* currently does not offer a software-implemented 128 bit extended
|
|
precision type. Thus, all entry points reliant on this type are removed
|
|
from the library and cannot be called in the user program. The following
|
|
functions are not available:
|
|
__kmpc_atomic_cmplx16_*
|
|
__kmpc_atomic_float16_*
|
|
__kmpc_atomic_*_fp
|
|
(8) Community contribution provided AS IS, not tested by Intel.
|
|
|
|
Supported Architectures: IBM(R) Power 7 and Power 8
|
|
|
|
-----------------------------
|
|
| gcc | clang |
|
|
--------------|------------|--------------|
|
|
| Linux* OS | Yes(1,2) | Yes(3,4) |
|
|
-------------------------------------------
|
|
|
|
(1) On Power 7, gcc version 4.8.2 is supported.
|
|
(2) On Power 8, gcc version 4.8.2 is supported.
|
|
(3) On Power 7, clang version 3.7 is supported.
|
|
(4) On Power 8, clang version 3.7 is supported.
|
|
|
|
|
|
Front-end Compilers that work with this RTL
|
|
===========================================
|
|
|
|
The following compilers are known to do compatible code generation for
|
|
this RTL: clang (from the OpenMP development branch at
|
|
http://clang-omp.github.io/ ), Intel compilers, GCC. See the documentation
|
|
for more details.
|
|
|
|
-----------------------------------------------------------------------
|
|
|
|
Notices
|
|
=======
|
|
|
|
*Other names and brands may be claimed as the property of others.
|