freebsd-ports/Mk
John Marino cb97dd0575 Mk/bsd.options.mk: Introduce SELECTED_OPTIONS, DESELECTED_OPTIONS
Until now, the only way to obtain information on the valid port options
and the current selection states is by using the pretty-print-config
target.  It would look something like this:

  > make -C /usr/ports/lang/gcc5-aux print-print-config
  Standard[ +FORT +OBJC +NLS -TESTSUITE -ALLSTAGES -STATIC ] \
  Bootstrap[ -BOOTSTRAP ]

To process the total options and the selection state of each option
requires additional processing, e.g. with awk and/or sed.  Moreover, if
other information is needed about the port it question, it would require
a second execution of "make" to reveal variable values. There simply is
no other way to obtain the option selection information in a single pass
(this limitation came when options framework was brought in).

This enhancement allows the option selection information to revealed with
make -V so that all port information can be acquired in a single pass.
Moreover, they won't require piping through sed or awk.  Two read-only
variables are introduced:

  SELECTED_OPTIONS   (list of all "on" options)
  DESELECTED_OPTIONS (liss of all "off" options)

Here's an example of a single pass acquisition:

  > make -C /usr/dports/lang/gcc5-aux -V PKGNAME -V SELECTED_OPTIONS \
    -V DESELECTED_OPTIONS
  gcc5-aux-20150716
  NLS OBJC FORT
  BOOTSTRAP STATIC ALLSTAGES TESTSUITE

Obviously the grouping information seen in pretty-print-config is lost,
so these new variables will not help if option group information is
required.

Approved by:	portmgr (bapt)
2015-12-14 22:44:39 +00:00
..
Scripts Use normal PORTSDIR rather than dp_PORTSDIR so it is passed around properly. 2015-12-04 22:18:29 +00:00
Uses At very long last land PyQt5 5.5.1 ports. 2015-12-13 21:56:50 +00:00
bsd.apache.mk Fix static modules in www/apache24 2015-07-14 22:34:53 +00:00
bsd.autotools.mk Mark USE_AUTOTOOLS deprecated and remove support for libtoolize. 2015-04-19 18:16:40 +00:00
bsd.ccache.mk Let WITH_CCACHE_BUILD work on the pkg port that is not PKG_ORIGIN. 2015-04-14 20:58:26 +00:00
bsd.commands.mk Introduce a BSDMAKE?= /usr/bin/make and use it as the default MAKE_CMD. 2015-03-23 04:03:00 +00:00
bsd.database.mk databases/mariadb-client,scripts,server: Remove 2015-11-18 10:51:14 +00:00
bsd.default-versions.mk FPC ecosystem: Upgrade version 2.6.4 => 3.0.0 2015-12-05 23:29:36 +00:00
bsd.destdir.mk - Fix DESTDIR support. 2014-09-08 20:44:21 +00:00
bsd.emacs.mk GNU Emacs Updates 2015-04-27 10:28:00 +00:00
bsd.fpc.mk FPC ecosystem: Upgrade version 2.6.4 => 3.0.0 2015-12-05 23:29:36 +00:00
bsd.gcc.mk Since there is not going to be any new version of GCC in the FreeBSD 2015-04-22 21:29:21 +00:00
bsd.gecko.mk devel/nspr: cleanup cruft to improve style 2015-11-21 02:26:15 +00:00
bsd.gnome.mk Mk/bsd.gnome.mk : remove net/linc from the component list. 2015-09-27 10:52:16 +00:00
bsd.gstreamer.mk Update gstreamer1 ports to 1.6.0. 2015-09-26 14:36:23 +00:00
bsd.java.mk Make OpenJDK 1.8 the default 2015-10-19 16:14:29 +00:00
bsd.kde4.mk Update KDE SC to 4.14.3 2015-03-11 23:11:47 +00:00
bsd.ldap.mk net/openldap24-*: 2014-07-24 18:34:16 +00:00
bsd.licenses.db.mk Adding CPAL-1.0, https://opensource.org/licenses/CPAL-1.0 2015-10-11 17:52:00 +00:00
bsd.licenses.mk Register license files with absolute path 2014-09-23 12:42:00 +00:00
bsd.linux-apps.mk Re-commit of 2015-08-09 19:14:13 +00:00
bsd.linux-rpm.mk Fix typo preventing using c6_64 2015-11-26 13:05:07 +00:00
bsd.local.mk Switch to default tabspace: 8 2014-06-18 07:14:22 +00:00
bsd.mate.mk Update MATE DE to 1.10.0. 2015-07-27 20:19:33 +00:00
bsd.ocaml.mk Explicitly run the ocaml command in post (de)installation 2015-09-26 08:41:45 +00:00
bsd.octave.mk Explicly force runnning load-octave-pkg during post (de)installation 2015-09-26 08:39:49 +00:00
bsd.openssl.mk security/libressl: Update to 2.2.2 2015-08-06 19:13:18 +00:00
bsd.options.desc.mk Add GCC_DESC to Mk/bsd.options.desc.mk. Use this in a number of ports 2015-11-16 00:30:00 +00:00
bsd.options.mk Mk/bsd.options.mk: Introduce SELECTED_OPTIONS, DESELECTED_OPTIONS 2015-12-14 22:44:39 +00:00
bsd.php.mk Add a message explaining how to fix poudriere build failures if the 2015-09-27 18:37:34 +00:00
bsd.port.mk Force DEBUG_FILES to be off when building with /usr/share/mk. Otherwise 2015-12-10 21:09:54 +00:00
bsd.port.options.mk tabspace: 8 2014-06-18 12:21:35 +00:00
bsd.port.post.mk
bsd.port.pre.mk
bsd.port.subdir.mk Apply export handling fixes from bsd.port.mk. 2015-10-12 22:42:57 +00:00
bsd.qt.mk bsd.qt.mk: Move QT_NONSTANDARD check to the _POSTMKINCLUDED section. 2015-12-05 21:39:13 +00:00
bsd.ruby.mk Readd PORTSDIR for now we will only start removing them after 2016Q1 is branched 2015-10-15 07:36:38 +00:00
bsd.sanity.mk Remove support for WANT_SDL/HAVE_SDL knobs 2015-11-09 14:30:02 +00:00
bsd.sdl.mk Remove support for WANT_SDL/HAVE_SDL knobs 2015-11-09 14:30:02 +00:00
bsd.sites.mk Update MASTER_SITES_GNUPG 2015-12-08 03:19:44 +00:00
bsd.ssp.mk - Enable SSP by default. 2014-11-02 20:01:31 +00:00
bsd.tex.mk Readd PORTSDIR for now we will only start removing them after 2016Q1 is branched 2015-10-15 07:36:38 +00:00
bsd.wx.mk Readd PORTSDIR for now we will only start removing them after 2016Q1 is branched 2015-10-15 07:36:38 +00:00
bsd.xorg.mk Readd PORTSDIR for now we will only start removing them after 2016Q1 is branched 2015-10-15 07:36:38 +00:00