diff options
authorKyle Evans <kevans@FreeBSD.org>2018-08-18 03:20:59 +0000
committerKyle Evans <kevans@FreeBSD.org>2018-08-18 03:20:59 +0000
commit7920ad944bbe862638c164591d7ec64a64d8f62f (patch)
parentf25a4e58ec589007b514bdd8c98f5b91c8f2e16f (diff)
libbe(3): Move build goop back out of cddl/
Some background: in the GSoC project, libbe/Makefile lived in lib/libbe. I created projects/bectl branch, maintained the above for all of five minutes before I misread Makefile.inc1 and decided that it couldn't possibly build outside of cddl/, so I kicked the Makefile out into the cddl/ build and all was good. The misreading was of the bit where .WAIT is added to SUBDIR after lib, libexec but prior to building bin and cddl *only during the install targets*, which is the critical part. Fast forward- buildworld was still broken in my branch unbeknownst to me because I didn't nuke my OBJDIR. Combing through Makefile.inc1 eventually revealed the necessary magic to make sure that libbe's dependencies are specified well enough, and it becomes clear what needs done to make a non-cddl/ build work. This is an interesting prospect, because the build split is kind of annoying to work with. IGNORE_PRAGMA is added to avoid dropping WARNS by one more. This was previously pulled in via cddl/Makefile.inc.
Notes: svn path=/head/; revision=337995
-rw-r--r--lib/libbe/Makefile (renamed from cddl/lib/libbe/Makefile)4
5 files changed, 3 insertions, 8 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index d1fd7314ce9c..44af27d8963b 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -2605,7 +2605,7 @@ cddl/lib/libzfs__L: cddl/lib/libzfs_core__L lib/msun__L lib/libutil__L
cddl/lib/libzfs__L: lib/libthr__L lib/libmd__L lib/libz__L cddl/lib/libumem__L
cddl/lib/libzfs__L: cddl/lib/libuutil__L cddl/lib/libavl__L lib/libgeom__L
-cddl/lib/libbe__L: cddl/lib/libzfs__L
+lib/libbe__L: cddl/lib/libzfs__L
_cddl_lib_libctf= cddl/lib/libctf
_cddl_lib= cddl/lib
diff --git a/cddl/lib/Makefile b/cddl/lib/Makefile
index 2c4085858e8b..69a0e381dfec 100644
--- a/cddl/lib/Makefile
+++ b/cddl/lib/Makefile
@@ -4,7 +4,6 @@
SUBDIR= ${_drti} \
libavl \
- ${_libbe} \
libctf \
${_libdtrace} \
libnvpair \
@@ -17,7 +16,6 @@ SUBDIR= ${_drti} \
SUBDIR.${MK_TESTS}+= tests
.if ${MK_ZFS} != "no"
-_libbe= libbe
_libzfs_core= libzfs_core
_libzfs= libzfs
.if ${MK_LIBTHR} != "no"
@@ -30,7 +28,6 @@ _drti= drti
_libdtrace= libdtrace
-SUBDIR_DEPEND_libbe= libnvpair libzfs
SUBDIR_DEPEND_libdtrace= libctf
SUBDIR_DEPEND_libzfs_core= libnvpair
SUBDIR_DEPEND_libzfs= libavl libnvpair libumem libuutil libzfs_core
diff --git a/lib/Makefile b/lib/Makefile
index 0efc53b8335b..da30e8403a21 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -209,6 +209,7 @@ SUBDIR.${MK_TESTS}+= tests
SUBDIR.${MK_UNBOUND}+= libunbound
SUBDIR.${MK_USB}+= libusbhid libusb
SUBDIR.${MK_OFED}+= ofed
+SUBDIR.${MK_ZFS}+= libbe
.if !make(install)
diff --git a/cddl/lib/libbe/Makefile b/lib/libbe/Makefile
index 7b6f4f1c4472..dad908d2945f 100644
--- a/cddl/lib/libbe/Makefile
+++ b/lib/libbe/Makefile
@@ -4,19 +4,17 @@ PACKAGE= lib${LIB}
LIB= be
-LIBBE_SRC= ${SRCTOP}/lib/libbe
SRCS= be.c be_access.c be_error.c be_info.c
INCS= be.h
MAN= libbe.3
LIBADD+= zfs
LIBADD+= nvpair
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzfs/common
CFLAGS+= -I${SRCTOP}/sys/cddl/compat/opensolaris
CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include
diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk
index d4bf73ab5dc7..753cbe94307e 100644
--- a/share/mk/src.libnames.mk
+++ b/share/mk/src.libnames.mk
@@ -486,7 +486,6 @@ LIBC_NOSSP_PIC?= ${LIBC_NOSSP_PICDIR}/libc_nossp_pic.a
# not using a --sysroot or for meta mode bootstrapping when there is no
# Makefile.depend. These are sorted by directory.
LIBAVLDIR= ${OBJTOP}/cddl/lib/libavl
-LIBBEDIR= ${OBJTOP}/cddl/lib/libbe
LIBCTFDIR= ${OBJTOP}/cddl/lib/libctf
LIBDTRACEDIR= ${OBJTOP}/cddl/lib/libdtrace
LIBNVPAIRDIR= ${OBJTOP}/cddl/lib/libnvpair