Re: [PATCH] merge_config.sh: Add the ability to perform make with an ARCH

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Dan,


2015-07-24 5:51 GMT+09:00 Dan Murphy <dmurphy@xxxxxx>:
> The script does not allow building for different architectures.
> It may assume that the developer has set the ARCH as a global
> variable.
>
> Add a switch argument to pass in the desired architecture.
> Then verify that that architecture is supported in the arch
> directory.
>
> If not exit if it is supported then set it.
>
> Signed-off-by: Dan Murphy <dmurphy@xxxxxx>
> ---
>  scripts/kconfig/merge_config.sh | 29 +++++++++++++++++++++++++++--
>  1 file changed, 27 insertions(+), 2 deletions(-)
>
> diff --git a/scripts/kconfig/merge_config.sh b/scripts/kconfig/merge_config.sh
> index ec8e203..bdbff4b 100755
> --- a/scripts/kconfig/merge_config.sh
> +++ b/scripts/kconfig/merge_config.sh
> @@ -19,7 +19,16 @@
>  #  but WITHOUT ANY WARRANTY; without even the implied warranty of
>  #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>  #  See the GNU General Public License for more details.
> -
> +verify_arch() {
> +       cd arch
> +       for d in * ; do
> +               if [ "$d" = "$_TEST_ARCH" ]; then
> +                       BUILD_ARCH="ARCH="$d
> +                       break
> +               fi
> +       done
> +       cd ..
> +}
>  clean_up() {
>         rm -f $TMP_FILE
>         exit
> @@ -33,6 +42,7 @@ usage() {
>         echo "  -n    use allnoconfig instead of alldefconfig"
>         echo "  -r    list redundant entries when merging fragments"
>         echo "  -O    dir to put generated output files"
> +       echo "  -A    architecture to support for make"
>  }
>
>  RUNMAKE=true
> @@ -71,6 +81,21 @@ while true; do
>                 shift 2
>                 continue
>                 ;;
> +       "-A")
> +               if [ "$2" != "" ]; then
> +                       _TEST_ARCH=$2
> +                       verify_arch
> +                       if [ "$BUILD_ARCH" = "" ]; then
> +                               echo "ARCH $_TEST_ARCH is not valid" 1>&2
> +                               exit 1
> +                       fi
> +               else
> +                       echo "ARCH $_TEST_ARCH is not valid" 1>&2
> +                       exit 1
> +               fi
> +               shift 2
> +               continue
> +               ;;
>         *)
>                 break
>                 ;;
> @@ -139,7 +164,7 @@ fi
>  # Use the merged file as the starting point for:
>  # alldefconfig: Fills in any missing symbols with Kconfig default
>  # allnoconfig: Fills in any missing symbols with # CONFIG_* is not set
> -make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET
> +make $BUILD_ARCH KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET
>


Let me clarify what you want to achieve by this patch.


You want to invoke merge_config.sh directly and to do

scripts/kconfig/merge_config.sh -A <target_arch>  ...

as a shorthand for

ARCH=<target_arch> scripts/kconfig/merge_config.sh  ...


Correct?






-- 
Best Regards
Masahiro Yamada
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux