Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Jan 2004 04:24:55 -0500
From:      Joe Marcus Clarke <marcus@FreeBSD.org>
To:        ports@FreeBSD.org
Subject:   HEADS UP: New bsd.*.mk changes
Message-ID:  <1074590694.85583.20.camel@shumai.marcuscom.com>

next in thread | raw e-mail | index | archive | help

--=-ikjHZ8+GoC6EQccbsIBn
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

This update of the FreeBSD ports system brings many exciting new
features as well as many important bug fixes.  This summary will benefit
porters and users alike.  Some highlights of this release include new
persistent per-port build options, a nice menu-driven options
configuration interface, smarter download resuming, quicker package
registration, and quicker GNU configure execution.  Enjoy!

------------------------------------------------------------------------

Type: FEATURE

Title: Add ghostscript knobs

Affects: bsd.port.mk

Description: Several new macros were added to facilitate the use of
ghostscript in ports.  Porters will want to define USE_GHOSTSCRIPT in
ports' Makefiles to indicate that the port requires ghostscript to build
and run.  If the port only requires ghostscript to build, define
USE_GHOSTSCRIPT_BUILD.  Likewise, to indicate the port only requires
ghostscript to run, define USE_GHOSTSCRIPT_RUN.  If your port requires
a specific flavor of ghostscript, define GHOSTSCRIPT_PORT to be the port
that is to provide PostSscript functionality (e.g.
print/ghostscript-gnu).  Users may define WITH_GHOSTSCRIPT_AFPL if they
wish to prefer the AFPL version of ghostscript over the GNU version.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D36112

Submitted by: linimon

------------------------------------------------------------------------

Type: FEATURE

Title: Add per-port persistent build options with a menu-driven
front-end

Affects: bsd.port.mk

Description: Probably one of the most anticipated new features for the
ports system is the ability to have persistent per-port build options.
This new feature adds that functionality as well as a new menu-driven
interface for setting those per-port options.  Porters will need to set
the OPTIONS macro in their port's Makefile to a list of WITH_ options
supported by that port.  The format is <option> "<description>"
[on|off].  For example: FLEXRESP "Flexible response to events" off.
This says that this port supports a WITH_FLEXRESP option that is not
defined by default.  This option's description is, "Flexible response
to events."  Multiple options should be chained into the one OPTIONS
macro.  NOTE: For OPTIONS to work, you must define OPTIONS before
bsd.port.pre.mk.  In order to configure these options, use the
``config'' target.  Doing ``make config'' will pop up a curses-based
dialog which lists all the available options for the given port.
Changes are saved in a per-port directory under PORTS_DBDIR (default:
/var/db/ports).  To view configurable options for a port, use the
``showconfig'' target.  To set all port options back to the defaults,
use the ``rmconfig'' target.

PR:

Submitted by: eivind

------------------------------------------------------------------------

Type: FEATURE

Title: Allow porters to override the message generated when do-configure
fails

Affects: bsd.port.mk

Description: When do-configure fails, a message is printed out telling
the user how to report the problem.  Some porters feel this is
inadequate to diagnose the problem, there is now a new
CONFIGURE_FAIL_MESSAGE macro that porters can set to a message of their
choice.

PR:

Submitted by: marcus

------------------------------------------------------------------------

Type: FEATURE

Title: Add patch to obviate many pkg-plist files

Affects: bsd.port.mk

Description: By adding files and symlinks to the PLIST_FILES macro, and
directories to PLIST_DIRS, a porter can do away with a port's pkg-list
file altogether  Directories should be added in reverse order so that
they are removed correctly (i.e. add them in the order you would in the
pkg-plist).

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59909

Submitted by: trevor

------------------------------------------------------------------------

Type: BUGFIX

Title: Fix the PKG_DBDIR comment

Affects: bsd.port.mk

Description: The comment about the PKG_DBDIR macro has been updated to
indicate that PKG_DBDIR must not contain anything other than registered
packages.

PR:

Submitted by: gerald

------------------------------------------------------------------------

Type: BUGFIX

Title: Make ports framework more robust with regard to make index

Affects: bsd.port.mk bsd.emacs.mk bsd.java.mk bsd.openssl.mk
bsd.python.mk

Description: The various .BEGIN statements have been removed from the
bsd.*.mk files to prevent make describe and even make -V from causing
make to bomb out.  Instead, errors that used to be caught during .BEGIN
are caught in a new sanity checking target, check-makevars that is
executed before do-fetch.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D61351

Submitted by: linimon

------------------------------------------------------------------------

Type: FEATURE

Title: Add new command macros to bsd.port.mk

Affects: bsd.port.mk

Description: The following new command macros have been added to
bsd.port.mk: BRANDELF =3D> /usr/bin/brandelf, CPIO =3D> /usr/bin/cpio,
DIALOG =3D> /usr/bin/dialog, OBJCOPY =3D> /usr/bin/objcopy, PASTE =3D>
/usr/bin/paste, PAX =3D> /bin/pax, PRINTF =3D> /usr/bin/printf, SORT =3D>
/usr/bin/sort, UNZIP_CMD =3D> /usr/bin/unzip or ${LOCALBASE}/bin/unzip.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: BUGFIX

Title: Remove direct command use from bsd.port.mk

Affects: bsd.port.mk

Description: Replace direct use of echo, cat, tr, sed, and awk from
bsd.port.mk with their macro equivalents.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: BUGFIX

Title: Make the ports system respect WITHOUT_CPU_CFLAGS

Affects: bsd.port.mk

Description: The ports system now respects WITHOUT_CPU_CFLAGS for ports
that may not build correctly when CPUTYPE is defined.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59493

Submitted by: jeh

------------------------------------------------------------------------

Type: FEATURE

Title: Break the SDL code out into bsd.sdl.mk

Affects: bsd.port.mk bsd.sdl.mk

Description: All of the SDL bits from bsd.port.mk have been moved to
bsd.sdl.mk.  The new infrastructure is similar to the new GNOME
infrastructure in that the USE_SDL macro accepts a list of SDL
components your port requires.  For example, setting "USE_SDL=3Dsdl
esound" means your port requires the standard SDL module as well as
SDL_esound.  USE_SDL=3Dyes is also supported for backward compatibility.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D55494

Submitted by: edwin

------------------------------------------------------------------------

Type: FEATURE

Title: Add working support for USE_SIZE

Affects: bsd.port.mk

Description: When USE_SIZE is defined in a port the distfile size is
checked.  This size is passed to ${FETCH_CMD} via the -S argument.  To
make use of this new option, add a SIZE definition to the distinfo file
following the same model as the MD5 definition.  Then define USE_SIZE
in your port's Makefile.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: BUGFIX

Title: Fix RANDOMIZE_MASTER_SITES on -CURRENT

Affects: bsd.port.mk

Description: The new RANDOMIZE_MASTER_SITES option did not work properly
on -CURRENT.  This is fixed now.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59315

Submitted by: Sergey Matveychuk <sem@ciam.ru>


------------------------------------------------------------------------

Type: BUGFIX

Title: Convert some spaces to tabs

Affects: bsd.port.mk

Description: Some of the spaces in bsd.port.mk have been replaced with
tabs.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: FEATURE

Title: Add new physcial categories accessibility and x11-themes


Affects: bsd.port.mk

Description: Two new physical categories, accessibility and x11-themes
have been added to the ports system.

PR:

Submitted by: trevor gnome

------------------------------------------------------------------------

Type: FEATURE

Title: Speed up GNU configure scripts

Affects: bsd.port.mk

Description: The maximum command line length is cached, and passed to
GNU configure scripts via CONFIGURE_ENV.  By default, this is set to
16384, but one may overwrite this by setting CONFIGURE_MAX_CMD_LEN to
another numeric value.  In general, this should not need to be changed.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59811

Submitted by: adamw

------------------------------------------------------------------------

Type: BUGFIX

Title: Remove "//" from MLINKS items in PLISTs and fix make -s install
and make -s deinstall

Affects: bsd.port.mk

Description: Various MLINKS-related bugs have been fixed.  Essentailly,
the /""/ pattern that was showing up in PLIST entries corresponding to
MLINKS has been removed.  This fixes make -s install and make -s
deinstall.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: BUGFIX

Title: Be more specific about looking for files in distinfo

Affects: bsd.port.mk japanese/Canna

Description: ${FETCH_CMD} would accept "afile" and "file" if only
"afile" existed in distinfo.  Now, specific entries must be added to
distinfo

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: FEATURE

Title: Add new run-autotools target, and resort configure targets


Affects: bsd.port.mk bsd.gnustep.mk mbone/rat

Description: The autotools portion of do-configure has been broken out
into a separate run-autotools target.  This target is run after
pre-configure and patch-libtool, but before do-configure.  Porters
should now use this target for anything pertaining to autotools, and set
do-configure to ${DO_NADA} if that target is no longer used.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D60882

Submitted by: edwin

------------------------------------------------------------------------

Type: BUGFIX

Title: Make CONFLICTS compare prefix for installed packages and PREFIX


Affects: bsd.port.mk

Description: CONFLICTS will now check PREFIX to determine if two ports
really conflict with each other by installing the same file.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D58149

Submitted by: clement

------------------------------------------------------------------------

Type: BUGFIX

Title: Change directory to ${.CURDIR} before running certain make
commands

Affects: bsd.port.mk

Description: To be extra safe, make sure we are really in the current
port's directory before running certain make command.


PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59058

Submitted by: eik

------------------------------------------------------------------------

Type: BUGFIX

Title: When INSTALL_AS_USER is set, run ldconfig with failures ignored.


Affects: bsd.port.mk

Description: Without root privileges, ldconfig is not very useful.
However, some users create an ldconfig wrapper for working in non-root
environments.  As such, is INSTALL_AS_USER is specified ldconfig will
be run with errors ignored.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D61133

Submitted by: edwin lev

------------------------------------------------------------------------

Type: BUGFIX

Title: Speed up the security check phase

Affects: bsd.port.mk

Description: The security check phase of post-install was too slow.
There is now a new procedure in place which uses an external awk script
to do the same level of checking.  To restore the old functionality,
define OLD_SECURITY_CHECK (e.g. in /etc/make.conf).  It was been
reported this new algorithm is up to five times faster than the old
version.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D55331

Submitted by: Eugene M. Kim <ab@astralblue.com>


------------------------------------------------------------------------

Type: BUGFIX

Title: Fix some corner cases in the PORTDOCS code

Affects: bsd.port.mk

Description: By using PORTDOCS, a ``@cwd /usr/local'' will be added to
every PLIST that does not already contain a @cwd directive.  While this
usually does no harm, it breaks the case where a user may do ``pkg_add
-p /my/prefix pkg-name''.  Additionally, every package receives a
``@unexec rmdir ${DOCSDIR} 2>/dev/null || true'' in their PLIST when the
porter's handbook states this should only happen if NOPORTDOCS is not
defined.  These bugs are now fixed.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59070

Submitted by: eik

------------------------------------------------------------------------

Type: FEATURE

Title: Add a new DEPRECATED macro

Affects: bsd.port.mk

Description: A new DEPRECATED macro has been added that porters can use
to indicate a port is deprecated in favor of a new version or another
port.  Porters may also set EXPIRATION_DATE and a an additional message
will be printed indicating when the given port is set to be obsoleted.
NOTE: this macro is advisory only.  It does not mark the port BROKEN or
IGNORE.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59362

Submitted by: linimon

------------------------------------------------------------------------

Type: FEATURE

Title: Make INDEX breakage more informative

Affects: bsd.port.subdir.mk

Description: When a make index fails, the errors are sometimes cryptic,
and lead to guesswork to track down the offending port.  This change
makes the errors more informative by preceding them with the port that
generated the failure.

PR: http://www.freebsd.org/cgi/query-pr.cgi?pr=3D59626

Submitted by: eik

This was generated with an XML reporting system I threw together, and a
simple little XSL transform to convert the data to plain text.  There
may be typos, but hopefully the information is clear enough.

Joe

--=20
Joe Marcus Clarke
FreeBSD GNOME Team	::	gnome@FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome

--=-ikjHZ8+GoC6EQccbsIBn
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQBADPPmb2iPiv4Uz4cRAhatAJ906eq3LTEJzEZ0QJglA1u36IvGLQCfXH1a
K/GBgzdhol4Tzv9IFrLGK3I=
=CqIL
-----END PGP SIGNATURE-----

--=-ikjHZ8+GoC6EQccbsIBn--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1074590694.85583.20.camel>