見出し画像

Appendix Samba4 ./configure --help

Samba4をソースからインストールするときの ./configure で設定可能なインストールオプション

[root@rocky9-samba43 samba-4.18.4]#
[root@rocky9-samba43 samba-4.18.4]# ./configure --help
waf [commands] [options]

Main commands (example: ./waf build -j4)
  build       : build all targets
  clean       : cleans the project
  configure   : configures the project
  ctags       : build 'tags' file using ctags
  dist        : makes a tarball for distribution
  distcheck   : test that distribution tarball builds and installs
  distclean   : removes build folders and data
  etags       : build TAGS file using etags
  install     : installs the targets on the system
  list        : lists the targets to execute
  pep8        : run pep8 validator
  pydoctor    : build python apidocs
  reconfigure : reconfigure if config scripts have changed
  step        : executes tasks in a step-by-step fashion, for debugging
  test        : Run the test suite (see test options below)
  testonly    : run tests without doing a build first
  uninstall   : removes the targets installed
  wafdocs     : build wafsamba apidocs
  wildcard_cmd: called on a unknown command

Options:
  --version
            show program's version number and exit
  -c COLORS, --color=COLORS
            whether to use colors (yes/no/auto) [default: auto]
  -j JOBS, --jobs=JOBS
            amount of parallel jobs (1)
  -k, --keep
            continue despite errors (-kk to try harder)
  -v, --verbose
            verbosity level -v -vv or -vvv [default: 0]
  --zones=ZONES
            debugging zones (task_gen, deps, tasks, etc)
  -h, --help
            show this help message and exit
  --with-libiconv=ICONV_OPEN
            additional directory to search for libiconv
  --without-gettext
            Disable use of gettext
  --enable-coverage
            enable options necessary for code coverage reporting on selftest (default=no)
  --disable-python
            do not generate python modules
  --disable-tdb-mutex-locking
            Disable the use of pthread robust mutexes
  --without-ldb-lmdb
            disable new LMDB backend for LDB
  --enable-selftest
            enable options necessary for selftest (default=no)
  --with-selftest-prefix=SELFTEST_PREFIX
            specify location of selftest directory (default=./st)
  --with-gpgme
            Build with gpgme support (default=auto). This requires gpgme devel and python packages (e.g. libgpgme11-dev, python-
            gpgme on debian/ubuntu).
  --with-static-modules=STATIC_MODULES
            Comma-separated list of names of modules to statically link in. May include !module to disable 'module'. Can be
            '!FORCED' to disable all non-required static only modules. Can be '!DEFAULT' to disable all modules defaulting to a
            static build. Can be 'ALL' to build all default shared modules static. The most specific one wins, while the order
            is ignored and --with-static-modules is evaluated before --with-shared-modules
  --with-shared-modules=SHARED_MODULES
            Comma-separated list of names of modules to build shared. May include !module to disable 'module'. Can be '!FORCED'
            to disable all non-required shared only modules. Can be '!DEFAULT' to disable all modules defaulting to a shared
            build. Can be 'ALL' to build all default static modules shared. The most specific one wins, while the order is
            ignored and --with-static-modules is evaluated before --with-shared-modules
  --with-winbind
            Build with winbind support (default=yes)
  --with-ads
            Build with ads support (default=yes)
  --with-ldap
            Build with ldap support (default=yes)
  --enable-cups
            Build with cups support (default=yes)
  --enable-iprint
            Build with iprint support (default=yes)
  --with-pam
            Build with pam support (default=yes)
  --with-quotas
            Build with quotas support (default=auto)
  --with-sendfile-support
            Build with sendfile-support support (default=auto)
  --with-utmp
            Build with utmp support (default=yes)
  --enable-avahi
            Build with avahi support (default=yes)
  --with-iconv
            Build with iconv support (default=yes)
  --with-acl-support
            Build with acl-support support (default=yes)
  --with-syslog
            Build with syslog support (default=yes)
  --with-automount
            Build with automount support (default=yes)
  --with-dmapi
            Build with dmapi support (default=auto)
  --with-fam
            Build with fam support (default=auto)
  --with-profiling-data
            Build with profiling-data support (default=no)
  --with-libarchive
            Build with libarchive support (default=yes)
  --with-cluster-support
            Build with cluster-support support (default=no)
  --with-regedit
            Build with regedit support (default=auto)
  --with-winexe
            Build with winexe support (default=auto)
  --with-fake-kaserver
            Include AFS fake-kaserver support
  --enable-glusterfs
            Build with glusterfs support (default=yes)
  --enable-cephfs
            Build with cephfs support (default=yes)
  --enable-vxfs
            enable support for VxFS (default=no)
  --enable-spotlight
            Build with spotlight support (default=auto)
  --disable-fault-handling
            disable the fault handlers
  --with-libunwind
            Use libunwind instead of the default backtrace_symbols()
                                           from libc, for example on IA-64 where it might give a better
                                           backtrace.
  --with-systemd
            Enable systemd integration
  --without-systemd
            Disable systemd integration
  --with-lttng
            Enable lttng integration
  --without-lttng
            Disable lttng integration
  --with-gpfs=GPFS_HEADERS_DIR
            Directory under which gpfs headers are installed
  --accel-aes=ACCEL_AES
            Should we use accelerated AES crypto functions. Options are intelaesni|none.
  --enable-infiniband
            Turn on infiniband support (default=no)
  --enable-pmda
            Turn on PCP pmda support (default=no)
  --enable-etcd-reclock
            Enable etcd recovery lock helper (default=no)
  --enable-pcap
            Use pcap for packet capture (default=no)
  --with-libcephfs=LIBCEPHFS_DIR
            Directory under which libcephfs is installed
  --enable-ceph-reclock
            Enable Ceph CTDB recovery lock helper (default=no)
  --with-logdir=CTDB_LOGDIR
            Path to log directory
  --with-socketpath=CTDB_SOCKPATH
            path to CTDB daemon socket
  --enable-pthreadpool
            Build with pthreadpool support (default=yes)
  --with-system-mitkrb5
            build Samba with system MIT Kerberos. You may specify list of paths where Kerberos is installed (e.g. /usr/local
            /usr/kerberos) to search krb5-config
  --with-experimental-mit-ad-dc
            Enable the experimental MIT Kerberos-backed AD DC.  Note that security patches are not issued for this configuration
  --with-system-mitkdc=WITH_SYSTEM_MITKDC
            Specify the path to the krb5kdc binary from MIT Kerberos
  --with-system-heimdalkrb5
            conflicts with --with-system-mitkrb5
  --without-ad-dc
            disable AD DC functionality (enables only Samba FS (File Server, Winbind, NMBD) and client utilities.
  --with-pie
            Build Position Independent Executables (default if supported by compiler)
  --without-pie
            Disable Position Independent Executable builds
  --with-relro
            Build with full RELocation Read-Only (RELRO)(default if supported by compiler)
  --without-relro
            Disable RELRO builds
  --with-json
            Build with JSON support (default=True). This requires the jansson development headers.
  --without-json
            Build without JSON support.
  --with-smb1-server
            Build smbd with SMB1 support (default=yes).

  Configuration options:
    -o OUT, --out=OUT
            build dir for the project
    -t TOP, --top=TOP
            src dir for the project
    --check-c-compiler=CHECK_C_COMPILER
            list of C compilers to try [gcc clang icc generic_cc]

  Build and installation options:
    -p, --progress
            -p: progress bar; -pp: ide output
    --targets=TARGETS
            task generators, e.g. "target1,target2"

  Step options:
    --files=FILES
            files to process, by regexp, e.g. "*/main.c,*/test/main.o"

  Installation and uninstallation options:
    -f, --force
            force file installation
    --distcheck-args=ARGS
            arguments to pass to distcheck

  Installation prefix:
    By default, "waf install" will put the files in "/usr/local/bin", "/usr/local/lib" etc. An installation prefix other
    than "/usr/local" can be given using "--prefix", for example "--prefix=$HOME"

    --prefix=PREFIX
            installation prefix [default: '/usr/local/samba']
    --destdir=DESTDIR
            installation root [default: '']
    --exec-prefix=EXEC_PREFIX
            installation prefix for binaries [PREFIX]

  Installation directories:
    --bindir=BINDIR
            user commands [EXEC_PREFIX/bin]
    --sbindir=SBINDIR
            system binaries [EXEC_PREFIX/sbin]
    --libexecdir=LIBEXECDIR
            program-specific binaries [EXEC_PREFIX/libexec]
    --sysconfdir=SYSCONFDIR
            host-specific configuration [PREFIX/etc]
    --sharedstatedir=SHAREDSTATEDIR
            architecture-independent variable data [PREFIX/com]
    --localstatedir=LOCALSTATEDIR
            variable data [PREFIX/var]
    --libdir=LIBDIR
            object code libraries [EXEC_PREFIX/lib64]
    --includedir=INCLUDEDIR
            header files [PREFIX/include]
    --oldincludedir=OLDINCLUDEDIR
            header files for non-GCC compilers [/usr/include]
    --datarootdir=DATAROOTDIR
            architecture-independent data root [PREFIX/share]
    --datadir=DATADIR
            architecture-independent data [DATAROOTDIR]
    --infodir=INFODIR
            GNU "info" documentation [DATAROOTDIR/info]
    --localedir=LOCALEDIR
            locale-dependent data [DATAROOTDIR/locale]
    --mandir=MANDIR
            manual pages [DATAROOTDIR/man]
    --docdir=DOCDIR
            documentation root [DATAROOTDIR/doc/PACKAGE]
    --htmldir=HTMLDIR
            HTML documentation [DOCDIR]
    --dvidir=DVIDIR
            DVI documentation [DOCDIR]
    --pdfdir=PDFDIR
            PDF documentation [DOCDIR]
    --psdir=PSDIR
            PostScript documentation [DOCDIR]

  library handling options:
    --bundled-libraries=BUNDLED_LIBS
            comma separated list of bundled libraries.

            samba includes copies of externally maintained
            system libraries (such as popt, cmokca) as well as Samba-maintained
            libraries that can be found on the system already (such as talloc,
            tdb).

            This option, most useful for packagers, controls if each library
            should be forced to be obtained from inside Samba (bundled), forced to
            be obtained from the system (bundling disabled, ensuing that
            dependency errors are not silently missed) or if that choice should be
            automatic (best for end users).

            May include !LIBNAME to disable bundling a library.

            Can be 'NONE' or 'ALL' [auto]
    --private-libraries=PRIVATE_LIBS
            comma separated list of normally public libraries to build instead as private libraries.

            By default samba will publish a number of public
            libraries for use by other software.  For Samba this would include
            libwbclient, libsmbclient and others.

            This allows that to be disabled, to ensure that other software does
            not use these libraries and they are placed in a private filesystem
            prefix.

            May include !LIBNAME to disable making a library private in order to
            limit the effect of 'ALL'
    --private-library-extension=PRIVATE_EXTENSION
            name extension for private libraries [samba4]
    --private-extension-exception=PRIVATE_EXTENSION_EXCEPTION
            comma separated list of libraries to not apply extension to []
    --builtin-libraries=BUILTIN_LIBRARIES
            comma separated list of libraries to build directly into binaries.

            By default samba will build a large number of
            shared libraries, to reduce binary size.  This overrides this
            behaviour and essentially statically links the specified libraries into
            each binary [NONE]
    --minimum-library-version=MINIMUM_LIBRARY_VERSION
            list of minimum system library versions for otherwise bundled
            libraries.

            samba by default requires that, in order to match
            what is tested in our continuous integration (CI) test-suite, that the
            versions of libraries that we include match that found on the system,
            before we will select not to 'bundle'.

            This option, possibly useful for packagers, allows that specified
            version to be overridden (say, if it is absolutely known that a the
            newer version included in this tarball has no relevant changes).

            Use this with extreme care

            (LIBNAME1:version,LIBNAME2:version)
    --disable-rpath
            Disable use of rpath for build binaries
    --disable-rpath-install
            Disable use of rpath for library path in installed files
    --disable-rpath-private-install
            Disable use of rpath for private library path in installed files
    --nonshared-binary=NONSHARED_BINARIES
            Disable use of shared libaries internal to samba for the listed binaries.

            The resulting binaries are 'statically linked' with regard to components provided by
            samba, but remain dynamically linked to (eg) libc.so and libgnutls.so

            Currently the only tested value is 'smbtorture,smbd/smbd' for Samba
    --disable-symbol-versions
            Disable use of the --version-script linker option

  developer options:
    -C      enable configure caching
    --enable-auto-reconfigure
            enable automatic reconfigure on build
    --enable-debug
            Turn on debugging symbols
    --enable-developer
            Turn on developer warnings and debugging
    --pidl-developer
            annotate PIDL-generated code for developers
    --disable-warnings-as-errors
            Do not treat all warnings as errors (disable -Werror)
    --fatal-errors
            Stop compilation on first error (enable -Wfatal-errors)
    --enable-gccdeps
            Enable use of gcc -MD dependency module
    --pedantic
            Enable even more compiler warnings
    --git-local-changes
            mark version with + if local git changes
    --address-sanitizer
            Enable address sanitizer compile and linker flags
    --undefined-sanitizer
            Enable undefined behaviour sanitizer compile and linker flags
    --enable-libfuzzer
            Build fuzzing binaries (use ADDITIONAL_CFLAGS to specify compiler options for libFuzzer or use CC=honggfuzz/hfuzz-
            cc)
    --enable-afl-fuzzer
            Build fuzzing binaries AFL-style (typically use with CC=afl-gcc)
    --fuzz-target-ldflags=FUZZ_TARGET_LDFLAGS
            Linker flags to be used when building fuzz targets
    --abi-check
            Check ABI signatures for libraries
    --abi-check-disable
            Disable ABI checking (used with --enable-developer)
    --abi-update
            Update ABI signature files for libraries
    --show-deps=SHOWDEPS
            Show dependency tree for the given target
    --symbol-check
            check symbols in object files against project rules
    --dup-symbol-check
            check for duplicate symbols in object files and system libs (must be configured with --enable-developer)
    --why-needed=WHYNEEDED
            TARGET:DEPENDENCY check why TARGET needs DEPENDENCY
    --show-duplicates
            Show objects which are included in multiple binaries or libraries

  cross compilation options:
    --cross-compile
            configure for cross-compilation
    --cross-execute=CROSS_EXECUTE
            command prefix to use for cross-execution in configure
    --cross-answers=CROSS_ANSWERS
            answers to cross-compilation configuration (auto modified)
    --hostcc=HOSTCC
            set host compiler when cross compiling

  dist options:
    --sign-release
            sign the release tarball created by waf dist
    --tag=TAG_RELEASE
            tag release in git at the same time

  Samba-specific directory layout:
    --enable-fhs
            Use FHS-compliant paths (default no)
            You should consider using this together with:
            --prefix=/usr --sysconfdir=/etc --localstatedir=/var
    --with-privatelibdir=PRIVATELIBDIR
            Which directory to use for private Samba libraries
            [STD-Default: ${LIBDIR}/private]
            [FHS-Default: ${LIBDIR}/samba]
    --with-modulesdir=MODULESDIR
            Which directory to use for Samba modules
            [STD-Default: ${LIBDIR}]
            [FHS-Default: ${LIBDIR}/samba]
    --with-pammodulesdir=PAMMODULESDIR
            Which directory to use for PAM modules
            [STD-Default: ${LIBDIR}/security]
            [FHS-Default: ${LIBDIR}/security]
    --with-configdir=CONFIGDIR
            Where to put configuration files
            [STD-Default: ${SYSCONFDIR}]
            [FHS-Default: ${SYSCONFDIR}/samba]
    --with-privatedir=PRIVATE_DIR
            Where to put sam.ldb and other private files
            [STD-Default: ${PREFIX}/private]
            [FHS-Default: ${LOCALSTATEDIR}/lib/samba/private]
    --with-bind-dns-dir=BINDDNS_DIR
            bind-dns config directory
            [STD-Default: ${PREFIX}/bind-dns]
            [FHS-Default: ${LOCALSTATEDIR}/lib/samba/bind-dns]
    --with-lockdir=LOCKDIR
            Where to put short term disposable state files
            [STD-Default: ${LOCALSTATEDIR}/lock]
            [FHS-Default: ${LOCALSTATEDIR}/lock/samba]
    --with-piddir=PIDDIR
            Where to put pid files
            [STD-Default: ${LOCALSTATEDIR}/run]
            [FHS-Default: ${LOCALSTATEDIR}/run/samba]
    --with-statedir=STATEDIR
            Where to put persistent state files
            [STD-Default: ${LOCALSTATEDIR}/locks]
            [FHS-Default: ${LOCALSTATEDIR}/lib/samba]
    --with-cachedir=CACHEDIR
            Where to put temporary cache files
            [STD-Default: ${LOCALSTATEDIR}/cache]
            [FHS-Default: ${LOCALSTATEDIR}/cache/samba]
    --with-logfilebase=LOGFILEBASE
            Where to put log files
            [STD-Default: ${LOCALSTATEDIR}]
            [FHS-Default: ${LOCALSTATEDIR}/log/samba]
    --with-sockets-dir=SOCKET_DIR
            socket directory
            [STD-Default: ${LOCALSTATEDIR}/run]
            [FHS-Default: ${LOCALSTATEDIR}/run/samba]
    --with-privileged-socket-dir=PRIVILEGED_SOCKET_DIR
            privileged socket directory
            [STD-Default: ${LOCALSTATEDIR}/lib]
            [FHS-Default: ${LOCALSTATEDIR}/lib/samba]
    --with-smbpasswd-file=SMB_PASSWD_FILE
            Where to put the smbpasswd file
            [STD-Default: ${PRIVATE_DIR}/smbpasswd]
            [FHS-Default: ${PRIVATE_DIR}/smbpasswd]

  systemd installation options:
    --systemd-install-services
            install systemd service files to manage daemons (default=no)
    --with-systemddir=SYSTEMDDIR
            systemd service directory [PREFIX/lib/systemd/system]
    --systemd-smb-extra=Option=Value
            Extra directives added to the smb service file. Can be given multiple times.
    --systemd-nmb-extra=Option=Value
            Extra directives added to the nmb service file. Can be used multiple times.
    --systemd-winbind-extra=Option=Value
            Extra directives added to the winbind service file. Can be used multiple times.
    --systemd-samba-extra=Option=Value
            Extra directives added to the samba service file. Can be used multiple times.
    --systemd-ctdb-extra=Option=Value
            Extra directives added to the ctdb service file. Can be given multiple times.

  Python Options:
    --nopyc
            Do not install bytecode compiled .pyc files (configuration) [Default:install]
    --nopyo
            Do not install optimised compiled .pyo files (configuration) [Default:install]
    --nopycache
            Do not use __pycache__ directory to install objects [Default:auto]
    --python=PYTHON
            python binary to be used [Default: /usr/bin/python3]
    --pythondir=PYTHONDIR
            Installation path for python modules (py, platform-independent .py and .pyc files)
    --pythonarchdir=PYTHONARCHDIR
            Installation path for python extension (pyext, platform-dependent .so or .dylib files)

  test options:
    --load-list=LOAD_LIST
            Load a test id list from a text file
    --list  List available tests
    --tests=TESTS
            wildcard pattern of tests to run
    --filtered-subunit
            output (xfail) filtered subunit
    --quick
            enable only quick tests
    --slow  enable the really slow tests
    --nb-slowest=NB_SLOWEST
            Show the n slowest tests (default=10)
    --testenv
            start a terminal with the test environment setup
    --valgrind
            use valgrind on client programs in the tests
    --valgrind-log=VALGRINDLOG
            where to put the valgrind log
    --valgrind-server
            use valgrind on the server in the tests (opens an xterm)
    --screen
            run the samba servers in screen sessions
    --gdbtest
            run the servers within a gdb window
    --fail-immediately
            stop tests on first failure
    --socket-wrapper-pcap
            create a pcap file for each failing test
    --socket-wrapper-keep-pcap
            create a pcap file for all individual test
    --random-order
            Run testsuites in random order
    --perf-test
            run performance tests only
    --test-list=TEST_LIST
            use tests listed here, not defaults (--test-list='FOO|' will execute FOO; --test-list='FOO' will read it)
    --no-subunit-filter
            no (xfail) subunit filtering
[root@rocky9-samba43 samba-4.18.4]#

この記事が気に入ったらサポートをしてみませんか?