Merge tag 'kbuild-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
[sfrench/cifs-2.6.git] / init / Kconfig
index ca559ccdaa3248081b7c6a6e078171f0ae9d206f..d97d205cd1eff1f5fe8dcc6d53c4db8564b31ac5 100644 (file)
@@ -21,7 +21,7 @@ config CC_VERSION_TEXT
 
          - Ensure full rebuild when the compiler is updated
            include/linux/compiler-version.h contains this option in the comment
-           line so fixdep adds include/config/cc/version/text.h into the
+           line so fixdep adds include/config/CC_VERSION_TEXT into the
            auto-generated dependency. When the compiler is updated, syncconfig
            will touch it and then every file will be rebuilt.
 
@@ -41,6 +41,18 @@ config CLANG_VERSION
        default $(cc-version) if CC_IS_CLANG
        default 0
 
+config AS_IS_GNU
+       def_bool $(success,test "$(as-name)" = GNU)
+
+config AS_IS_LLVM
+       def_bool $(success,test "$(as-name)" = LLVM)
+
+config AS_VERSION
+       int
+       # Use clang version if this is the integrated assembler
+       default CLANG_VERSION if AS_IS_LLVM
+       default $(as-version)
+
 config LD_IS_BFD
        def_bool $(success,test "$(ld-name)" = BFD)
 
@@ -2229,40 +2241,53 @@ config MODULE_SIG_HASH
        default "sha384" if MODULE_SIG_SHA384
        default "sha512" if MODULE_SIG_SHA512
 
-config MODULE_COMPRESS
-       bool "Compress modules on installation"
+choice
+       prompt "Module compression mode"
        help
+         This option allows you to choose the algorithm which will be used to
+         compress modules when 'make modules_install' is run. (or, you can
+         choose to not compress modules at all.)
 
-         Compresses kernel modules when 'make modules_install' is run; gzip or
-         xz depending on "Compression algorithm" below.
+         External modules will also be compressed in the same way during the
+         installation.
 
-         module-init-tools MAY support gzip, and kmod MAY support gzip and xz.
+         For modules inside an initrd or initramfs, it's more efficient to
+         compress the whole initrd or initramfs instead.
 
-         Out-of-tree kernel modules installed using Kbuild will also be
-         compressed upon installation.
+         This is fully compatible with signed modules.
 
-         Note: for modules inside an initrd or initramfs, it's more efficient
-         to compress the whole initrd or initramfs instead.
+         Please note that the tool used to load modules needs to support the
+         corresponding algorithm. module-init-tools MAY support gzip, and kmod
+         MAY support gzip, xz and zstd.
 
-         Note: This is fully compatible with signed modules.
+         Your build system needs to provide the appropriate compression tool
+         to compress the modules.
 
-         If in doubt, say N.
+         If in doubt, select 'None'.
 
-choice
-       prompt "Compression algorithm"
-       depends on MODULE_COMPRESS
-       default MODULE_COMPRESS_GZIP
+config MODULE_COMPRESS_NONE
+       bool "None"
        help
-         This determines which sort of compression will be used during
-         'make modules_install'.
-
-         GZIP (default) and XZ are supported.
+         Do not compress modules. The installed modules are suffixed
+         with .ko.
 
 config MODULE_COMPRESS_GZIP
        bool "GZIP"
+       help
+         Compress modules with GZIP. The installed modules are suffixed
+         with .ko.gz.
 
 config MODULE_COMPRESS_XZ
        bool "XZ"
+       help
+         Compress modules with XZ. The installed modules are suffixed
+         with .ko.xz.
+
+config MODULE_COMPRESS_ZSTD
+       bool "ZSTD"
+       help
+         Compress modules with ZSTD. The installed modules are suffixed
+         with .ko.zst.
 
 endchoice