| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 # | 4 # |
| 5 # This script should not be run directly but sourced by the other | 5 # This script should not be run directly but sourced by the other |
| 6 # scripts (e.g. sysroot-creator-trusty.sh). Its up to the parent scripts | 6 # scripts (e.g. sysroot-creator-trusty.sh). Its up to the parent scripts |
| 7 # to define certain environment variables: e.g. | 7 # to define certain environment variables: e.g. |
| 8 # DISTRO=ubuntu | 8 # DISTRO=ubuntu |
| 9 # DIST=trusty | 9 # DIST=trusty |
| 10 # APT_REPO=http://archive.ubuntu.com/ubuntu | 10 # APT_REPO=http://archive.ubuntu.com/ubuntu |
| 11 # KEYRING_FILE=/usr/share/keyrings/ubuntu-archive-keyring.gpg | 11 # KEYRING_FILE=/usr/share/keyrings/ubuntu-archive-keyring.gpg |
| 12 # DEBIAN_PACKAGES="gcc libz libssl" | 12 # DEBIAN_PACKAGES="gcc libz libssl" |
| 13 | 13 |
| 14 #@ This script builds a Debian sysroot images for building Google Chrome. | 14 #@ This script builds Debian/Ubuntu sysroot images for building Google Chrome. |
| 15 #@ | 15 #@ |
| 16 #@ Generally this script is invoked as: | 16 #@ Generally this script is invoked as: |
| 17 #@ sysroot-creator-<flavour>.sh <mode> <args>* | 17 #@ sysroot-creator-<flavour>.sh <mode> <args>* |
| 18 #@ Available modes are shown below. | 18 #@ Available modes are shown below. |
| 19 #@ | 19 #@ |
| 20 #@ List of modes: | 20 #@ List of modes: |
| 21 | 21 |
| 22 ###################################################################### | 22 ###################################################################### |
| 23 # Config | 23 # Config |
| 24 ###################################################################### | 24 ###################################################################### |
| (...skipping 17 matching lines...) Expand all Loading... |
| 42 echo "error: KEYRING_FILE not defined" | 42 echo "error: KEYRING_FILE not defined" |
| 43 exit 1 | 43 exit 1 |
| 44 fi | 44 fi |
| 45 | 45 |
| 46 if [ -z "${DEBIAN_PACKAGES:-}" ]; then | 46 if [ -z "${DEBIAN_PACKAGES:-}" ]; then |
| 47 echo "error: DEBIAN_PACKAGES not defined" | 47 echo "error: DEBIAN_PACKAGES not defined" |
| 48 exit 1 | 48 exit 1 |
| 49 fi | 49 fi |
| 50 | 50 |
| 51 readonly REPO_BASEDIR="${APT_REPO}/dists/${DIST}" | 51 readonly REPO_BASEDIR="${APT_REPO}/dists/${DIST}" |
| 52 readonly REPO_BASEDIR_ARM=${REPO_BASEDIR_ARM:=$REPO_BASEDIR} |
| 53 readonly REPO_BASEDIR_ARM64=${REPO_BASEDIR_ARM64:=$REPO_BASEDIR} |
| 54 readonly REPO_BASEDIR_MIPS=${REPO_BASEDIR_MIPS:=$REPO_BASEDIR} |
| 55 |
| 56 readonly HAS_ARCH_AMD64=${HAS_ARCH_AMD64:=0} |
| 57 readonly HAS_ARCH_I386=${HAS_ARCH_I386:=0} |
| 58 readonly HAS_ARCH_ARM=${HAS_ARCH_ARM:=0} |
| 59 readonly HAS_ARCH_ARM64=${HAS_ARCH_ARM64:=0} |
| 60 readonly HAS_ARCH_MIPS=${HAS_ARCH_MIPS:=0} |
| 52 | 61 |
| 53 readonly REQUIRED_TOOLS="wget" | 62 readonly REQUIRED_TOOLS="wget" |
| 54 | 63 |
| 55 ###################################################################### | 64 ###################################################################### |
| 56 # Package Config | 65 # Package Config |
| 57 ###################################################################### | 66 ###################################################################### |
| 58 | 67 |
| 59 PACKAGES_EXT=${PACKAGES_EXT:-bz2} | 68 PACKAGES_EXT=${PACKAGES_EXT:-bz2} |
| 60 readonly RELEASE_FILE="Release" | 69 readonly RELEASE_FILE="Release" |
| 61 readonly RELEASE_FILE_GPG="Release.gpg" | 70 readonly RELEASE_FILE_GPG="Release.gpg" |
| 62 readonly RELEASE_LIST="${REPO_BASEDIR}/${RELEASE_FILE}" | 71 readonly RELEASE_LIST="${REPO_BASEDIR}/${RELEASE_FILE}" |
| 63 readonly RELEASE_LIST_GPG="${REPO_BASEDIR}/${RELEASE_FILE_GPG}" | 72 readonly RELEASE_LIST_GPG="${REPO_BASEDIR}/${RELEASE_FILE_GPG}" |
| 64 readonly PACKAGE_FILE_AMD64="main/binary-amd64/Packages.${PACKAGES_EXT}" | 73 readonly PACKAGE_FILE_AMD64="main/binary-amd64/Packages.${PACKAGES_EXT}" |
| 65 readonly PACKAGE_FILE_I386="main/binary-i386/Packages.${PACKAGES_EXT}" | 74 readonly PACKAGE_FILE_I386="main/binary-i386/Packages.${PACKAGES_EXT}" |
| 66 readonly PACKAGE_FILE_ARM="main/binary-armhf/Packages.${PACKAGES_EXT}" | 75 readonly PACKAGE_FILE_ARM="main/binary-armhf/Packages.${PACKAGES_EXT}" |
| 67 readonly PACKAGE_FILE_ARM64="main/binary-arm64/Packages.${PACKAGES_EXT}" | 76 readonly PACKAGE_FILE_ARM64="main/binary-arm64/Packages.${PACKAGES_EXT}" |
| 68 readonly PACKAGE_FILE_MIPS="main/binary-mipsel/Packages.${PACKAGES_EXT}" | 77 readonly PACKAGE_FILE_MIPS="main/binary-mipsel/Packages.${PACKAGES_EXT}" |
| 69 readonly PACKAGE_LIST_AMD64="${REPO_BASEDIR}/${PACKAGE_FILE_AMD64}" | 78 readonly PACKAGE_LIST_AMD64="${REPO_BASEDIR}/${PACKAGE_FILE_AMD64}" |
| 70 readonly PACKAGE_LIST_I386="${REPO_BASEDIR}/${PACKAGE_FILE_I386}" | 79 readonly PACKAGE_LIST_I386="${REPO_BASEDIR}/${PACKAGE_FILE_I386}" |
| 71 readonly PACKAGE_LIST_ARM="${REPO_BASEDIR}/${PACKAGE_FILE_ARM}" | 80 readonly PACKAGE_LIST_ARM="${REPO_BASEDIR_ARM}/${PACKAGE_FILE_ARM}" |
| 72 readonly PACKAGE_LIST_ARM64="${REPO_BASEDIR}/${PACKAGE_FILE_ARM64}" | 81 readonly PACKAGE_LIST_ARM64="${REPO_BASEDIR_ARM64}/${PACKAGE_FILE_ARM64}" |
| 73 readonly PACKAGE_LIST_MIPS="${REPO_BASEDIR}/${PACKAGE_FILE_MIPS}" | 82 readonly PACKAGE_LIST_MIPS="${REPO_BASEDIR_MIPS}/${PACKAGE_FILE_MIPS}" |
| 74 | 83 |
| 75 readonly DEBIAN_DEP_LIST_AMD64="packagelist.${DIST}.amd64" | 84 readonly DEBIAN_DEP_LIST_AMD64="packagelist.${DIST}.amd64" |
| 76 readonly DEBIAN_DEP_LIST_I386="packagelist.${DIST}.i386" | 85 readonly DEBIAN_DEP_LIST_I386="packagelist.${DIST}.i386" |
| 77 readonly DEBIAN_DEP_LIST_ARM="packagelist.${DIST}.arm" | 86 readonly DEBIAN_DEP_LIST_ARM="packagelist.${DIST}.arm" |
| 78 readonly DEBIAN_DEP_LIST_ARM64="packagelist.${DIST}.arm64" | 87 readonly DEBIAN_DEP_LIST_ARM64="packagelist.${DIST}.arm64" |
| 79 readonly DEBIAN_DEP_LIST_MIPS="packagelist.${DIST}.mipsel" | 88 readonly DEBIAN_DEP_LIST_MIPS="packagelist.${DIST}.mipsel" |
| 80 | 89 |
| 81 ###################################################################### | 90 ###################################################################### |
| 82 # Helper | 91 # Helper |
| 83 ###################################################################### | 92 ###################################################################### |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 183 rm -rf ${INSTALL_ROOT}/* | 192 rm -rf ${INSTALL_ROOT}/* |
| 184 } | 193 } |
| 185 | 194 |
| 186 | 195 |
| 187 CreateTarBall() { | 196 CreateTarBall() { |
| 188 Banner "Creating tarball ${TARBALL}" | 197 Banner "Creating tarball ${TARBALL}" |
| 189 tar zcf ${TARBALL} -C ${INSTALL_ROOT} . | 198 tar zcf ${TARBALL} -C ${INSTALL_ROOT} . |
| 190 } | 199 } |
| 191 | 200 |
| 192 ExtractPackageBz2() { | 201 ExtractPackageBz2() { |
| 193 if [ "${PACKAGES_EXT}" == "bz2" ]; then | 202 if [ "${PACKAGES_EXT}" = "bz2" ]; then |
| 194 bzcat "$1" | egrep '^(Package:|Filename:|SHA256:) ' > "$2" | 203 bzcat "$1" | egrep '^(Package:|Filename:|SHA256:) ' > "$2" |
| 195 else | 204 else |
| 196 xzcat "$1" | egrep '^(Package:|Filename:|SHA256:) ' > "$2" | 205 xzcat "$1" | egrep '^(Package:|Filename:|SHA256:) ' > "$2" |
| 197 fi | 206 fi |
| 198 } | 207 } |
| 199 | 208 |
| 200 GeneratePackageListAmd64() { | 209 GeneratePackageListAmd64() { |
| 201 local output_file="$1" | 210 local output_file="$1" |
| 202 local package_list="${BUILD_DIR}/Packages.${DIST}_amd64.${PACKAGES_EXT}" | 211 local package_list="${BUILD_DIR}/Packages.${DIST}_amd64.${PACKAGES_EXT}" |
| 203 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_amd64" | 212 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_amd64" |
| 204 DownloadOrCopy "${PACKAGE_LIST_AMD64}" "${package_list}" | 213 DownloadOrCopy "${PACKAGE_LIST_AMD64}" "${package_list}" |
| 205 VerifyPackageListing "${PACKAGE_FILE_AMD64}" "${package_list}" | 214 VerifyPackageListing "${PACKAGE_FILE_AMD64}" "${package_list}" |
| 206 ExtractPackageBz2 "$package_list" "$tmp_package_list" | 215 ExtractPackageBz2 "$package_list" "$tmp_package_list" |
| 207 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} | 216 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} |
| 208 ${DEBIAN_PACKAGES_X86} ${DEBIAN_PACKAGES_AMD64}" | 217 ${DEBIAN_PACKAGES_X86:=} ${DEBIAN_PACKAGES_AMD64:=}" |
| 209 } | 218 } |
| 210 | 219 |
| 211 GeneratePackageListI386() { | 220 GeneratePackageListI386() { |
| 212 local output_file="$1" | 221 local output_file="$1" |
| 213 local package_list="${BUILD_DIR}/Packages.${DIST}_i386.${PACKAGES_EXT}" | 222 local package_list="${BUILD_DIR}/Packages.${DIST}_i386.${PACKAGES_EXT}" |
| 214 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_amd64" | 223 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_amd64" |
| 215 DownloadOrCopy "${PACKAGE_LIST_I386}" "${package_list}" | 224 DownloadOrCopy "${PACKAGE_LIST_I386}" "${package_list}" |
| 216 VerifyPackageListing "${PACKAGE_FILE_I386}" "${package_list}" | 225 VerifyPackageListing "${PACKAGE_FILE_I386}" "${package_list}" |
| 217 ExtractPackageBz2 "$package_list" "$tmp_package_list" | 226 ExtractPackageBz2 "$package_list" "$tmp_package_list" |
| 218 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} | 227 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} |
| 219 ${DEBIAN_PACKAGES_X86}" | 228 ${DEBIAN_PACKAGES_X86:=}" |
| 220 } | 229 } |
| 221 | 230 |
| 222 GeneratePackageListARM() { | 231 GeneratePackageListARM() { |
| 223 local output_file="$1" | 232 local output_file="$1" |
| 224 local package_list="${BUILD_DIR}/Packages.${DIST}_arm.${PACKAGES_EXT}" | 233 local package_list="${BUILD_DIR}/Packages.${DIST}_arm.${PACKAGES_EXT}" |
| 225 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_arm" | 234 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_arm" |
| 226 DownloadOrCopy "${PACKAGE_LIST_ARM}" "${package_list}" | 235 DownloadOrCopy "${PACKAGE_LIST_ARM}" "${package_list}" |
| 227 VerifyPackageListing "${PACKAGE_FILE_ARM}" "${package_list}" | 236 VerifyPackageListing "${PACKAGE_FILE_ARM}" "${package_list}" |
| 228 ExtractPackageBz2 "$package_list" "$tmp_package_list" | 237 ExtractPackageBz2 "$package_list" "$tmp_package_list" |
| 229 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} | 238 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} |
| 230 ${DEBIAN_PACKAGES_ARM}" | 239 ${DEBIAN_PACKAGES_ARM:=}" |
| 231 } | 240 } |
| 232 | 241 |
| 233 function GeneratePackageListARM64() { | 242 GeneratePackageListARM64() { |
| 234 local output_file="$1" | 243 local output_file="$1" |
| 235 local package_list="${BUILD_DIR}/Packages.${DIST}_arm64.${PACKAGES_EXT}" | 244 local package_list="${BUILD_DIR}/Packages.${DIST}_arm64.${PACKAGES_EXT}" |
| 236 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_arm64" | 245 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_arm64" |
| 237 DownloadOrCopy "${PACKAGE_LIST_ARM64}" "${package_list}" | 246 DownloadOrCopy "${PACKAGE_LIST_ARM64}" "${package_list}" |
| 238 VerifyPackageListing "${PACKAGE_FILE_ARM64}" "${package_list}" | 247 VerifyPackageListing "${PACKAGE_FILE_ARM64}" "${package_list}" |
| 239 ExtractPackageBz2 "$package_list" "$tmp_package_list" | 248 ExtractPackageBz2 "$package_list" "$tmp_package_list" |
| 240 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} | 249 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES} |
| 241 ${DEBIAN_PACKAGES_ARM64}" | 250 ${DEBIAN_PACKAGES_ARM64:=}" |
| 242 } | 251 } |
| 243 | 252 |
| 244 GeneratePackageListMips() { | 253 GeneratePackageListMips() { |
| 245 local output_file="$1" | 254 local output_file="$1" |
| 246 local package_list="${BUILD_DIR}/Packages.${DIST}_mips.${PACKAGES_EXT}" | 255 local package_list="${BUILD_DIR}/Packages.${DIST}_mips.${PACKAGES_EXT}" |
| 247 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_mips" | 256 local tmp_package_list="${BUILD_DIR}/Packages.${DIST}_mips" |
| 248 DownloadOrCopy "${PACKAGE_LIST_MIPS}" "${package_list}" | 257 DownloadOrCopy "${PACKAGE_LIST_MIPS}" "${package_list}" |
| 249 VerifyPackageListing "${PACKAGE_FILE_MIPS}" "${package_list}" | 258 VerifyPackageListing "${PACKAGE_FILE_MIPS}" "${package_list}" |
| 250 ExtractPackageBz2 "$package_list" "$tmp_package_list" | 259 ExtractPackageBz2 "$package_list" "$tmp_package_list" |
| 251 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES}" | 260 GeneratePackageList "$tmp_package_list" "$output_file" "${DEBIAN_PACKAGES}" |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 333 sed -i -e 's|/lib/arm-linux-gnueabihf/||g' ${lscripts} | 342 sed -i -e 's|/lib/arm-linux-gnueabihf/||g' ${lscripts} |
| 334 | 343 |
| 335 # This is for chrome's ./build/linux/pkg-config-wrapper | 344 # This is for chrome's ./build/linux/pkg-config-wrapper |
| 336 # which overwrites PKG_CONFIG_LIBDIR internally | 345 # which overwrites PKG_CONFIG_LIBDIR internally |
| 337 SubBanner "Move pkgconfig files" | 346 SubBanner "Move pkgconfig files" |
| 338 mkdir -p ${INSTALL_ROOT}/usr/lib/pkgconfig | 347 mkdir -p ${INSTALL_ROOT}/usr/lib/pkgconfig |
| 339 mv ${INSTALL_ROOT}/usr/lib/arm-linux-gnueabihf/pkgconfig/* \ | 348 mv ${INSTALL_ROOT}/usr/lib/arm-linux-gnueabihf/pkgconfig/* \ |
| 340 ${INSTALL_ROOT}/usr/lib/pkgconfig | 349 ${INSTALL_ROOT}/usr/lib/pkgconfig |
| 341 } | 350 } |
| 342 | 351 |
| 343 function HacksAndPatchesARM64() { | 352 HacksAndPatchesARM64() { |
| 344 Banner "Misc Hacks & Patches" | 353 Banner "Misc Hacks & Patches" |
| 345 # these are linker scripts with absolute pathnames in them | 354 # these are linker scripts with absolute pathnames in them |
| 346 # which we rewrite here | 355 # which we rewrite here |
| 347 lscripts="${INSTALL_ROOT}/usr/lib/aarch64-linux-gnu/libpthread.so \ | 356 lscripts="${INSTALL_ROOT}/usr/lib/aarch64-linux-gnu/libpthread.so \ |
| 348 ${INSTALL_ROOT}/usr/lib/aarch64-linux-gnu/libc.so" | 357 ${INSTALL_ROOT}/usr/lib/aarch64-linux-gnu/libc.so" |
| 349 | 358 |
| 350 # Rewrite linker scripts | 359 # Rewrite linker scripts |
| 351 sed -i -e 's|/usr/lib/aarch64-linux-gnu/||g' ${lscripts} | 360 sed -i -e 's|/usr/lib/aarch64-linux-gnu/||g' ${lscripts} |
| 352 sed -i -e 's|/lib/aarch64-linux-gnu/||g' ${lscripts} | 361 sed -i -e 's|/lib/aarch64-linux-gnu/||g' ${lscripts} |
| 353 | 362 |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 420 } | 429 } |
| 421 | 430 |
| 422 | 431 |
| 423 CleanupJailSymlinks() { | 432 CleanupJailSymlinks() { |
| 424 Banner "Jail symlink cleanup" | 433 Banner "Jail symlink cleanup" |
| 425 | 434 |
| 426 SAVEDPWD=$(pwd) | 435 SAVEDPWD=$(pwd) |
| 427 cd ${INSTALL_ROOT} | 436 cd ${INSTALL_ROOT} |
| 428 local libdirs="lib usr/lib" | 437 local libdirs="lib usr/lib" |
| 429 if [ "${ARCH}" != "MIPS" ]; then | 438 if [ "${ARCH}" != "MIPS" ]; then |
| 430 libdirs+=" lib64" | 439 libdirs="${libdirs} lib64" |
| 431 fi | 440 fi |
| 432 find $libdirs -type l -printf '%p %l\n' | while read link target; do | 441 find $libdirs -type l -printf '%p %l\n' | while read link target; do |
| 433 # skip links with non-absolute paths | 442 # skip links with non-absolute paths |
| 434 echo "${target}" | grep -qs ^/ || continue | 443 echo "${target}" | grep -qs ^/ || continue |
| 435 echo "${link}: ${target}" | 444 echo "${link}: ${target}" |
| 436 case "${link}" in | 445 case "${link}" in |
| 437 usr/lib/gcc/*-linux-gnu/4.*/* | usr/lib/gcc/arm-linux-gnueabihf/4.*/* |\ | 446 usr/lib/gcc/*-linux-gnu/4.*/* | usr/lib/gcc/arm-linux-gnueabihf/4.*/* |\ |
| 438 usr/lib/gcc/aarch64-linux-gnu/4.*/*) | 447 usr/lib/gcc/aarch64-linux-gnu/4.*/*) |
| 439 # Relativize the symlink. | 448 # Relativize the symlink. |
| 440 ln -snfv "../../../../..${target}" "${link}" | 449 ln -snfv "../../../../..${target}" "${link}" |
| (...skipping 22 matching lines...) Expand all Loading... |
| 463 fi | 472 fi |
| 464 done | 473 done |
| 465 cd "$SAVEDPWD" | 474 cd "$SAVEDPWD" |
| 466 } | 475 } |
| 467 | 476 |
| 468 #@ | 477 #@ |
| 469 #@ BuildSysrootAmd64 | 478 #@ BuildSysrootAmd64 |
| 470 #@ | 479 #@ |
| 471 #@ Build everything and package it | 480 #@ Build everything and package it |
| 472 BuildSysrootAmd64() { | 481 BuildSysrootAmd64() { |
| 482 if [ "$HAS_ARCH_AMD64" = "0" ]; then |
| 483 return |
| 484 fi |
| 473 ClearInstallDir | 485 ClearInstallDir |
| 474 local package_file="$BUILD_DIR/package_with_sha256sum_amd64" | 486 local package_file="$BUILD_DIR/package_with_sha256sum_amd64" |
| 475 GeneratePackageListAmd64 "$package_file" | 487 GeneratePackageListAmd64 "$package_file" |
| 476 local files_and_sha256sums="$(cat ${package_file})" | 488 local files_and_sha256sums="$(cat ${package_file})" |
| 477 StripChecksumsFromPackageList "$package_file" | 489 StripChecksumsFromPackageList "$package_file" |
| 478 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_AMD64" | 490 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_AMD64" |
| 479 InstallIntoSysroot ${files_and_sha256sums} | 491 InstallIntoSysroot ${files_and_sha256sums} |
| 480 CleanupJailSymlinks | 492 CleanupJailSymlinks |
| 481 HacksAndPatchesAmd64 | 493 HacksAndPatchesAmd64 |
| 482 CreateTarBall | 494 CreateTarBall |
| 483 } | 495 } |
| 484 | 496 |
| 485 #@ | 497 #@ |
| 486 #@ BuildSysrootI386 | 498 #@ BuildSysrootI386 |
| 487 #@ | 499 #@ |
| 488 #@ Build everything and package it | 500 #@ Build everything and package it |
| 489 BuildSysrootI386() { | 501 BuildSysrootI386() { |
| 502 if [ "$HAS_ARCH_I386" = "0" ]; then |
| 503 return |
| 504 fi |
| 490 ClearInstallDir | 505 ClearInstallDir |
| 491 local package_file="$BUILD_DIR/package_with_sha256sum_i386" | 506 local package_file="$BUILD_DIR/package_with_sha256sum_i386" |
| 492 GeneratePackageListI386 "$package_file" | 507 GeneratePackageListI386 "$package_file" |
| 493 local files_and_sha256sums="$(cat ${package_file})" | 508 local files_and_sha256sums="$(cat ${package_file})" |
| 494 StripChecksumsFromPackageList "$package_file" | 509 StripChecksumsFromPackageList "$package_file" |
| 495 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_I386" | 510 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_I386" |
| 496 InstallIntoSysroot ${files_and_sha256sums} | 511 InstallIntoSysroot ${files_and_sha256sums} |
| 497 CleanupJailSymlinks | 512 CleanupJailSymlinks |
| 498 HacksAndPatchesI386 | 513 HacksAndPatchesI386 |
| 499 CreateTarBall | 514 CreateTarBall |
| 500 } | 515 } |
| 501 | 516 |
| 502 #@ | 517 #@ |
| 503 #@ BuildSysrootARM | 518 #@ BuildSysrootARM |
| 504 #@ | 519 #@ |
| 505 #@ Build everything and package it | 520 #@ Build everything and package it |
| 506 BuildSysrootARM() { | 521 BuildSysrootARM() { |
| 522 if [ "$HAS_ARCH_ARM" = "0" ]; then |
| 523 return |
| 524 fi |
| 507 ClearInstallDir | 525 ClearInstallDir |
| 508 local package_file="$BUILD_DIR/package_with_sha256sum_arm" | 526 local package_file="$BUILD_DIR/package_with_sha256sum_arm" |
| 509 GeneratePackageListARM "$package_file" | 527 GeneratePackageListARM "$package_file" |
| 510 local files_and_sha256sums="$(cat ${package_file})" | 528 local files_and_sha256sums="$(cat ${package_file})" |
| 511 StripChecksumsFromPackageList "$package_file" | 529 StripChecksumsFromPackageList "$package_file" |
| 512 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_ARM" | 530 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_ARM" |
| 513 APT_REPO=${APR_REPO_ARM:=$APT_REPO} | 531 APT_REPO=${APT_REPO_ARM:=$APT_REPO} |
| 514 InstallIntoSysroot ${files_and_sha256sums} | 532 InstallIntoSysroot ${files_and_sha256sums} |
| 515 CleanupJailSymlinks | 533 CleanupJailSymlinks |
| 516 HacksAndPatchesARM | 534 HacksAndPatchesARM |
| 517 CreateTarBall | 535 CreateTarBall |
| 518 } | 536 } |
| 519 | 537 |
| 520 #@ | 538 #@ |
| 521 #@ BuildSysrootARM64 | 539 #@ BuildSysrootARM64 |
| 522 #@ | 540 #@ |
| 523 #@ Build everything and package it | 541 #@ Build everything and package it |
| 524 function BuildSysrootARM64() { | 542 BuildSysrootARM64() { |
| 543 if [ "$HAS_ARCH_ARM64" = "0" ]; then |
| 544 return |
| 545 fi |
| 525 ClearInstallDir | 546 ClearInstallDir |
| 526 local package_file="$BUILD_DIR/package_with_sha256sum_arm64" | 547 local package_file="$BUILD_DIR/package_with_sha256sum_arm64" |
| 527 GeneratePackageListARM64 "$package_file" | 548 GeneratePackageListARM64 "$package_file" |
| 528 local files_and_sha256sums="$(cat ${package_file})" | 549 local files_and_sha256sums="$(cat ${package_file})" |
| 529 StripChecksumsFromPackageList "$package_file" | 550 StripChecksumsFromPackageList "$package_file" |
| 530 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_ARM64" | 551 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_ARM64" |
| 531 APT_REPO=${APR_REPO_ARM64:=$APT_REPO} | 552 APT_REPO=${APT_REPO_ARM64:=$APT_REPO} |
| 532 InstallIntoSysroot ${files_and_sha256sums} | 553 InstallIntoSysroot ${files_and_sha256sums} |
| 533 CleanupJailSymlinks | 554 CleanupJailSymlinks |
| 534 HacksAndPatchesARM64 | 555 HacksAndPatchesARM64 |
| 535 CreateTarBall | 556 CreateTarBall |
| 536 } | 557 } |
| 537 | 558 |
| 538 | 559 |
| 539 #@ | 560 #@ |
| 540 #@ BuildSysrootMips | 561 #@ BuildSysrootMips |
| 541 #@ | 562 #@ |
| 542 #@ Build everything and package it | 563 #@ Build everything and package it |
| 543 BuildSysrootMips() { | 564 BuildSysrootMips() { |
| 565 if [ "$HAS_ARCH_MIPS" = "0" ]; then |
| 566 return |
| 567 fi |
| 544 ClearInstallDir | 568 ClearInstallDir |
| 545 local package_file="$BUILD_DIR/package_with_sha256sum_arm" | 569 local package_file="$BUILD_DIR/package_with_sha256sum_arm" |
| 546 GeneratePackageListMips "$package_file" | 570 GeneratePackageListMips "$package_file" |
| 547 local files_and_sha256sums="$(cat ${package_file})" | 571 local files_and_sha256sums="$(cat ${package_file})" |
| 548 StripChecksumsFromPackageList "$package_file" | 572 StripChecksumsFromPackageList "$package_file" |
| 549 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_MIPS" | 573 VerifyPackageFilesMatch "$package_file" "$DEBIAN_DEP_LIST_MIPS" |
| 550 APT_REPO=${APR_REPO_MIPS:=$APT_REPO} | 574 APT_REPO=${APT_REPO_MIPS:=$APT_REPO} |
| 551 InstallIntoSysroot ${files_and_sha256sums} | 575 InstallIntoSysroot ${files_and_sha256sums} |
| 552 CleanupJailSymlinks | 576 CleanupJailSymlinks |
| 553 HacksAndPatchesMips | 577 HacksAndPatchesMips |
| 554 CreateTarBall | 578 CreateTarBall |
| 555 } | 579 } |
| 556 | 580 |
| 557 #@ | 581 #@ |
| 558 #@ BuildSysrootAll | 582 #@ BuildSysrootAll |
| 559 #@ | 583 #@ |
| 560 #@ Build sysroot images for all architectures | 584 #@ Build sysroot images for all architectures |
| (...skipping 13 matching lines...) Expand all Loading... |
| 574 set -x | 598 set -x |
| 575 gsutil cp -a public-read "${TARBALL}" \ | 599 gsutil cp -a public-read "${TARBALL}" \ |
| 576 "gs://chrome-linux-sysroot/toolchain/$rev/" | 600 "gs://chrome-linux-sysroot/toolchain/$rev/" |
| 577 set +x | 601 set +x |
| 578 } | 602 } |
| 579 | 603 |
| 580 #@ | 604 #@ |
| 581 #@ UploadSysrootAmd64 <revision> | 605 #@ UploadSysrootAmd64 <revision> |
| 582 #@ | 606 #@ |
| 583 UploadSysrootAmd64() { | 607 UploadSysrootAmd64() { |
| 608 if [ "$HAS_ARCH_AMD64" = "0" ]; then |
| 609 return |
| 610 fi |
| 584 UploadSysroot "$@" | 611 UploadSysroot "$@" |
| 585 } | 612 } |
| 586 | 613 |
| 587 #@ | 614 #@ |
| 588 #@ UploadSysrootI386 <revision> | 615 #@ UploadSysrootI386 <revision> |
| 589 #@ | 616 #@ |
| 590 UploadSysrootI386() { | 617 UploadSysrootI386() { |
| 618 if [ "$HAS_ARCH_I386" = "0" ]; then |
| 619 return |
| 620 fi |
| 591 UploadSysroot "$@" | 621 UploadSysroot "$@" |
| 592 } | 622 } |
| 593 | 623 |
| 594 #@ | 624 #@ |
| 595 #@ UploadSysrootARM <revision> | 625 #@ UploadSysrootARM <revision> |
| 596 #@ | 626 #@ |
| 597 UploadSysrootARM() { | 627 UploadSysrootARM() { |
| 628 if [ "$HAS_ARCH_ARM" = "0" ]; then |
| 629 return |
| 630 fi |
| 598 UploadSysroot "$@" | 631 UploadSysroot "$@" |
| 599 } | 632 } |
| 600 | 633 |
| 601 #@ | 634 #@ |
| 602 #@ UploadSysrootARM64 <revision> | 635 #@ UploadSysrootARM64 <revision> |
| 603 #@ | 636 #@ |
| 604 function UploadSysrootARM64() { | 637 UploadSysrootARM64() { |
| 638 if [ "$HAS_ARCH_ARM64" = "0" ]; then |
| 639 return |
| 640 fi |
| 605 UploadSysroot "$@" | 641 UploadSysroot "$@" |
| 606 } | 642 } |
| 607 | 643 |
| 608 #@ | 644 #@ |
| 609 #@ UploadSysrootMips <revision> | 645 #@ UploadSysrootMips <revision> |
| 610 #@ | 646 #@ |
| 611 UploadSysrootMips() { | 647 UploadSysrootMips() { |
| 648 if [ "$HAS_ARCH_MIPS" = "0" ]; then |
| 649 return |
| 650 fi |
| 612 UploadSysroot "$@" | 651 UploadSysroot "$@" |
| 613 } | 652 } |
| 614 | 653 |
| 615 #@ | 654 #@ |
| 616 #@ UploadSysrootAll <revision> | 655 #@ UploadSysrootAll <revision> |
| 617 #@ | 656 #@ |
| 618 #@ Upload sysroot image for all architectures | 657 #@ Upload sysroot image for all architectures |
| 619 UploadSysrootAll() { | 658 UploadSysrootAll() { |
| 620 RunCommand UploadSysrootAmd64 "$@" | 659 RunCommand UploadSysrootAmd64 "$@" |
| 621 RunCommand UploadSysrootI386 "$@" | 660 RunCommand UploadSysrootI386 "$@" |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 701 # sort -o does an in-place sort of this file | 740 # sort -o does an in-place sort of this file |
| 702 sort "$output_file" -o "$output_file" | 741 sort "$output_file" -o "$output_file" |
| 703 } | 742 } |
| 704 | 743 |
| 705 #@ | 744 #@ |
| 706 #@ UpdatePackageListsAmd64 | 745 #@ UpdatePackageListsAmd64 |
| 707 #@ | 746 #@ |
| 708 #@ Regenerate the package lists such that they contain an up-to-date | 747 #@ Regenerate the package lists such that they contain an up-to-date |
| 709 #@ list of URLs within the Debian archive. (For amd64) | 748 #@ list of URLs within the Debian archive. (For amd64) |
| 710 UpdatePackageListsAmd64() { | 749 UpdatePackageListsAmd64() { |
| 750 if [ "$HAS_ARCH_AMD64" = "0" ]; then |
| 751 return |
| 752 fi |
| 711 GeneratePackageListAmd64 "$DEBIAN_DEP_LIST_AMD64" | 753 GeneratePackageListAmd64 "$DEBIAN_DEP_LIST_AMD64" |
| 712 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_AMD64" | 754 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_AMD64" |
| 713 } | 755 } |
| 714 | 756 |
| 715 #@ | 757 #@ |
| 716 #@ UpdatePackageListsI386 | 758 #@ UpdatePackageListsI386 |
| 717 #@ | 759 #@ |
| 718 #@ Regenerate the package lists such that they contain an up-to-date | 760 #@ Regenerate the package lists such that they contain an up-to-date |
| 719 #@ list of URLs within the Debian archive. (For i386) | 761 #@ list of URLs within the Debian archive. (For i386) |
| 720 UpdatePackageListsI386() { | 762 UpdatePackageListsI386() { |
| 763 if [ "$HAS_ARCH_I386" = "0" ]; then |
| 764 return |
| 765 fi |
| 721 GeneratePackageListI386 "$DEBIAN_DEP_LIST_I386" | 766 GeneratePackageListI386 "$DEBIAN_DEP_LIST_I386" |
| 722 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_I386" | 767 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_I386" |
| 723 } | 768 } |
| 724 | 769 |
| 725 #@ | 770 #@ |
| 726 #@ UpdatePackageListsARM | 771 #@ UpdatePackageListsARM |
| 727 #@ | 772 #@ |
| 728 #@ Regenerate the package lists such that they contain an up-to-date | 773 #@ Regenerate the package lists such that they contain an up-to-date |
| 729 #@ list of URLs within the Debian archive. (For arm) | 774 #@ list of URLs within the Debian archive. (For arm) |
| 730 UpdatePackageListsARM() { | 775 UpdatePackageListsARM() { |
| 776 if [ "$HAS_ARCH_ARM" = "0" ]; then |
| 777 return |
| 778 fi |
| 731 GeneratePackageListARM "$DEBIAN_DEP_LIST_ARM" | 779 GeneratePackageListARM "$DEBIAN_DEP_LIST_ARM" |
| 732 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_ARM" | 780 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_ARM" |
| 733 } | 781 } |
| 734 | 782 |
| 735 #@ | 783 #@ |
| 736 #@ UpdatePackageListsARM64 | 784 #@ UpdatePackageListsARM64 |
| 737 #@ | 785 #@ |
| 738 #@ Regenerate the package lists such that they contain an up-to-date | 786 #@ Regenerate the package lists such that they contain an up-to-date |
| 739 #@ list of URLs within the Debian archive. (For arm) | 787 #@ list of URLs within the Debian archive. (For arm) |
| 740 function UpdatePackageListsARM64() { | 788 UpdatePackageListsARM64() { |
| 789 if [ "$HAS_ARCH_ARM64" = "0" ]; then |
| 790 return |
| 791 fi |
| 741 GeneratePackageListARM64 "$DEBIAN_DEP_LIST_ARM64" | 792 GeneratePackageListARM64 "$DEBIAN_DEP_LIST_ARM64" |
| 742 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_ARM64" | 793 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_ARM64" |
| 743 } | 794 } |
| 744 | 795 |
| 745 #@ | 796 #@ |
| 746 #@ UpdatePackageListsMips | 797 #@ UpdatePackageListsMips |
| 747 #@ | 798 #@ |
| 748 #@ Regenerate the package lists such that they contain an up-to-date | 799 #@ Regenerate the package lists such that they contain an up-to-date |
| 749 #@ list of URLs within the Debian archive. (For arm) | 800 #@ list of URLs within the Debian archive. (For arm) |
| 750 UpdatePackageListsMips() { | 801 UpdatePackageListsMips() { |
| 802 if [ "$HAS_ARCH_MIPS" = "0" ]; then |
| 803 return |
| 804 fi |
| 751 GeneratePackageListMips "$DEBIAN_DEP_LIST_MIPS" | 805 GeneratePackageListMips "$DEBIAN_DEP_LIST_MIPS" |
| 752 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_MIPS" | 806 StripChecksumsFromPackageList "$DEBIAN_DEP_LIST_MIPS" |
| 753 } | 807 } |
| 754 | 808 |
| 755 #@ | 809 #@ |
| 756 #@ UpdatePackageListsAll | 810 #@ UpdatePackageListsAll |
| 757 #@ | 811 #@ |
| 758 #@ Regenerate the package lists for all architectures. | 812 #@ Regenerate the package lists for all architectures. |
| 759 UpdatePackageListsAll() { | 813 UpdatePackageListsAll() { |
| 760 RunCommand UpdatePackageListsAmd64 | 814 RunCommand UpdatePackageListsAmd64 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 781 echo " $0 help" | 835 echo " $0 help" |
| 782 exit 1 | 836 exit 1 |
| 783 else | 837 else |
| 784 ChangeDirectory | 838 ChangeDirectory |
| 785 if echo $1 | grep -qs "All$"; then | 839 if echo $1 | grep -qs "All$"; then |
| 786 "$@" | 840 "$@" |
| 787 else | 841 else |
| 788 RunCommand "$@" | 842 RunCommand "$@" |
| 789 fi | 843 fi |
| 790 fi | 844 fi |
| OLD | NEW |