GeekFactory

int128.hatenablog.com

binutils-2.18 configure options

configureオプションについてまとめたドキュメントがなかったので調べてみました。各ディレクトリでconfigure --helpを実行し、オプションを集約してみました。
各ディレクトリで共通のオプションです。autoconfで一般的に生成されるものは省いてます。

--disable-dependency-tracking  speeds up one-time build
--enable-dependency-tracking   do not reject slow dependency extractors
--enable-shared[=PKGS]
build shared libraries [default=yes]
--enable-static[=PKGS]
build static libraries [default=yes]
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock  avoid locking (might break parallel builds)
--disable-nls           do not use Native Language Support

bfd

--enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)
--enable-targets        alternative target configurations
--enable-commonbfdlib   build shared BFD/opcodes/libiberty library
--enable-secureplt      Default to creating read-only plt entries
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
--enable-install-libbfd controls installation of libbfd and related headers

--with-mmap             try using mmap for BFD input files if available
--with-separate-debug-dir=DIR
Look for global separate debug info in DIR
[default=LIBDIR/debug]
--with-pkgversion=PKG   Use PKG in the version string in place of "GNU
                          Binutils"
--with-bugurl=URL       Direct users to URL to report a bug

binutils

--enable-targets        alternative target configurations
--enable-commonbfdlib   build shared BFD/opcodes/libiberty library
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
--disable-rpath         do not hardcode runtime library paths

--with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
--without-libiconv-prefix     don't search for libiconv in includedir and libdir

gas

--enable-targets        alternative target configurations besides the primary
--enable-commonbfdlib   build shared BFD/opcodes/libiberty library
--enable-checking       enable run-time checks
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer

gprof

--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings

intl

--disable-rpath         do not hardcode runtime library paths
--enable-maintainer-mode enable rules only needed by maintainers

--with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
--without-libiconv-prefix     don't search for libiconv in includedir and libdir
  --with-included-gettext use the GNU gettext library included here
  --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
  --without-libintl-prefix     don't search for libintl in includedir and libdir

ld

--enable-targets        alternative target configurations
--enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer

--with-lib-path=dir1:dir2...  set default LIB_PATH
--with-sysroot=DIR Search for usr/lib et al within DIR.

libiberty

--enable-maintainer-mode
enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
--enable-multilib       build many library versions (default)
--enable-install-libiberty       Install headers for end users

--with-target-subdir=SUBDIR      Configuring in a subdirectory for target
--with-build-subdir=SUBDIR       Configuring in a subdirectory for build
--with-cross-host=HOST           Configuring with a cross compiler
--with-newlib                    Configuring with newlib

opcodes

--enable-targets        alternative target configurations
--enable-commonbfdlib   build shared BFD/opcodes/libiberty library
--enable-werror         treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--enable-maintainer-mode  enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
--enable-install-libbfd controls installation of libbfd and related headers
--disable-nls           do not use Native Language Support
--enable-cgen-maint=dir    build cgen generated files