linux/fs/Kconfig.binfmt
<<
>>
Prefs
   1config BINFMT_ELF
   2        bool "Kernel support for ELF binaries"
   3        depends on MMU && (BROKEN || !FRV)
   4        default y
   5        ---help---
   6          ELF (Executable and Linkable Format) is a format for libraries and
   7          executables used across different architectures and operating
   8          systems. Saying Y here will enable your kernel to run ELF binaries
   9          and enlarge it by about 13 KB. ELF support under Linux has now all
  10          but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
  11          because it is portable (this does *not* mean that you will be able
  12          to run executables from different architectures or operating systems
  13          however) and makes building run-time libraries very easy. Many new
  14          executables are distributed solely in ELF format. You definitely
  15          want to say Y here.
  16
  17          Information about ELF is contained in the ELF HOWTO available from
  18          <http://www.tldp.org/docs.html#howto>.
  19
  20          If you find that after upgrading from Linux kernel 1.2 and saying Y
  21          here, you still can't run any ELF binaries (they just crash), then
  22          you'll have to install the newest ELF runtime libraries, including
  23          ld.so (check the file <file:Documentation/Changes> for location and
  24          latest version).
  25
  26config COMPAT_BINFMT_ELF
  27        bool
  28        depends on COMPAT && BINFMT_ELF
  29
  30config ARCH_BINFMT_ELF_RANDOMIZE_PIE
  31        bool
  32
  33config BINFMT_ELF_FDPIC
  34        bool "Kernel support for FDPIC ELF binaries"
  35        default y
  36        depends on (FRV || BLACKFIN || (SUPERH32 && !MMU) || C6X)
  37        help
  38          ELF FDPIC binaries are based on ELF, but allow the individual load
  39          segments of a binary to be located in memory independently of each
  40          other. This makes this format ideal for use in environments where no
  41          MMU is available as it still permits text segments to be shared,
  42          even if data segments are not.
  43
  44          It is also possible to run FDPIC ELF binaries on MMU linux also.
  45
  46config CORE_DUMP_DEFAULT_ELF_HEADERS
  47        bool "Write ELF core dumps with partial segments"
  48        default y
  49        depends on BINFMT_ELF && ELF_CORE
  50        help
  51          ELF core dump files describe each memory mapping of the crashed
  52          process, and can contain or omit the memory contents of each one.
  53          The contents of an unmodified text mapping are omitted by default.
  54
  55          For an unmodified text mapping of an ELF object, including just
  56          the first page of the file in a core dump makes it possible to
  57          identify the build ID bits in the file, without paying the i/o
  58          cost and disk space to dump all the text.  However, versions of
  59          GDB before 6.7 are confused by ELF core dump files in this format.
  60
  61          The core dump behavior can be controlled per process using
  62          the /proc/PID/coredump_filter pseudo-file; this setting is
  63          inherited.  See Documentation/filesystems/proc.txt for details.
  64
  65          This config option changes the default setting of coredump_filter
  66          seen at boot time.  If unsure, say Y.
  67
  68config BINFMT_SCRIPT
  69        tristate "Kernel support for scripts starting with #!"
  70        default y
  71        help
  72          Say Y here if you want to execute interpreted scripts starting with
  73          #! followed by the path to an interpreter.
  74
  75          You can build this support as a module; however, until that module
  76          gets loaded, you cannot run scripts.  Thus, if you want to load this
  77          module from an initramfs, the portion of the initramfs before loading
  78          this module must consist of compiled binaries only.
  79
  80          Most systems will not boot if you say M or N here.  If unsure, say Y.
  81
  82config BINFMT_FLAT
  83        bool "Kernel support for flat binaries"
  84        depends on !MMU && (!FRV || BROKEN)
  85        help
  86          Support uClinux FLAT format binaries.
  87
  88config BINFMT_ZFLAT
  89        bool "Enable ZFLAT support"
  90        depends on BINFMT_FLAT
  91        select ZLIB_INFLATE
  92        help
  93          Support FLAT format compressed binaries
  94
  95config BINFMT_SHARED_FLAT
  96        bool "Enable shared FLAT support"
  97        depends on BINFMT_FLAT
  98        help
  99          Support FLAT shared libraries
 100
 101config HAVE_AOUT
 102       def_bool n
 103
 104config BINFMT_AOUT
 105        tristate "Kernel support for a.out and ECOFF binaries"
 106        depends on HAVE_AOUT
 107        ---help---
 108          A.out (Assembler.OUTput) is a set of formats for libraries and
 109          executables used in the earliest versions of UNIX.  Linux used
 110          the a.out formats QMAGIC and ZMAGIC until they were replaced
 111          with the ELF format.
 112
 113          The conversion to ELF started in 1995.  This option is primarily
 114          provided for historical interest and for the benefit of those
 115          who need to run binaries from that era.
 116
 117          Most people should answer N here.  If you think you may have
 118          occasional use for this format, enable module support above
 119          and answer M here to compile this support as a module called
 120          binfmt_aout.
 121
 122          If any crucial components of your system (such as /sbin/init
 123          or /lib/ld.so) are still in a.out format, you will have to
 124          say Y here.
 125
 126config OSF4_COMPAT
 127        bool "OSF/1 v4 readv/writev compatibility"
 128        depends on ALPHA && BINFMT_AOUT
 129        help
 130          Say Y if you are using OSF/1 binaries (like Netscape and Acrobat)
 131          with v4 shared libraries freely available from Compaq. If you're
 132          going to use shared libraries from Tru64 version 5.0 or later, say N.
 133
 134config BINFMT_EM86
 135        tristate "Kernel support for Linux/Intel ELF binaries"
 136        depends on ALPHA
 137        ---help---
 138          Say Y here if you want to be able to execute Linux/Intel ELF
 139          binaries just like native Alpha binaries on your Alpha machine. For
 140          this to work, you need to have the emulator /usr/bin/em86 in place.
 141
 142          You can get the same functionality by saying N here and saying Y to
 143          "Kernel support for MISC binaries".
 144
 145          You may answer M to compile the emulation support as a module and
 146          later load the module when you want to use a Linux/Intel binary. The
 147          module will be called binfmt_em86. If unsure, say Y.
 148
 149config BINFMT_SOM
 150        tristate "Kernel support for SOM binaries"
 151        depends on PARISC && HPUX
 152        help
 153          SOM is a binary executable format inherited from HP/UX.  Say
 154          Y here to be able to load and execute SOM binaries directly.
 155
 156config BINFMT_MISC
 157        tristate "Kernel support for MISC binaries"
 158        ---help---
 159          If you say Y here, it will be possible to plug wrapper-driven binary
 160          formats into the kernel. You will like this especially when you use
 161          programs that need an interpreter to run like Java, Python, .NET or
 162          Emacs-Lisp. It's also useful if you often run DOS executables under
 163          the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
 164          <http://www.tldp.org/docs.html#howto>). Once you have
 165          registered such a binary class with the kernel, you can start one of
 166          those programs simply by typing in its name at a shell prompt; Linux
 167          will automatically feed it to the correct interpreter.
 168
 169          You can do other nice things, too. Read the file
 170          <file:Documentation/binfmt_misc.txt> to learn how to use this
 171          feature, <file:Documentation/java.txt> for information about how
 172          to include Java support. and <file:Documentation/mono.txt> for
 173          information about how to include Mono-based .NET support.
 174
 175          To use binfmt_misc, you will need to mount it:
 176                mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
 177
 178          You may say M here for module support and later load the module when
 179          you have use for it; the module is called binfmt_misc. If you
 180          don't know what to answer at this point, say Y.
 181
 182config COREDUMP
 183        bool "Enable core dump support" if EXPERT
 184        default y
 185        help
 186          This option enables support for performing core dumps. You almost
 187          certainly want to say Y here. Not necessary on systems that never
 188          need debugging or only ever run flawless code.
 189