aboutsummaryrefslogtreecommitdiff
blob: 89984a3ceada051d51f6cf08df08297dc4c795c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/bash

source common.sh

prepare_confs() {
  local arch=$1
  local flavor=$2

  for s in 1 2 3; do

    local cstage=stage${s}
    local p=$(( s - 1 ))
    [[ $p == 0 ]] && p=3
    local pstage=stage${p}
    local tarch="${arch%_hardfp}"
    local parch="arm"
    local float

    [[ "${arch}" == "${tarch}" ]] \
      && float="" \
      || float="hf"

    local profile=${flavor}
    [[ "${flavor}" == "vanilla" ]] && profile="" || profile="/hardened"

    cat stage.conf.template | \
      sed -e "s:\(^version_stamp.*$\):\1-${mydate}:" \
        -e "s:CSTAGE:${cstage}:g" \
        -e "s:PSTAGE:${pstage}:g" \
        -e "s:SARCH:${arch}:g" \
        -e "s:PARCH:${parch}:g" \
        -e "s:TARCHPROFILE:/${tarch}${profile}:g" \
        -e "s:TARCH:${tarch}:g" \
        -e "s:gentoo-linux-uclibc:unknown-linux-uclibceabi${float}:" \
        -e "s:FLAVOR:${flavor}:g" \
        -e "s:PROFILE:${profile}:g" \
        -e "s:MYCATALYST:$(pwd):g" \
        >  stage${s}-${arch}-uclibc-${flavor}.conf

    sed -i "/^portage_confdir/s:_hardfp::" \
      stage${s}-${arch}-uclibc-${flavor}.conf

  done

  sed -i "/^chost/d" stage3-${arch}-uclibc-${flavor}.conf
}


main() {
  catalyst -s current | tee -a zzz.log >snapshot.log 2>snapshot.err

#  for arch in armv7a_hardfp armv7a; do
  for arch in armv7a_hardfp; do
    for flavor in hardened vanilla; do
      prepare_confs ${arch} ${flavor}
    done
  done

# No parallelization for arm.  Its too hard on the cpu!
#  for arch in armv7a_hardfp armv7a; do
  for arch in armv7a_hardfp; do
    for flavor in hardened vanilla; do
      do_stages ${arch} ${flavor}
      [[ $? == 1 ]] && echo "FAILURE at ${arch} ${flavor} " | tee zzz.log
    done
  done
}

main $1 &