Unify CREW_BUILD and CREW_TGT into CREW_TARGET (#9977)

This commit is contained in:
Maximilian Downey Twiss
2024-06-16 11:16:43 +10:00
committed by GitHub
parent bcbb549062
commit db53d236c5
19 changed files with 61 additions and 64 deletions

View File

@@ -147,7 +147,7 @@ end
NOTE: All rules can have exceptions, if ***REQUIRED***, exceptions to the rules should be avoided at all costs. NOTE: All rules can have exceptions, if ***REQUIRED***, exceptions to the rules should be avoided at all costs.
<a name="eq">`CREW_OPTIONS`</a>: Equal to `--prefix=/usr/local --libdir=/usr/local/lib --mandir=/usr/local/share/man --build=armv7l-cros-linux-gnueabihf --host=armv7l-cros-linux-gnueabihf --target=#{CREW_BUILD}` <a name="eq">`CREW_OPTIONS`</a>: Equal to `--prefix=/usr/local --libdir=/usr/local/lib --mandir=/usr/local/share/man --disable-dependency-tracking --build=armv7l-cros-linux-gnueabihf --host=armv7l-cros-linux-gnueabihf --target=armv7l-cros-linux-gnueabihf --program-prefix='' --program-suffix=''`
Any additionally required resources for ChromeOS or ChromeBooks can be found [here](https://github.com/chromebrew/chromebrew/wiki/Links) Any additionally required resources for ChromeOS or ChromeBooks can be found [here](https://github.com/chromebrew/chromebrew/wiki/Links)

View File

@@ -2,7 +2,7 @@
# Defines common constants used in different parts of crew # Defines common constants used in different parts of crew
require 'etc' require 'etc'
CREW_VERSION = '1.49.0' CREW_VERSION = '1.49.1'
# kernel architecture # kernel architecture
KERN_ARCH = Etc.uname[:machine] KERN_ARCH = Etc.uname[:machine]
@@ -187,18 +187,15 @@ SSL_CERT_DIR = \
CREW_ARCH_FLAGS_OVERRIDE = ENV.fetch('CREW_ARCH_FLAGS_OVERRIDE', '') CREW_ARCH_FLAGS_OVERRIDE = ENV.fetch('CREW_ARCH_FLAGS_OVERRIDE', '')
case ARCH case ARCH
when 'aarch64', 'armv7l' when 'aarch64', 'armv7l'
CREW_TGT = 'armv7l-cros-linux-gnueabihf' CREW_TARGET = 'armv7l-cros-linux-gnueabihf'
CREW_BUILD = 'armv7l-cros-linux-gnueabihf'
# These settings have been selected to match debian armhf. # These settings have been selected to match debian armhf.
# Using -mfpu=neon breaks builds such as webkit2gtk. # Using -mfpu=neon breaks builds such as webkit2gtk.
CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '-mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp' : CREW_ARCH_FLAGS_OVERRIDE CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '-mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp' : CREW_ARCH_FLAGS_OVERRIDE
when 'i686' when 'i686'
CREW_TGT = 'i686-cros-linux-gnu' CREW_TARGET = 'i686-cros-linux-gnu'
CREW_BUILD = 'i686-cros-linux-gnu'
CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '' : CREW_ARCH_FLAGS_OVERRIDE CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '' : CREW_ARCH_FLAGS_OVERRIDE
when 'x86_64' when 'x86_64'
CREW_TGT = 'x86_64-cros-linux-gnu' CREW_TARGET = 'x86_64-cros-linux-gnu'
CREW_BUILD = 'x86_64-cros-linux-gnu'
CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '' : CREW_ARCH_FLAGS_OVERRIDE CREW_ARCH_FLAGS = CREW_ARCH_FLAGS_OVERRIDE.to_s.empty? ? '' : CREW_ARCH_FLAGS_OVERRIDE
end end
@@ -244,9 +241,9 @@ CREW_OPTIONS = <<~OPT.chomp
--libdir=#{CREW_LIB_PREFIX} \ --libdir=#{CREW_LIB_PREFIX} \
--mandir=#{CREW_MAN_PREFIX} \ --mandir=#{CREW_MAN_PREFIX} \
--disable-dependency-tracking \ --disable-dependency-tracking \
--build=#{CREW_BUILD} \ --build=#{CREW_TARGET} \
--host=#{CREW_TGT} \ --host=#{CREW_TARGET} \
--target=#{CREW_TGT} \ --target=#{CREW_TARGET} \
--program-prefix='' \ --program-prefix='' \
--program-suffix='' --program-suffix=''
OPT OPT

View File

@@ -21,7 +21,7 @@ class Apng2gif < Package
depends_on 'help2man' => :build depends_on 'help2man' => :build
def self.patch def self.patch
system "sed -i 's:CC = gcc:CC = #{CREW_TGT}-gcc:' Makefile" system "sed -i 's:CC = gcc:CC = #{CREW_TARGET}-gcc:' Makefile"
system "sed -i 's:CFLAGS = -Wall -pedantic:CFLAGS = -Wall -pedantic #{CREW_COMMON_FLAGS}:' Makefile" system "sed -i 's:CFLAGS = -Wall -pedantic:CFLAGS = -Wall -pedantic #{CREW_COMMON_FLAGS}:' Makefile"
system "sed -i 's:CFLAGS_OPT = -O2:CFLAGS_OPT =:' Makefile" system "sed -i 's:CFLAGS_OPT = -O2:CFLAGS_OPT =:' Makefile"
# zlib is unused, remove the header and library link # zlib is unused, remove the header and library link

View File

@@ -23,7 +23,7 @@ class Cbonsai < Package
def self.patch def self.patch
# Use correct gcc compiler # Use correct gcc compiler
system "sed -i 's:= cc:= #{CREW_TGT}-gcc:' Makefile" system "sed -i 's:= cc:= #{CREW_TARGET}-gcc:' Makefile"
# Move the manpage from section 1 to section 6 # Move the manpage from section 1 to section 6
# (See https://gitlab.com/jallbrit/cbonsai/-/merge_requests/21 for reasoning) # (See https://gitlab.com/jallbrit/cbonsai/-/merge_requests/21 for reasoning)

View File

@@ -39,7 +39,7 @@ class Distcc < Autotools
system "sed -i 's/ install-gnome-data//g' Makefile.in" system "sed -i 's/ install-gnome-data//g' Makefile.in"
end end
pre_configure_options "CFLAGS+=' -DPY_SSIZE_T_CLEAN -fcommon' NATIVE_COMPILER_TRIPLE='#{CREW_TGT}' INCLUDESERVER_PYTHON='#{CREW_PREFIX}/bin/python3'" pre_configure_options "CFLAGS+=' -DPY_SSIZE_T_CLEAN -fcommon' NATIVE_COMPILER_TRIPLE='#{CREW_TARGET}' INCLUDESERVER_PYTHON='#{CREW_PREFIX}/bin/python3'"
configure_options '--enable-rfc2553 --disable-Werror --with-python-sys-prefix' configure_options '--enable-rfc2553 --disable-Werror --with-python-sys-prefix'
def self.install def self.install
@@ -51,20 +51,20 @@ class Distcc < Autotools
FileUtils.mkdir_p @distcc_destbin_path FileUtils.mkdir_p @distcc_destbin_path
@gcc_version = `gcc -dumpversion`.chomp @gcc_version = `gcc -dumpversion`.chomp
@clang_version = `clang --version|grep version|cut -d " " -f3|cut -d'.' -f1`.chomp @clang_version = `clang --version|grep version|cut -d " " -f3|cut -d'.' -f1`.chomp
distcc_gcc_targets = %W[c++ c89 c99 cc cpp g++ gcc #{CREW_TGT}-g++ #{CREW_TGT}-gcc #{CREW_TGT}-gcc-#{@gcc_version}] distcc_gcc_targets = %W[c++ c89 c99 cc cpp g++ gcc #{CREW_TARGET}-g++ #{CREW_TARGET}-gcc #{CREW_TARGET}-gcc-#{@gcc_version}]
distcc_clang_targets = %W[clang clang++ clang-#{@clang_version} clang++-#{@clang_version}] distcc_clang_targets = %W[clang clang++ clang-#{@clang_version} clang++-#{@clang_version}]
File.write 'gcc-wrapper', <<~GCC_WRAPPEREOF File.write 'gcc-wrapper', <<~GCC_WRAPPEREOF
#!/bin/bash #!/bin/bash
if `which ccache &>/dev/null` ; then#{' '} if `which ccache &>/dev/null` ; then#{' '}
exec ccache distcc #{CREW_PREFIX}/bin/#{CREW_TGT}-g${0:$[-2]} "$@" exec ccache distcc #{CREW_PREFIX}/bin/#{CREW_TARGET}-g${0:$[-2]} "$@"
else else
exec distcc #{CREW_PREFIX}/bin/#{CREW_TGT}-g${0:$[-2]} "$@" exec distcc #{CREW_PREFIX}/bin/#{CREW_TARGET}-g${0:$[-2]} "$@"
fi fi
GCC_WRAPPEREOF GCC_WRAPPEREOF
FileUtils.install 'gcc-wrapper', "#{@distcc_destbin_path}/gcc-wrapper", mode: 0o755 FileUtils.install 'gcc-wrapper', "#{@distcc_destbin_path}/gcc-wrapper", mode: 0o755
# File.write 'clang-wrapper', <<~CLANG_WRAPPEREOF # File.write 'clang-wrapper', <<~CLANG_WRAPPEREOF
# #!/bin/bash # #!/bin/bash
# exec #{CREW_TGT}-$(basename ${0}) "$@" # exec #{CREW_TARGET}-$(basename ${0}) "$@"
# CLANG_WRAPPEREOF # CLANG_WRAPPEREOF
# FileUtils.install 'clang-wrapper', "#{@distcc_destbin_path}/clang-wrapper", mode: 0o755 # FileUtils.install 'clang-wrapper', "#{@distcc_destbin_path}/clang-wrapper", mode: 0o755
distcc_clang_targets.each do |bin| distcc_clang_targets.each do |bin|

View File

@@ -194,23 +194,23 @@ class Gcc_build < Package
Dir.chdir('objdir') do Dir.chdir('objdir') do
# gcc-libs install # gcc-libs install
system make_env, "make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install-shared" system make_env, "make -C #{CREW_TARGET}/libgcc DESTDIR=#{CREW_DEST_DIR} install-shared"
@gcc_libs = %w[libatomic libgfortran libgo libgomp libitm @gcc_libs = %w[libatomic libgfortran libgo libgomp libitm
libquadmath libsanitizer/asan libsanitizer/lsan libsanitizer/ubsan libquadmath libsanitizer/asan libsanitizer/lsan libsanitizer/ubsan
libsanitizer/tsan libstdc++-v3/src libvtv] libsanitizer/tsan libstdc++-v3/src libvtv]
@gcc_libs.each do |lib| @gcc_libs.each do |lib|
system make_env, "make -C #{CREW_TGT}/#{lib} \ system make_env, "make -C #{CREW_TARGET}/#{lib} \
DESTDIR=#{CREW_DEST_DIR} install-toolexeclibLTLIBRARIES", exception: false DESTDIR=#{CREW_DEST_DIR} install-toolexeclibLTLIBRARIES", exception: false
end end
system make_env, "make -C #{CREW_TGT}/libobjc DESTDIR=#{CREW_DEST_DIR} install-libs", exception: false system make_env, "make -C #{CREW_TARGET}/libobjc DESTDIR=#{CREW_DEST_DIR} install-libs", exception: false
system make_env, "make -C #{CREW_TGT}/libstdc++-v3/po DESTDIR=#{CREW_DEST_DIR} install", exception: false system make_env, "make -C #{CREW_TARGET}/libstdc++-v3/po DESTDIR=#{CREW_DEST_DIR} install", exception: false
system make_env, "make -C #{CREW_TGT}/libphobos DESTDIR=#{CREW_DEST_DIR} install", exception: false system make_env, "make -C #{CREW_TARGET}/libphobos DESTDIR=#{CREW_DEST_DIR} install", exception: false
# gcc_libs_info # gcc_libs_info
%w[libgomp libitm libquadmath].each do |lib| %w[libgomp libitm libquadmath].each do |lib|
system make_env, "make -C #{CREW_TGT}/#{lib} DESTDIR=#{CREW_DEST_DIR} install-info", exception: false system make_env, "make -C #{CREW_TARGET}/#{lib} DESTDIR=#{CREW_DEST_DIR} install-info", exception: false
end end
system make_env, "make DESTDIR=#{CREW_DEST_DIR} install-strip" system make_env, "make DESTDIR=#{CREW_DEST_DIR} install-strip"
@@ -229,10 +229,10 @@ class Gcc_build < Package
FileUtils.install "gcc/#{lib}", "#{gcc_libdir}/", mode: 0o755 FileUtils.install "gcc/#{lib}", "#{gcc_libdir}/", mode: 0o755
end end
system make_env, "make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install" system make_env, "make -C #{CREW_TARGET}/libgcc DESTDIR=#{CREW_DEST_DIR} install"
%w[src include libsupc++ python].each do |lib| %w[src include libsupc++ python].each do |lib|
system make_env, "make -C #{CREW_TGT}/libstdc++-v3/#{lib} DESTDIR=#{CREW_DEST_DIR} install" system make_env, "make -C #{CREW_TARGET}/libstdc++-v3/#{lib} DESTDIR=#{CREW_DEST_DIR} install"
end end
system make_env, "make DESTDIR=#{CREW_DEST_DIR} install-libcc1" system make_env, "make DESTDIR=#{CREW_DEST_DIR} install-libcc1"
@@ -249,26 +249,26 @@ class Gcc_build < Package
system make_env, "make -C lto-plugin DESTDIR=#{CREW_DEST_DIR} install" system make_env, "make -C lto-plugin DESTDIR=#{CREW_DEST_DIR} install"
system make_env, "make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS", system make_env, "make -C #{CREW_TARGET}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS",
exception: false exception: false
system make_env, "make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", system make_env, "make -C #{CREW_TARGET}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS",
exception: false exception: false
system make_env, "make -C #{CREW_TGT}/libitm DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", system make_env, "make -C #{CREW_TARGET}/libitm DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS",
exception: false exception: false
system make_env, "make -C #{CREW_TGT}/libquadmath DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS", system make_env, "make -C #{CREW_TARGET}/libquadmath DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS",
exception: false exception: false
system make_env, "make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_sanincludeHEADERS", system make_env, "make -C #{CREW_TARGET}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_sanincludeHEADERS",
exception: false exception: false
system make_env, "make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", system make_env, "make -C #{CREW_TARGET}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS",
exception: false exception: false
system make_env, system make_env,
"make -C #{CREW_TGT}/libsanitizer/asan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false "make -C #{CREW_TARGET}/libsanitizer/asan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false
# This failed on i686 # This failed on i686
system make_env, system make_env,
"make -C #{CREW_TGT}/libsanitizer/tsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false "make -C #{CREW_TARGET}/libsanitizer/tsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false
# This might fail on i686 # This might fail on i686
system make_env, system make_env,
"make -C #{CREW_TGT}/libsanitizer/lsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false "make -C #{CREW_TARGET}/libsanitizer/lsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS", exception: false
# libiberty is installed from binutils # libiberty is installed from binutils
# system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \ # system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \
@@ -283,7 +283,7 @@ class Gcc_build < Package
# install the libstdc++ man pages # install the libstdc++ man pages
# This is broken in 14.0.1 # This is broken in 14.0.1
# system make_env, "make -C #{CREW_TGT}/libstdc++-v3/doc DESTDIR=#{CREW_DEST_DIR} doc-install-man" # system make_env, "make -C #{CREW_TARGET}/libstdc++-v3/doc DESTDIR=#{CREW_DEST_DIR} doc-install-man"
# byte-compile python libraries # byte-compile python libraries
system "python -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version}/" system "python -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version}/"

View File

@@ -21,7 +21,7 @@ class Gif2apng < Package
depends_on 'help2man' => :build depends_on 'help2man' => :build
def self.patch def self.patch
system "sed -i 's:CC = gcc:CC = #{CREW_TGT}-gcc:' Makefile" system "sed -i 's:CC = gcc:CC = #{CREW_TARGET}-gcc:' Makefile"
system "sed -i 's:CFLAGS = -Wall -pedantic:CFLAGS = -Wall -pedantic #{CREW_COMMON_FLAGS}:' Makefile" system "sed -i 's:CFLAGS = -Wall -pedantic:CFLAGS = -Wall -pedantic #{CREW_COMMON_FLAGS}:' Makefile"
system "sed -i 's:CFLAGS_OPT = -O2:CFLAGS_OPT =:' Makefile" system "sed -i 's:CFLAGS_OPT = -O2:CFLAGS_OPT =:' Makefile"
# use system zopfli # use system zopfli

View File

@@ -34,7 +34,7 @@ class I3 < Package
def self.install def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
Dir.chdir "#{CREW_DEST_PREFIX}/bin" do Dir.chdir "#{CREW_DEST_PREFIX}/bin" do
system "for f in \$(ls #{CREW_BUILD}-*); do g=\$(echo \$f | sed 's,#{CREW_BUILD}-,,'); ln -sf \$f \$g; done" system "for f in \$(ls #{CREW_TARGET}-*); do g=\$(echo \$f | sed 's,#{CREW_TARGET}-,,'); ln -sf \$f \$g; done"
File.write 'starti3', <<~EOF, perm: 0o755 File.write 'starti3', <<~EOF, perm: 0o755
#!/bin/sh #!/bin/sh
stopsommelier stopsommelier

View File

@@ -58,7 +58,7 @@ class Libclc < Package
system "cmake -B builddir -G Ninja libclc \ system "cmake -B builddir -G Ninja libclc \
#{@cmake_options.gsub('-DCMAKE_LINKER_TYPE=MOLD', '')} \ #{@cmake_options.gsub('-DCMAKE_LINKER_TYPE=MOLD', '')} \
-DCMAKE_C_COMPILER=$(which clang) \ -DCMAKE_C_COMPILER=$(which clang) \
-DCMAKE_C_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_C_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_CXX_COMPILER=$(which clang++) \ -DCMAKE_CXX_COMPILER=$(which clang++) \
-DCMAKE_CXX_COMPILER_AR=$(which llvm-ar) \ -DCMAKE_CXX_COMPILER_AR=$(which llvm-ar) \
-DCMAKE_CXX_COMPILER_RANLIB=$(which llvm-ranlib) \ -DCMAKE_CXX_COMPILER_RANLIB=$(which llvm-ranlib) \

View File

@@ -25,8 +25,8 @@ class Librhash < Package
system "mold -run ./configure \ system "mold -run ./configure \
--prefix=#{CREW_PREFIX} \ --prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX}\ --libdir=#{CREW_LIB_PREFIX}\
--cc=#{CREW_TGT}-gcc \ --cc=#{CREW_TARGET}-gcc \
--ar=#{CREW_TGT}-gcc-ar \ --ar=#{CREW_TARGET}-gcc-ar \
--enable-gettext \ --enable-gettext \
--enable-openssl \ --enable-openssl \
--extra-cflags='#{CREW_COMMON_FLAGS}'" --extra-cflags='#{CREW_COMMON_FLAGS}'"

View File

@@ -39,8 +39,8 @@ class Llvm16_build < Package
when 'aarch64', 'armv7l' when 'aarch64', 'armv7l'
# LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU' # LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU'
# LLVM_TARGETS_TO_BUILD = 'all'.freeze # LLVM_TARGETS_TO_BUILD = 'all'.freeze
@ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_LDFLAGS = '' @ARCH_LDFLAGS = ''
@ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin"
LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze
@@ -122,11 +122,11 @@ class Llvm16_build < Package
clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@" clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@"
CLCPLUSPLUS_EOF CLCPLUSPLUS_EOF
system "cmake -B builddir -G Ninja llvm \ system "cmake -B builddir -G Ninja llvm \
-DCMAKE_ASM_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_ASM_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=$(which clang) \ -DCMAKE_C_COMPILER=$(which clang) \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_C_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \ -DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \
-DCMAKE_CXX_COMPILER=$(which clang++) \ -DCMAKE_CXX_COMPILER=$(which clang++) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
@@ -148,7 +148,7 @@ class Llvm16_build < Package
-DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \ -DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \
-DLLVM_BUILD_LLVM_DYLIB=ON \ -DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_CCACHE_BUILD=ON \ -DLLVM_CCACHE_BUILD=ON \
-DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_BUILD} \ -DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_TARGET} \
-DLLVM_ENABLE_FFI=ON \ -DLLVM_ENABLE_FFI=ON \
-DLLVM_ENABLE_LTO=Thin \ -DLLVM_ENABLE_LTO=Thin \
-DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \ -DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \

View File

@@ -40,8 +40,8 @@ class Llvm17_build < Package
when 'aarch64', 'armv7l' when 'aarch64', 'armv7l'
# LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU' # LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU'
# LLVM_TARGETS_TO_BUILD = 'all'.freeze # LLVM_TARGETS_TO_BUILD = 'all'.freeze
@ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_LDFLAGS = '' @ARCH_LDFLAGS = ''
@ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin"
LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze
@@ -123,11 +123,11 @@ class Llvm17_build < Package
clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@" clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@"
CLCPLUSPLUS_EOF CLCPLUSPLUS_EOF
system "mold -run cmake -B builddir -G Ninja llvm \ system "mold -run cmake -B builddir -G Ninja llvm \
-DCMAKE_ASM_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_ASM_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=$(which clang) \ -DCMAKE_C_COMPILER=$(which clang) \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_C_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \ -DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \
-DCMAKE_CXX_COMPILER=$(which clang++) \ -DCMAKE_CXX_COMPILER=$(which clang++) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
@@ -149,7 +149,7 @@ class Llvm17_build < Package
-DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \ -DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \
-DLLVM_BUILD_LLVM_DYLIB=ON \ -DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_CCACHE_BUILD=ON \ -DLLVM_CCACHE_BUILD=ON \
-DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_BUILD} \ -DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_TARGET} \
-DLLVM_ENABLE_FFI=ON \ -DLLVM_ENABLE_FFI=ON \
-DLLVM_ENABLE_LTO=Thin \ -DLLVM_ENABLE_LTO=Thin \
-DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \ -DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \

View File

@@ -41,8 +41,8 @@ class Llvm18_build < Package
when 'aarch64', 'armv7l' when 'aarch64', 'armv7l'
# LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU' # LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU'
# LLVM_TARGETS_TO_BUILD = 'all'.freeze # LLVM_TARGETS_TO_BUILD = 'all'.freeze
@ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_C_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_BUILD}" @ARCH_CXX_FLAGS = "-fPIC -mfloat-abi=hard -mthumb -mfpu=vfpv3-d16 -march=armv7-a+fp -ccc-gcc-name #{CREW_TARGET}"
@ARCH_LDFLAGS = '' @ARCH_LDFLAGS = ''
@ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin"
LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;compiler-rt;libclc;lld;lldb;polly;pstl'.freeze
@@ -125,11 +125,11 @@ class Llvm18_build < Package
clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@" clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem ${cxx_sys} -I ${cxx_inc} -B ${gnuc_lib} -L ${gnuc_lib} "$@"
CLCPLUSPLUS_EOF CLCPLUSPLUS_EOF
system "mold -run cmake -B builddir -G Ninja llvm \ system "mold -run cmake -B builddir -G Ninja llvm \
-DCMAKE_ASM_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_ASM_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=$(which clang) \ -DCMAKE_C_COMPILER=$(which clang) \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_C_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \ -DCMAKE_C_FLAGS='#{@ARCH_C_LTO_FLAGS}' \
-DCMAKE_CXX_COMPILER=$(which clang++) \ -DCMAKE_CXX_COMPILER=$(which clang++) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
@@ -152,7 +152,7 @@ class Llvm18_build < Package
-DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \ -DLLVM_BINUTILS_INCDIR='#{CREW_PREFIX}/include' \
-DLLVM_BUILD_LLVM_DYLIB=ON \ -DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_CCACHE_BUILD=ON \ -DLLVM_CCACHE_BUILD=ON \
-DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_BUILD} \ -DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_TARGET} \
-DLLVM_ENABLE_FFI=ON \ -DLLVM_ENABLE_FFI=ON \
-DLLVM_ENABLE_LTO=Thin \ -DLLVM_ENABLE_LTO=Thin \
-DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \ -DLLVM_ENABLE_PROJECTS='#{LLVM_PROJECTS_TO_BUILD}' \

View File

@@ -77,7 +77,7 @@ clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem \${cxx_sys} -I \${
system "env PATH=#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin FC= \ system "env PATH=#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin FC= \
cmake -G Ninja \ cmake -G Ninja \
-DCMAKE_INSTALL_PREFIX=#{CREW_PREFIX} \ -DCMAKE_INSTALL_PREFIX=#{CREW_PREFIX} \
-DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_BUILD} \ -DLLVM_DEFAULT_TARGET_TRIPLE=#{CREW_TARGET} \
-DLLVM_TARGETS_TO_BUILD=\'#{LLVM_TARGETS_TO_BUILD}' \ -DLLVM_TARGETS_TO_BUILD=\'#{LLVM_TARGETS_TO_BUILD}' \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DLLVM_LIBDIR_SUFFIX='#{CREW_LIB_SUFFIX}' \ -DLLVM_LIBDIR_SUFFIX='#{CREW_LIB_SUFFIX}' \

View File

@@ -62,7 +62,7 @@ class Openmp < Package
system "cmake -B builddir -G Ninja openmp \ system "cmake -B builddir -G Ninja openmp \
#{@cmake_options} \ #{@cmake_options} \
-DCMAKE_C_COMPILER=$(which clang) \ -DCMAKE_C_COMPILER=$(which clang) \
-DCMAKE_C_COMPILER_TARGET=#{CREW_BUILD} \ -DCMAKE_C_COMPILER_TARGET=#{CREW_TARGET} \
-DCMAKE_CXX_COMPILER=$(which clang++) \ -DCMAKE_CXX_COMPILER=$(which clang++) \
-DCMAKE_CXX_COMPILER_AR=$(which llvm-ar) \ -DCMAKE_CXX_COMPILER_AR=$(which llvm-ar) \
-DCMAKE_CXX_COMPILER_RANLIB=$(which llvm-ranlib) \ -DCMAKE_CXX_COMPILER_RANLIB=$(which llvm-ranlib) \

View File

@@ -38,7 +38,7 @@ class Perl < Package
-Dsitearch=#{CREW_LIB_PREFIX}/perl5/#{version}/site_perl \ -Dsitearch=#{CREW_LIB_PREFIX}/perl5/#{version}/site_perl \
-Dvendorlib=#{CREW_PREFIX}/share/perl5/vendor_perl \ -Dvendorlib=#{CREW_PREFIX}/share/perl5/vendor_perl \
-Dvendorarch=#{CREW_LIB_PREFIX}/perl5/#{version}/vendor_perl \ -Dvendorarch=#{CREW_LIB_PREFIX}/perl5/#{version}/vendor_perl \
-Dcc=#{CREW_TGT}-gcc \ -Dcc=#{CREW_TARGET}-gcc \
-Doptimize='#{CREW_COMMON_FLAGS}' \ -Doptimize='#{CREW_COMMON_FLAGS}' \
-Dlldlflags='-shared #{CREW_LDFLAGS}' -Dldflags='#{CREW_LDFLAGS}' \ -Dlldlflags='-shared #{CREW_LDFLAGS}' -Dldflags='#{CREW_LDFLAGS}' \
-Dusethreads \ -Dusethreads \

View File

@@ -65,11 +65,11 @@ class Python2 < Package
Dir.mkdir 'builddir' Dir.mkdir 'builddir'
Dir.chdir 'builddir' do Dir.chdir 'builddir' do
system "env CFLAGS=#{@py_common_flags} CXXFLAGS=#{@py_common_flags} \ system "env CFLAGS=#{@py_common_flags} CXXFLAGS=#{@py_common_flags} \
CC='#{CREW_TGT}-gcc' \ CC='#{CREW_TARGET}-gcc' \
CXX='#{CREW_TGT}-g++' \ CXX='#{CREW_TARGET}-g++' \
CPPFLAGS='#{@cppflags}' \ CPPFLAGS='#{@cppflags}' \
LDFLAGS='#{@ldflags}' \ LDFLAGS='#{@ldflags}' \
../configure --prefix=#{CREW_PREFIX} --build=#{CREW_BUILD} --host=#{CREW_TGT} --target=#{CREW_TGT} \ ../configure --prefix=#{CREW_PREFIX} --build=#{CREW_TARGET} --host=#{CREW_TARGET} --target=#{CREW_TARGET} \
--with-fpectl \ --with-fpectl \
--enable-ipv6 \ --enable-ipv6 \
--with-threads \ --with-threads \

View File

@@ -26,7 +26,7 @@ class Samurai < Package
def self.build def self.build
system "make CFLAGS='#{CREW_COMMON_FLAGS}' \ system "make CFLAGS='#{CREW_COMMON_FLAGS}' \
LDFLAGS='#{CREW_LDFLAGS}' \ LDFLAGS='#{CREW_LDFLAGS}' \
CC='#{CREW_TGT}-gcc'" CC='#{CREW_TARGET}-gcc'"
end end
def self.install def self.install

View File

@@ -23,7 +23,7 @@ class Scdoc < Package
def self.patch def self.patch
# Use correct gcc compiler # Use correct gcc compiler
system "sed -i '2 s:^:CC = #{CREW_TGT}-gcc\\n:' Makefile" system "sed -i '2 s:^:CC = #{CREW_TARGET}-gcc\\n:' Makefile"
# Build a dynamically linked binary # Build a dynamically linked binary
system "sed -i 's:LDFLAGS+=-static:LDFLAGS+=:' Makefile" # Compile dynamically system "sed -i 's:LDFLAGS+=-static:LDFLAGS+=:' Makefile" # Compile dynamically