Commit Graph

55 Commits

Author SHA1 Message Date
Baptiste Daroussin
c0b575998b Register libpanel into the available libraries 2015-06-15 21:20:21 +00:00
Adrian Chadd
26b05dff32 Fix incorrect library path. 2015-06-13 22:36:42 +00:00
Simon J. Gerraty
6332aaacb4 Use SRCTOP when defining ROOTOBJDIR
Excplicitly check rather than assume that .CURDIR is
a component of .OBJDIR
Otherwise check for OBJTOP and if that is a match use it.
2015-05-30 15:13:18 +00:00
Baptiste Daroussin
e46a13884e Considers cases when NO_SHARED?=[no|NO] as dynamically linking
This reduces overlinking for parts of the build system where NO_SHARED is
set to no/NO
2015-05-26 01:09:56 +00:00
Baptiste Daroussin
8def216e05 Drop libmandoc and incorporate it into the main mandoc Makefile
This simplifies maintainance of mandoc(1).
Note that the same direction was taken on OpenBSD
2015-05-21 12:51:56 +00:00
Baptiste Daroussin
d612f13908 Register libdtrace and its direct and indirect dependencies
Register librdlt_db
Register libproc dependencies
Register libctf dependencies
2015-05-19 22:22:53 +00:00
Cy Schubert
d5d0d860fb Correct location for libntpevent.a. 2015-05-15 19:37:17 +00:00
Bryan Drewery
5abe80cf6b Fix spelling of INTERNALLIBS 2015-05-08 16:43:01 +00:00
Baptiste Daroussin
f67555d54c Style fix
Reported by:	bdrewery
2015-05-04 16:59:09 +00:00
Baptiste Daroussin
5551c57355 Rework PRIVATELIB
Now when a lib is marked as PRIVATELIB it is renamed into libprivate$foo instead
of being installed in /usr/lib/private and playing with rpath.

Also allow to install headers for PRIVATELIBS in that case the headers will be
installed in /usr/include/private/$foo

Keep the headers under a private namespace to prevent third party build system
to easily find them to ensure they are only used on purpose.

This allows for non base applications to statically link against a library in
base which is linked to a privatelib

Treating PRIVATELIBS as regular libraries allows to push them into our current
compatX packages if needed.

While here finish promotion of libevent as PRIVATELIB
Install header for bsdstat and libucl

Differential Revision:	https://reviews.freebsd.org/D2365
Reviewed by:	brooks, des
Discussed with:	imp
2015-05-04 16:28:54 +00:00
Brooks Davis
757a876f36 Make it harder to specify invalid LIBADD by causing values without
corresponding DPADD_<lib> variables to produce a useful error message.

Differential Revision:	https://reviews.freebsd.org/D2295
Reviewed by:	bapt
Sponsored by:	DARPA, AFRL
2015-04-16 15:34:22 +00:00
Ed Maste
ad746bd1b7 Fix libfifolog dependency on libz
Consumers should not need to encode fifolog's dependency on libz.
Handle it automatically in src.libnames.mk.

Differential Revision:	https://reviews.freebsd.org/D2278
Reviewed by:	bapt
Sponsored by:	The FreeBSD Foundation
2015-04-10 21:24:38 +00:00
Baptiste Daroussin
ea4a4d8a2e Fix overlinking in bhyve:
libvmmapi is actually needed to be linked to libutil, not bhyve nor bhyveload
2015-04-09 21:38:40 +00:00
Baptiste Daroussin
32e5044deb Convert mt(1) and libmt to LIBADD
While here fix missing link to libbsdxml for libmt
Fix overlinking in mt(1)
Make add an indirect libmt dependency on bsdxml to allow static linking if
needed
2015-04-09 21:26:38 +00:00
Cy Schubert
2b15cb3d09 MFV ntp 4.2.8p1 (r258945, r275970, r276091, r276092, r276093, r278284)
Thanks to roberto for providing pointers to wedge this into HEAD.

Approved by:	roberto
2015-03-30 13:30:15 +00:00
Enji Cooper
8e16f692a0 Fix typo (_DP_grom -> _DP_geom) so applications that need to link against
libgeom do so successfully

Tested by running `geom part list` produced from a -DWITHOUT_DYNAMICROOT built
world

PR: 198078
Reported by: Eir Nym <eirnym@gmail.com>
2015-02-28 05:14:42 +00:00
Rui Paulo
532000256b Merge xz 5.2.0.
This brings support for multi-threaded compression.  This brings close
N times faster compression where N is the number of CPU cores.
Because of this, liblzma now depends on libthr.

Soon libarchive will be modified to use the new lzma API.

Thanks to antoine@ for the exp-run.

Differential Revision:	 https://reviews.freebsd.org/D1786
Reviewed by:	bapt
2015-02-09 06:20:34 +00:00
John Baldwin
64de80195b Add a new device control utility for new-bus devices called devctl. This
allows the user to request administrative changes to individual devices
such as attach or detaching drivers or disabling and re-enabling devices.
- Add a new /dev/devctl2 character device which uses ioctls for device
  requests.  The ioctls use a common 'struct devreq' which is somewhat
  similar to 'struct ifreq'.
- The ioctls identify the device to operate on via a string.  This
  string can either by the device's name, or it can be a bus-specific
  address.  (For unattached devices, a bus address is the only way to
  locate a device.)  Bus drivers register an eventhandler to claim
  unrecognized device names that the driver recognizes as a valid address.
  Two buses currently support addresses: ACPI recognizes any device
  in the ACPI namespace via its full path starting with "\" and
  the PCI bus driver recognizes an address specification of
  'pci[<domain>:]<bus>:<slot>:<func>' (identical to the PCI selector
  strings supported by pciconf).
- To make it easier to cut and paste, change the PnP location string
  in the PCI bus driver to output a full PCI selector string rather
  than 'slot=<slot> function=<func>'.
- Add a devctl(3) interface in libdevctl which provides a wrapper around
  the ioctls and is the preferred interface for other userland code.
- Add a devctl(8) program which is a simple wrapper around the requests
  supported by devctl(3).
- Add a device_is_suspended() function to check DF_SUSPENDED.
- Add a resource_unset_value() function that can be used to remove a
  hint from the kernel environment.  This is used to clear a
  hint.<driver>.<unit>.disabled hint when re-enabling a boot-time
  disabled device.

Reviewed by:	imp (parts)
Requested by:	imp (changing PCI location string)
Relnotes:	yes
2015-02-06 16:09:01 +00:00
Antoine Brodin
0d4423677a Add ncurses to _LIBRARIES so that libmenu is correctly linked
PR:		ports/195782
2014-12-28 15:38:50 +00:00
Rui Paulo
2a1136620d Switch gpioctl(8) to LIBADD. 2014-12-03 03:05:15 +00:00
Ed Maste
3194293903 Build infrastructure for elftoolchain tools
Set WITH_ELFTOOLCHAIN_TOOLS in src.conf to use the elftoolchain version
of the following tools:

 * addr2line
 * elfcopy (strip / mcs)
 * nm
 * size
 * strings

Reviewed by:	bapt (earlier version)
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D1224
2014-12-01 17:49:42 +00:00
Baptiste Daroussin
4bf5485791 Update libucl to latest version
While here correctly link libucl to libm and register the dependency on libm
for static building
2014-11-29 00:45:09 +00:00
Baptiste Daroussin
b9270546cf Remove all remnant ugly LD<lbname> but atf one until the aft framework knows
about LIBADD
2014-11-25 22:39:59 +00:00
Baptiste Daroussin
4c5e7118db Register the explicit (pthread) and implicit (for static) dependencies for
kerberos
2014-11-25 22:17:31 +00:00
Baptiste Daroussin
eafea10bae Defines the libssh dependencies 2014-11-25 22:10:31 +00:00
Baptiste Daroussin
8794b8a783 Define missing libraries to be able to convert gnu, cddl and secure to LIBADD 2014-11-25 21:16:44 +00:00
Baptiste Daroussin
92fc4f553a Sort libraries definitions
Reported by:	bjk
2014-11-25 19:13:03 +00:00
Baptiste Daroussin
9876880a9b Remove duplicated krb5
Reported by:	markj
2014-11-25 19:07:31 +00:00
Baptiste Daroussin
29a8bda7f0 Defined the needed library to convert usr.sbin to LIBADD 2014-11-25 16:51:06 +00:00
Baptiste Daroussin
30fca3b0cc Defines all the libraries needed for usr.bin 2014-11-25 14:28:15 +00:00
Baptiste Daroussin
cc0d90a799 Define libipf internal library 2014-11-25 11:22:28 +00:00
Baptiste Daroussin
e859a32cd6 Fix recursive problem with libedit dependency, if you depends on ncursesw and
not on itself
2014-11-25 11:14:42 +00:00
Baptiste Daroussin
ca88232b48 Add a definition for libxo 2014-11-25 11:13:21 +00:00
Baptiste Daroussin
d98c8ac029 Define compiler_rt and ssp_nonshared libraries 2014-11-25 11:07:03 +00:00
Baptiste Daroussin
85abe78406 libvers and libsl are internal libraries 2014-11-25 09:54:05 +00:00
Baptiste Daroussin
4ab8910605 Fix make depends with libnetbsd 2014-11-25 07:47:44 +00:00
Baptiste Daroussin
882e68f65b Add definitions of kerberos libraries 2014-11-25 07:13:31 +00:00
Baptiste Daroussin
a320ad37fe libevent is an internallib 2014-11-25 00:51:49 +00:00
Baptiste Daroussin
52a78c6703 libatf-c++ exposes libatf-c abi hence we need to explicit link to atf-c if
atf-c++ is requested
2014-11-25 00:28:27 +00:00
Baptiste Daroussin
22e6921db8 Do not overwrite any LIBNETBSD or LIBNETBSDDIR if they are already defined 2014-11-25 00:12:25 +00:00
Baptiste Daroussin
14d4f1c238 Define special case for atf which libraries names are different from their
declaration
2014-11-25 00:01:53 +00:00
Baptiste Daroussin
5716a77a38 s/cft/ctf 2014-11-24 23:58:04 +00:00
Baptiste Daroussin
405c01a1bc Fix typo 2014-11-24 22:35:32 +00:00
Baptiste Daroussin
440888c959 Fix dependencies in case of building statically 2014-11-24 22:32:18 +00:00
Baptiste Daroussin
873ad7fbf4 Avoid code duplication by directly adding _INSTALLLIBS and _PRIVATELIBS into
_LIBRARIES

Reported by:	emaste
2014-11-24 22:29:16 +00:00
Baptiste Daroussin
91bac0a94b Each time something links to sqlite3 it should link to pthread 2014-11-24 22:17:35 +00:00
Baptiste Daroussin
2df4d9628a Convert makefs to LIBADD
Add definition of libnetbsd in src.libnames.mk
2014-11-24 22:15:30 +00:00
Baptiste Daroussin
ebadd13c08 Convert mandoc to LIBADD
While here remove the ugly LDMANDOC
2014-11-24 22:12:27 +00:00
Baptiste Daroussin
768987b5d0 Correctly specify -L for internal and private libs 2014-11-24 21:39:28 +00:00
Baptiste Daroussin
85e4c389d1 Implement LIBADD
LIBADD will automatically set DPADD and LDADD when needed including their
dependencies, LIBADD automatically handles private and internal libs so that
the end user Makefile does not have to care about it.

This allows to reduce overlinking on the base system leaving the framework get
the dependencies properly.

It also allows to built components binaries statically.

To use it:

Replace:
DPADD=	${LIBARCHIVE} ${LIBSSL}
LDADD=	-larchive -lssl

by:
LIBADD=	archive ssl

Differential Revision:	https://reviews.freebsd.org/D1209
Reviewed by:	brooks imp
2014-11-24 21:31:08 +00:00