GROUP_SPECIFIC_PKGS into a top pkgsrc level call to make. The new way,
uses a shell 'for pkgdir in ....' and then calls a make in each pkg
directory.
This does 2 things. The first thing is that a 'build restart' starts
up _much_ faster because instead of calling 'make' for each package we've
already built and finding out they're already build, we just grep through
the list of already built pkgs. The second item (a side benefit) is that
now a progress meter is simple.
- add a progress meter to the build.
- add even more error checking.
- if something fails while extracting the DEPENDS for a particular package,
mark that package as broken and drop the DEPENDS info for it. This allows
the build to continue and properly marks the package as broken.
- if something fails while extracting the PKGNAME, also mark the pkg as broken.
- be more careful about seeing if directories exist before cd'ing to them.
Lack of such a test has caused problems elsewhere, so hopefully this will
make the system more robust.
to their names. These values shouldn't be changed by Makefiles or
buildlink.mk files; rather, they're convenience variables used exclusively
within x11.buildlink.mk.
prepending an underscore to their names. The values are not meant to be
set by Makefiles or buildlink.mk files. However, the values are exported
through CONFIGURE_ENV and MAKE_ENV so that they may be used during the
respective processes.
BUILDLINK_LDFLAGS to CFLAGS, CPPFLAGS, CXXFLAGS, LDFLAGS from
bsd.buildlink.mk to bsd.pkg.mk. They're unnecessary after the recent
changes to bonobo/buildlink.mk and to libglade/buildlink.mk that removed
their settings of BUILDLINK_CPPFLAGS.
"${CPPFLAGS}", "${CXXFLAGS}" respectively "${LDFLAGS}" in "bsd.pkg.mk" and
not in "bsd.buildlink.mk" because "${BUILDLINK_CPPFLAGS}" and
"${BUILDLINK_LDFLAGS}" might get changed several times by the
"buildlink.mk" files of various packages.
after the configure step. There's a growing number of GNU configure
scripts that find a library in -L/path and automatically add -R/path to
the linker flags. We need to make sure this doesn't happen to buildlink
directories.
expanded from some expensive operation, it isn't evaluated if it's not
needed. Also fix the replace-buildlink target where we were potentially
evaluating ${REPLACE_BUILDLINK} twice when only once was enough.
MAKEFILE_PATTERNS. Also replace -R${BUILDLINK_DIR}/lib with
-R${LOCALBASE}/lib on all the REPLACE_BUILDLINK files to prevent rpath
references to ${BUILDLINK_DIR} from getting into things like config
scripts.
so that the correct setting of PKG_DBDIR is used, and the correct
pkg_info binary too, presumably.
Make show-installed-depends work on Solaris (untested) by only defining
the target if DEPENDS is defined.
installed, as it currently breaks builds that use imake. I made an
announcement on current-users and tech-pkg on this, but having the make
logic place to verify that buildlink-x11 is actually gone is better.
REPLACE_BUILDLINK
REPLACE_BUILDLINK_PATTERNS
REPLACE_BUILDLINK_SED
REPLACE_LIBNAMES
REPLACE_LIBNAMES_PATTERNS
REPLACE_LIBNAMES_SED
BUILDLINK_CONFIG_WRAPPER_SED
Also prepend an underscore to REPLACE_LIBNAME_SCRIPT as it's not a variable
we're exporting.
REPLACE_LIBNAMES_PATTERNS
REPLACE_BUILDLINK_PATTERNS
They are space-separated lists of shell glob patterns representing files
in which we substitute with REPLACE_LIBNAMES_SED (for replacing buildlink
library names with the true library names) and REPLACE_BUILDLINK_SED (for
replacing references to buildlink directories with the true install
locations). This generalizes the variables (which may still be used):
REPLACE_LIBNAMES, REPLACE_BUILDLINK,
that contained the actual filenames.
REPLACE_BUILDLINK_PATTERNS contains *.lai, *-config, *Conf.sh, and *.pc.
and use it instead. Also subsititute for library names in the installed
libtool archives. This last bit is to fix instances where "-lncurses" has
been hard-coded into *.lai files, but we are actually using -lcurses in
reality (devel/tvision is one example). Problem noted by Thomas Klausner
(hi wiz!).
where action can be "install", "package", "create user for", etc., instead
of blindly always saying "install". Define "action" before calling
${_SU_TARGET} whereever it is used.
of relying on bsd.pkg.mk to do it. This change just makes x11.buildlink.mk
more self-sufficient. Also add a warning that x11.buildlink.mk shouldn't
be included in any buildlink.mk files since what it appends to *_POST_SED
variables must come last.
the descriptions of MOTIF_TYPE and MOTIFBASE lost during the
mk.conf.example --> bsd.pkg.defaults.mk conversion. Also,
document MOTIF_TYPE_DEFAULT and MOTIF12_TYPE_DEFAULT which are
used as the final default values for MOTIF_TYPE and MOTIF12_TYPE.
Note: none of these values need to be explicitly set, as
motif.buildlink.mk will choose sensible values for all of these
variables.