| OLD | NEW |
| 1 #!/bin/bash | 1 #!/bin/bash |
| 2 # | 2 # |
| 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 # TODO(mmoss) This currently only works with official builds, since non-official | 7 # TODO(mmoss) This currently only works with official builds, since non-official |
| 8 # builds don't add the "${BUILDDIR}/installer/" files needed for packaging. | 8 # builds don't add the "${BUILDDIR}/installer/" files needed for packaging. |
| 9 | 9 |
| 10 set -e | 10 set -e |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 } | 27 } |
| 28 | 28 |
| 29 # Setup the installation directory hierachy in the package staging area. | 29 # Setup the installation directory hierachy in the package staging area. |
| 30 prep_staging_rpm() { | 30 prep_staging_rpm() { |
| 31 prep_staging_common | 31 prep_staging_common |
| 32 install -m 755 -d "${STAGEDIR}/etc/cron.daily" | 32 install -m 755 -d "${STAGEDIR}/etc/cron.daily" |
| 33 } | 33 } |
| 34 | 34 |
| 35 # Put the package contents in the staging area. | 35 # Put the package contents in the staging area. |
| 36 stage_install_rpm() { | 36 stage_install_rpm() { |
| 37 # Trunk packages need to install to a custom path and with custom filenames | 37 # TODO(phajdan.jr): Deduplicate this and debian/build.sh . |
| 38 # (e.g. not /usr/bin/google-chrome) so they don't conflict with release | 38 # For now duplication is going to help us avoid merge conflicts |
| 39 # channel packages. | 39 # as changes are frequently merged to older branches related to SxS effort. |
| 40 if [ "$CHANNEL" = "trunk" ] || [ "$CHANNEL" = "asan" ]; then | 40 if [ "$CHANNEL" != "stable" ]; then |
| 41 local PACKAGE="${PACKAGE}-${CHANNEL}" | |
| 42 local INSTALLDIR="${INSTALLDIR}-${CHANNEL}" | |
| 43 # This would ideally be compiled into the app, but that's a bit too | 41 # This would ideally be compiled into the app, but that's a bit too |
| 44 # intrusive of a change for these limited use channels, so we'll just hack | 42 # intrusive of a change for these limited use channels, so we'll just hack |
| 45 # it into the wrapper script. The user can still override since it seems to | 43 # it into the wrapper script. The user can still override since it seems to |
| 46 # work to specify --user-data-dir multiple times on the command line, with | 44 # work to specify --user-data-dir multiple times on the command line, with |
| 47 # the last occurrence winning. | 45 # the last occurrence winning. |
| 48 local DEFAULT_FLAGS="--user-data-dir=\"\${HOME}/.config/${PACKAGE}\"" | 46 local SXS_USER_DATA_DIR="\${XDG_CONFIG_HOME:-\${HOME}/.config}/${PACKAGE}-${
CHANNEL}" |
| 47 local DEFAULT_FLAGS="--user-data-dir=\"${SXS_USER_DATA_DIR}\"" |
| 48 |
| 49 # Avoid file collisions between channels. |
| 50 # TODO(phajdan.jr): Do that for all packages for SxS, |
| 51 # http://crbug.com/38598 . |
| 52 # We can't do this for now for all packages because of |
| 53 # http://crbug.com/295103 , and ultimately http://crbug.com/22703 . |
| 54 # Also see https://groups.google.com/a/chromium.org/d/msg/chromium-dev/DBEqO
ORaRiw/pE0bNI6h0kcJ . |
| 55 if [ "$CHANNEL" = "trunk" ] || [ "$CHANNEL" = "asan" ]; then |
| 56 local PACKAGE="${PACKAGE}-${CHANNEL}" |
| 57 local INSTALLDIR="${INSTALLDIR}-${CHANNEL}" |
| 58 fi |
| 59 |
| 60 # Make it possible to distinguish between menu entries |
| 61 # for different channels. |
| 49 local MENUNAME="${MENUNAME} (${CHANNEL})" | 62 local MENUNAME="${MENUNAME} (${CHANNEL})" |
| 50 fi | 63 fi |
| 51 prep_staging_rpm | 64 prep_staging_rpm |
| 52 stage_install_common | 65 stage_install_common |
| 53 echo "Staging RPM install files in '${STAGEDIR}'..." | 66 echo "Staging RPM install files in '${STAGEDIR}'..." |
| 54 process_template "${BUILDDIR}/installer/common/rpmrepo.cron" \ | 67 process_template "${BUILDDIR}/installer/common/rpmrepo.cron" \ |
| 55 "${STAGEDIR}/etc/cron.daily/${PACKAGE}" | 68 "${STAGEDIR}/etc/cron.daily/${PACKAGE}" |
| 56 chmod 755 "${STAGEDIR}/etc/cron.daily/${PACKAGE}" | 69 chmod 755 "${STAGEDIR}/etc/cron.daily/${PACKAGE}" |
| 57 } | 70 } |
| 58 | 71 |
| (...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 if [ "$CHROMIUM_BUILD" = "_google_chrome" ]; then | 282 if [ "$CHROMIUM_BUILD" = "_google_chrome" ]; then |
| 270 source "${BUILDDIR}/installer/common/google-chrome.info" | 283 source "${BUILDDIR}/installer/common/google-chrome.info" |
| 271 else | 284 else |
| 272 source "${BUILDDIR}/installer/common/chromium-browser.info" | 285 source "${BUILDDIR}/installer/common/chromium-browser.info" |
| 273 fi | 286 fi |
| 274 eval $(sed -e "s/^\([^=]\+\)=\(.*\)$/export \1='\2'/" \ | 287 eval $(sed -e "s/^\([^=]\+\)=\(.*\)$/export \1='\2'/" \ |
| 275 "${BUILDDIR}/installer/theme/BRANDING") | 288 "${BUILDDIR}/installer/theme/BRANDING") |
| 276 | 289 |
| 277 REPOCONFIG="http://dl.google.com/linux/${PACKAGE#google-}/rpm/stable" | 290 REPOCONFIG="http://dl.google.com/linux/${PACKAGE#google-}/rpm/stable" |
| 278 verify_channel | 291 verify_channel |
| 292 export USR_BIN_SYMLINK_NAME="${PACKAGE}-${CHANNEL}" |
| 279 | 293 |
| 280 # Make everything happen in the OUTPUTDIR. | 294 # Make everything happen in the OUTPUTDIR. |
| 281 cd "${OUTPUTDIR}" | 295 cd "${OUTPUTDIR}" |
| 282 | 296 |
| 283 case "$TARGETARCH" in | 297 case "$TARGETARCH" in |
| 284 ia32 ) | 298 ia32 ) |
| 285 export ARCHITECTURE="i386" | 299 export ARCHITECTURE="i386" |
| 286 stage_install_rpm | 300 stage_install_rpm |
| 287 ;; | 301 ;; |
| 288 x64 ) | 302 x64 ) |
| 289 export ARCHITECTURE="x86_64" | 303 export ARCHITECTURE="x86_64" |
| 290 stage_install_rpm | 304 stage_install_rpm |
| 291 ;; | 305 ;; |
| 292 * ) | 306 * ) |
| 293 echo | 307 echo |
| 294 echo "ERROR: Don't know how to build RPMs for '$TARGETARCH'." | 308 echo "ERROR: Don't know how to build RPMs for '$TARGETARCH'." |
| 295 echo | 309 echo |
| 296 exit 1 | 310 exit 1 |
| 297 ;; | 311 ;; |
| 298 esac | 312 esac |
| 299 | 313 |
| 300 do_package | 314 do_package |
| OLD | NEW |