mirror of
https://src.fedoraproject.org/rpms/llvm.git
synced 2024-11-28 18:36:50 +00:00
eb12c13273
* %check: export LD_LIBRARY_PATH because runtimes use external cmake projects that wouldn't find libclang++.so * %check: use LLVM's LIT_XFAIL to mark tests that are expected to fail and don't just delete them * clang: bring over *.patch files * clang: remove build requires tags from clang package that are already defined by main llvm package * clang: remove duplicates found in llvm globals and use %{pkg_datadir} instead of %{install_datadir} * clang: rename and use pkg_name -> pkg_name_clang * clang: use %{pkg_name_clang} instead of %{name} * compiler-rt and libomp: wrap in %if %{without compat_build} * libomp: also build libomp for s390x (See https://github.com/llvm/llvm-project/pull/66081) * libomp: exclude libomp-devel on s390x just like libomp itself * libomp: introduce pkg_name_libomp and cleanup the globals * libomp: remove gdb-plugin (NEED TO CONFIRM IF THIS IS REALLY TRUE) * libomp: filter out flaky libomp test: ompt/teams/distribute_dispatch.c * llvm: add BuildRequires: graphviz to llvm-doc * llvm: use %{pkg_name_llvm} instead of %{name} * make: added temporary Makefile so I can more easily run srpm or rpm builds locally * make: Added local-tmt-vm target (not really useful yet) * rpm: for non-RHEL add prefix like "Jan 05 16:17:06" to every log line This should help in finding out how long things take to build/install/... * rpm: fully specify %files for top-level packages * rpm: make all packages fully qualified * rpm: obsolete llvm-snapshot-builder * rpm: remove BuildRequires: python3-lit because we have it in-tree * rpm: remove BuildRequires: tags for clang and llvm specifics as we're building in-tree * rpm: rename %llvm_srcdir -> %srcdir_llvm * rpm: rename %pkg_name -> %pkg_name_llvm * rpm: use full qualified name in %description * rpm: use region comments in spec file to group by package. This allows editors to fold text to get a better overview * rpmlint: update rc file to reflect clang and compiler-rt (libomp has no rpmlint rc file) * use python-lit from within tree
55 lines
1.7 KiB
CMake
55 lines
1.7 KiB
CMake
# This file sets up a CMakeCache for a simple distribution bootstrap build.
|
|
|
|
# For the Jira project entitled "LLVM" you can open
|
|
# https://issues.redhat.com/rest/api/2/project/LLVM to find its pid. "1" stands
|
|
# for the issue type "Bug".
|
|
set(BUG_REPORT_URL "https://issues.redhat.com/secure/CreateIssue.jspa?issuetype=1&pid=12339624" CACHE STRING "")
|
|
|
|
#Enable LLVM projects and runtimes
|
|
set(LLVM_ENABLE_PROJECTS "clang;clang-tools-extra;lld" CACHE STRING "")
|
|
set(LLVM_ENABLE_RUNTIMES "compiler-rt;libcxx;libcxxabi" CACHE STRING "")
|
|
|
|
# Only build the native target in stage1 since it is a throwaway build.
|
|
set(LLVM_TARGETS_TO_BUILD Native CACHE STRING "")
|
|
|
|
# Optimize the stage1 compiler, but don't LTO it because that wastes time.
|
|
set(CMAKE_BUILD_TYPE Release CACHE STRING "")
|
|
|
|
# Setup vendor-specific settings.
|
|
set(PACKAGE_VENDOR LLVM.org CACHE STRING "")
|
|
|
|
# Setting up the stage2 LTO option needs to be done on the stage1 build so that
|
|
# the proper LTO library dependencies can be connected.
|
|
set(BOOTSTRAP_LLVM_ENABLE_LTO ON CACHE BOOL "")
|
|
|
|
if (NOT APPLE)
|
|
# Since LLVM_ENABLE_LTO is ON we need a LTO capable linker
|
|
set(BOOTSTRAP_LLVM_ENABLE_LLD ON CACHE BOOL "")
|
|
endif()
|
|
|
|
# Expose stage2 targets through the stage1 build configuration.
|
|
set(CLANG_BOOTSTRAP_TARGETS
|
|
check-all
|
|
check-llvm
|
|
check-clang
|
|
llvm-config
|
|
test-suite
|
|
test-depends
|
|
llvm-test-depends
|
|
clang-test-depends
|
|
distribution
|
|
install-distribution
|
|
clang CACHE STRING "")
|
|
|
|
# Setup the bootstrap build.
|
|
set(CLANG_ENABLE_BOOTSTRAP ON CACHE BOOL "")
|
|
|
|
if(STAGE2_CACHE_FILE)
|
|
set(CLANG_BOOTSTRAP_CMAKE_ARGS
|
|
-C ${STAGE2_CACHE_FILE}
|
|
CACHE STRING "")
|
|
else()
|
|
set(CLANG_BOOTSTRAP_CMAKE_ARGS
|
|
-C ${CMAKE_CURRENT_LIST_DIR}/DistributionFedora-stage2.cmake
|
|
CACHE STRING "")
|
|
endif()
|