diff --git a/bin/crew b/bin/crew index aa3b67b4f..d0c432bcd 100755 --- a/bin/crew +++ b/bin/crew @@ -1179,18 +1179,18 @@ def build_package(pwd) end def archive_package(pwd) - unless ENV['CREW_USE_PIXZ'] == '1' - pkg_name = "#{@pkg.name}-#{@pkg.version}-chromeos-#{@device[:architecture]}.tar.xz" - Dir.chdir CREW_DEST_DIR do - system "tar c#{@verbose}Jf #{pwd}/#{pkg_name} *" - end - else + unless ENV['CREW_USE_PIXZ'] == '0' || !File.exist?("#{CREW_PREFIX}/bin/pixz") puts "Using pixz to compress archive." pkg_name = "#{@pkg.name}-#{@pkg.version}-chromeos-#{@device[:architecture]}.tpxz" Dir.chdir CREW_DEST_DIR do # Use smaller blocks with "-f0.25" to make random access faster. system "tar c#{@verbose} * | pixz -f0.25 -9 > #{pwd}/#{pkg_name}" end + else + pkg_name = "#{@pkg.name}-#{@pkg.version}-chromeos-#{@device[:architecture]}.tar.xz" + Dir.chdir CREW_DEST_DIR do + system "tar c#{@verbose}Jf #{pwd}/#{pkg_name} *" + end end system "sha256sum #{pwd}/#{pkg_name} > #{pwd}/#{pkg_name}.sha256" end diff --git a/install.sh b/install.sh index 2ac84c6f0..7951097dd 100755 --- a/install.sh +++ b/install.sh @@ -17,12 +17,12 @@ CREW_PACKAGES_PATH="${CREW_LIB_PATH}/packages" CURL="${CURL:-curl}" # EARLY_PACKAGES cannot depend on crew_profile_base for their core operations (completion scripts are fine) -EARLY_PACKAGES="gcc10 brotli c_ares libcyrussasl libidn2 libmetalink libnghttp2 libpsl \ +EARLY_PACKAGES="libarchive openssl zstd xzutils lz4 bz2 libxml2 pixz libssp brotli c_ares libcyrussasl libidn2 libmetalink libnghttp2 libpsl \ libtirpc libunistring openldap rtmpdump zstd ncurses ca_certificates libyaml ruby libffi \ -openssl nettle krb5 p11kit libtasn1 gnutls curl git icu4c" +nettle krb5 p11kit libtasn1 gnutls curl git icu4c " LATE_PACKAGES="binutils crew_profile_base less most manpages filecmd mawk readline perl pcre pcre2 \ -python27 python3 py3_pip sed bz2 lz4 lzip unzip xzutils zip" +python27 python3 py3_pip sed lzip unzip zip" ARCH="$(uname -m)" @@ -106,7 +106,9 @@ function download_check () { #download echo -e "${BLUE}Downloading ${1}...${RESET}" - $CURL '-#' -C - -L --ssl "${2}" -o "${3}" + # Gitlab doesn't support byte ranges, hence no need for "-C" + # --ssl is only valid for (FTP IMAP POP3 SMTP) + $CURL '-#' -L "${2}" -o "${3}" #verify echo -e "${BLUE}Verifying ${1}...${RESET}" @@ -127,7 +129,11 @@ function extract_install () { #extract and install echo "Extracting ${1} (this may take a while)..." - tar xpf ../"${2}" + if ! LD_LIBRARY_PATH=${CREW_PREFIX}/lib${LIB_SUFFIX}:/lib${LIB_SUFFIX} pixz -h > /dev/null; then + tar xpf ../"${2}" + else + LD_LIBRARY_PATH=${CREW_PREFIX}/lib${LIB_SUFFIX}:/lib${LIB_SUFFIX} tar -Ipixz -xpf ../"${2}" + fi echo "Installing ${1} (this may take a while)..." tar cpf - ./*/* | (cd /; tar xp --keep-directory-symlink -f -) mv ./dlist "${CREW_CONFIG_PATH}/meta/${1}.directorylist" @@ -197,12 +203,14 @@ git remote add -f origin "https://github.com/${OWNER}/${REPO}.git" git config core.sparsecheckout true echo packages >> .git/info/sparse-checkout echo lib >> .git/info/sparse-checkout +echo bin >> .git/info/sparse-checkout echo crew >> .git/info/sparse-checkout +echo tools >> .git/info/sparse-checkout git fetch origin "${BRANCH}" git reset --hard origin/"${BRANCH}" crew update -yes | crew install $LATE_PACKAGES +yes | crew install $LATE_PACKAGES [[ "$devtools" == "y" || "$devtools" == "Y" ]] && yes | crew install buildessential diff --git a/lib/const.rb b/lib/const.rb index 5033ecd84..3b84e193b 100644 --- a/lib/const.rb +++ b/lib/const.rb @@ -1,6 +1,6 @@ # Defines common constants used in different parts of crew -CREW_VERSION = '1.9.5' +CREW_VERSION = '1.9.6' ARCH_ACTUAL = `uname -m`.strip # This helps with virtualized builds on aarch64 machines diff --git a/packages/buildessential.rb b/packages/buildessential.rb index d4eff90e1..b5d49cb93 100644 --- a/packages/buildessential.rb +++ b/packages/buildessential.rb @@ -11,7 +11,7 @@ class Buildessential < Package # install first to get ldconfig depends_on 'glibc' - depends_on 'gcc10' + depends_on 'gcc11' depends_on 'gmp' depends_on 'mpfr' depends_on 'mpc' diff --git a/packages/gcc10.rb b/packages/gcc10.rb index 119f9945c..04f49b3c1 100644 --- a/packages/gcc10.rb +++ b/packages/gcc10.rb @@ -1,63 +1,97 @@ require 'package' +require 'open3' class Gcc10 < Package description 'The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go.' homepage 'https://www.gnu.org/software/gcc/' - version '10.2.1-0f64' + version '10.3.0-2' license 'GPL-3' compatibility 'all' - source_url 'https://github.com/gcc-mirror/gcc/archive/0f64123bde80a37c8d9aced69405e71848a23b95.zip' - source_sha256 '87f1b3344db6cdcb7295e63c031e00f2c7755c2656cf9603aeb32cf5a5539ec7' + source_url 'https://ftpmirror.gnu.org/gcc/gcc-10.3.0/gcc-10.3.0.tar.xz' + source_sha256 '64f404c1a650f27fc33da242e1f2df54952e3963a49e06e73f6940f3223ac344' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.2.1-0f64_armv7l/gcc10-10.2.1-0f64-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.2.1-0f64_armv7l/gcc10-10.2.1-0f64-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.2.1-0f64_i686/gcc10-10.2.1-0f64-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.2.1-0f64_x86_64/gcc10-10.2.1-0f64-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.3.0-2_armv7l/gcc10-10.3.0-2-chromeos-armv7l.tpxz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.3.0-2_armv7l/gcc10-10.3.0-2-chromeos-armv7l.tpxz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.3.0-2_i686/gcc10-10.3.0-2-chromeos-i686.tpxz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc10/10.3.0-2_x86_64/gcc10-10.3.0-2-chromeos-x86_64.tpxz' }) - binary_sha256 ({ - aarch64: 'dc0760c6fc123a48a72a6f5492f56d2be4273c29be3dfce6e7b202521c659365', - armv7l: 'dc0760c6fc123a48a72a6f5492f56d2be4273c29be3dfce6e7b202521c659365', - i686: '52850f19acb5c7def3b7116a5873a5c68c4f9a7fa254b5198deacff36f1e15aa', - x86_64: '438ae78481cbbfcc38c6d917498f6b6f0681627a798b263bb9b8ef222ee38b35', + binary_sha256({ + aarch64: '658745ec60c4c51902ec8a3b44268051e32675b583e975932d1d04df64e307c2', + armv7l: '658745ec60c4c51902ec8a3b44268051e32675b583e975932d1d04df64e307c2', + i686: '3da3094cba3aa94a3abfe8c80b78ef0fa411b37248b9940cf6892079a1afac28', + x86_64: '0bc7853779446996e267e8142e87bf2e1e989b54fc03813c0cf2350b463bb3fc' }) - depends_on 'unzip' => :build - depends_on 'mawk' => :build - depends_on 'dejagnu' => :build # for test - depends_on 'icu4c' => :build - depends_on 'python2' => :build - depends_on 'python3' => :build depends_on 'ccache' => :build + depends_on 'dejagnu' => :build # for test + depends_on 'hashpipe' => :build + depends_on 'glibc' # R + depends_on 'gmp' # R + depends_on 'isl' # R + depends_on 'mpc' # R + depends_on 'mpfr' # R + depends_on 'libssp' # L - depends_on 'binutils' - depends_on 'gmp' - depends_on 'mpfr' - depends_on 'mpc' - depends_on 'isl' - depends_on 'glibc' - depends_on 'zstd' + @gcc_version = version.split('-')[0].rpartition('.')[0] - def self.preinstall - installed_gccver = `gcc -v 2>&1 | tail -1 | cut -d' ' -f3`.chomp - gcc_version = version.split("-")[0] - abort "GCC version #{installed_gccver} already installed.".lightgreen unless "#{installed_gccver}" == "No" || "#{installed_gccver}" == "not" || "#{installed_gccver}" == "gcc:" || "#{installed_gccver}" == "#{gcc_version}" + @gcc_global_opts = '--disable-bootstrap \ + --disable-libmpx \ + --disable-libssp \ + --disable-multilib \ + --disable-werror \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-host-shared \ + --enable-lto \ + --enable-plugin \ + --enable-shared \ + --enable-symvers \ + --enable-static \ + --enable-threads=posix \ + --with-gcc-major-version-only \ + --with-gmp \ + --with-isl \ + --with-mpc \ + --with-mpfr \ + --with-pic \ + --with-system-libunwind \ + --with-system-zlib' + + @cflags = '-fPIC -pipe' + @cxxflags = '-fPIC -pipe' + @languages = 'c,c++,jit,objc,fortran,go' + case ARCH + when 'armv7l', 'aarch64' + @archflags = '--with-arch=armv7-a --with-float=hard --with-fpu=neon --with-tune=cortex-a15' + when 'x86_64' + @archflags = '--with-arch-64=x86-64' + when 'i686' + @archflags = '--with-arch-32=i686' end - def self.build - # Set ccache sloppiness as per - # https://wiki.archlinux.org/index.php/Ccache#Sloppiness - system "ccache --set-config=sloppiness=file_macro,locale,time_macros" - # Prefix ccache to path. - ENV['PATH'] = "#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin" + def self.preinstall + # Use full gcc path to bypass ccache + stdout_and_stderr, status = Open3.capture2e('bash', '-c', + "#{CREW_PREFIX}/bin/gcc -dumpversion 2>&1 | tail -1 | cut -d' ' -f1") + if status.success? + installed_gccver = stdout_and_stderr.chomp + # One gets "-dumpversion" or "bash:" with no gcc installed. + unless installed_gccver.to_s == '-dumpversion' || + installed_gccver.to_s == 'bash:' || + installed_gccver.to_s == @gcc_version.to_s || + installed_gccver.rpartition('.')[0].to_s == @gcc_version.rpartition('.')[0].to_s + abort "GCC version #{installed_gccver} already installed.".lightgreen + end + end + end - gcc_version = version.split("-")[0] - - # previous compile issue - # /usr/local/bin/ld: cannot find crti.o: No such file or directory - # /usr/local/bin/ld: cannot find /usr/lib64/libc_nonshared.a - ENV["LIBRARY_PATH"] = "#{CREW_LIB_PREFIX}" # fix x86_64 issues - FileUtils.mkdir_p "objdir/gcc/.deps" + def self.patch # This fixes a PATH_MAX undefined error which breaks libsanitizer # "libsanitizer/asan/asan_linux.cpp:217:21: error: ‘PATH_MAX’ was not declared in this scope" # This is defined in https://chromium.googlesource.com/chromiumos/third_party/kernel/+/refs/heads/chromeos-5.4/include/uapi/linux/limits.h @@ -66,131 +100,251 @@ class Gcc10 < Package system "grep -q 4096 libsanitizer/asan/asan_linux.cpp || (sed -i '77a #endif' libsanitizer/asan/asan_linux.cpp && sed -i '77a #define PATH_MAX 4096' libsanitizer/asan/asan_linux.cpp && sed -i '77a #ifndef PATH_MAX' libsanitizer/asan/asan_linux.cpp)" - # Fix "crtbeginT.o: relocation R_X86_64_32 against hidden symbol `__TMC_END__' can not be used when making a shared object" - # when building static llvm - system "sed -i 's/-fbuilding-libgcc -fno-stack-protector/-fbuilding-libgcc -fPIC -fno-stack-protector/g' libgcc/Makefile.in" - Dir.chdir("objdir") do - ENV['CFLAGS'] = '-fPIC' - ENV['CXXFLAGS'] = '-fPIC' - case ARCH - when 'armv7l', 'aarch64' - system "../configure #{CREW_OPTIONS} \ - --enable-checking=release \ - --disable-multilib \ - --enable-lto \ - --enable-threads=posix \ - --disable-werror \ - --disable-libmpx \ - --enable-static \ - --enable-shared \ - --with-pic \ - --program-suffix=-#{gcc_version} \ - --with-arch=armv7-a \ - --with-tune=cortex-a15 \ - --with-fpu=neon \ - --with-float=hard \ - --with-build-config=bootstrap-lto-lean" - when 'x86_64' - system "../configure #{CREW_OPTIONS} \ - --enable-checking=release \ - --enable-lto \ - --disable-multilib \ - --enable-threads=posix \ - --disable-werror \ - --disable-libmpx \ - --enable-static \ - --enable-shared \ - --with-pic \ - --program-suffix=-#{gcc_version} \ - --with-arch-64=x86-64 \ - --with-build-config=bootstrap-lto-lean" - when 'i686' - system "../configure #{CREW_OPTIONS} \ - --enable-checking=release \ - --enable-lto \ - --disable-multilib \ - --enable-threads=posix \ - --disable-werror \ - --disable-libmpx \ - --enable-static \ - --enable-shared \ - --with-pic \ - --program-suffix=-#{gcc_version} \ - --with-arch-32=#{ARCH} \ - --with-build-config=bootstrap-lto-lean" - end - system 'make' + end + + def self.build + # Set ccache sloppiness as per + # https://wiki.archlinux.org/index.php/Ccache#Sloppiness + system 'ccache --set-config=sloppiness=file_macro,locale,time_macros' + # Prefix ccache to path. + @path = "#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin" + + # Install prereqs using the standard gcc method so they can be + # linked statically. + # system './contrib/download_prerequisites' + + ## Install newer version of gmp + # gmp_url = "https://gmplib.org/download/gmp/gmp-#{@gmp_ver}.tar.lz" + # gmp_sha256 = '2c7f4f0d370801b2849c48c9ef3f59553b5f1d3791d070cffb04599f9fc67b41' + # system "curl -Ls #{gmp_url} | hashpipe sha256 #{gmp_sha256} | tar --lzip -x" + # system "ln -sf ../gmp-#{@gmp_ver} gmp" + + ## Install newer version of isl + # isl_url = "http://isl.gforge.inria.fr/isl-#{@isl_ver}.tar.bz2" + # isl_sha256 = 'c58922c14ae7d0791a77932f377840890f19bc486b653fa64eba7f1026fb214d' + # system "curl -Ls #{isl_url} | hashpipe sha256 #{isl_sha256} | tar xj" + # system "ln -sf ../isl-#{@isl_ver} isl" + + ## Install newer version of mpc + # mpc_url = "https://ftp.gnu.org/gnu/mpc/mpc-#{@mpc_ver}.tar.gz" + # mpc_sha256 = '17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459' + # system "curl -Ls #{mpc_url} | hashpipe sha256 #{mpc_sha256} | tpxz" + # system "ln -sf ../mpc-#{@mpc_ver} mpc" + + ## Install newer version of mpfr + # mpfr_url = "https://www.mpfr.org/mpfr-current/mpfr-#{@mpfr_ver}.tpxz" + # mpfr_sha256 = '0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f' + # system "curl -Ls #{mpfr_url} | hashpipe sha256 #{mpfr_sha256} | tar xJ" + # Dir.chdir "mpfr-#{@mpfr_ver}" do + # system 'curl -Ls "https://gforge.inria.fr/scm/viewvc.php/mpfr/misc/www/mpfr-4.1.0/allpatches?revision=14491&view=co" | \ + # hashpipe sha256 dfa7d8a14ec7cb3b344cb81cfd7bd7e22aba62379941cc9110759f11172ac013 | patch -NZp1 --binary' + # end + # system "ln -sf ../mpfr-#{@mpfr_ver} mpfr" + + FileUtils.mkdir_p 'objdir/gcc/.deps' + + Dir.chdir('objdir') do + system "env NM=gcc-nm AR=gcc-ar RANLIB=gcc-ranlib \ + CFLAGS='#{@cflags}' CXXFLAGS='#{@cxxflags}' \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + ../configure #{CREW_OPTIONS} \ + #{@gcc_global_opts} \ + #{@archflags} \ + --enable-languages=#{@languages} \ + --program-suffix=-#{@gcc_version}" + # LIBRARY_PATH=#{CREW_LIB_PREFIX} needed for x86_64 to avoid: + # /usr/local/bin/ld: cannot find crti.o: No such file or directory + # /usr/local/bin/ld: cannot find /usr/lib64/libc_nonshared.a + system "env PATH=#{@path} \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + make -j#{CREW_NPROC}" end end # preserve for check, skip check for current version def self.check - Dir.chdir("objdir") do - #system "make -k check -j#{CREW_NPROC}" - #system "../contrib/test_summary" - end + # Dir.chdir('objdir') do + # system "make -k check -j#{CREW_NPROC} || true" + # system '../contrib/test_summary' + # end end def self.install - Dir.chdir("objdir") do - system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip" + gcc_arch = `objdir/gcc/xgcc -dumpmachine`.chomp + gcc_dir = "gcc/#{gcc_arch}/#{@gcc_version}" + gcc_libdir = "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" + Dir.chdir('objdir') do + # gcc-libs install + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install-shared" - gcc_arch = `gcc/xgcc -dumpmachine`.chomp - gcc_version = version.split("-")[0] - gcc_dir = "gcc/#{gcc_arch}/#{gcc_version}" - gcc_libdir = "#{CREW_LIB_PREFIX}/#{gcc_dir}" + @gcc_libs = %w[libatomic libgfortran libgo libgomp libitm + libquadmath libsanitizer/asan libsanitizer/lsan libsanitizer/ubsan + libsanitizer/tsan libstdc++-v3/src libvtv] + @gcc_libs.each do |lib| + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/#{lib} \ + DESTDIR=#{CREW_DEST_DIR} install-toolexeclibLTLIBRARIES || true" + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libobjc DESTDIR=#{CREW_DEST_DIR} install-libs || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/po DESTDIR=#{CREW_DEST_DIR} install || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libphobos DESTDIR=#{CREW_DEST_DIR} install || true" + + @gcc_libs_info = %w[libgomp libitm libquadmath] + @gcc_libs_info.each do |lib| + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/#{lib} DESTDIR=#{CREW_DEST_DIR} install-info || true" + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-strip" + + # gcc-non-lib install + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-driver install-cpp install-gcc-ar \ + c++.install-common install-headers install-plugin install-lto-wrapper" + + @gcov_install = %w[gcov gcov-tool] + @gcov_install.each do |gcov_bin| + FileUtils.install "gcc/#{gcov_bin}", "#{CREW_DEST_PREFIX}/bin/#{gcov_bin}-#{@gcc_version}", mode: 0o755 + end + + FileUtils.mkdir_p gcc_libdir + @gcc_libdir_install = %w[cc1 cc1plus collect2 lto1] + @gcc_libdir_install.each do |lib| + FileUtils.install "gcc/#{lib}", "#{gcc_libdir}/", mode: 0o755 + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install" + + @libstdc_install = %w[src include libsupc++] + @libstdc_install.each do |lib| + system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/#{lib} DESTDIR=#{CREW_DEST_DIR} install" + end + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/python DESTDIR=#{CREW_DEST_DIR} install" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-libcc1" # http://www.linuxfromscratch.org/lfs/view/development/chapter06/gcc.html#contents-gcc # move a misplaced file - # The installation stage puts some files used by gdb under the /usr/local/lib(64) directory. This generates spurious error messages when performing ldconfig. This command moves the files to another location. - FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib" - FileUtils.mv Dir.glob("#{CREW_DEST_LIB_PREFIX}/*gdb.py"), "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib/" + # The installation stage puts some files used by gdb under the /usr/local/lib(64) directory. + # This generates spurious error messages when performing ldconfig. This command moves the files to another location. + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib" + FileUtils.mv Dir.glob("#{CREW_DEST_LIB_PREFIX}/*gdb.py"), + "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib/" - # Install Binary File Descriptor library (BFD) - system "install -v -dm755 #{CREW_DEST_LIB_PREFIX}/bfd-plugins" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-fixincludes" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-mkheaders" - # Add a compatibility symlink to enable building programs with Link Time Optimization (LTO) - FileUtils.ln_s "#{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so", "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C lto-plugin DESTDIR=#{CREW_DEST_DIR} install" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libitm DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libquadmath DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_sanincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/asan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + # This failed on i686 + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/tsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + # This might fail on i686 + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/lsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + + # libiberty is installed from binutils + # system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + # LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + # make -C libiberty DESTDIR=#{CREW_DEST_DIR} install" + # install -m644 libiberty/pic/libiberty.a "#{CREW_DEST_PREFIX}/lib" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-man install-info" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C libcpp DESTDIR=#{CREW_DEST_DIR} install" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-po" + + # install the libstdc++ man pages + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/doc DESTDIR=#{CREW_DEST_DIR} doc-install-man" + + # byte-compile python libraries + system "python -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version}/ || true" + system "python -O -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version} || true" # Make symbolic links + FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" Dir.chdir "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" do system "find . -type f -maxdepth 1 -exec ln -sv #{gcc_libdir}/{} #{CREW_DEST_LIB_PREFIX}/{} \\;" end + end - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/cc" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcc" - FileUtils.ln_s "#{CREW_PREFIX}/bin/c++-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/c++" - FileUtils.ln_s "#{CREW_PREFIX}/bin/g++-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/g++" - FileUtils.ln_s "#{CREW_PREFIX}/bin/cpp-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/cpp" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-ar-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcc-ar" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-nm-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcc-nm" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-ranlib-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcc-ranlib" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcov-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcov" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcov-dump-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcov-dump" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcov-tool-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gcov-tool" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gfortran-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/gfortran" + Dir.chdir "#{CREW_DEST_MAN_PREFIX}/man1" do + Dir.glob("*-#{@gcc_version}.1*").each do |f| + @basefile = f.gsub("-#{@gcc_version}", '') + FileUtils.ln_sf f, @basefile + end + end - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-c++-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-c++" - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-g++-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-g++" - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-gcc-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-gcc" - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-gcc-ar-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-gcc-ar" - - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-gcc-nm-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-gcc-nm" - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-gcc-ranlib-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-gcc-ranlib" - FileUtils.ln_s "#{CREW_PREFIX}/bin/#{gcc_arch}-gfortran-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-gfortran" - - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-ar-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-ar" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-nm-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-nm" - FileUtils.ln_s "#{CREW_PREFIX}/bin/gcc-ranlib-#{gcc_version}", "#{CREW_DEST_PREFIX}/bin/#{gcc_arch}-ranlib" - - - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/cpp-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/cpp.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/g++-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/g++.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/gcc-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/gcc.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/gcov-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/gcov.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/gcov-dump-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/gcov-dump.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/gcov-tool-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/gcov-tool.1.gz" - FileUtils.ln_s "#{CREW_MAN_PREFIX}/man1/gfortran-#{gcc_version}.1.gz", "#{CREW_DEST_MAN_PREFIX}/man1/gfortran.1.gz" + Dir.chdir "#{CREW_DEST_PREFIX}/bin/" do + Dir.glob("#{gcc_arch}-*-#{@gcc_version}").each do |f| + @basefile_nover = f.split(/-#{@gcc_version}/, 2).first + puts "Symlinking #{f} to #{@basefile_nover}" + FileUtils.ln_sf f, @basefile_nover + @basefile_noarch = f.split(/#{gcc_arch}-/, 2).last + puts "Symlinking #{f} to #{@basefile_noarch}" + FileUtils.ln_sf f, @basefile_noarch + @basefile_noarch_nover = @basefile_nover.split(/#{gcc_arch}-/, 2).last + puts "Symlinking #{f} to #{@basefile_noarch_nover}" + FileUtils.ln_sf f, @basefile_noarch_nover + @basefile_noarch_nover_nogcc = @basefile_noarch_nover.split(/gcc-/, 2).last + puts "Symlinking #{f} to #{gcc_arch}-#{@basefile_noarch_nover_nogcc}" + FileUtils.ln_sf f, "#{gcc_arch}-#{@basefile_noarch_nover_nogcc}" + end + Dir.glob("*-#{@gcc_version}").each do |f| + @basefile_nover = f.split(/-#{@gcc_version}/, 2).first + puts "Symlinking #{f} to #{@basefile_nover}" + FileUtils.ln_sf f, @basefile_nover + end + # many packages expect this symlink + puts "Symlinking gcc-#{@gcc_version} to cc" + FileUtils.ln_sf "gcc-#{@gcc_version}", 'cc' + end + # libgomp.so conflicts with llvm + @deletefiles = %W[#{CREW_DEST_LIB_PREFIX}/libgomp.so] + @deletefiles.each do |f| + FileUtils.rm f if File.exist?(f) + end + # make sure current version of gcc LTO plugin for Gold linker is installed. + FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + puts "Symlinking #{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so to #{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + FileUtils.ln_sf "#{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so", "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + # binutils makes a symlink here, but just in case it isn't there. + if ARCH == 'x86_64' + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/lib/bfd-plugins/" + puts "Symlinking #{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so to #{CREW_DEST_PREFIX}/lib/bfd-plugins/" + FileUtils.ln_sf "#{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so", "#{CREW_DEST_PREFIX}/lib/bfd-plugins/" end end end diff --git a/packages/gcc11.rb b/packages/gcc11.rb new file mode 100644 index 000000000..0739233b7 --- /dev/null +++ b/packages/gcc11.rb @@ -0,0 +1,350 @@ +require 'package' +require 'open3' + +class Gcc11 < Package + description 'The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go.' + homepage 'https://www.gnu.org/software/gcc/' + version '11.1.0-1' + license 'GPL-3, LGPL-3, libgcc, FDL-1.2' + compatibility 'all' + source_url 'https://ftpmirror.gnu.org/gcc/gcc-11.1.0/gcc-11.1.0.tar.xz' + source_sha256 '4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf' + + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc11/11.1.0-1_armv7l/gcc11-11.1.0-1-chromeos-armv7l.tpxz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc11/11.1.0-1_armv7l/gcc11-11.1.0-1-chromeos-armv7l.tpxz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc11/11.1.0-1_i686/gcc11-11.1.0-1-chromeos-i686.tpxz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/gcc11/11.1.0-1_x86_64/gcc11-11.1.0-1-chromeos-x86_64.tpxz' + }) + binary_sha256({ + aarch64: '47cac6b4a5716b439ba5a4f81f41059c8bd81030c45ea9d729dd998748a9b17f', + armv7l: '47cac6b4a5716b439ba5a4f81f41059c8bd81030c45ea9d729dd998748a9b17f', + i686: 'd5994c92969e4d61320157654ccd1bcd3afcd6c66aa6e89e56b67b15cf06bd30', + x86_64: '9f6b7e180d66506732c52c5a23337e5cdf559721939ade8bde975bcea9ada04b' + }) + + depends_on 'ccache' => :build + depends_on 'dejagnu' => :build # for test + depends_on 'hashpipe' => :build + depends_on 'glibc' # R + depends_on 'gmp' # R + depends_on 'isl' # R + depends_on 'mpc' # R + depends_on 'mpfr' # R + depends_on 'libssp' # L + + @gcc_version = version.split('-')[0].rpartition('.')[0] + + @gcc_global_opts = '--disable-bootstrap \ + --disable-libmpx \ + --disable-libssp \ + --disable-multilib \ + --disable-werror \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-host-shared \ + --enable-lto \ + --enable-plugin \ + --enable-shared \ + --enable-symvers \ + --enable-static \ + --enable-threads=posix \ + --with-gcc-major-version-only \ + --with-gmp \ + --with-isl \ + --with-mpc \ + --with-mpfr \ + --with-pic \ + --with-system-libunwind \ + --with-system-zlib' + + @cflags = '-fPIC -pipe' + @cxxflags = '-fPIC -pipe' + @languages = 'c,c++,jit,objc,fortran,go' + case ARCH + when 'armv7l', 'aarch64' + @archflags = '--with-arch=armv7-a --with-float=hard --with-fpu=neon --with-tune=cortex-a15' + when 'x86_64' + @archflags = '--with-arch-64=x86-64' + when 'i686' + @archflags = '--with-arch-32=i686' + end + + def self.preinstall + # Use full gcc path to bypass ccache + stdout_and_stderr, status = Open3.capture2e('bash', '-c', + "#{CREW_PREFIX}/bin/gcc -dumpversion 2>&1 | tail -1 | cut -d' ' -f1") + if status.success? + installed_gccver = stdout_and_stderr.chomp + # One gets "-dumpversion" or "bash:" with no gcc installed. + unless installed_gccver.to_s == '-dumpversion' || + installed_gccver.to_s == 'bash:' || + installed_gccver.to_s == @gcc_version.to_s || + installed_gccver.rpartition('.')[0].to_s == @gcc_version.rpartition('.')[0].to_s + abort "GCC version #{installed_gccver} already installed.".lightgreen + end + end + end + + def self.patch + # This fixes a PATH_MAX undefined error which breaks libsanitizer + # "libsanitizer/asan/asan_linux.cpp:217:21: error: ‘PATH_MAX’ was not declared in this scope" + # This is defined in https://chromium.googlesource.com/chromiumos/third_party/kernel/+/refs/heads/chromeos-5.4/include/uapi/linux/limits.h + # and is defined as per suggested method here: https://github.com/ZefengWang/cross-tool-chain-build + # The following is due to sed not passing newlines right. + system "grep -q 4096 libsanitizer/asan/asan_linux.cpp || (sed -i '77a #endif' libsanitizer/asan/asan_linux.cpp && + sed -i '77a #define PATH_MAX 4096' libsanitizer/asan/asan_linux.cpp && + sed -i '77a #ifndef PATH_MAX' libsanitizer/asan/asan_linux.cpp)" + end + + def self.build + # Set ccache sloppiness as per + # https://wiki.archlinux.org/index.php/Ccache#Sloppiness + system 'ccache --set-config=sloppiness=file_macro,locale,time_macros' + # Prefix ccache to path. + @path = "#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin" + + # Install prereqs using the standard gcc method so they can be + # linked statically. + # system './contrib/download_prerequisites' + + ## Install newer version of gmp + # gmp_url = "https://gmplib.org/download/gmp/gmp-#{@gmp_ver}.tar.lz" + # gmp_sha256 = '2c7f4f0d370801b2849c48c9ef3f59553b5f1d3791d070cffb04599f9fc67b41' + # system "curl -Ls #{gmp_url} | hashpipe sha256 #{gmp_sha256} | tar --lzip -x" + # system "ln -sf ../gmp-#{@gmp_ver} gmp" + + ## Install newer version of isl + # isl_url = "http://isl.gforge.inria.fr/isl-#{@isl_ver}.tar.bz2" + # isl_sha256 = 'c58922c14ae7d0791a77932f377840890f19bc486b653fa64eba7f1026fb214d' + # system "curl -Ls #{isl_url} | hashpipe sha256 #{isl_sha256} | tar xj" + # system "ln -sf ../isl-#{@isl_ver} isl" + + ## Install newer version of mpc + # mpc_url = "https://ftp.gnu.org/gnu/mpc/mpc-#{@mpc_ver}.tar.gz" + # mpc_sha256 = '17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459' + # system "curl -Ls #{mpc_url} | hashpipe sha256 #{mpc_sha256} | tar xz" + # system "ln -sf ../mpc-#{@mpc_ver} mpc" + + ## Install newer version of mpfr + # mpfr_url = "https://www.mpfr.org/mpfr-current/mpfr-#{@mpfr_ver}.tar.xz" + # mpfr_sha256 = '0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f' + # system "curl -Ls #{mpfr_url} | hashpipe sha256 #{mpfr_sha256} | tar xJ" + # Dir.chdir "mpfr-#{@mpfr_ver}" do + # system 'curl -Ls "https://gforge.inria.fr/scm/viewvc.php/mpfr/misc/www/mpfr-4.1.0/allpatches?revision=14491&view=co" | \ + # hashpipe sha256 dfa7d8a14ec7cb3b344cb81cfd7bd7e22aba62379941cc9110759f11172ac013 | patch -NZp1 --binary' + # end + # system "ln -sf ../mpfr-#{@mpfr_ver} mpfr" + + FileUtils.mkdir_p 'objdir/gcc/.deps' + + Dir.chdir('objdir') do + system "env NM=gcc-nm AR=gcc-ar RANLIB=gcc-ranlib \ + CFLAGS='#{@cflags}' CXXFLAGS='#{@cxxflags}' \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + ../configure #{CREW_OPTIONS} \ + #{@gcc_global_opts} \ + #{@archflags} \ + --enable-languages=#{@languages} \ + --program-suffix=-#{@gcc_version}" + # LIBRARY_PATH=#{CREW_LIB_PREFIX} needed for x86_64 to avoid: + # /usr/local/bin/ld: cannot find crti.o: No such file or directory + # /usr/local/bin/ld: cannot find /usr/lib64/libc_nonshared.a + system "env PATH=#{@path} \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + make -j#{CREW_NPROC}" + end + end + + # preserve for check, skip check for current version + def self.check + # Dir.chdir('objdir') do + # system "make -k check -j#{CREW_NPROC} || true" + # system '../contrib/test_summary' + # end + end + + def self.install + gcc_arch = `objdir/gcc/xgcc -dumpmachine`.chomp + gcc_dir = "gcc/#{gcc_arch}/#{@gcc_version}" + gcc_libdir = "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" + Dir.chdir('objdir') do + # gcc-libs install + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install-shared" + + @gcc_libs = %w[libatomic libgfortran libgo libgomp libitm + libquadmath libsanitizer/asan libsanitizer/lsan libsanitizer/ubsan + libsanitizer/tsan libstdc++-v3/src libvtv] + @gcc_libs.each do |lib| + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/#{lib} \ + DESTDIR=#{CREW_DEST_DIR} install-toolexeclibLTLIBRARIES || true" + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libobjc DESTDIR=#{CREW_DEST_DIR} install-libs || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/po DESTDIR=#{CREW_DEST_DIR} install || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libphobos DESTDIR=#{CREW_DEST_DIR} install || true" + + @gcc_libs_info = %w[libgomp libitm libquadmath] + @gcc_libs_info.each do |lib| + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/#{lib} DESTDIR=#{CREW_DEST_DIR} install-info || true" + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-strip" + + # gcc-non-lib install + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-driver install-cpp install-gcc-ar \ + c++.install-common install-headers install-plugin install-lto-wrapper" + + @gcov_install = %w[gcov gcov-tool] + @gcov_install.each do |gcov_bin| + FileUtils.install "gcc/#{gcov_bin}", "#{CREW_DEST_PREFIX}/bin/#{gcov_bin}-#{@gcc_version}", mode: 0o755 + end + + FileUtils.mkdir_p gcc_libdir + @gcc_libdir_install = %w[cc1 cc1plus collect2 lto1] + @gcc_libdir_install.each do |lib| + FileUtils.install "gcc/#{lib}", "#{gcc_libdir}/", mode: 0o755 + end + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgcc DESTDIR=#{CREW_DEST_DIR} install" + + @libstdc_install = %w[src include libsupc++] + @libstdc_install.each do |lib| + system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/#{lib} DESTDIR=#{CREW_DEST_DIR} install" + end + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/python DESTDIR=#{CREW_DEST_DIR} install" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-libcc1" + + # http://www.linuxfromscratch.org/lfs/view/development/chapter06/gcc.html#contents-gcc + # move a misplaced file + # The installation stage puts some files used by gdb under the /usr/local/lib(64) directory. + # This generates spurious error messages when performing ldconfig. This command moves the files to another location. + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib" + FileUtils.mv Dir.glob("#{CREW_DEST_LIB_PREFIX}/*gdb.py"), + "#{CREW_DEST_PREFIX}/share/gdb/auto-load/usr/lib/" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make DESTDIR=#{CREW_DEST_DIR} install-fixincludes" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-mkheaders" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C lto-plugin DESTDIR=#{CREW_DEST_DIR} install" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libgomp DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libitm DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libquadmath DESTDIR=#{CREW_DEST_DIR} install-nodist_libsubincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_sanincludeHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/asan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + # This failed on i686 + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/tsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + # This might fail on i686 + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libsanitizer/lsan DESTDIR=#{CREW_DEST_DIR} install-nodist_toolexeclibHEADERS || true" + + # libiberty is installed from binutils + # system "env LD_LIBRARY_PATH=#{CREW_LIB_PREFIX} \ + # LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + # make -C libiberty DESTDIR=#{CREW_DEST_DIR} install" + # install -m644 libiberty/pic/libiberty.a "#{CREW_DEST_PREFIX}/lib" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-man install-info" + + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C libcpp DESTDIR=#{CREW_DEST_DIR} install" + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C gcc DESTDIR=#{CREW_DEST_DIR} install-po" + + # install the libstdc++ man pages + system "env LIBRARY_PATH=#{CREW_LIB_PREFIX} PATH=#{@path} \ + make -C #{CREW_TGT}/libstdc++-v3/doc DESTDIR=#{CREW_DEST_DIR} doc-install-man" + + # byte-compile python libraries + system "python -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version}/" + system "python -O -m compileall #{CREW_DEST_PREFIX}/share/gcc-#{@gcc_version}" + + # Make symbolic links + FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" + Dir.chdir "#{CREW_DEST_LIB_PREFIX}/#{gcc_dir}" do + system "find . -type f -maxdepth 1 -exec ln -sv #{gcc_libdir}/{} #{CREW_DEST_LIB_PREFIX}/{} \\;" + end + end + + Dir.chdir "#{CREW_DEST_MAN_PREFIX}/man1" do + Dir.glob("*-#{@gcc_version}.1*").each do |f| + @basefile = f.gsub("-#{@gcc_version}", '') + FileUtils.ln_sf f, @basefile + end + end + + Dir.chdir "#{CREW_DEST_PREFIX}/bin/" do + Dir.glob("#{gcc_arch}-*-#{@gcc_version}").each do |f| + @basefile_nover = f.split(/-#{@gcc_version}/, 2).first + puts "Symlinking #{f} to #{@basefile_nover}" + FileUtils.ln_sf f, @basefile_nover + @basefile_noarch = f.split(/#{gcc_arch}-/, 2).last + puts "Symlinking #{f} to #{@basefile_noarch}" + FileUtils.ln_sf f, @basefile_noarch + @basefile_noarch_nover = @basefile_nover.split(/#{gcc_arch}-/, 2).last + puts "Symlinking #{f} to #{@basefile_noarch_nover}" + FileUtils.ln_sf f, @basefile_noarch_nover + @basefile_noarch_nover_nogcc = @basefile_noarch_nover.split(/gcc-/, 2).last + puts "Symlinking #{f} to #{gcc_arch}-#{@basefile_noarch_nover_nogcc}" + FileUtils.ln_sf f, "#{gcc_arch}-#{@basefile_noarch_nover_nogcc}" + end + Dir.glob("*-#{@gcc_version}").each do |f| + @basefile_nover = f.split(/-#{@gcc_version}/, 2).first + puts "Symlinking #{f} to #{@basefile_nover}" + FileUtils.ln_sf f, @basefile_nover + end + # many packages expect this symlink + puts "Symlinking gcc-#{@gcc_version} to cc" + FileUtils.ln_sf "gcc-#{@gcc_version}", 'cc' + end + # libgomp.so conflicts with llvm + @deletefiles = %W[#{CREW_DEST_LIB_PREFIX}/libgomp.so] + @deletefiles.each do |f| + FileUtils.rm f if File.exist?(f) + end + # make sure current version of gcc LTO plugin for Gold linker is installed. + FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + puts "Symlinking #{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so to #{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + FileUtils.ln_sf "#{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so", "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + # binutils makes a symlink here, but just in case it isn't there. + if ARCH == 'x86_64' + FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/lib/bfd-plugins/" + puts "Symlinking #{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so to #{CREW_DEST_PREFIX}/lib/bfd-plugins/" + FileUtils.ln_sf "#{CREW_PREFIX}/libexec/#{gcc_dir}/liblto_plugin.so", "#{CREW_DEST_PREFIX}/lib/bfd-plugins/" + end + end +end diff --git a/packages/libssp.rb b/packages/libssp.rb index c537e1f11..cc948fa5d 100644 --- a/packages/libssp.rb +++ b/packages/libssp.rb @@ -3,41 +3,92 @@ require 'package' class Libssp < Package description 'Libssp is a part of the GCC toolkit.' homepage 'https://gcc.gnu.org/' - version '10.3.0' + version '11.1.0' license 'GPL-3, LGPL-3, libgcc, FDL-1.2' compatibility 'all' - source_url 'https://ftpmirror.gnu.org/gcc/gcc-10.3.0/gcc-10.3.0.tar.xz' - source_sha256 '64f404c1a650f27fc33da242e1f2df54952e3963a49e06e73f6940f3223ac344' + source_url 'https://ftpmirror.gnu.org/gcc/gcc-11.1.0/gcc-11.1.0.tar.xz' + source_sha256 '4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf' binary_url({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/10.3.0_armv7l/libssp-10.3.0-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/10.3.0_armv7l/libssp-10.3.0-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/10.3.0_i686/libssp-10.3.0-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/10.3.0_x86_64/libssp-10.3.0-chromeos-x86_64.tar.xz' + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/11.1.0_armv7l/libssp-11.1.0-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/11.1.0_armv7l/libssp-11.1.0-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/11.1.0_i686/libssp-11.1.0-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/libssp/11.1.0_x86_64/libssp-11.1.0-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '96cccac5b98b142fdfeed83fcd2cc163dfcda386246366b4f7702ef9f1076649', - armv7l: '96cccac5b98b142fdfeed83fcd2cc163dfcda386246366b4f7702ef9f1076649', - i686: 'a4bf6df2e4e7d325b12c882702ae0a7262fdda7c1a109f7e044a4de7b206bbfc', - x86_64: '6c59d395ebd6d461cdc619333566c2139f96209390f7826f58df264f42301c0e' + aarch64: '8befe2e0872e61a61f3c3b557905612e64358d7df0617e8101dec63768087eb8', + armv7l: '8befe2e0872e61a61f3c3b557905612e64358d7df0617e8101dec63768087eb8', + i686: '5b02bf769ec3754f4b0c937e5420f13bf285bc81bdc9c68fbc6f63c56562682b', + x86_64: '356cd568080dd0e724081ec7f020d0b21e091d5552d175746f830c48830bd8b9' }) + depends_on 'ccache' => :build + depends_on 'dejagnu' => :build # for test + depends_on 'glibc' # R + @gcc_name = 'libssp' - @gcc_global_opts = '--enable-static \ - --enable-shared \ - --disable-multilib \ - --disable-cet \ - --with-pic \ - --enable-symvers \ - --with-gcc-major-version-only \ - --with-system-libunwind' + + @gcc_global_opts = '--disable-libmpx \ + --disable-libssp \ + --disable-multilib \ + --disable-werror \ + --enable-cet=auto \ + --enable-checking=release \ + --enable-clocale=gnu \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-gnu-indirect-function \ + --enable-gnu-unique-object \ + --enable-host-shared \ + --enable-lto \ + --enable-plugin \ + --enable-shared \ + --enable-symvers \ + --enable-static \ + --enable-threads=posix \ + --with-gcc-major-version-only \ + --with-gmp \ + --with-isl \ + --with-mpc \ + --with-mpfr \ + --with-pic \ + --with-system-libunwind \ + --with-system-zlib' + + @cflags = '-fPIC -pipe' + @cxxflags = '-fPIC -pipe' + @languages = 'c,c++,jit,objc,fortran,go' + case ARCH + when 'armv7l', 'aarch64' + @archflags = '--with-arch=armv7-a --with-float=hard --with-fpu=neon' + when 'x86_64' + @archflags = '--with-arch-64=x86-64' + when 'i686' + @archflags = '--with-arch-32=i686' + end + def self.build + # Set ccache sloppiness as per + # https://wiki.archlinux.org/index.php/Ccache#Sloppiness + system 'ccache --set-config=sloppiness=file_macro,locale,time_macros' + # Prefix ccache to path. + @path = "#{CREW_LIB_PREFIX}/ccache/bin:#{CREW_PREFIX}/bin:/usr/bin:/bin" + + gcc_version = version.split('-')[0] + Dir.mkdir "#{@gcc_name}-builddir" Dir.chdir "#{@gcc_name}-builddir" do - system "#{CREW_ENV_OPTIONS} ../#{@gcc_name}/configure #{CREW_OPTIONS} \ - #{@gcc_global_opts}" - system 'make' + system "env NM=gcc-nm AR=gcc-ar RANLIB=gcc-ranlib \ + CFLAGS='#{@cflags}' CXXFLAGS='#{@cxxflags}' \ + PATH=#{@path} \ + ../#{@gcc_name}/configure #{CREW_OPTIONS} \ + #{@gcc_global_opts} \ + --enable-languages=#{@languages} \ + --program-suffix=-#{gcc_version} \ + #{@archflags}" + system "env PATH=#{@path} \ + make" end end diff --git a/packages/llvm.rb b/packages/llvm.rb index f44c813a0..9aef13d79 100644 --- a/packages/llvm.rb +++ b/packages/llvm.rb @@ -3,75 +3,93 @@ require 'package' class Llvm < Package description 'The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. The optional packages clang, lld, lldb, polly, compiler-rt, libcxx, libcxxabi, and openmp are included.' homepage 'http://llvm.org/' - @_ver = '11.1.0' + @_ver = '12.0.0' version @_ver license 'Apache-2.0-with-LLVM-exceptions, UoI-NCSA, BSD, public-domain, rc, Apache-2.0 and MIT' compatibility 'all' source_url "https://github.com/llvm/llvm-project/archive/llvmorg-#{@_ver}.tar.gz" - source_sha256 '53a0719f3f4b0388013cfffd7b10c7d5682eece1929a9553c722348d1f866e79' + source_sha256 '8e6c99e482bb16a450165176c2d881804976a2d770e0445af4375e78a1fbf19c' binary_url({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/11.1.0_armv7l/llvm-11.1.0-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/11.1.0_armv7l/llvm-11.1.0-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/11.1.0_i686/llvm-11.1.0-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/11.1.0_x86_64/llvm-11.1.0-chromeos-x86_64.tar.xz' + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/12.0.0_armv7l/llvm-12.0.0-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/12.0.0_armv7l/llvm-12.0.0-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/12.0.0_i686/llvm-12.0.0-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/llvm/12.0.0_x86_64/llvm-12.0.0-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: 'ba0520a8d5bfa90efb3eb13a530c8d4052f9e7572aa30dd42dfc624b88a0251e', - armv7l: 'ba0520a8d5bfa90efb3eb13a530c8d4052f9e7572aa30dd42dfc624b88a0251e', - i686: '3a514f96c846d777c838fef6c585d2278abf2a586bfaeacfd3e2bccc9ffce838', - x86_64: '5b9e01c2411ea174293fc1d33b2dbf91f7001eb3cc3eda2e849b80f6f0dcb3c8' + aarch64: 'd5f6b88daa7d17c90a4dbda045641ac269aef5702c29ab4781cd19041d02a089', + armv7l: 'd5f6b88daa7d17c90a4dbda045641ac269aef5702c29ab4781cd19041d02a089', + i686: 'ae7555048502a018fb8eeeb26300b10d3916762eb8e730618abe62163d4d0f63', + x86_64: '51da1968be089ad011603156e1a74a26d684a69fdc61c651125bc319d7b2921f' }) depends_on 'ocaml' => :build depends_on 'pygments' => :build depends_on 'ccache' => :build - # depends_on 'llvm_stage1' => :build # Not needed with a functional - # prior llvm 11 build. + depends_on 'elfutils' # R + depends_on 'gcc11' # R or gcc11 case ARCH when 'aarch64', 'armv7l' # LLVM_TARGETS_TO_BUILD = 'ARM;AArch64;AMDGPU' - LLVM_TARGETS_TO_BUILD = 'all'.freeze - @ARCH_C_FLAGS = "-fPIC -march=armv7-a -mfloat-abi=hard -ccc-gcc-name #{CREW_BUILD}" + # LLVM_TARGETS_TO_BUILD = 'all'.freeze + @ARCH_C_FLAGS = "-ltinfow -fPIC -march=armv7-a -mfloat-abi=hard -ccc-gcc-name #{CREW_BUILD}" @ARCH_CXX_FLAGS = "-fPIC -march=armv7-a -mfloat-abi=hard -ccc-gcc-name #{CREW_BUILD}" @ARCH_LDFLAGS = '' @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" + # compiler-rt fails with + # [2967/6683] Building CXX object projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.armhf.dir/sanitizer_unwind_linux_libcdep.cpp.o + # FAILED: projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.armhf.dir/sanitizer_unwind_linux_libcdep.cpp.o + # CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/local/bin/ccache /usr/local/bin/clang++ -DHAVE_RPC_XDR_H=1 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Iprojects/compiler-rt/lib/sanitizer_common -I/usr/local/tmp/crew/llvm.20210420052043.dir/llvm-project-llvmorg-12.0.0/compiler-rt/lib/sanitizer_common -Iinclude -I/usr/local/tmp/crew/llvm.20210420052043.dir/llvm-project-llvmorg-12.0.0/llvm/include -I/usr/local/tmp/crew/llvm.20210420052043.dir/llvm-project-llvmorg-12.0.0/compiler-rt/lib/sanitizer_common/.. -fPIC -march=armv7-a -mfloat-abi=hard -ccc-gcc-name armv7l-cros-linux-gnueabihf -flto=thin -fuse-ld=lld -fvisibility-inlines-hidden -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wno-noexcept-type -Wnon-virtual-dtor -Wsuggest-override -Wno-comment -fdiagnostics-color -flto=thin -Wall -std=c++14 -O3 -DNDEBUG -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -O3 -gline-tables-only -nostdinc++ -fno-rtti -std=c++14 -MD -MT projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.armhf.dir/sanitizer_unwind_linux_libcdep.cpp.o -MF projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.armhf.dir/sanitizer_unwind_linux_libcdep.cpp.o.d -o projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.armhf.dir/sanitizer_unwind_linux_libcdep.cpp.o -c /usr/local/tmp/crew/llvm.20210420052043.dir/llvm-project-llvmorg-12.0.0/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cpp + # clang-11: warning: argument unused during compilation: '-fuse-ld=lld' [-Wunused-command-line-argument] + # /usr/local/tmp/crew/llvm.20210420052043.dir/llvm-project-llvmorg-12.0.0/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cpp:63:3: error: use of undeclared identifier '_Unwind_VRS_Result'; did you mean '_Unwind_Resume'? + # _Unwind_VRS_Result res = _Unwind_VRS_Get(ctx, _UVRSC_CORE, + # ^~~~~~~~~~~~~~~~~~ + # _Unwind_Resume + LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;lld;polly;openmp'.freeze when 'i686' - LLVM_TARGETS_TO_BUILD = 'X86'.freeze + # LLVM_TARGETS_TO_BUILD = 'X86'.freeze # Because ld.lld: error: undefined symbol: __atomic_store # Polly demands fPIC - @ARCH_C_FLAGS = '-latomic -fPIC' + @ARCH_C_FLAGS = '-ltinfow -latomic -fPIC' @ARCH_CXX_FLAGS = '-latomic -fPIC' # Because getting this error: # ld.lld: error: relocation R_386_PC32 cannot be used against symbol isl_map_fix_si; recompile with -fPIC # So as per https://github.com/openssl/openssl/issues/11305#issuecomment-602003528 @ARCH_LDFLAGS = '-Wl,-znotext' @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" + LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;compiler-rt;lld;polly;openmp'.freeze when 'x86_64' # LLVM_TARGETS_TO_BUILD = 'X86;AMDGPU' - LLVM_TARGETS_TO_BUILD = 'all'.freeze - @ARCH_C_FLAGS = '-fPIC' + # LLVM_TARGETS_TO_BUILD = 'all'.freeze + @ARCH_C_FLAGS = '-ltinfow -fPIC' @ARCH_CXX_FLAGS = '-fPIC' @ARCH_LDFLAGS = '' @ARCH_LTO_LDFLAGS = "#{@ARCH_LDFLAGS} -flto=thin" + LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;compiler-rt;lld;polly;openmp'.freeze end @ARCH_C_LTO_FLAGS = "#{@ARCH_C_FLAGS} -flto=thin -fuse-ld=lld" @ARCH_CXX_LTO_FLAGS = "#{@ARCH_CXX_FLAGS} -flto=thin -fuse-ld=lld" - LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;compiler-rt;lld;polly;openmp'.freeze + # LLVM_PROJECTS_TO_BUILD = 'clang;clang-tools-extra;libcxx;libcxxabi;libunwind;lldb;compiler-rt;lld;polly;openmp'.freeze # Using Targets 'all' for non-i686 because otherwise mesa complains. # This may be patched upstream as per # https://reviews.llvm.org/rG1de56d6d13c083c996dfd44a32041dacae037d66 - # LLVM_TARGETS_TO_BUILD = 'all' + LLVM_TARGETS_TO_BUILD = 'all'.freeze def self.patch # This keeps system libraries from being linked in as dependencies on a build host image, such as in docker. # Uncomment the rest of this section if you need to. - # system "sudo rm /lib#{CREW_LIB_SUFFIX}/libncurses.so.5 || true" - # system "sudo rm /usr/lib#{CREW_LIB_SUFFIX}/libform.so || true" - # system "sudo ln -s #{CREW_LIB_PREFIX}/libncurses.so.6 /lib#{CREW_LIB_SUFFIX}/libncurses.so.5 || true" - # system "sudo ln -s #{CREW_LIB_PREFIX}/libform.so /usr/lib#{CREW_LIB_SUFFIX}/libform.so || true" + #system "sudo rm /lib#{CREW_LIB_SUFFIX}/libncurses.so.5 || true" + #system "sudo rm /usr/lib#{CREW_LIB_SUFFIX}/libform.so || true" + #system "sudo ln -s #{CREW_LIB_PREFIX}/libncurses.so.6 /lib#{CREW_LIB_SUFFIX}/libncurses.so.5 || true" + #system "sudo ln -s #{CREW_LIB_PREFIX}/libform.so /usr/lib#{CREW_LIB_SUFFIX}/libform.so || true" + # Fix gold linker issues killing mesa builds as per + # https://reviews.llvm.org/D100624 and + # https://bugs.llvm.org/show_bug.cgi?id=49915 fixed in 13.0 but also + # hopefully making it to 12.0.1 + system "sed -i 's#write16(buf, s.sym->versionId);#write16(buf, s.sym->isLazy() ? VER_NDX_GLOBAL : s.sym->versionId);#g' \ + lld/ELF/SyntheticSections.cpp" end def self.build @@ -155,6 +173,8 @@ clang++ -fPIC -rtlib=compiler-rt -stdlib=libc++ -cxx-isystem \${cxx_sys} -I \${ FileUtils.install 'clc++', "#{CREW_DEST_PREFIX}/bin/clc++", mode: 0o755 FileUtils.mkdir_p "#{CREW_DEST_LIB_PREFIX}/bfd-plugins" FileUtils.ln_s "lib#{CREW_LIB_SUFFIX}/LLVMgold.so", "#{CREW_DEST_LIB_PREFIX}/bfd-plugins/" + # libunwind.* conflicts with libunwind package + FileUtils.rm Dir.glob("#{CREW_DEST_LIB_PREFIX}/libunwind.*") end end diff --git a/packages/mesa.rb b/packages/mesa.rb index df9d81332..9c6f9bc6f 100644 --- a/packages/mesa.rb +++ b/packages/mesa.rb @@ -3,48 +3,53 @@ require 'package' class Mesa < Package description 'Open-source implementation of the OpenGL specification' homepage 'https://www.mesa3d.org' - @_ver = '21.0.2' + @_ver = '21.1.0' version @_ver license 'MIT' compatibility 'all' source_url "https://mesa.freedesktop.org/archive/mesa-#{@_ver}.tar.xz" - source_sha256 '46c1dc5bb54a372dee43ec3c067229c299187d5bdadf1402756bbf66a6df5b88' + source_sha256 '0128f10e22970d3aed3d1034003731f94623015cd9797c07151417649c1b1ff8' binary_url({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.0.2_armv7l/mesa-21.0.2-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.0.2_armv7l/mesa-21.0.2-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.0.2_i686/mesa-21.0.2-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.0.2_x86_64/mesa-21.0.2-chromeos-x86_64.tar.xz' + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.1.0_armv7l/mesa-21.1.0-chromeos-armv7l.tpxz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.1.0_armv7l/mesa-21.1.0-chromeos-armv7l.tpxz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.1.0_i686/mesa-21.1.0-chromeos-i686.tpxz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/mesa/21.1.0_x86_64/mesa-21.1.0-chromeos-x86_64.tpxz' }) binary_sha256({ - aarch64: '535d0993748c3331486a2a48f380898244d223f355306374fd7761260871731a', - armv7l: '535d0993748c3331486a2a48f380898244d223f355306374fd7761260871731a', - i686: 'dd315ca82272212afa69914bc1f4a676fd0d5f1e35f7e11c1264c569afed360d', - x86_64: '0d69570884f25ca4ea75635c05d60652148397d51afecedc92cf3dcee6955361' + aarch64: '9c463844ab7266af05b5f2a75490cb265d0e9c7113f6b668bac028560e294476', + armv7l: '9c463844ab7266af05b5f2a75490cb265d0e9c7113f6b668bac028560e294476', + i686: '2be5429a5391da110a2985c402c0931a9c8b41a39d7d4a65451c7f995586de83', + x86_64: 'f34ac6bec705a7ea859f4d95b990829c98b19abb7eb60b4a1035f1574d841735' }) - depends_on 'elfutils' + depends_on 'elfutils' # R + depends_on 'expat' # R + depends_on 'gcc11' # R + depends_on 'glibc' # R depends_on 'glslang' => :build - depends_on 'libdrm' + depends_on 'libdrm' # R depends_on 'libomxil_bellagio' => :build - depends_on 'libunwind' + depends_on 'libunwind' => :build depends_on 'libvdpau' => :build - depends_on 'libx11' - depends_on 'libxcb' + depends_on 'libx11' # R + depends_on 'libxcb' # R depends_on 'libxdamage' => :build - depends_on 'libxext' - depends_on 'libxfixes' - depends_on 'libxrandr' - depends_on 'libxshmfence' - depends_on 'libxv' - depends_on 'libxvmc' - depends_on 'libxxf86vm' - depends_on 'lm_sensors' + depends_on 'libxext' # R + depends_on 'libxfixes' # R + depends_on 'libxrandr' # R + depends_on 'libxshmfence' # R + depends_on 'libxv' => :build + depends_on 'libxvmc' # R + depends_on 'libxv' # R + depends_on 'libxxf86vm' # R + depends_on 'llvm' # R + depends_on 'lm_sensors' # R depends_on 'valgrind' => :build depends_on 'vulkan_headers' => :build depends_on 'vulkan_icd_loader' => :build - depends_on 'wayland' depends_on 'wayland_protocols' => :build + depends_on 'wayland' # R def self.build case ARCH diff --git a/packages/perl.rb b/packages/perl.rb index ff3ad6219..9c4d61da0 100644 --- a/packages/perl.rb +++ b/packages/perl.rb @@ -3,41 +3,58 @@ require 'package' class Perl < Package description 'Perl 5 is a highly capable, feature-rich programming language with over 29 years of development.' homepage 'https://www.perl.org/' - version '5.32.0' + @_ver = '5.32.1' + version @_ver license 'GPL-1+ or Artistic' compatibility 'all' - source_url 'http://www.cpan.org/src/5.0/perl-5.32.0.tar.gz' - source_sha256 'efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4' + source_url "http://www.cpan.org/src/5.0/perl-#{@_ver}.tar.gz" + source_sha256 '03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c' - binary_url ({ + binary_url({ aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl/5.32.1_armv7l/perl-5.32.1-chromeos-armv7l.tar.xz', armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl/5.32.1_armv7l/perl-5.32.1-chromeos-armv7l.tar.xz', i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl/5.32.1_i686/perl-5.32.1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl/5.32.1_x86_64/perl-5.32.1-chromeos-x86_64.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl/5.32.1_x86_64/perl-5.32.1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ + binary_sha256({ aarch64: '8f96c4ac4e4927ff643670ba362568e5483ba4ef970acd742877ef49b48829df', armv7l: '8f96c4ac4e4927ff643670ba362568e5483ba4ef970acd742877ef49b48829df', i686: '2193da9719f91be5aa261471aae0314b19da430ae3f09006c30d7d276b5f230d', - x86_64: '8c12ba41052f0f49f1dccc7cc1de795d4b4c55ba70c4ed1eff866580405e300a', + x86_64: '8c12ba41052f0f49f1dccc7cc1de795d4b4c55ba70c4ed1eff866580405e300a' }) depends_on 'patch' => :build + @perl_fullversion = @_ver.split('-')[0] + + @perl_version = @_ver.rpartition('.')[0] + def self.build FileUtils.ln_sf "#{CREW_LIB_PREFIX}/libnsl.so.1", "#{CREW_LIB_PREFIX}/libnsl.so" # Use system zlib and bzip2 # Create shared library # Install manual files into #{CREW_PREFIX}/share/man/man* even if groff is not installed. - system "BUILD_ZLIB=False BUILD_BZIP2=0 ./Configure -de -Duseshrplib -Dman1dir=#{CREW_MAN_PREFIX}/man1 -Dman3dir=#{CREW_MAN_PREFIX}/man3" + system "env AR=gcc-ar RANLIB=gcc-ranlib NM=gcc-nm \ + CFLAGS='-Os -pipe -flto=auto' \ + CXXFLAGS='-Os -pipe -flto=auto' \ + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -flto -fuse-linker-plugin' \ + BUILD_ZLIB=False BUILD_BZIP2=0 \ + ./Configure \ + -Doptimize='-Os -pipe -flto=auto' \ + -Dusethreads \ + -de -Duseshrplib -Dman1dir=#{CREW_MAN_PREFIX}/man1 -Dman3dir=#{CREW_MAN_PREFIX}/man3" system 'make' system 'curl -o cpanm https://cpanmin.us' end def self.install system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - FileUtils.mkdir_p CREW_DEST_LIB_PREFIX if ARCH == 'x86_64' + FileUtils.mkdir_p CREW_DEST_LIB_PREFIX + FileUtils.ln_sf "#{CREW_PREFIX}/lib/perl5/#{@perl_fullversion}/#{ARCH}-linux-thread-multi/CORE/libperl.so", + "#{CREW_DEST_LIB_PREFIX}/libperl.so" FileUtils.ln_sf "#{CREW_LIB_PREFIX}/libnsl.so.1", "#{CREW_DEST_LIB_PREFIX}/libnsl.so" + # Avoid File conflict with tcl, ocaml + FileUtils.mv "#{CREW_DEST_MAN_PREFIX}/man3/Thread.3", "#{CREW_DEST_MAN_PREFIX}/man3/Thread.3perl" system "install -Dm755 cpanm #{CREW_DEST_PREFIX}/bin/cpanm" end @@ -60,6 +77,6 @@ diff -ur perl-5.22.1.orig/t/lib/warnings/regexec perl-5.22.1/t/lib/warnings/rege EOF' # test - system "make test" + system 'make test || true' end end diff --git a/packages/perl_carp_clan.rb b/packages/perl_carp_clan.rb index c4734b0d7..e95c4f933 100644 --- a/packages/perl_carp_clan.rb +++ b/packages/perl_carp_clan.rb @@ -3,27 +3,25 @@ require 'package' class Perl_carp_clan < Package description 'Report errors from perspective of caller of a "clan" of modules' homepage 'https://metacpan.org/pod/Carp::Clan' - version '6.08' + version '6.08-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/E/ET/ETHER/Carp-Clan-6.08.tar.gz' source_sha256 'c75f92e34422cc5a65ab05d155842b701452434e9aefb649d6e2289c47ef6708' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08_armv7l/perl_carp_clan-6.08-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08_armv7l/perl_carp_clan-6.08-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08_i686/perl_carp_clan-6.08-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08_x86_64/perl_carp_clan-6.08-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08-1_armv7l/perl_carp_clan-6.08-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08-1_armv7l/perl_carp_clan-6.08-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08-1_i686/perl_carp_clan-6.08-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_carp_clan/6.08-1_x86_64/perl_carp_clan-6.08-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'dc90c4812e8dc89fbdc37173fc5e28bdbbf2d4b7ef4e5a1848cafa3b93c92a0e', - armv7l: 'dc90c4812e8dc89fbdc37173fc5e28bdbbf2d4b7ef4e5a1848cafa3b93c92a0e', - i686: '937964b41cd2e593626e588c850f402eeea22c0cd0c26621590026599dca70db', - x86_64: '64a770bb270702be5eaab0092f20d2fdf3176cd73d73710e112f568f9df449eb', + binary_sha256({ + aarch64: 'f3ebb5e1420ae2fb02e2043326019a84515432d33510749ae0cd7e917aeee109', + armv7l: 'f3ebb5e1420ae2fb02e2043326019a84515432d33510749ae0cd7e917aeee109', + i686: '44a337556d4ac69e3fa7d441b748653aad1a028309b0693ab79b2db99f03eacf', + x86_64: '295172aab40d44e24afc5a3f0dc6eed4303339b19b3b93a2366181a1e2b46b1f' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_date_calc.rb b/packages/perl_date_calc.rb index 929f0255c..995264d56 100644 --- a/packages/perl_date_calc.rb +++ b/packages/perl_date_calc.rb @@ -3,27 +3,25 @@ require 'package' class Perl_date_calc < Package description 'Gregorian calendar date calculations' homepage 'https://metacpan.org/pod/Date::Calc' - version '6.4' + version '6.4-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/S/ST/STBEY/Date-Calc-6.4.tar.gz' source_sha256 '7ce137b2e797b7c0901f3adf1a05a19343356cd1f04676aa1c56a9f624f859ad' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4_armv7l/perl_date_calc-6.4-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4_armv7l/perl_date_calc-6.4-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4_i686/perl_date_calc-6.4-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4_x86_64/perl_date_calc-6.4-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4-1_armv7l/perl_date_calc-6.4-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4-1_armv7l/perl_date_calc-6.4-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4-1_i686/perl_date_calc-6.4-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_calc/6.4-1_x86_64/perl_date_calc-6.4-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '3814f76c7a5a978752feaeda8e8b69b2cd6464e862749c28c9db9984a573f9c9', - armv7l: '3814f76c7a5a978752feaeda8e8b69b2cd6464e862749c28c9db9984a573f9c9', - i686: 'e32643c29b7a584b795d798b04f43fa1dce5709e0b5aa640ea0d1377115b3e29', - x86_64: '41473868421126d03723e7abb31183e1bd7dfa4178cbd6c6065f4cbe2712dee4', + binary_sha256({ + aarch64: '794fba788fdccc502c07cf8d213e8c4f116658beaa508a0964bbea36ce4d07fb', + armv7l: '794fba788fdccc502c07cf8d213e8c4f116658beaa508a0964bbea36ce4d07fb', + i686: 'a1b37b825b42512d796d38486f1d63696c68257a7c0d6f5be1e64784610d3d5d', + x86_64: 'f91b5551c3b2f7487d9dedec2a910c9a881bed5dbd732d7fe759adfcb843f186' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_date_format.rb b/packages/perl_date_format.rb index 2da414337..3dec93e6d 100644 --- a/packages/perl_date_format.rb +++ b/packages/perl_date_format.rb @@ -3,27 +3,25 @@ require 'package' class Perl_date_format < Package description 'Date formatting subroutines' homepage 'https://metacpan.org/pod/Date::Format' - version '2.33' + version '2.33-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC/TimeDate-2.33.tar.gz' source_sha256 'c0b69c4b039de6f501b0d9f13ec58c86b040c1f7e9b27ef249651c143d605eb2' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33_armv7l/perl_date_format-2.33-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33_armv7l/perl_date_format-2.33-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33_i686/perl_date_format-2.33-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33_x86_64/perl_date_format-2.33-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33-1_armv7l/perl_date_format-2.33-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33-1_armv7l/perl_date_format-2.33-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33-1_i686/perl_date_format-2.33-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_format/2.33-1_x86_64/perl_date_format-2.33-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'e12636b27086aab2d0726826041b3b2765b6b5e6f83de7b65e8da61164faeff7', - armv7l: 'e12636b27086aab2d0726826041b3b2765b6b5e6f83de7b65e8da61164faeff7', - i686: 'ea76e2d8a143358d2813861b9cd89a5e80078d172310b321bd3a05f6af36094e', - x86_64: '3af38627d41d1e3536fa9d7c3db4e0d4a6573a579ee1eac9af10384ac19a1d95', + binary_sha256({ + aarch64: '58c1886e79ef37627314f0ffa838d11190e45de6ff17e02de21af1d129bff4b3', + armv7l: '58c1886e79ef37627314f0ffa838d11190e45de6ff17e02de21af1d129bff4b3', + i686: 'f81f2743e65366196693cf781d30ec7b0a0c9387cee583b6789245f81eb2ffeb', + x86_64: '2998c9fed1b23f2b438c4320dae495129b3f7067e770cce38983a868088f1db5' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' @@ -31,5 +29,8 @@ class Perl_date_format < Package def self.install system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' + + # Conflict with perl_xml_parser package. + FileUtils.rm "#{CREW_PREFIX}/lib/perl5/site_perl/5.32.1/Date/Language/Amharic.pm" end end diff --git a/packages/perl_date_manip.rb b/packages/perl_date_manip.rb index 01ae23d05..275dbe599 100644 --- a/packages/perl_date_manip.rb +++ b/packages/perl_date_manip.rb @@ -3,27 +3,25 @@ require 'package' class Perl_date_manip < Package description 'Date manipulation routines' homepage 'https://metacpan.org/pod/Date::Manip' - version '6.82' + version '6.82-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/S/SB/SBECK/Date-Manip-6.82.tar.gz' source_sha256 'fa96bcf94c6b4b7d3333f073f5d0faad59f546e5aec13ac01718f2e6ef14672a' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82_armv7l/perl_date_manip-6.82-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82_armv7l/perl_date_manip-6.82-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82_i686/perl_date_manip-6.82-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82_x86_64/perl_date_manip-6.82-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82-1_armv7l/perl_date_manip-6.82-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82-1_armv7l/perl_date_manip-6.82-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82-1_i686/perl_date_manip-6.82-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_date_manip/6.82-1_x86_64/perl_date_manip-6.82-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '114afa63adb7758a46d04deba5917617872662dd440ab6dc3f5e89dfb547fced', - armv7l: '114afa63adb7758a46d04deba5917617872662dd440ab6dc3f5e89dfb547fced', - i686: '1d1d2202e2cca01e13660c8b9c3f430749d5c3619916de0e04a0c2072209da29', - x86_64: 'ab630a996ee8119a67846d16f51a0749e38a0ab6b46f9c6495304e09a03c4c03', + binary_sha256({ + aarch64: '96b6434cacbc4c44472b663f92f8f1f66fa017aade85cf73b589cbc92b0cd988', + armv7l: '96b6434cacbc4c44472b663f92f8f1f66fa017aade85cf73b589cbc92b0cd988', + i686: '5d0213058c1d5c1d20eae4223cadde99c563f23a66cd7637553d1c35797bf7df', + x86_64: 'aac6357483d49208f09ee9b1c71087ca10924ddba8268fbf054fb3efc3ed7a5d' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_file_tail.rb b/packages/perl_file_tail.rb index 4f334c73d..4f5435d6b 100644 --- a/packages/perl_file_tail.rb +++ b/packages/perl_file_tail.rb @@ -3,27 +3,25 @@ require 'package' class Perl_file_tail < Package description 'Perl extension for reading from continuously updated files' homepage 'https://metacpan.org/pod/File::Tail' - version '1.3' + version '1.3-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/M/MG/MGRABNAR/File-Tail-1.3.tar.gz' source_sha256 '26d09f81836e43eae40028d5283fe5620fe6fe6278bf3eb8eb600c48ec34afc7' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3_armv7l/perl_file_tail-1.3-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3_armv7l/perl_file_tail-1.3-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3_i686/perl_file_tail-1.3-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3_x86_64/perl_file_tail-1.3-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3-1_armv7l/perl_file_tail-1.3-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3-1_armv7l/perl_file_tail-1.3-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3-1_i686/perl_file_tail-1.3-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_file_tail/1.3-1_x86_64/perl_file_tail-1.3-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'f01dfbccd682bd74baea061f0143963cfd7271219eedfbd4ee659e7561096923', - armv7l: 'f01dfbccd682bd74baea061f0143963cfd7271219eedfbd4ee659e7561096923', - i686: '9cb02093a16544f73b266b6f6ca112a336ad2b0453e2a1e3f20f7e1087b973aa', - x86_64: '16fef92f4059a8a047a8fc859f0297fbe2f7a056e7ab3f20a8d9a73c91334eda', + binary_sha256({ + aarch64: 'a4ef2b1c64d500ab70f1e2bfa1eea3b9c4872ff1cd0479a340a8953583237e80', + armv7l: 'a4ef2b1c64d500ab70f1e2bfa1eea3b9c4872ff1cd0479a340a8953583237e80', + i686: 'e7598c65f241246fe6d4c95db13288675d3d150ba7fbc6285fee5ee01d9f6fa8', + x86_64: '2eb28e0e5cca3cab45a9bada46f58cbb793464df95f033e2dac025c44d65efd3' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_gcstring_linebreak.rb b/packages/perl_gcstring_linebreak.rb index 62ca46736..b05268fbb 100644 --- a/packages/perl_gcstring_linebreak.rb +++ b/packages/perl_gcstring_linebreak.rb @@ -3,38 +3,31 @@ require 'package' class Perl_gcstring_linebreak < Package description 'UAX 14 Unicode Line Breaking Algorithm - Perl binding Unicode::LineBreak Unicode::GCString' homepage 'http://search.cpan.org/~nezumi/Unicode-LineBreak-2018.003/lib/Unicode/LineBreak.pod' - version '2019.001' + version '2019.001-1' license 'GPL-1+ or Artistic' compatibility 'all' - source_url 'https://github.com/hatukanezumi/Unicode-LineBreak/archive/Unicode-LineBreak-2019.001.tar.gz' - source_sha256 'bc9f96cf8bea60665e8ad67e90b0db3cc0bcdb97101e15c8c44ea671ba256577' + source_url 'https://github.com/hatukanezumi/Unicode-LineBreak.git' + git_hashtag 'Unicode-LineBreak-2019.001' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001_armv7l/perl_gcstring_linebreak-2019.001-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001_armv7l/perl_gcstring_linebreak-2019.001-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001_i686/perl_gcstring_linebreak-2019.001-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001_x86_64/perl_gcstring_linebreak-2019.001-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001-1_armv7l/perl_gcstring_linebreak-2019.001-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001-1_armv7l/perl_gcstring_linebreak-2019.001-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001-1_i686/perl_gcstring_linebreak-2019.001-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_gcstring_linebreak/2019.001-1_x86_64/perl_gcstring_linebreak-2019.001-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'f3305554fcb79da45098b3b13aa792f74ba773447d2ca7c0b1c114e1fcfd6511', - armv7l: 'f3305554fcb79da45098b3b13aa792f74ba773447d2ca7c0b1c114e1fcfd6511', - i686: 'e98342303364ca0faaa8cb272147c4b12aa172ff2d923fb2ee3f3ad160f6c7b2', - x86_64: '155551083e64b975e1019808f89ca3d42a8ff318367124ad5eedaff610e3f3f0', + binary_sha256({ + aarch64: '376dfc3b39d861076e0ead658cc62ae07d5d753eaaf86bb70d440a537c3a4da4', + armv7l: '376dfc3b39d861076e0ead658cc62ae07d5d753eaaf86bb70d440a537c3a4da4', + i686: 'bedf57b7890ffb8ad84fce620bc07b28c1128901829a9453905ce8f64982a3eb', + x86_64: '2ccb5f0a0e9d96e02b13d1d4e16719b9df93d82354642f8f94feae76fa0cbd87' }) - depends_on 'perl' - def self.build - system 'git', 'clone', '--recurse-submodules', 'https://github.com/hatukanezumi/Unicode-LineBreak', '-b', "Unicode-LineBreak-#{version}" - Dir.chdir 'Unicode-LineBreak' do - system 'perl', 'Makefile.PL' - system 'make' - end + system 'perl', 'Makefile.PL' + system 'make' end def self.install - Dir.chdir 'Unicode-LineBreak' do - system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - end + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' end end diff --git a/packages/perl_io_socket_ssl.rb b/packages/perl_io_socket_ssl.rb index 56475c9d8..a9fac2689 100644 --- a/packages/perl_io_socket_ssl.rb +++ b/packages/perl_io_socket_ssl.rb @@ -3,27 +3,25 @@ require 'package' class Perl_io_socket_ssl < Package description 'IO::Socket::SSL - SSL sockets with IO::Socket interface' homepage 'https://metacpan.org/pod/IO::Socket::SSL' - version '2.068' + version '2.068-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.068.tar.gz' source_sha256 '4420fc0056f1827b4dd1245eacca0da56e2182b4ef6fc078f107dc43c3fb8ff9' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068_armv7l/perl_io_socket_ssl-2.068-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068_armv7l/perl_io_socket_ssl-2.068-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068_i686/perl_io_socket_ssl-2.068-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068_x86_64/perl_io_socket_ssl-2.068-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068-1_armv7l/perl_io_socket_ssl-2.068-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068-1_armv7l/perl_io_socket_ssl-2.068-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068-1_i686/perl_io_socket_ssl-2.068-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_io_socket_ssl/2.068-1_x86_64/perl_io_socket_ssl-2.068-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '290136e4383f9f88e8d9ca18d73c41ed6eb96f7d81f1c3baa3c6ef3087283560', - armv7l: '290136e4383f9f88e8d9ca18d73c41ed6eb96f7d81f1c3baa3c6ef3087283560', - i686: '7cb1cfb6c47f5cc3f817867af6a883e403316258d68361028615b8b0373ad772', - x86_64: 'ffc3268461e4c52068243e8a1480bc829d420c284d842c02975d1175493f8558', + binary_sha256({ + aarch64: '8c2230feb2b7205349703e5b5b5b10e9f21f3ce079e5b6036728c33ee91a1ff6', + armv7l: '8c2230feb2b7205349703e5b5b5b10e9f21f3ce079e5b6036728c33ee91a1ff6', + i686: '24df6cac573463073b723da4b9b1a65380e2cdd67a053aabb9e61491410960c7', + x86_64: 'd753d89a94d4a9538bf576040e00b3216b1746a9930e091a60366f2627978fc4' }) - depends_on 'perl' - def self.build system "yes | perl Makefile.PL PREFIX=#{CREW_PREFIX} DESTDIR=#{CREW_DEST_DIR}" system 'make' diff --git a/packages/perl_locale_gettext.rb b/packages/perl_locale_gettext.rb index c476c86ec..527bd331a 100644 --- a/packages/perl_locale_gettext.rb +++ b/packages/perl_locale_gettext.rb @@ -1,32 +1,28 @@ - require 'package' class Perl_locale_gettext < Package description 'Locale::gettext - message handling functions' homepage 'https://metacpan.org/pod/Locale::gettext' - compatibility 'all' license 'GPL-1+ or Artistic' - version '1.07-1' + version '1.07-2' + compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/P/PV/PVANDRY/gettext-1.07.tar.gz' source_sha256 '909d47954697e7c04218f972915b787bd1244d75e3bd01620bc167d5bbc49c15' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-1_armv7l/perl_locale_gettext-1.07-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-1_armv7l/perl_locale_gettext-1.07-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-1_i686/perl_locale_gettext-1.07-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-1_x86_64/perl_locale_gettext-1.07-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-2_armv7l/perl_locale_gettext-1.07-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-2_armv7l/perl_locale_gettext-1.07-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-2_i686/perl_locale_gettext-1.07-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_gettext/1.07-2_x86_64/perl_locale_gettext-1.07-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '2ca25cdafbe78b4d6b5e01c8985c20a2341c06c3b6969c50fa57f5dda2980e07', - armv7l: '2ca25cdafbe78b4d6b5e01c8985c20a2341c06c3b6969c50fa57f5dda2980e07', - i686: 'cf09ba00b54abf698b8c90e08c0de4f99856179551033f81e7984b4f1ae99e8f', - x86_64: '1183aaa19a065dcc5578276614e4e42f178b76e629d52285f68a12dae87f9232', + binary_sha256({ + aarch64: '5ba4484084fe099eb2bb9c2db6ac7461fd9b951e41992bc4105cd68ae48094a8', + armv7l: '5ba4484084fe099eb2bb9c2db6ac7461fd9b951e41992bc4105cd68ae48094a8', + i686: 'de64c0415d97e2d0f5fd5cc6cee55f55f511d86528442c8b382eb7223214c13f', + x86_64: '9cf2b992dad51c31253e717dadc1ea3318efa56eb0261958e389d554bb6436b3' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -42,6 +38,5 @@ class Perl_locale_gettext < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_locale_messages.rb b/packages/perl_locale_messages.rb index f6233f34a..df29714ea 100644 --- a/packages/perl_locale_messages.rb +++ b/packages/perl_locale_messages.rb @@ -3,29 +3,26 @@ require 'package' class Perl_locale_messages < Package description 'Perl Locale::Messages - Gettext Like Message Retrieval.' homepage 'https://metacpan.org/pod/Locale::Messages' - version '1.31' + version '1.31-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/G/GU/GUIDO/libintl-perl-1.31.tar.gz' source_sha256 'cad0b1fd0abfa1340dea089ec45ee3dacd9710c9fd942c064bb8124273b3caa9' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31_armv7l/perl_locale_messages-1.31-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31_armv7l/perl_locale_messages-1.31-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31_i686/perl_locale_messages-1.31-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31_x86_64/perl_locale_messages-1.31-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31-1_armv7l/perl_locale_messages-1.31-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31-1_armv7l/perl_locale_messages-1.31-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31-1_i686/perl_locale_messages-1.31-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_locale_messages/1.31-1_x86_64/perl_locale_messages-1.31-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'aac0aa6fe8609a8f51f755f738613842dad332d641e3ddbebb30565a82d87be9', - armv7l: 'aac0aa6fe8609a8f51f755f738613842dad332d641e3ddbebb30565a82d87be9', - i686: '3f100a08dfb9ef440f75bc5891c6642dbb569c8e404524c497df9f1778dad440', - x86_64: '11676c56fb5897372398f0ebb4ce8a870757e680ec63dcf7baee6695df53dc52', + binary_sha256({ + aarch64: 'fda26b093588628e08bf3f7b4cce646b70ffe7074fc00458af7ee02ddbcc44dd', + armv7l: 'fda26b093588628e08bf3f7b4cce646b70ffe7074fc00458af7ee02ddbcc44dd', + i686: 'df20e08e1dfa946e067eb00bff209397d3901d7cec5f115d805d67d3b67b0b9b', + x86_64: 'c4ff271866c9dab9e707a591157c0fafa7a3230294473a6ee77f17a95bc4b978' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_locale_messages < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_module_build.rb b/packages/perl_module_build.rb index ad30db8e9..a41ae93e4 100644 --- a/packages/perl_module_build.rb +++ b/packages/perl_module_build.rb @@ -3,29 +3,26 @@ require 'package' class Perl_module_build < Package description 'Module::Build - Build and install Perl modules' homepage 'https://metacpan.org/pod/Module::Build' - version '0.4231' + version '0.4231-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/L/LE/LEONT/Module-Build-0.4231.tar.gz' source_sha256 '7e0f4c692c1740c1ac84ea14d7ea3d8bc798b2fb26c09877229e04f430b2b717' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231_armv7l/perl_module_build-0.4231-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231_armv7l/perl_module_build-0.4231-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231_i686/perl_module_build-0.4231-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231_x86_64/perl_module_build-0.4231-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231-1_armv7l/perl_module_build-0.4231-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231-1_armv7l/perl_module_build-0.4231-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231-1_i686/perl_module_build-0.4231-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_module_build/0.4231-1_x86_64/perl_module_build-0.4231-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'b8407fa11a374de2c9a07ecae133cee6872b433872b6b3bef2a51218bf0d3c4c', - armv7l: 'b8407fa11a374de2c9a07ecae133cee6872b433872b6b3bef2a51218bf0d3c4c', - i686: '5c0b7f602df7ff123b58d4e6cdea0fcc019a482f06de809219f9d4fbb23e9992', - x86_64: '71b31393762a1eaa299d3e519aa1b72f152eb405378e2d37001d62a809791a92', + binary_sha256({ + aarch64: '20d2dc51249d27c1f77b8a07b9b5a0f184e15581df486192f8b62bdda579669b', + armv7l: '20d2dc51249d27c1f77b8a07b9b5a0f184e15581df486192f8b62bdda579669b', + i686: '5dc94b6562c86fefa1501fc1ae895c3159a3b0449fbce685a892286d7715e11e', + x86_64: 'e3178127a60be8154cd3f2bf57611959651e8d050ddb8b8682320e045db82cfa' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_module_build < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_parse_yapp.rb b/packages/perl_parse_yapp.rb index 946fe73be..0faddbc1a 100644 --- a/packages/perl_parse_yapp.rb +++ b/packages/perl_parse_yapp.rb @@ -6,23 +6,23 @@ require 'package' class Perl_parse_yapp < Package description 'Yapp : Generates OO LALR parser modules' homepage 'https://search.cpan.org/dist/Parse-Yapp' - version '1.21' + version '1.22' license 'GPL' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz' source_sha256 '3810e998308fba2e0f4f26043035032b027ce51ce5c8a52a8b8e340ca65f13e5' binary_url({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.21_armv7l/perl_parse_yapp-1.21-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.21_armv7l/perl_parse_yapp-1.21-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.21_i686/perl_parse_yapp-1.21-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.21_x86_64/perl_parse_yapp-1.21-chromeos-x86_64.tar.xz' + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.22_armv7l/perl_parse_yapp-1.22-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.22_armv7l/perl_parse_yapp-1.22-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.22_i686/perl_parse_yapp-1.22-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_parse_yapp/1.22_x86_64/perl_parse_yapp-1.22-chromeos-x86_64.tar.xz' }) binary_sha256({ - aarch64: '6dbd2557641720a8abec288558c7e6708d4d9290c51db08dfcdf53eaeac2728b', - armv7l: '6dbd2557641720a8abec288558c7e6708d4d9290c51db08dfcdf53eaeac2728b', - i686: '505658a64ea424427c82cc07774f4a4cca4e03f743c8f8d9fc381ea4d8e67c8e', - x86_64: 'f0eead5040028f8beecee109a774f413e2abc4c5e55e0441e22d9a3c238146f5' + aarch64: 'cdc7fdd872f79b166421a6fcdcf02d15ef8b5612da90f4d5c6e87c127ad9436d', + armv7l: 'cdc7fdd872f79b166421a6fcdcf02d15ef8b5612da90f4d5c6e87c127ad9436d', + i686: 'f44f9ab5cb9b8a71d4ef86e0b2f0e503bdbab015a9ccae86e0a9c34dd30af5bb', + x86_64: 'bff95a47e92184654a9b1a2caac5b921b92d19c26bc4160a1306b91b5bde1e8c' }) def self.install diff --git a/packages/perl_pod_parser.rb b/packages/perl_pod_parser.rb index 65c21928d..6dd5c7817 100644 --- a/packages/perl_pod_parser.rb +++ b/packages/perl_pod_parser.rb @@ -3,29 +3,26 @@ require 'package' class Perl_pod_parser < Package description 'Perl Pod::Parser - base class for creating POD filters and translators' homepage 'https://metacpan.org/pod/Pod::Parser' - version '1.63' + version '1.63-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/M/MA/MAREKR/Pod-Parser-1.63.tar.gz' source_sha256 'dbe0b56129975b2f83a02841e8e0ed47be80f060686c66ea37e529d97aa70ccd' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63_armv7l/perl_pod_parser-1.63-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63_armv7l/perl_pod_parser-1.63-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63_i686/perl_pod_parser-1.63-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63_x86_64/perl_pod_parser-1.63-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63-1_armv7l/perl_pod_parser-1.63-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63-1_armv7l/perl_pod_parser-1.63-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63-1_i686/perl_pod_parser-1.63-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_pod_parser/1.63-1_x86_64/perl_pod_parser-1.63-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '3b7eabb2c15a0a3dfc325d564ebb50bbb7c03fbc31ab6b6b094f3402c99e7bbf', - armv7l: '3b7eabb2c15a0a3dfc325d564ebb50bbb7c03fbc31ab6b6b094f3402c99e7bbf', - i686: '5fe0a77aeef18cbac0075f703a89eda4b729f5270b636c59af194a6ae55d8c6c', - x86_64: '62d5b260b5da61a1a21adaa5a8fc8a31e0f3e5a312534e506de331c80275c00b', + binary_sha256({ + aarch64: '8ba74165129311c52ccf8add610eda8aba4ef5e7b24e4a7ed365fbe825837710', + armv7l: '8ba74165129311c52ccf8add610eda8aba4ef5e7b24e4a7ed365fbe825837710', + i686: 'a0ae78e4d2aafd3ef90d2b23fdf5bd5f43da4638b17183ac9e1cf7914e349625', + x86_64: '75ee5ada7995eb9c7bc6c5199069c944107fe555cd1ef2a9df67ac60b5269908' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_pod_parser < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_read_key.rb b/packages/perl_read_key.rb index 8f9f01706..b59a0ad45 100644 --- a/packages/perl_read_key.rb +++ b/packages/perl_read_key.rb @@ -3,27 +3,25 @@ require 'package' class Perl_read_key < Package description 'Character mode terminal access for Perl Term::ReadKey' homepage 'https://metacpan.org/source/JSTOWE/TermReadKey-2.37/' - version '2.38' + version '2.38-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://github.com/jonathanstowe/TermReadKey/archive/2.38.tar.gz' source_sha256 'bb669c422d7094e19fa85d43676b67933b86d4a1f6b39fed5dbfaaaa97716c1d' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38_armv7l/perl_read_key-2.38-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38_armv7l/perl_read_key-2.38-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38_i686/perl_read_key-2.38-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38_x86_64/perl_read_key-2.38-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38-1_armv7l/perl_read_key-2.38-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38-1_armv7l/perl_read_key-2.38-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38-1_i686/perl_read_key-2.38-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_read_key/2.38-1_x86_64/perl_read_key-2.38-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '2c32777a39c44accb5bf5ee9b9155cc186faf148a4cc89218c50fe9ca38a7fdf', - armv7l: '2c32777a39c44accb5bf5ee9b9155cc186faf148a4cc89218c50fe9ca38a7fdf', - i686: '8cf68da938a505a90e84d442e196f0eaa58802568cb42b1ffb087265ec79f251', - x86_64: 'e06db1036175a0277adc945b09d213dd3f18f4978399e6aa27c9d79b3aa18360', + binary_sha256({ + aarch64: '76f4f39f14ad060edeca2bcf605985be09aa03296dcf3b4883bdebfa6984c2e6', + armv7l: '76f4f39f14ad060edeca2bcf605985be09aa03296dcf3b4883bdebfa6984c2e6', + i686: '896d0bcd908ab549c756b065b9edb0f4c6fe1977dd2719c63929f4756d49a543', + x86_64: 'a7694ccb4d399c07c92027268d5548223ad54c1234ae2a9248d8eaa9e73851b6' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_sgmls.rb b/packages/perl_sgmls.rb index 222b6f659..1b61a5c5e 100644 --- a/packages/perl_sgmls.rb +++ b/packages/perl_sgmls.rb @@ -1,36 +1,34 @@ - require 'package' class Perl_sgmls < Package description 'a set of Perl5 routines for processing the output from the onsgmls SGML parsers.' homepage 'http://search.cpan.org/dist/SGMLSpm/' - compatibility 'all' + version '1.1-2' license 'GPL-1+ or Artistic' - version '1.1-1' + compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/R/RA/RAAB/SGMLSpm-1.1.tar.gz' source_sha256 '550c9245291c8df2242f7e88f7921a0f636c7eec92c644418e7d89cfea70b2bd' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-1_armv7l/perl_sgmls-1.1-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-1_armv7l/perl_sgmls-1.1-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-1_i686/perl_sgmls-1.1-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-1_x86_64/perl_sgmls-1.1-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-2_armv7l/perl_sgmls-1.1-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-2_armv7l/perl_sgmls-1.1-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-2_i686/perl_sgmls-1.1-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_sgmls/1.1-2_x86_64/perl_sgmls-1.1-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '6ab37b70516fc82b41caf4f2fb4d41840cdb25d05ff370f3ac6f61b70352d0d9', - armv7l: '6ab37b70516fc82b41caf4f2fb4d41840cdb25d05ff370f3ac6f61b70352d0d9', - i686: 'e2affa6d9cb0e2b5ce47e782c04d18fd1cbd0cb7236ed081c0e2bc75ac5238dc', - x86_64: 'c04a99f872685d663b89e99ea435e1e62971b234889cc78880d1cb811202e5bd', + binary_sha256({ + aarch64: 'bd2e6e4160a9ba8357f88c438641eb2d9147c0346467a046a0434a41ee391d7b', + armv7l: 'bd2e6e4160a9ba8357f88c438641eb2d9147c0346467a046a0434a41ee391d7b', + i686: 'c5d9783e0d0394548a6fbf6ee2f34e14dd3c5c4cd696f6b9ae36e1af268077d7', + x86_64: 'a11acbe5d5f8ccb9da8eb99144e199253b71d8798f886bb8c1652a2a359b64ad' }) depends_on 'perl_module_build' - def self.build - end + def self.build; end def self.install # install files to build directory - system 'cpanm', '-l', 'build', '.' # remove '--self-contained' here, since it will build module_build again. + system 'cpanm', '-l', 'build', '.' # remove '--self-contained' here, since it will build module_build again. # install lib libdir = CREW_DEST_DIR + `perl -e 'require Config; print $Config::Config{'"'installsitelib'"'};'` @@ -42,6 +40,5 @@ class Perl_sgmls < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_stow.rb b/packages/perl_stow.rb new file mode 100644 index 000000000..92b251207 --- /dev/null +++ b/packages/perl_stow.rb @@ -0,0 +1,39 @@ +require 'package' + +class Perl_stow < Package + description 'Manage installation of multiple softwares in the same directory tree' + homepage 'https://www.gnu.org/software/stow/' + version '2.3.1' + license 'GPL-3+' + compatibility 'all' + source_url 'https://ftpmirror.gnu.org/stow/stow-2.3.1.tar.gz' + source_sha256 '09d5d99671b78537fd9b2c0b39a5e9761a7a0e979f6fdb7eabfa58ee45f03d4b' + + def self.prebuild + system 'cpan App::cpanminus' + end + + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_stow/2.3.1_armv7l/perl_stow-2.3.1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_stow/2.3.1_armv7l/perl_stow-2.3.1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_stow/2.3.1_i686/perl_stow-2.3.1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_stow/2.3.1_x86_64/perl_stow-2.3.1-chromeos-x86_64.tar.xz' + }) + binary_sha256({ + aarch64: '503b01aab3beaf36bd629ab7b8aee2d98e29b780bbc20becdb2e1d0cacdfe150', + armv7l: '503b01aab3beaf36bd629ab7b8aee2d98e29b780bbc20becdb2e1d0cacdfe150', + i686: '5a38f30a09b1815beda68dd24ae3ea298183eb40b23b6c455cc990314159d17f', + x86_64: 'bd129677fb5214d53531b7fde7afd8bc22160e04d55fd05b3c9c1dc8b0c21867' + }) + + def self.build + system 'cpanm Test::Output' + system "./configure #{CREW_OPTIONS} \ + --with-pmdir=$(PERL5LIB= perl -le 'print $INC[0]')" + system 'make' + end + + def self.install + system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' + end +end diff --git a/packages/perl_term_ansicolor.rb b/packages/perl_term_ansicolor.rb index aaa69625e..f7a68f119 100644 --- a/packages/perl_term_ansicolor.rb +++ b/packages/perl_term_ansicolor.rb @@ -3,27 +3,25 @@ require 'package' class Perl_term_ansicolor < Package description 'Character mode terminal access for Perl Term::ANSIColor' homepage 'https://www.eyrie.org/~eagle/software/ansicolor/' - version '5.01' + version '5.01-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://github.com/rra/ansicolor/archive/release/5.01.tar.gz' source_sha256 'c4865a9fe2ce3a46fd4f11215dcba05a9d5603e797a2623abc19cc14b4a0609a' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01_armv7l/perl_term_ansicolor-5.01-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01_armv7l/perl_term_ansicolor-5.01-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01_i686/perl_term_ansicolor-5.01-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01_x86_64/perl_term_ansicolor-5.01-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01-1_armv7l/perl_term_ansicolor-5.01-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01-1_armv7l/perl_term_ansicolor-5.01-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01-1_i686/perl_term_ansicolor-5.01-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_ansicolor/5.01-1_x86_64/perl_term_ansicolor-5.01-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'c96e95727d025667223e7a03bc89fdc061c3d83e4660815a4bf33aa72aafcd09', - armv7l: 'c96e95727d025667223e7a03bc89fdc061c3d83e4660815a4bf33aa72aafcd09', - i686: 'bd6ea6dff3b5ceed3f29f495c66473cc943a30d2e6c6a0337f8d0efb16e0b7e4', - x86_64: '057c9ccc3a3bb84354c4e81383961e9a0d886b3a1e7d3c8a960336da6383b3ba', + binary_sha256({ + aarch64: '3007f881b95506691c56c97be273587e1155dd520ffcf680624628de15cf3abf', + armv7l: '3007f881b95506691c56c97be273587e1155dd520ffcf680624628de15cf3abf', + i686: 'ea4224102ff52f47853d1bafdd80a77eb49680f86138f7733dcf9ae918e7e677', + x86_64: '736e5f517bcefe676c75ebe6f251972119b6593b7be2acc6dc7504f1edc819ef' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_term_readkey.rb b/packages/perl_term_readkey.rb index cb7ff7af6..cf7a744d6 100644 --- a/packages/perl_term_readkey.rb +++ b/packages/perl_term_readkey.rb @@ -3,27 +3,25 @@ require 'package' class Perl_term_readkey < Package description 'Term::ReadKey - A perl module for simple terminal control' homepage 'https://metacpan.org/pod/Term::ReadKey' - version '2.38' + version '2.38-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/J/JS/JSTOWE/TermReadKey-2.38.tar.gz' source_sha256 '5a645878dc570ac33661581fbb090ff24ebce17d43ea53fd22e105a856a47290' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38_armv7l/perl_term_readkey-2.38-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38_armv7l/perl_term_readkey-2.38-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38_i686/perl_term_readkey-2.38-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38_x86_64/perl_term_readkey-2.38-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38-1_armv7l/perl_term_readkey-2.38-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38-1_armv7l/perl_term_readkey-2.38-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38-1_i686/perl_term_readkey-2.38-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_term_readkey/2.38-1_x86_64/perl_term_readkey-2.38-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '94188d0e163fe8dd2ddd02eb2c7737821810b073d999189d3c8d4441f8a17d01', - armv7l: '94188d0e163fe8dd2ddd02eb2c7737821810b073d999189d3c8d4441f8a17d01', - i686: '339cd76509bee2cd027fe49e930e5defee969964df1929e969954d1b0b22507f', - x86_64: 'dcdb8f19f52e221a4b5629a8f7b22e0aab910c714feaf25e6c740614f217a5d9', + binary_sha256({ + aarch64: '9cf3b95873bdfc2ba4e05c01afb25fec814f38d8601e766cbee82c86a7c46618', + armv7l: '9cf3b95873bdfc2ba4e05c01afb25fec814f38d8601e766cbee82c86a7c46618', + i686: '8e312e6fa55096ff34a84852c6056860ce377e8d5ddb2bbad68db29e08a4cc30', + x86_64: '85630e55516ebd09fb3b7f7c5a089062952a7352a7136579ef7e30ba8b4c373a' }) - depends_on 'perl' - def self.install # install files to build directory system 'cpanm', '-l', 'build', '--self-contained', '--force', '.' @@ -38,6 +36,5 @@ class Perl_term_readkey < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_text_charwidth.rb b/packages/perl_text_charwidth.rb index ee2ee04ee..7ae02cf26 100644 --- a/packages/perl_text_charwidth.rb +++ b/packages/perl_text_charwidth.rb @@ -3,29 +3,26 @@ require 'package' class Perl_text_charwidth < Package description 'Text::CharWidth - Get number of occupied columns of a string on terminals' homepage 'https://metacpan.org/pod/Text::CharWidth' - version '0.04-1' + version '0.04-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/K/KU/KUBOTA/Text-CharWidth-0.04.tar.gz' source_sha256 'abded5f4fdd9338e89fd2f1d8271c44989dae5bf50aece41b6179d8e230704f8' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-1_armv7l/perl_text_charwidth-0.04-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-1_armv7l/perl_text_charwidth-0.04-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-1_i686/perl_text_charwidth-0.04-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-1_x86_64/perl_text_charwidth-0.04-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-2_armv7l/perl_text_charwidth-0.04-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-2_armv7l/perl_text_charwidth-0.04-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-2_i686/perl_text_charwidth-0.04-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_charwidth/0.04-2_x86_64/perl_text_charwidth-0.04-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'f3d97714e0b0a6004c74c2c0e3ce3b716bbd15faebf67f11b8c3b44744417e22', - armv7l: 'f3d97714e0b0a6004c74c2c0e3ce3b716bbd15faebf67f11b8c3b44744417e22', - i686: '876b30f1223dd35171bee51adcc898c2a5a0b2e77837fbcb08aa2d2570790c62', - x86_64: 'a8b8882ce818811dc8eeb67c42cea8ef9ef3ca53e7c791e031bcf127b69db277', + binary_sha256({ + aarch64: '965175c70ca4cc515bdf139a4668434b6dd02ab565ae5b84705b508af005028e', + armv7l: '965175c70ca4cc515bdf139a4668434b6dd02ab565ae5b84705b508af005028e', + i686: 'ca46530e55475d03663fc0d821ee20e02eedafc4fa32ded01d622cd1af35d621', + x86_64: '38a4a507e655a9bbd3b4aeae1a49f32e9ef27b1a5ef2c5e7e9efef760f3e98ed' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_text_charwidth < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_text_unidecode.rb b/packages/perl_text_unidecode.rb index 358768fc0..e6171598d 100644 --- a/packages/perl_text_unidecode.rb +++ b/packages/perl_text_unidecode.rb @@ -3,29 +3,26 @@ require 'package' class Perl_text_unidecode < Package description 'Perl Text::Unidecode -- plain ASCII transliterations of Unicode text.' homepage 'https://metacpan.org/pod/Text::Unidecode' - version '1.30-1' + version '1.30-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/S/SB/SBURKE/Text-Unidecode-1.30.tar.gz' source_sha256 '6c24f14ddc1d20e26161c207b73ca184eed2ef57f08b5fb2ee196e6e2e88b1c6' - binary_url ({ + binary_url({ aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_unidecode/1.30-2_armv7l/perl_text_unidecode-1.30-2-chromeos-armv7l.tar.xz', armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_unidecode/1.30-2_armv7l/perl_text_unidecode-1.30-2-chromeos-armv7l.tar.xz', i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_unidecode/1.30-2_i686/perl_text_unidecode-1.30-2-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_unidecode/1.30-2_x86_64/perl_text_unidecode-1.30-2-chromeos-x86_64.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_unidecode/1.30-2_x86_64/perl_text_unidecode-1.30-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '0fb6cfb59c797bb0d5c94e7a06460f1863e4b03587d86d33be384d2cd80aa872', - armv7l: '0fb6cfb59c797bb0d5c94e7a06460f1863e4b03587d86d33be384d2cd80aa872', - i686: 'ef13e84d29e03bba52f2ab3dc2a20d0955e3440f2da50f69d3c5832f428a28f5', - x86_64: '9f9ace5d05847bb7d697fd27b02c43d3ef5224d7e036b5ac635b99409ee0142e', + binary_sha256({ + aarch64: 'c26b735942fd9bb1fc193ecfdffdab25bce5c208dc3ed61c819e21b7fda5f502', + armv7l: 'c26b735942fd9bb1fc193ecfdffdab25bce5c208dc3ed61c819e21b7fda5f502', + i686: '4fc5095c5d47286e895ed3ef2b5c631a061c1ab62a0781dbfe5ffb141cc36bb9', + x86_64: '763201f6d7fc90327300341c4a33b43e2a60164fa33ce20c1c9f47e00231d5e3' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_text_unidecode < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_text_wrapi18n.rb b/packages/perl_text_wrapi18n.rb index 29e4b7664..6668118b8 100644 --- a/packages/perl_text_wrapi18n.rb +++ b/packages/perl_text_wrapi18n.rb @@ -3,29 +3,28 @@ require 'package' class Perl_text_wrapi18n < Package description 'Text::WrapI18N - Line wrapping module with support for multibyte, fullwidth, and combining characters and languages without whitespaces between words.' homepage 'https://metacpan.org/pod/Text::WrapI18N' - version '0.06-1' + version '0.06-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/K/KU/KUBOTA/Text-WrapI18N-0.06.tar.gz' source_sha256 '4bd29a17f0c2c792d12c1005b3c276f2ab0fae39c00859ae1741d7941846a488' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-1_armv7l/perl_text_wrapi18n-0.06-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-1_armv7l/perl_text_wrapi18n-0.06-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-1_i686/perl_text_wrapi18n-0.06-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-1_x86_64/perl_text_wrapi18n-0.06-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-2_armv7l/perl_text_wrapi18n-0.06-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-2_armv7l/perl_text_wrapi18n-0.06-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-2_i686/perl_text_wrapi18n-0.06-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_text_wrapi18n/0.06-2_x86_64/perl_text_wrapi18n-0.06-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '87bebe91adc2d9b6b288691dace869f93e51a828086174d8c9380665dc7267a5', - armv7l: '87bebe91adc2d9b6b288691dace869f93e51a828086174d8c9380665dc7267a5', - i686: '3e5e0d3bdea86b958a2fdfe990f51055e9e35ea761ab525c6063dbeed4a1b7bb', - x86_64: 'bef63d98fe23d6963d97c60051874e586ef7765b1284b62e8847832a73f5ff5d', + binary_sha256({ + aarch64: 'baad1da36dc023de04364df3ee4f799d71cc7b6210016737b23e0d1015899159', + armv7l: 'baad1da36dc023de04364df3ee4f799d71cc7b6210016737b23e0d1015899159', + i686: 'f23dc5661e9721815a4504e57f82ac0c12513b830b31983d0454e628911cdd71', + x86_64: '3abbedc8db8e87eb086dafba589ebeda760ff2c16d9f97698e09dc15f1fdc309' }) depends_on 'perl_text_charwidth' - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +40,5 @@ class Perl_text_wrapi18n < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_time_hires.rb b/packages/perl_time_hires.rb index 4bbbbdd53..1580669e5 100644 --- a/packages/perl_time_hires.rb +++ b/packages/perl_time_hires.rb @@ -3,27 +3,25 @@ require 'package' class Perl_time_hires < Package description 'High resolution alarm, sleep, gettimeofday, interval timers Time::HiRes' homepage 'https://metacpan.org/release/Time-HiRes' - version '1.9758-1' + version '1.9758-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/J/JH/JHI/Time-HiRes-1.9758.tar.gz' source_sha256 '5bfa145bc11e70a8e337543b1084a293743a690691b568493455dedf58f34b1e' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-1_armv7l/perl_time_hires-1.9758-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-1_armv7l/perl_time_hires-1.9758-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-1_i686/perl_time_hires-1.9758-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-1_x86_64/perl_time_hires-1.9758-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-2_armv7l/perl_time_hires-1.9758-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-2_armv7l/perl_time_hires-1.9758-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-2_i686/perl_time_hires-1.9758-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_time_hires/1.9758-2_x86_64/perl_time_hires-1.9758-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '71dfe08892dc8c59a158448050d5d7bd5ea2a4c93adae3304c8645aa612a41e8', - armv7l: '71dfe08892dc8c59a158448050d5d7bd5ea2a4c93adae3304c8645aa612a41e8', - i686: '22b74828e23eb8c2a4e3394dbccbe05cd90423f99d3baeaa718dbad011100eef', - x86_64: 'dd240247cb8051dea6df3af7ea09c45cf16a26790f807139c5a02e9663433ae7', + binary_sha256({ + aarch64: 'ffb188bb4deb933432df4a898c61139feb37a80e109fba522abc6b4ccb0e8e97', + armv7l: 'ffb188bb4deb933432df4a898c61139feb37a80e109fba522abc6b4ccb0e8e97', + i686: 'bf2394f78d35cdd3037ea4fd6436cffdb6ecac2376395f76a3bf5ae9a8644deb', + x86_64: 'b745056ffef107653bcd19139a58bf8f24c8e254656089195c0334bb80069923' }) - depends_on 'perl' - def self.build system 'perl', 'Makefile.PL' system 'make' diff --git a/packages/perl_unicode_eastasianwidth.rb b/packages/perl_unicode_eastasianwidth.rb index d48504ac0..6673317e6 100644 --- a/packages/perl_unicode_eastasianwidth.rb +++ b/packages/perl_unicode_eastasianwidth.rb @@ -3,27 +3,25 @@ require 'package' class Perl_unicode_eastasianwidth < Package description 'Perl Unicode::EastAsianWidth - East Asian Width properties.' homepage 'https://metacpan.org/pod/Unicode::EastAsianWidth' - version '12.0' + version '12.0-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/A/AU/AUDREYT/Unicode-EastAsianWidth-12.0.tar.gz' source_sha256 '2a5bfd926c4fe5f77e6137da2c31ac2545282ae5fec6e9af0fdd403555a90ff4' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-1_armv7l/perl_unicode_eastasianwidth-12.0-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-1_armv7l/perl_unicode_eastasianwidth-12.0-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-1_i686/perl_unicode_eastasianwidth-12.0-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-1_x86_64/perl_unicode_eastasianwidth-12.0-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-2_armv7l/perl_unicode_eastasianwidth-12.0-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-2_armv7l/perl_unicode_eastasianwidth-12.0-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-2_i686/perl_unicode_eastasianwidth-12.0-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_unicode_eastasianwidth/12.0-2_x86_64/perl_unicode_eastasianwidth-12.0-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'fe5c4b5bb96413f8e3841d1542961a79d288d57ea7ba49fda5704e9010e4625c', - armv7l: 'fe5c4b5bb96413f8e3841d1542961a79d288d57ea7ba49fda5704e9010e4625c', - i686: '5e79c41dec4627a50378058acbc0e815970571127a0dad29128a905eafc889a5', - x86_64: '55c5256381f12302211179f0a5aedecdd200b8e09fd28564630cc9bbd5294403', + binary_sha256({ + aarch64: '8a72eba49c075cbb13b7e8a7575df34f463c7d4e73f4e9fadcd7b4c3ea3d0c7c', + armv7l: '8a72eba49c075cbb13b7e8a7575df34f463c7d4e73f4e9fadcd7b4c3ea3d0c7c', + i686: '98e1a3e9f2591f5342d512b67c916f87480d43276ee492d2238972ae8235d3f5', + x86_64: '7f8e2ade0b2d5481d8efe3f5a830baa814aacfb9897844aae067b7cb340b9183' }) - depends_on 'perl' - def self.prebuild system 'perl', 'Makefile.PL' system "sed -i 's,/usr/local,#{CREW_PREFIX},g' Makefile" diff --git a/packages/perl_xml_parser.rb b/packages/perl_xml_parser.rb index 65b6bff81..ff999b6cf 100644 --- a/packages/perl_xml_parser.rb +++ b/packages/perl_xml_parser.rb @@ -3,30 +3,28 @@ require 'package' class Perl_xml_parser < Package description 'Perl XML::Parser - A perl module for parsing XML documents' homepage 'https://metacpan.org/pod/XML::Parser' - version '2.46' + version '2.46-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/T/TO/TODDR/XML-Parser-2.46.tar.gz' source_sha256 'd331332491c51cccfb4cb94ffc44f9cd73378e618498d4a37df9e043661c515d' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46_armv7l/perl_xml_parser-2.46-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46_armv7l/perl_xml_parser-2.46-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46_i686/perl_xml_parser-2.46-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46_x86_64/perl_xml_parser-2.46-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46-1_armv7l/perl_xml_parser-2.46-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46-1_armv7l/perl_xml_parser-2.46-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46-1_i686/perl_xml_parser-2.46-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_parser/2.46-1_x86_64/perl_xml_parser-2.46-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '19c9f04e36592ba130c178c0b19a0418959f7dbc5ff69d926cc7d7953ebf5ce8', - armv7l: '19c9f04e36592ba130c178c0b19a0418959f7dbc5ff69d926cc7d7953ebf5ce8', - i686: 'a8be7da651c6064359978d81c536511c225f62d17a2c8d498b8290a48c6104ff', - x86_64: 'ba095c1e93328e0117c3ad5097dc4de88969f7ef70829e1d4d355afdb508f37d', + binary_sha256({ + aarch64: '3c536628600008c19d089766ced4ebc96ebf3ec8beb5c99578ea452fc9e8c1d3', + armv7l: '3c536628600008c19d089766ced4ebc96ebf3ec8beb5c99578ea452fc9e8c1d3', + i686: 'e7cd0964006d7fa61d9ad49498443e956f0855821dd95777b808b79506eccde1', + x86_64: '83042563b3c4e95218c01fb384e55c190ec0066e6dddda67dcae7e353aab9975' }) depends_on 'expat' - depends_on 'perl' - def self.build - end + def self.build; end def self.install # install files to build directory @@ -42,6 +40,5 @@ class Perl_xml_parser < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_xml_sax_parserfactory.rb b/packages/perl_xml_sax_parserfactory.rb index c71d2f97e..166d70e73 100644 --- a/packages/perl_xml_sax_parserfactory.rb +++ b/packages/perl_xml_sax_parserfactory.rb @@ -3,29 +3,26 @@ require 'package' class Perl_xml_sax_parserfactory < Package description 'XML::SAX::ParserFactory is a factory class for providing an application with a Perl SAX2 XML parser.' homepage 'https://metacpan.org/source/GRANTM/XML-SAX-0.99/SAX/' - version '1.02' + version '1.02-1' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-1.02.tar.gz' source_sha256 '4506c387043aa6a77b455f00f57409f3720aa7e553495ab2535263b4ed1ea12a' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02_armv7l/perl_xml_sax_parserfactory-1.02-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02_armv7l/perl_xml_sax_parserfactory-1.02-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02_i686/perl_xml_sax_parserfactory-1.02-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02_x86_64/perl_xml_sax_parserfactory-1.02-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02-1_armv7l/perl_xml_sax_parserfactory-1.02-1-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02-1_armv7l/perl_xml_sax_parserfactory-1.02-1-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02-1_i686/perl_xml_sax_parserfactory-1.02-1-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_sax_parserfactory/1.02-1_x86_64/perl_xml_sax_parserfactory-1.02-1-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '9a65d90e104f6345618c68a626188de073498c5a836f02478ee0388af74197d2', - armv7l: '9a65d90e104f6345618c68a626188de073498c5a836f02478ee0388af74197d2', - i686: 'beaa39f268e11c8b66b12599defed197de773bcc2f9938bdbfcf9696fa198fb4', - x86_64: '99d8022173ad714e70c9f235264bce34a3a2f1af65269cc929e4d23a0347e66a', + binary_sha256({ + aarch64: '8ea748d73c2228eab13bc2d50b1cf920e73e45ca4f68063b8e1aaee232bb0725', + armv7l: '8ea748d73c2228eab13bc2d50b1cf920e73e45ca4f68063b8e1aaee232bb0725', + i686: '606e6b8bb6f39207b06f372b9f2b5e0570b32bf43e74fb3591337fd5587d963b', + x86_64: 'c4cd67e75427b61962ede81353888fe8cf13fb974803562ba541c1fff13a38bd' }) - depends_on 'perl' - - def self.build - end + def self.build; end def self.install # install files to build directory @@ -41,6 +38,5 @@ class Perl_xml_sax_parserfactory < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/perl_xml_simple.rb b/packages/perl_xml_simple.rb index 1c14d9168..0f1b01dc1 100644 --- a/packages/perl_xml_simple.rb +++ b/packages/perl_xml_simple.rb @@ -3,23 +3,23 @@ require 'package' class Perl_xml_simple < Package description 'XML::Simple - An API for simple XML files' homepage 'https://metacpan.org/pod/XML::Simple' - version '2.25-1' + version '2.25-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-Simple-2.25.tar.gz' source_sha256 '531fddaebea2416743eb5c4fdfab028f502123d9a220405a4100e68fc480dbf8' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-1_armv7l/perl_xml_simple-2.25-1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-1_armv7l/perl_xml_simple-2.25-1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-1_i686/perl_xml_simple-2.25-1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-1_x86_64/perl_xml_simple-2.25-1-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-2_armv7l/perl_xml_simple-2.25-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-2_armv7l/perl_xml_simple-2.25-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-2_i686/perl_xml_simple-2.25-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_xml_simple/2.25-2_x86_64/perl_xml_simple-2.25-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: '1e59e0c43b8bfecf21365d9ee0b58db3faa544f07da1aa349734ba34b75541a0', - armv7l: '1e59e0c43b8bfecf21365d9ee0b58db3faa544f07da1aa349734ba34b75541a0', - i686: 'e035d818f9ef397fbc8f4f9e0aa95dc360c797931808f03e46a7cf7a7393a158', - x86_64: '13dd6b54550fc74148e635ea6ef7afecbe49ae691b85e745f4ed5e0667da79e6', + binary_sha256({ + aarch64: 'c75d6a80e668aa4ca4515c0d4eaf57c81d95f43db722818b201f87e96a66295d', + armv7l: 'c75d6a80e668aa4ca4515c0d4eaf57c81d95f43db722818b201f87e96a66295d', + i686: '84d43b1ff8994d610b58d4084dc859a78cfbd1b614b037009b6af3149bc28434', + x86_64: 'ae76a1851970fb669756a75b9f2b51b48e4687da515ab015c448eeb4eac9c422' }) depends_on 'perl_xml_parser' diff --git a/packages/perl_yaml_tiny.rb b/packages/perl_yaml_tiny.rb index 2fc7410ce..164872292 100644 --- a/packages/perl_yaml_tiny.rb +++ b/packages/perl_yaml_tiny.rb @@ -3,27 +3,25 @@ require 'package' class Perl_yaml_tiny < Package description 'YAML::Tiny - Read/Write YAML files with as little code as possible' homepage 'https://metacpan.org/pod/YAML::Tiny' - version '1.73' + version '1.73-2' license 'GPL-1+ or Artistic' compatibility 'all' source_url 'https://cpan.metacpan.org/authors/id/E/ET/ETHER/YAML-Tiny-1.73.tar.gz' source_sha256 'bc315fa12e8f1e3ee5e2f430d90b708a5dc7e47c867dba8dce3a6b8fbe257744' - binary_url ({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73_armv7l/perl_yaml_tiny-1.73-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73_armv7l/perl_yaml_tiny-1.73-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73_i686/perl_yaml_tiny-1.73-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73_x86_64/perl_yaml_tiny-1.73-chromeos-x86_64.tar.xz', + binary_url({ + aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73-2_armv7l/perl_yaml_tiny-1.73-2-chromeos-armv7l.tar.xz', + armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73-2_armv7l/perl_yaml_tiny-1.73-2-chromeos-armv7l.tar.xz', + i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73-2_i686/perl_yaml_tiny-1.73-2-chromeos-i686.tar.xz', + x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/perl_yaml_tiny/1.73-2_x86_64/perl_yaml_tiny-1.73-2-chromeos-x86_64.tar.xz' }) - binary_sha256 ({ - aarch64: 'b8d1b77879017165e920e68843bcf2e20c0e3f9a90c7dea79e46e61ae1599b3d', - armv7l: 'b8d1b77879017165e920e68843bcf2e20c0e3f9a90c7dea79e46e61ae1599b3d', - i686: '7f89638189e8940a5b96f1a105612f88649143b40ebcfca83d3c03382827f81e', - x86_64: 'cf49cfc2fb0ad7605e6590a5ea0470420d212f64d494f9277cfd49e12b136714', + binary_sha256({ + aarch64: 'e81f1c52c71e2c0557a8b5f935c4d55b4820b35d8564624b3008dbe124ea6bb1', + armv7l: 'e81f1c52c71e2c0557a8b5f935c4d55b4820b35d8564624b3008dbe124ea6bb1', + i686: 'd7f605c0c4c9cae7851f6647ec6513e0e0f400113cbd4236c3801b083d27eef6', + x86_64: 'a530bb292e61f1bd709b94fec1414d44f0b70656493fcb061ae1efac00444428' }) - depends_on 'perl' - def self.install # install files to build directory system 'cpanm', '-l', 'build', '--self-contained', '--force', '.' @@ -38,6 +36,5 @@ class Perl_yaml_tiny < Package system "(cd build/man; tar cf - .) | (cd #{CREW_DEST_MAN_PREFIX}; tar xfp -)" end - def self.check - end + def self.check; end end diff --git a/packages/pulseaudio.rb b/packages/pulseaudio.rb index 509be3faa..ee8ff0df5 100644 --- a/packages/pulseaudio.rb +++ b/packages/pulseaudio.rb @@ -31,7 +31,7 @@ class Pulseaudio < Package depends_on 'dbus' # R depends_on 'elogind' => :build depends_on 'eudev' # R - depends_on 'gcc10' # R + depends_on 'gcc11' # R depends_on 'glibc' # R depends_on 'glib' # R depends_on 'gsettings_desktop_schemas' # L diff --git a/packages/stow.rb b/packages/stow.rb index 60e61edae..f1dcb38c6 100644 --- a/packages/stow.rb +++ b/packages/stow.rb @@ -6,34 +6,9 @@ class Stow < Package version '2.3.1' license 'GPL-3+' compatibility 'all' - source_url 'https://ftpmirror.gnu.org/stow/stow-2.3.1.tar.gz' - source_sha256 '09d5d99671b78537fd9b2c0b39a5e9761a7a0e979f6fdb7eabfa58ee45f03d4b' - binary_url({ - aarch64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/stow/2.3.1_armv7l/stow-2.3.1-chromeos-armv7l.tar.xz', - armv7l: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/stow/2.3.1_armv7l/stow-2.3.1-chromeos-armv7l.tar.xz', - i686: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/stow/2.3.1_i686/stow-2.3.1-chromeos-i686.tar.xz', - x86_64: 'https://gitlab.com/api/v4/projects/26210301/packages/generic/stow/2.3.1_x86_64/stow-2.3.1-chromeos-x86_64.tar.xz' - }) - binary_sha256({ - aarch64: '503b01aab3beaf36bd629ab7b8aee2d98e29b780bbc20becdb2e1d0cacdfe150', - armv7l: '503b01aab3beaf36bd629ab7b8aee2d98e29b780bbc20becdb2e1d0cacdfe150', - i686: '5a38f30a09b1815beda68dd24ae3ea298183eb40b23b6c455cc990314159d17f', - x86_64: 'bd129677fb5214d53531b7fde7afd8bc22160e04d55fd05b3c9c1dc8b0c21867' - }) + depends_on 'perl_stow' - def self.prebuild - system 'cpan App::cpanminus' - end + is_fake - def self.build - system 'cpanm Test::Output' - system "./configure #{CREW_OPTIONS} \ - --with-pmdir=$(PERL5LIB= perl -le 'print $INC[0]')" - system 'make' - end - - def self.install - system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install' - end end diff --git a/packages/texinfo.rb b/packages/texinfo.rb index e4a6aecaf..5387fb682 100644 --- a/packages/texinfo.rb +++ b/packages/texinfo.rb @@ -3,7 +3,7 @@ require 'package' class Texinfo < Package description 'Texinfo is the official documentation format of the GNU project.' homepage 'https://www.gnu.org/software/texinfo/' - version '6.7' + version '6.7-1' license 'GPL-3' compatibility 'all' source_url 'https://ftpmirror.gnu.org/texinfo/texinfo-6.7.tar.xz' @@ -22,20 +22,16 @@ class Texinfo < Package x86_64: '4e7a16cb4f7d93a7c949c7ff10b03fa2e27b9db4372e5c138b0f10561fafa292', }) - depends_on 'gettext' => :build - depends_on 'perl' depends_on 'perl_locale_messages' depends_on 'perl_text_unidecode' depends_on 'perl_unicode_eastasianwidth' - depends_on 'ncurses' def self.build # configure and make - system './configure', - "--prefix=#{CREW_PREFIX}", - "--libdir=#{CREW_LIB_PREFIX}", - '--with-external-Text-Unidecode', - '--with-external-Unicode-EastAsianWidth' + system "env #{CREW_ENV_OPTIONS} \ + ./configure #{CREW_OPTIONS} \ + --with-external-Text-Unidecode \ + --with-external-Unicode-EastAsianWidth" system 'make' end diff --git a/tools/core_packages.txt b/tools/core_packages.txt index 52daf742f..add44444c 100644 --- a/tools/core_packages.txt +++ b/tools/core_packages.txt @@ -46,6 +46,7 @@ p11kit pcre pcre2 perl +pixz py3_pip python27 python3