summaryrefslogtreecommitdiffstats
path: root/meta-agl-bsp/virtualization-layer/recipes-extended
diff options
context:
space:
mode:
authorJan-Simon Möller <jsmoeller@linuxfoundation.org>2020-03-18 19:37:06 +0100
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-03-18 21:34:57 +0000
commit2183bcb597c78ed0ed7b21aef0c5d19e858535ab (patch)
treed01baf2755f251ac6655df92e1ac3197bd184673 /meta-agl-bsp/virtualization-layer/recipes-extended
parent5c4d183e5ff2228b8daacac090e1176bb198d845 (diff)
Fix build issue in bluez5 bbappend file
The commit b1c5541c2 introduced a 'mkdir -p ${systemd_system_unitdir}' which should be prefixed with ${D}. It produces a build error (permission denied on do_install). Fix it. Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Change-Id: Ife8b374379937e87cf3c045f105c3eb121f0941d
Diffstat (limited to 'meta-agl-bsp/virtualization-layer/recipes-extended')
0 files changed, 0 insertions, 0 deletions
#f8f8f2 } /* Name.Label */ .highlight .nn { color: #f8f8f2 } /* Name.Namespace */ .highlight .nx { color: #a6e22e } /* Name.Other */ .highlight .py { color: #f8f8f2 } /* Name.Property */ .highlight .nt { color: #f92672 } /* Name.Tag */ .highlight .nv { color: #f8f8f2 } /* Name.Variable */ .highlight .ow { color: #f92672 } /* Operator.Word */ .highlight .w { color: #f8f8f2 } /* Text.Whitespace */ .highlight .mb { color: #ae81ff } /* Literal.Number.Bin */ .highlight .mf { color: #ae81ff } /* Literal.Number.Float */ .highlight .mh { color: #ae81ff } /* Literal.Number.Hex */ .highlight .mi { color: #ae81ff } /* Literal.Number.Integer */ .highlight .mo { color: #ae81ff } /* Literal.Number.Oct */ .highlight .sa { color: #e6db74 } /* Literal.String.Affix */ .highlight .sb { color: #e6db74 } /* Literal.String.Backtick */ .highlight .sc { color: #e6db74 } /* Literal.String.Char */ .highlight .dl { color: #e6db74 } /* Literal.String.Delimiter */ .highlight .sd { color: #e6db74 } /* Literal.String.Doc */ .highlight .s2 { color: #e6db74 } /* Literal.String.Double */ .highlight .se { color: #ae81ff } /* Literal.String.Escape */ .highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */ .highlight .si { color: #e6db74 } /* Literal.String.Interpol */ .highlight .sx { color: #e6db74 } /* Literal.String.Other */ .highlight .sr { color: #e6db74 } /* Literal.String.Regex */ .highlight .s1 { color: #e6db74 } /* Literal.String.Single */ .highlight .ss { color: #e6db74 } /* Literal.String.Symbol */ .highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #a6e22e } /* Name.Function.Magic */ .highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */ .highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */ .highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */ .highlight .vm { color: #f8f8f2 } /* Name.Variable.Magic */ .highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */ } @media (prefers-color-scheme: light) { .highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
find_and_ack_eula() {
    # Handle EULA , if needed. This is a generic method to handle BSPs
    # that might (or not) come with a EULA. If a machine has a EULA, we
    # assume that its corresponding layers has conf/EULA/$MACHINE file
    # with the EULA text, which we will display to the user and request
    # for acceptance. If accepted, the variable ACCEPT_EULA_$MACHINE is
    # set to 1 in local.conf, which can later be used by the BSP.
    # If the env variable EULA_$MACHINE is set it is used by default,
    # without prompting the user.
    # FIXME: there is a potential issue if the same $MACHINE is set in more than one layer.. but we should assert that earlier
    # $1 is layer directory
    # $2 is location of EULA file relative to layer directory
    if test x"" == x"$2"; then
        EULA=$(find $1 -print | grep "conf/eula/$MACHINE" | grep -v scripts | grep -v openembedded-core || true)
    else
	EULA=$1/$2
    fi
    if [ -n "$EULA" ]; then
        # remove '-' since we are constructing a bash variable name here
        EULA_MACHINE="EULA_$(echo $MACHINE | sed 's/-//g')"
        # NOTE: indirect reference / dynamic variable
        if [ -n "${!EULA_MACHINE}" ]; then
            # the EULA_$MACHINE variable is set in the environment, so we just configure
            # ACCEPT_EULA_$MACHINE in local.conf
            EULA_ACCEPT=${!EULA_MACHINE}
        else
            # so we need to ask user if he/she accepts the EULA:
            cat <<EOF
The BSP for $MACHINE depends on packages and firmware which are covered by an 
End User License Agreement (EULA). To have the right to use these binaries
in your images, you need to read and accept the following...

The firmware package can contains several types of firmware (depending on BSP):

* bootloaders: the first stage bootloaders are proprietary for this
  board, they are included in this firmware package.
* firmware for the power management 'companion' core: on QCOM SoC some
  power management features are implemented in a companion core , called
  RPM, and not on the main CPU.
* firmware for GPU, WLAN, DSP/GPS and video codecs. These firmware are
  used by their respective linux drivers (DRM, wlan, v4l2, .. ) and are
  loaded on-demand by the main CPU onto the various cores on the SoC.
EOF

            echo
            REPLY=
            while [ -z "$REPLY" ]; do
                echo -n "Do you want to read the EULA ? (y/n) "
                read REPLY
                case "$REPLY" in
                    y|Y)
                        READ_EULA=1
                        ;;
                    n|N)
                        READ_EULA=0
                        ;;
                    *)
                        REPLY=
                        ;;
                esac
            done

            if [ "$READ_EULA" == 1 ]; then
                more -d ${EULA}
                echo
                REPLY=
                while [ -z "$REPLY" ]; do
                    echo -n "Do you accept the EULA you just read? (y/n) "
                    read REPLY
                    case "$REPLY" in
                        y|Y)
                            echo "EULA has been accepted."
                            EULA_ACCEPT=1
                            ;;
                        n|N)
                            echo "EULA has not been accepted."
                            ;;
                        *)
                            REPLY=
                            ;;
                    esac
                done
            fi
        fi
    fi
}

EULA_ACCEPT=0