[OE-core] [PATCH 13/14] icecc-toolchain: Add SDK icecream setup

Martin Jansa martin.jansa at gmail.com
Fri Feb 16 23:43:59 UTC 2018


Is the LIC_FILES_CHKSUM correct? Doesn't match here:


nativesdk-icecc-toolchain/0.1-r0/icecc-env.sh;beginline=2;en
dline=20;md5=aafdb7bc2aa7ac5d039fda0c8733983c
nativesdk-icecc-toolchain: The new md5 checksum is
dd6b68c1efed8a9fb04e409b3b287d47
nativesdk-icecc-toolchain: Here is the selected license text:
vvvvvvvvvvvvvvvvvvvvvvvvvvvv beginline=2 vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
# Copyright (c) 2018 Joshua Watt, Garmin International,Inc.
#
# Permission is hereby granted, free of charge, to any person obtaining a
copy
# of this software and associated documentation files (the "Software"), to
deal
# in the Software without restriction, including without limitation the
rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE
# SOFTWARE.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ endline=20 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


On Tue, Feb 6, 2018 at 11:01 PM, Joshua Watt <jpewhacker at gmail.com> wrote:

> IceCream can now be optionally included in the generated SDK by
> including nativesdk-icecc-toolchain to TOOLCHAIN_HOST_TASK. When the SDK
> is installed, it will check if icecc exists, and if so will generate the
> toolchain environment.
>
> Signed-off-by: Joshua Watt <JPEWhacker at gmail.com>
> ---
>  .../icecc-toolchain/icecc-toolchain/icecc-env.sh   | 37
> +++++++++++++++++++
>  .../icecc-toolchain/icecc-toolchain/icecc-setup.sh | 43
> ++++++++++++++++++++++
>  .../nativesdk-icecc-toolchain_0.1.bb               | 38
> +++++++++++++++++++
>  3 files changed, 118 insertions(+)
>  create mode 100644 meta/recipes-devtools/icecc-toolchain/icecc-toolchain/
> icecc-env.sh
>  create mode 100644 meta/recipes-devtools/icecc-toolchain/icecc-toolchain/
> icecc-setup.sh
>  create mode 100644 meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-
> toolchain_0.1.bb
>
> diff --git a/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-env.sh
> b/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-env.sh
> new file mode 100644
> index 00000000000..4c34edbbc5d
> --- /dev/null
> +++ b/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-env.sh
> @@ -0,0 +1,37 @@
> +#! /bin/sh
> +# Copyright 2018 Garmin Ltd. or its subsidiaries
> +#
> +# Permission is hereby granted, free of charge, to any person obtaining a
> copy
> +# of this software and associated documentation files (the "Software"),
> to deal
> +# in the Software without restriction, including without limitation the
> rights
> +# to use, copy, modify, merge, publish, distribute, sublicense, and/or
> sell
> +# copies of the Software, and to permit persons to whom the Software is
> +# furnished to do so, subject to the following conditions:
> +#
> +# The above copyright notice and this permission notice shall be included
> in
> +# all copies or substantial portions of the Software.
> +#
> +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
> OR
> +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> THE
> +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> FROM,
> +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
> IN THE
> +# SOFTWARE.
> +#
> +
> +if [ -z "$ICECC_PATH" ]; then
> +    ICECC_PATH=$(which icecc 2> /dev/null)
> +fi
> +
> +if [ -n "$ICECC_PATH" ]; then
> +    export ICECC_PATH
> +    export ICECC_VERSION="$OECORE_NATIVE_SYSROOT/usr/share/icecream/@
> TOOLCHAIN_ENV@"
> +    export ICECC="$(which ${CROSS_COMPILE}gcc)"
> +    export ICECXX="$(which ${CROSS_COMPILE}g++)"
> +    export ICEAS="$(which ${CROSS_COMPILE}as)"
> +    export PATH="$OECORE_NATIVE_SYSROOT/usr/share/icecream/bin:$PATH"
> +else
> +    echo "Icecc not found. Disabling distributed compiling"
> +fi
> +
> diff --git a/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
> b/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
> new file mode 100644
> index 00000000000..a433e55b029
> --- /dev/null
> +++ b/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
> @@ -0,0 +1,43 @@
> +#! /bin/sh
> +# Copyright 2018 Garmin Ltd. or its subsidiaries
> +#
> +# Permission is hereby granted, free of charge, to any person obtaining a
> copy
> +# of this software and associated documentation files (the "Software"),
> to deal
> +# in the Software without restriction, including without limitation the
> rights
> +# to use, copy, modify, merge, publish, distribute, sublicense, and/or
> sell
> +# copies of the Software, and to permit persons to whom the Software is
> +# furnished to do so, subject to the following conditions:
> +#
> +# The above copyright notice and this permission notice shall be included
> in
> +# all copies or substantial portions of the Software.
> +#
> +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
> OR
> +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> THE
> +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> FROM,
> +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
> IN THE
> +# SOFTWARE.
> +#
> +
> +# Setup environment
> +for env_setup_script in `ls $1/environment-setup-*`; do
> +       . $env_setup_script
> +done
> +
> +# ICECC_PATH will have been found icecc-env.sh
> +if [ -z "$ICECC_PATH" ]; then
> +    exit 0
> +fi
> +
> +echo "Setting up IceCream distributed compiling..."
> +
> +# Create the environment
> +mkdir -p "`dirname $ICECC_VERSION`"
> +icecc-create-env $ICECC $ICECXX $ICEAS $ICECC_VERSION || exit $?
> +
> +# Create symbolic links
> +d="$OECORE_NATIVE_SYSROOT/usr/share/icecream/bin"
> +mkdir -p "$d"
> +ln -s "$ICECC_PATH" "$d/${CROSS_COMPILE}gcc"
> +ln -s "$ICECC_PATH" "$d/${CROSS_COMPILE}g++"
> diff --git a/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-
> toolchain_0.1.bb b/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-
> toolchain_0.1.bb
> new file mode 100644
> index 00000000000..28b2924ebfb
> --- /dev/null
> +++ b/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-
> toolchain_0.1.bb
> @@ -0,0 +1,38 @@
> +# Copyright (C) 2018 Joshua Watt <JPEWhacker at gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +DESCRIPTION = "Generates IceCream toolchains for SDKs"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://${WORKDIR}/icecc-env.
> sh;beginline=2;endline=20;md5=aafdb7bc2aa7ac5d039fda0c8733983c"
> +
> +INHIBIT_DEFAULT_DEPS = "1"
> +
> +SRC_URI = "\
> +    file://icecc-env.sh \
> +    file://icecc-setup.sh \
> +    "
> +
> +inherit nativesdk
> +
> +ENV_NAME="${DISTRO}-${TCLIBC}-${SDK_ARCH}-${TUNE_PKGARCH}-$
> {DISTRO_VERSION}.tar.gz"
> +
> +do_compile() {
> +}
> +
> +do_install() {
> +    install -d ${D}${SDKPATHNATIVE}${datadir}/icecream/bin
> +
> +    install -d ${D}${SDKPATHNATIVE}/environment-setup.d/
> +    install -m 0644 ${WORKDIR}/icecc-env.sh ${D}${SDKPATHNATIVE}/
> environment-setup.d/
> +    sed -i ${D}${SDKPATHNATIVE}/environment-setup.d/icecc-env.sh \
> +        -e "s, at TOOLCHAIN_ENV@,${ENV_NAME},g"
> +
> +    install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
> +    install -m 0755 ${WORKDIR}/icecc-setup.sh ${D}${SDKPATHNATIVE}/post-
> relocate-setup.d/
> +    sed -i ${D}${SDKPATHNATIVE}/post-relocate-setup.d/icecc-setup.sh \
> +        -e "s, at TOOLCHAIN_ENV@,${ENV_NAME},g"
> +}
> +
> +PACKAGES = "${PN}"
> +FILES_${PN} = "${SDKPATHNATIVE}"
> +RDEPENDS_${PN} += "nativesdk-icecc-create-env"
> +
> --
> 2.14.3
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180217/9ffc5a34/attachment-0002.html>


More information about the Openembedded-core mailing list