View Single Post
Old 08-22-2012, 09:53 PM   #1
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Týr
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,586
Karma: 6299993
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
The longest configure list ever?

So, I thought. Give yourself a break, go do something fun!

Configure Samba...

Err. Hokay. Now I'm no expert (well at anything really) but I would say this is a preeety big configure list.

This is the options...

Spoiler:
you@dev ~/GIT/samba $ ./configure --help
Quote:
waf [command] [options]

Main commands (example: ./waf build -j4)
build : build all targets
clean : removes the build files
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 the build directory
etags : build TAGS file using etags
install : installs the build files
pep8 : run pep8 validator
pydoctor : build python apidocs
reconfigure : reconfigure if config scripts have changed
test : Run the test suite (see test options below)
testonly : run tests without doing a build first
uninstall : removes the installed files
wafdocs : build wafsamba apidocs
wildcard_cmd: called on a unknown command

Options:
--version
show program's version number and exit
-h, --help
show this help message and exit
-j JOBS, --jobs=JOBS
amount of parallel jobs ('1')
-k, --keep
keep running happily on independent task groups
-v, --verbose
verbosity level -v -vv or -vvv [default: 0]
--nocache
ignore the WAFCACHE (if set)
--zones=ZONES
debugging zones (task_gen, deps, tasks, etc)
-p, --progress
-p: progress bar; -pp: ide output
--targets=COMPILE_TARGETS
build given task generators, e.g. "target1,target2"
--with-libiconv=ICONV_OPEN
additional directory to search for libiconv
--with-gettext=GETTEXT_LOCATION
additional directory to search for gettext
--enable-talloc-compat1
Build talloc 1.x.x compat library [False]
--enable-selftest
enable options necessary for selftest (default=no)
--enable-coverage
enable options necessary for code coverage reporting on selftest
(default=no)
--with-selftest-prefix=SELFTEST_PREFIX
specify location of selftest directory (default=./st)
--enable-gnutls
Enable use of gnutls
--with-perl-binary=PERLBINARY
Specify alternate perl binary
--with-perl-archdir=PERLARCHDIR
Specify directory where to install arch specific files
--with-static-modules=STATIC_MODULES
Comma-separated list of names of modules to statically link in
--with-shared-modules=SHARED_MODULES
Comma-separated list of names of modules to build shared
--with-winbind
Build with winbind support
--with-swat
Build with swat support
--with-ads
Build with ads support
--with-ldap
Build with ldap support
--enable-cups
Build with cups support
--enable-iprint
Build with iprint support
--with-pam
Build with pam support
--with-pam_smbpass
Build with pam_smbpass support
--with-quotas
Build with quotas support
--with-sys-quotas
Build with sys-quotas support
--with-sendfile-support
Build with sendfile-support support
--with-utmp
Build with utmp support
--enable-pthreadpool
Build with pthreadpool support
--enable-avahi
Build with avahi support
--with-iconv
Build with iconv support
--with-acl-support
Build with acl-support support
--with-dnsupdate
Build with dnsupdate support
--with-syslog
Build with syslog support
--with-automount
Build with automount support
--with-aio-support
Build with aio-support support
--with-profiling-data
Build with profiling-data support
--with-cluster-support
Build with cluster-support support
--with-ctdb-dir=CTDB_DIR
Directory under which ctdb is installed
--enable-old-ctdb
enable building against (too) old version of ctdb (default=false)
--disable-fault-handling
disable the fault handlers
--with-system-mitkrb5
enable system MIT krb5 build (includes Samba 4 client and Samba 3 code
base).You may specify list of paths where Kerberos is installed (e.g.
/usr/local /usr/kerberos) to search krb5-config
--without-ad-dc
disable AD DC functionality (enables Samba 4 client and Samba 3 code base).
--disable-ntdb
disable ntdb
--nopyc Do not install bytecode compiled .pyc files (configuration)
[Default:install]
--nopyo Do not install optimised compiled .pyo files (configuration)
[Default:install]

configuration options:
-b BLDDIR, --blddir=BLDDIR
out dir for the project (configuration)
-s SRCDIR, --srcdir=SRCDIR
top dir for the project (configuration)
--download
try to download the tools if missing

installation options:
-f, --force
force file installation

C Compiler Options:
--check-c-compiler=CHECK_C_COMPILER
On this platform (linux) the following C-Compiler will be checked by
default: "gcc icc suncc"

Installation directories:
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 (configuration) [default: '/usr/local/samba']
--destdir=DESTDIR
installation root [default: '']
--exec-prefix=EXEC_PREFIX
installation prefix [Default: ${PREFIX}]

Pre-defined installation directories:
--bindir=BINDIR
user executables [Default: ${EXEC_PREFIX}/bin]
--sbindir=SBINDIR
system admin executables [Default: ${EXEC_PREFIX}/sbin]
--libexecdir=LIBEXECDIR
program executables [Default: ${EXEC_PREFIX}/libexec]
--sysconfdir=SYSCONFDIR
read-only single-machine data [Default: ${PREFIX}/etc]
--sharedstatedir=SHAREDSTATEDIR
modifiable architecture-independent data [Default: ${PREFIX}/com]
--localstatedir=LOCALSTATEDIR
modifiable single-machine data [Default: ${PREFIX}/var]
--libdir=LIBDIR
object code libraries [Default: ${EXEC_PREFIX}/lib]
--includedir=INCLUDEDIR
C header files [Default: ${PREFIX}/include]
--oldincludedir=OLDINCLUDEDIR
C header files for non-gcc [Default: /usr/include]
--datarootdir=DATAROOTDIR
read-only arch.-independent data root [Default: ${PREFIX}/share]
--datadir=DATADIR
read-only architecture-independent data [Default: ${DATAROOTDIR}]
--infodir=INFODIR
info documentation [Default: ${DATAROOTDIR}/info]
--localedir=LOCALEDIR
locale-dependent data [Default: ${DATAROOTDIR}/locale]
--mandir=MANDIR
man documentation [Default: ${DATAROOTDIR}/man]
--docdir=DOCDIR
documentation root [Default: ${DATAROOTDIR}/doc/${PACKAGE}]
--htmldir=HTMLDIR
html documentation [Default: ${DOCDIR}]
--dvidir=DVIDIR
dvi documentation [Default: ${DOCDIR}]
--pdfdir=PDFDIR
pdf documentation [Default: ${DOCDIR}]
--psdir=PSDIR
ps documentation [Default: ${DOCDIR}]

library handling options:
--bundled-libraries=BUNDLED_LIBS
comma separated list of bundled libraries. 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. May include !LIBNAME to disable making a library
private. Can be 'NONE' or 'ALL' [auto]
--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
command separated list of libraries to build directly into binaries [NONE]
--minimum-library-version=MINIMUM_LIBRARY_VERSION
list of minimum system library versions (LIBNAME1:version,LIBNAME2:version)
--disable-shared
Disable all use of shared libraries
--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 libs for the listed binaries
--disable-symbol-versions
Disable use of the --version-script linker option

developer options:
-C enable configure cacheing
--enable-auto-reconfigure
enable automatic reconfigure on build
--enable-debug
Turn on debugging symbols
--enable-developer
Turn on developer warnings and debugging
--picky-developer
Treat all warnings as errors (enable -Werror)
--fatal-errors
Stop compilation on first error (enable -Wfatal-errors)
--enable-gccdeps
Enable use of gcc -MD dependency module
--timestamp-dependencies
use file timestamps instead of content for build dependencies (BROKEN)
--pedantic
Enable even more compiler warnings
--git-local-changes
mark version with + if local git changes
--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
--enable-nss-wrapper
Turn on nss wrapper library (default=no)
--enable-socket-wrapper
Turn on socket wrapper library (default=no)
--enable-uid-wrapper
Turn on uid wrapper library (default=no)

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-statedir=STATEDIR
Where to put persistent state files
[STD-Default: ${LOCALSTATEDIR}/locks]
[FHS-Default: ${LOCALSTATEDIR}/lib/samba]
--with-pammodulesdir=PAMMODULESDIR
Which directory to use for PAM modules
[STD-Default: ${LIBDIR}/security]
[FHS-Default: ${LIBDIR}/security]
--with-privatedir=PRIVATE_DIR
Where to put sam.ldb and other private files
[STD-Default: ${PREFIX}/private]
[FHS-Default: ${LOCALSTATEDIR}/lib/samba/private]
--with-piddir=PIDDIR
Where to put pid files
[STD-Default: ${LOCALSTATEDIR}/run]
[FHS-Default: ${LOCALSTATEDIR}/run/samba]
--with-cachedir=CACHEDIR
Where to put temporary cache files
[STD-Default: ${LOCALSTATEDIR}/cache]
[FHS-Default: ${LOCALSTATEDIR}/cache/samba]
--with-lockdir=LOCKDIR
Where to put short term disposable state files
[STD-Default: ${LOCALSTATEDIR}/lock]
[FHS-Default: ${LOCALSTATEDIR}/lock/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-modulesdir=MODULESDIR
Which directory to use for Samba modules
[STD-Default: ${LIBDIR}]
[FHS-Default: ${LIBDIR}/samba]
--with-privatelibdir=PRIVATELIBDIR
Which directory to use for private Samba libraries
[STD-Default: ${LIBDIR}/private]
[FHS-Default: ${LIBDIR}/samba]
--with-privileged-socket-dir=PRIVILEGED_SOCKET_DIR
privileged socket directory
[STD-Default: ${LOCALSTATEDIR}/lib]
[FHS-Default: ${LOCALSTATEDIR}/lib/samba]
--with-configdir=CONFIGDIR
Where to put configuration files
[STD-Default: ${SYSCONFDIR}]
[FHS-Default: ${SYSCONFDIR}/samba]

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
--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


And I thought Lynx had a few options...

Anyone seen a bigger one?

Insert amusing anecdotes below:

Thanks

Last edited by twobob; 08-22-2012 at 09:55 PM. Reason: quotes look nicer
twobob is offline   Reply With Quote