mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-09 15:37:56 -05:00
* Add unbuilt cmake to updater-cmake-4.2.0 * updater-cmake-4.2.0: Package File Update Run on linux/386 container. * updater-cmake-4.2.0: Package File Update Run on linux/amd64 container. * updater-cmake-4.2.0: Package File Update Run on linux/arm/v7 container. --------- Co-authored-by: chromebrew-actions[bot] <chromebrew-actions[bot]@users.noreply.github.com>
67 lines
2.3 KiB
Ruby
67 lines
2.3 KiB
Ruby
require 'buildsystems/cmake'
|
|
|
|
class Cmake < CMake
|
|
description 'CMake is an open-source, cross-platform family of tools designed to build, test and package software.'
|
|
homepage 'https://cmake.org/'
|
|
version '4.2.0'
|
|
license 'CMake'
|
|
compatibility 'all'
|
|
source_url 'https://gitlab.kitware.com/cmake/cmake.git'
|
|
git_hashtag "v#{version.split('-').first}"
|
|
binary_compression 'tar.zst'
|
|
|
|
binary_sha256({
|
|
aarch64: 'dd3b3f315f06c6888b088cc5dfb8a78e67054ab919acebb9de36539385094af4',
|
|
armv7l: 'dd3b3f315f06c6888b088cc5dfb8a78e67054ab919acebb9de36539385094af4',
|
|
i686: '060e2d6f3f69e378dcde9082c6cbf75ba2b2671001d9a1d8c45b689a94b365d5',
|
|
x86_64: 'e87e387798b721939ba03f011ce57564f8e179bb91c06dd4149d6f63d57d85fd'
|
|
})
|
|
|
|
depends_on 'bzip2' => :build
|
|
depends_on 'cppdap' # R
|
|
depends_on 'curl' # R
|
|
depends_on 'expat' # R
|
|
depends_on 'gcc_lib' # R
|
|
depends_on 'glibc' # R
|
|
depends_on 'jsoncpp' # R
|
|
depends_on 'libarchive' # R
|
|
depends_on 'libnghttp2' => :build
|
|
depends_on 'librhash' # R
|
|
depends_on 'libuv' # R
|
|
depends_on 'llvm_lib' => :build
|
|
depends_on 'ncurses' # R
|
|
depends_on 'xzutils' => :build
|
|
depends_on 'zlib' # R
|
|
depends_on 'zstd' => :build
|
|
|
|
def self.prebuild
|
|
@current_installed_cmake_major_version = `cmake --version | head -n 1 | awk '{print \$3}'`.chomp.split('.').reverse[1..2].reverse.join('.')
|
|
@new_cmake_major_version = version.split('.').reverse[1..2].reverse.join('.')
|
|
# Only do tests on major version changes.
|
|
@cmake_testing = @current_installed_cmake_major_version != @new_cmake_major_version
|
|
puts 'Build testing will be skipped since this is not a major version change from the existing cmake.'.orange unless @cmake_testing
|
|
end
|
|
|
|
cmake_options "-DCMake_BUILD_LTO=ON \
|
|
-DCMAKE_USE_SYSTEM_LIBRARIES=ON \
|
|
-DCMAKE_USE_SYSTEM_LIBARCHIVE=ON \
|
|
-DBUILD_TESTING=#{@cmake_testing ? 'YES' : 'NO'} \
|
|
-DBUILD_QtDialog=NO"
|
|
|
|
# Failed tests:
|
|
# BundleUtilities (armv7l,x86_64)
|
|
# BootstrapTest (armv7l,i686,x86_64)
|
|
# CMakeLib.testDebuggerNamedPipe-Project (armv7l,i686,x86_64)
|
|
# CMakeLib.testDebuggerNamedPipe-Script (armv7l,i686,x86_64)
|
|
# RunCMake.CMakeRelease (armv7l,i686,x86_64)
|
|
def self.check
|
|
return unless @cmake_testing
|
|
|
|
system "#{CREW_NINJA} -C builddir test || true"
|
|
end
|
|
|
|
cmake_install_extras do
|
|
FileUtils.mv "#{CREW_DEST_PREFIX}/doc/", "#{CREW_DEST_PREFIX}/share/"
|
|
end
|
|
end
|