Age | Commit message (Collapse) | Author | Files | Lines |
|
buildlink1 but is no longer true with buildlink2.
|
|
USE_X11 is defined instead of USE_X11 || USE_X11BASE || USE_IMAKE.
|
|
by itohy@netbsd.org.
|
|
stdout a list of files relative to ${BUILDLINK_PREFIX.<pkg>}. The shell
variable $${pkg_prefix} may be used and is the subdirectory (ending in /)
of ${BUILDLINK_PREFIX.<pkg>} to which the PLIST is relative, e.g. if
`pkg_info -qp foo' returns "/usr/pkg/java/kaffe", then $${pkg_prefix} is
"java/kaffe/".
|
|
BUILDLINK_PKGBASE.<pkg> that is the ${PKGBASE} for that package and can
be used as "pkg_info ${BUILDLINK_PKGBASE.<pkg>}". This variable is
currently only used if the buildlink2.mk file uses
BUILDILNK_PLIST_CMD.<pkg> (described below).
* Create readable variable BUILDLINK_PLIST_CMD.<pkg> that is a pipeline of
shell commands that outputs to stdout a list of the files installed the
<pkg>, relative to its installation prefix.
|
|
to be a shell command, e.g.:
BUILDLINK_FILES= `cd ${LOCALBASE}; ${LS} -1 lib/libfoo.*`
|
|
readable through CONFIGURE_ENV and MAKE_ENV. These may be used to fix
up packages that use imake to check the appropriate locations for headers
and libraries.
* Don't be so aggressive in prepending _BLNK_{CPP,LD}FLAGS to
{C,CPP,CXX,LD}FLAGS. The buildlink2 wrapper scripts will automatically
filter out bad -[IL] paths, even if their added inadvertantly by package
Makefiles, so we can simply append them to the existing
{C,CPP,CXX,LD}FLAGS. We try to be smarter about appending them to avoid
needless duplication.
|
|
${CONFIGURE_ENV} and in ${MAKE_ENV} for the configure and build processes,
respectively. This allows overriding the value of "CC" passed to the
build, e.g.:
BUILDLINK_ENV+= CC="/usr/pkg/pthread/bin/pgcc"
|
|
creating the buildlink2 wrapper scripts. Based on patch in pkg/18425 by
grant@netbsd.org.
|
|
|
|
to only add -Ldir/.libs for *.la files that are not named with absolute
paths or named with an absolute path starting with ${WRKSRC}. This should
fix the problem with converting kdebase3 to buildlink2.
|
|
overflowing the make variable size limit.
* Rename _BLNK_WRAP_ENV to _BLNK_WRAP_SETENV, and use _BLNK_WRAP_ENV to
set the shell environment for the wrappee. Allow BUILDLINK_WRAPPER_ENV
to add to the shell environment.
|
|
a full dependency. BUILDLINK_DEPMETHOD.<pkg> is now a space-separated
list of the words "full" and/or "build", and if any of them is "full",
then a full dependency on <pkg> is used. buildlink2.mk files may now do:
BUILDLINK_DEPMETHOD.<pkg>+= full
to convert from a build to a full dependency.
Previously, if a package Makefile set BUILDLINK_DEPMETHOD.<pkg>=build,
there was no way to override its value consistently.
|
|
use buildlink2 and set USE_X11 will use x11-links, or if they will simply
symlink the X11 files directly into ${BUILDLINK_DIR}. If USE_X11_LINKS is
"YES" (the default), then x11-links is used. If USE_X11_LINKS is "NO",
then the X11 files are symlinked directly.
There is a choice here between speed and flexibility. Using x11-links is
faster since you don't need to spend time symlinking all of the X11 files
into ${BUILDLINK_DIR}. However, if you update your X11 installation, then
the x11-links package will likely be out-of-date. Conversely, directly
symlinking the X11 files will protect you from changes in your X11
installation when you update, but there is a (small) time penalty to have
to do it for every package that uses X11.
|
|
buildlinking them into ${BUILDLINK_DIR}. This should allow cases where a
/usr/lib/libintl.la escaped into an installed libtool archive (during the
time when buildlink2 was broken for about 4 days) to be handled properly.
|
|
fixes building gmake without libtool installed.
|
|
BUILDLINK_DEPENDS.foo= foo>=1.0 foo<1.5
then this is converted to:
DEPENDS+= foo>=1.0:../../category/foo
DEPENDS+= foo<1.5:../../category/foo
We can use this to record upper bounds on dependency versions.
|
|
|
|
archives, and also do the special handling for dependency_libs.
|
|
common when referring to an uninstalled libtool archive.
|
|
directory escape into the installed *.la files. Fix this by only adding
-L*/.libs if the *.la file is uninstalled, and by filtering out references
to ${WRKSRC}.
|
|
the main transformations have been performed.
The ld wrapper can now accept "-Wl,*" arguments and transform them
appropriately by stripping of the -Wl and the commas. This will obiviate
the need for logic in pkgsrc that strips away the "-Wl," depending on
whether the platform was a.out or ELF, and whether the individual package
chose to link using "cc" or "ld".
|
|
|
|
|
|
|
|
depend on other uninstalled libtool archives. During the relinking process
the newly installed libraries weren't being found. We now insert the
appropriate -Ldir flags to allow them to be found in the uninstalled
locations.
|
|
|
|
exceed any maximum length on values stored in a variable.
|
|
a system library so that we can prefer a system library to a pkgsrc one
when building with pkgsrc.
|
|
ordering them and using += instead of an accidental = . This should fix
pkg/18324 by John Kohl <jtk@kolvir.arlington.ma.us>.
|
|
bsd.buildlink2.mk. This allows packages that use buildlink2 to fix up
*-config and other shell scripts that hardcode wrong library names as a
side-effect of how buildlink2 works, e.g., the package thinks "-laa" works
because the wrapper silently converts it to "-laa-x11.
REPLACE_BUILDLINK files relative to ${WRKSRC}
REPLACE_BUIDLINK_PATTERNS shell glob
REPLACE_BUILDLINK_SED sed expression to run over the files named
above
|
|
buildlink2. We used to create a timestamp file in the .libs directory.
Now, we add a line to the *.la and *.lai file that directly notes that it
has been "modified by buildlink2". This makes it easier to debug problems
caused by using the wrong libtool during either a build or install by
checking if the *.la or *.lai files have the "modified by buildlink2" line.
|
|
catch arguments with symbols that are special to the shell.
|
|
just -I and -L (modulo if LOCALBASE == /usr/local).
|
|
argument transform filter.
* Remove special ZOULARISBASE hack and use the new _BLNK_*PROTECT_SED
variables to accomplish the same thing.
|
|
${_PKGSRCDIR} and ${BUILDLINK_DIR} from any filtering, as they may be
subdirectories of ${LOCALBASE}, /usr/pkg, or /usr/local.
This should fix pkg/18142 and other puzzling problems reported on the
tech-pkg mailing list where it was necessary to revert back to buildlink1
versions of packages in order to build when the pkgsrc tree or the work
directories are kept under /usr/local.
|
|
|
|
contains all of the transformations that we may want to use to fix up
any *-config scripts that have incorrect paths or library names. Also
add some _BLNK_UNTRANSFORM_SED.* variables that do the opposite of the
corresponding _BLNK_TRANSFORM_SED.* variables, and that are used to clean
up libtool archives.
|
|
|
|
wrappers to not be generated. I forgot to flip this back after testing on
my NetBSD box.
|
|
inserted into the wrapper scripts.
|
|
catch arguments with symbols that are special to the shell. This should
fix pkg/18156 by Matthias Scheler.
|
|
${ZOULARISBASE} != ${LOCALBASE}. This should fix problems compiling
pkgtools/digest with zoularis where ${ZOULARISBASE} != ${LOCALBASE}.
|
|
add one section for SunOS to possibly allow using the SUNWspro compilers
when building X11 packages that use imake. Many thanks to Matthias Scheler
for his help on this.
Also use _BLNK_OPSYS instead of OPSYS in bsd.buildlink2.mk so that's it's
easier to pretend I'm using a different OS when doing buildlink2 work.
|
|
This script is part of the buildlink2 infrastructure and is harmless if
not used. This allows devel/zlib to build on Solaris. Problem noted by
Stoned Elipot.
|
|
usable.
|
|
|
|
|
|
wrapper script. This can occur if you set something like LD=cc where
the cc wrapper is already generated from CC=cc.
|
|
both of them -- just create wrappers for one, then set the appropriate
env vars to handle the other one.
|