FreeBSD Port: ports-mgmt/poudriere - unneeded dependencies for options command
Miroslav Lachman
000.fbsd at quip.cz
Thu Oct 29 13:27:49 UTC 2015
I usually use poudriere for larger set of packages (about 500) so this
problem was hidden to me but now I needed just minimal set with 2 packages.
`poudriere options` gives me 26 options dialogs for things which are not
dependencies and for wrong versions.
It gives me options for Git, bzr and more strange - for perl5-5.16 even
if I have perl5=5.20 set as default version in make.conf
And surprise - these "dependencies" are not compiled by `poudriere bulk`
command.
Is it problem of poudriere or prots frame work? Is it possible to fix
it? Because it is very annoying.
The details are below:
root at sm-reserve ~/# uname -srmi
FreeBSD 10.2-RELEASE-p5 amd64 GENERIC
poudriere-3.1.7
Ports tree from 2015-09-30
make.conf for this package
# cat /usr/local/etc/poudriere.d/eprofi-make.conf
## https://wiki.freebsd.org/Ports/Options/OptionsNG
## OptionsNG sets DOCS, EXAMPLES and NLS as default - we do not need them
OPTIONS_UNSET= X11 GUI CUPS DOCS EXAMPLES NLS
WITH_BDB_VER=5
WITH_GHOSTSCRIPT_VER=9
DEFAULT_VERSIONS=apache=2.4 perl5=5.20 mysql=5.5m php=5.5 python=2.7
pgsql=9.3
list of packages to build
# cat /usr/local/etc/poudriere.d/pkglists/eprofi
devel/py-pip
devel/py-virtualenv
Unbelievable long list of dependencies options
# poudriere options -s -z eprofi -p default -f
/usr/local/etc/poudriere.d/pkglists/eprofi
[00:00:00] ====>> Appending to make.conf:
/usr/local/etc/poudriere.d/make.conf
[00:00:00] ====>> Appending to make.conf:
/usr/local/etc/poudriere.d/eprofi-make.conf
===> The following configuration options are available for py27-pip-7.0.3:
DOCS=off: Build and/or install documentation
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-pip-7.0.3 and dependencies
===> The following configuration options are available for py27-pip-7.0.3:
DOCS=off: Build and/or install documentation
===> Use 'make config' to modify these settings
===> The following configuration options are available for python27-2.7.10:
DEBUG=off: Build with debugging support
IPV6=on: IPv6 protocol support
LIBFFI=on: Use libffi from ports instead of bundled version
NLS=off: Enable gettext support for the locale module
PYMALLOC=on: Enable specialized mallocs
SEM=on: POSIX semaphores support
THREADS=on: Threading support
====> Unicode support: you have to select exactly one of them
UCS2=off: Enable UCS2 Unicode Strings
UCS4=on: Enable UCS4 Unicode Strings
===> Use 'make config' to modify these settings
===> The following configuration options are available for libffi-3.2.1:
TESTS=off: Include tools for test suite
===> Use 'make config' to modify these settings
===> The following configuration options are available for gmake-4.1_2:
NLS=off: Native Language Support
===> Use 'make config' to modify these settings
===> The following configuration options are available for tcl86-8.6.4:
MODULES=on: Install Tcl common modules
TCLMAN=off: Install Tcl function manpages
THREADS=on: Threading support
TZDATA=off: Install Tcl timezone data
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-pytest-2.7.1:
TESTS=off: Install test suite requirements
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-mock-1.0.1_1:
TESTS=off: Install tox for running unit tests
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-virtualenv-13.1.0:
DOCS=off: Build and/or install documentation
===> Use 'make config' to modify these settings
===> The following configuration options are available for
sqlite3-3.8.11.1_1:
ARMOR=off: Detect misuse of the API
DBSTAT=off: Enable DBSTAT Virtual Table
DIRECT_READ=off: File is read directly from disk
EXTENSION=on: Allow loadable extensions
FTS4=on: Enable FTS3/4 (Full Text Search) module
MEMMAN=off: Allows it to release unused memory
METADATA=on: Enable column metadata
READLINE=on: Command line editing via libreadline
SECURE_DELETE=on: Overwrite deleted information with zeros
SOUNDEX=off: Enables the soundex() SQL function
STMT=off: Prepared Statement Scan Status
THREADS=on: Threading support
UNLOCK_NOTIFY=on: Enable notification on unlocking
UPD_DEL_LIMIT=off: ORDER BY and LIMIT on UPDATE and DELETE
URI=on: Enable use the URI filename
URI_AUTHORITY=off: Allow convert URL into a UNC
====> Unicode support
ICU=off: Unicode support via ICU
UNICODE61=on: Unicode Version 6.1 tokenizer
====> Index type for range queries
RTREE=on: Enable R*Tree module
RTREE_INT=off: Store 32-bit sig int (no float) coordinates
====> Where to store temporary file: you have to select exactly one of them
TS0=off: Always use temporary file
TS1=on: File by default, change allowed PRAGMA
TS2=off: Memory by default, change allowed PRAGMA
TS3=off: Always use memory
====> Which query planner to use: you can only select none or one of them
STAT3=off: collect histogram data from leftmost column
STAT4=off: collect histogram data from all columns
===> Use 'make config' to modify these settings
===> The following configuration options are available for git-2.5.3_1:
CONTRIB=off: Install contributed scripts
CURL=on: Data transfer support via cURL
CVS=off: Enable CVS support
ETCSHELLS=off: Modify /etc/shells
GITWEB=on: Install gitweb
GUI=off: GUI (Graphical User Interface) support
HTMLDOCS=off: Install additional documentation
ICONV=on: Encoding conversion support via iconv
NLS=off: Native Language Support
P4=off: Enable Perforce support
PERL=on: Perl scripting language support
SVN=on: Subversion support
===> Use 'make config' to modify these settings
===> The following configuration options are available for curl-7.44.0:
CA_BUNDLE=on: Install CA bundle for OpenSSL
COOKIES=on: Cookies support
CURL_DEBUG=off: cURL debug memory tracking
DEBUG=off: Build with debugging support
DOCS=off: Build and/or install documentation
EXAMPLES=off: Build and/or install examples
HTTP2=off: HTTP protocol version 2.0 support
IDN=off: International Domain Names support
IPV6=on: IPv6 protocol support
LDAP=off: LDAP protocol support
LDAPS=off: LDAP protocol over SSL support
LIBSSH2=off: SCP/SFTP support via libssh2
PROXY=on: Proxy support
RTMP=off: RTMP protocol support via librtmp
TLS_SRP=on: TLS-SRP (Secure Remote Password) support
====> GSSAPI Security API support: you have to select exactly one of them
GSSAPI_BASE=off: GSSAPI support via base system (Kerberos required)
GSSAPI_HEIMDAL=off: GSSAPI support via security/heimdal
GSSAPI_MIT=off: GSSAPI support via security/krb5
GSSAPI_NONE=on: Disable GSSAPI support
====> DNS resolving options: you can only select none or one of them
CARES=off: Asynchronous DNS resolution via c-ares
THREADED_RESOLVER=on: Threaded DNS resolver
====> SSL protocol support: you can only select none or one of them
GNUTLS=off: SSL/TLS support via GnuTLS
NSS=off: SSL/TLS support via NSS
OPENSSL=on: SSL/TLS support via OpenSSL
POLARSSL=off: SSL/TLS support via PolarSSL
WOLFSSL=off: SSL/TLS support via wolfSSL
===> Use 'make config' to modify these settings
===> The following configuration options are available for
perl5.16-5.16.3_24:
DEBUG=off: Build with debugging support
GDBM=off: GDBM_File extension
MULTIPLICITY=on: Use multiplicity
PERL_64BITINT=on: Use 64 bit integers (on i386)
PERL_MALLOC=off: Use Perl malloc
PTHREAD=on: Build with -lpthread
SITECUSTOMIZE=off: Run-time customization of @INC
THREADS=on: Build threaded perl
USE_PERL=on: Rewrite links in /usr/bin
===> Use 'make config' to modify these settings
===> The following configuration options are available for ca_root_nss-3.20:
ETCSYMLINK=off: Add symlink to /etc/ssl/cert.pem
===> Use 'make config' to modify these settings
===> The following configuration options are available for
p5-IO-Socket-SSL-2.016:
EXAMPLES=off: Build and/or install examples
IDN=off: International Domain Names support
IPV6=on: IPv6 protocol support
===> Use 'make config' to modify these settings
===> The following configuration options are available for
p5-Net-SSLeay-1.72:
EXAMPLES=off: Build and/or install examples
===> Use 'make config' to modify these settings
===> The following configuration options are available for
p5-Test-NoWarnings-1.04_2:
DEVEL_STACKTRACE=off: Stack trace support
===> Use 'make config' to modify these settings
===> The following configuration options are available for
p5-Authen-SASL-2.16_1:
KERBEROS=off: Kerberos support
===> Use 'make config' to modify these settings
===> The following configuration options are available for apr-1.5.2.1.5.4:
====> Options available for the group APR
IPV6=on: IPv6 protocol support
DEVRANDOM=on: Use /dev/random or compatible
====> Options available for the group APU
BDB=off: Berkeley DB support
GDBM=off: GNU dbm library support
LDAP=off: LDAP protocol support
MYSQL=off: MySQL database support
NDBM=off: NDBM support
PGSQL=off: PostgreSQL database support
SQLITE=off: SQLite database support
FREETDS=off: FreeTDS library support
====> Options available for the radio CRYPTO: you can only select none
or one of them
SSL=on: OpenSSL crypto driver
NSS=off: NSS crypto driver
===> Use 'make config' to modify these settings
===> The following configuration options are available for
subversion-1.8.14_2:
BDB=off: Berkeley DB support
DOCS=off: Build and/or install documentation
FREEBSD_TEMPLATE=off: FreeBSD Project log template
MAINTAINER_DEBUG=off: Build debug version
NLS=off: Native Language Support
P4_STYLE_MARKERS=off: Perforce-style conflict markers
SASL=off: SASL authentication support
SERF=on: WebDAV/Delta-V (HTTP/HTTPS) repo access module
STATIC=off: Build static version (no shared libs)
SVNSERVE_WRAPPER=off: Enable svnserve wrapper (umask setter)
TEST=off: Run subversion test suite
TOOLS=off: Install several tools
===> Use 'make config' to modify these settings
===> The following configuration options are available for serf-1.3.8:
DOCS=off: Build and/or install documentation
GSSAPI=off: GSSAPI Security API support
===> Use 'make config' to modify these settings
===> The following configuration options are available for m4-1.4.17_1,1:
EXAMPLES=off: Build and/or install examples
LIBSIGSEGV=off: Use alternative page fault handler (GNU libsigsegv)
===> Use 'make config' to modify these settings
===> The following configuration options are available for bzr-2.6.0:
CA_BUNDLE=on: Include CA bundle for SSL cert validation
SFTP=off: Paramiko for SFTP support
===> Use 'make config' to modify these settings
===> The following configuration options are available for
gettext-tools-0.19.5.1:
DOCS=off: Build and/or install documentation
THREADS=on: Threading support
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-virtualenv-13.1.0:
DOCS=off: Build and/or install documentation
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-virtualenv-13.1.0 and dependencies
===> The following configuration options are available for
py27-virtualenv-13.1.0:
DOCS=off: Build and/or install documentation
===> Use 'make config' to modify these settings
===> The following configuration options are available for python27-2.7.10:
DEBUG=off: Build with debugging support
IPV6=on: IPv6 protocol support
LIBFFI=on: Use libffi from ports instead of bundled version
NLS=off: Enable gettext support for the locale module
PYMALLOC=on: Enable specialized mallocs
SEM=on: POSIX semaphores support
THREADS=on: Threading support
====> Unicode support: you have to select exactly one of them
UCS2=off: Enable UCS2 Unicode Strings
UCS4=on: Enable UCS4 Unicode Strings
===> Use 'make config' to modify these settings
===> The following configuration options are available for libffi-3.2.1:
TESTS=off: Include tools for test suite
===> Use 'make config' to modify these settings
===> The following configuration options are available for gmake-4.1_2:
NLS=off: Native Language Support
===> Use 'make config' to modify these settings
===> The following configuration options are available for tcl86-8.6.4:
MODULES=on: Install Tcl common modules
TCLMAN=off: Install Tcl function manpages
THREADS=on: Threading support
TZDATA=off: Install Tcl timezone data
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-pytest-2.7.1:
TESTS=off: Install test suite requirements
===> Use 'make config' to modify these settings
===> The following configuration options are available for
py27-mock-1.0.1_1:
TESTS=off: Install tox for running unit tests
===> Use 'make config' to modify these settings
But only 8 really needed packages were built
# poudriere bulk -v -j 10_2_amd64 -z eprofi -p default -f
/usr/local/etc/poudriere.d/pkglists/eprofi
[00:00:00] ====>> Creating the reference jail... done
[00:00:01] ====>> Mounting system devices for 10_2_amd64-default-eprofi
[00:00:01] ====>> Mounting ports/packages/distfiles
[00:00:01] ====>> Converting package repository to new format
[00:00:01] ====>> Stashing existing package repository
[00:00:01] ====>> Mounting packages from:
/vol0/poudriere/data/packages/10_2_amd64-default-eprofi
[00:00:01] ====>> Copying /var/db/ports from:
/usr/local/etc/poudriere.d/eprofi-options
[00:00:01] ====>> Appending to make.conf:
/usr/local/etc/poudriere.d/make.conf
[00:00:01] ====>> Appending to make.conf:
/usr/local/etc/poudriere.d/eprofi-make.conf
/etc/resolv.conf ->
/vol0/poudriere/data/.m/10_2_amd64-default-eprofi/ref/etc/resolv.conf
[00:00:01] ====>> Starting jail 10_2_amd64-default-eprofi
[00:00:01] ====>> Logs:
/vol0/poudriere/data/logs/bulk/10_2_amd64-default-eprofi/2015-10-28_20h53m46s
[00:00:01] ====>> Loading MOVED
[00:00:02] ====>> Calculating ports order and dependencies
[00:00:02] ====>> Computing deps for devel/py-virtualenv
[00:00:02] ====>> Computing deps for devel/py-pip
[00:00:02] ====>> Computing deps for devel/py-setuptools27
[00:00:03] ====>> Computing deps for lang/python27
[00:00:03] ====>> Computing deps for ports-mgmt/pkg
[00:00:03] ====>> Computing deps for devel/libffi
[00:00:03] ====>> Computing deps for print/indexinfo
[00:00:03] ====>> Computing deps for devel/pkgconf
[00:00:03] ====>> pkg package missing, skipping sanity
[00:00:03] ====>> Skipping incremental rebuild and repository sanity checks
[00:00:03] ====>> Cleaning the build queue
[00:00:03] ====>> Recording filesystem state for prepkg... done
[00:00:06] ====>> Building 8 packages using 2 builders
[00:00:06] ====>> Starting/Cloning builders
[00:00:07] ====>> Hit CTRL+t at any time to see build progress and stats
..
..
Packing files for repository: 100%
[00:06:45] ====>> Committing packages to repository
[00:06:45] ====>> Removing old packages
[00:06:45] ====>> Built ports: ports-mgmt/pkg print/indexinfo
devel/pkgconf devel/libffi lang/python27 devel/py-setuptools27
devel/py-virtualenv devel/py-pip
[10_2_amd64-default-eprofi] [2015-10-28_20h53m46s] [committing:] Queued:
8 Built: 8 Failed: 0 Skipped: 0 Ignored: 0 Tobuild: 0 Time: 00:06:44
[00:06:45] ====>> Logs:
/vol0/poudriere/data/logs/bulk/10_2_amd64-default-eprofi/2015-10-28_20h53m46s
[00:06:45] ====>> Cleaning up
10_2_amd64-default-eprofi: removed
10_2_amd64-default-eprofi-n: removed
[00:06:45] ====>> Umounting file systems
Usr: 413.901s Krnl: 103.705s Totl: 6:45.55s CPU: 127.6% swppd: 0
I/O: 2458+42297
Should I provide anything more to track this problem?
Miroslav Lachman
More information about the freebsd-ports
mailing list