From 7920ad944bbe862638c164591d7ec64a64d8f62f Mon Sep 17 00:00:00 2001 From: Kyle Evans Date: Sat, 18 Aug 2018 03:20:59 +0000 Subject: 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. --- Makefile.inc1 | 2 +- cddl/lib/Makefile | 3 --- cddl/lib/libbe/Makefile | 32 -------------------------------- lib/Makefile | 1 + lib/libbe/Makefile | 30 ++++++++++++++++++++++++++++++ share/mk/src.libnames.mk | 1 - 6 files changed, 32 insertions(+), 37 deletions(-) delete mode 100644 cddl/lib/libbe/Makefile create mode 100644 lib/libbe/Makefile 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 .endif _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 .endif -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/cddl/lib/libbe/Makefile b/cddl/lib/libbe/Makefile deleted file mode 100644 index 7b6f4f1c4472..000000000000 --- a/cddl/lib/libbe/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $FreeBSD$ - -PACKAGE= lib${LIB} -LIB= be -SHLIB_MAJOR= 1 -SHLIB_MINOR= 0 -LIBBE_SRC= ${SRCTOP}/lib/libbe - -.PATH: ${LIBBE_SRC} -SRCS= be.c be_access.c be_error.c be_info.c -INCS= be.h -MAN= libbe.3 - -WARNS?= 2 - -LIBADD+= zfs -LIBADD+= nvpair - -CFLAGS+= -I${LIBBE_SRC} -CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzfs/common -CFLAGS+= -I${SRCTOP}/sys/cddl/compat/opensolaris -CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include -CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/lib/libumem -CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzpool/common -CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/common/zfs -CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs -CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common -CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/head - -CFLAGS+= -DNEED_SOLARIS_BOOLEAN - -.include 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) SUBDIR_PARALLEL= diff --git a/lib/libbe/Makefile b/lib/libbe/Makefile new file mode 100644 index 000000000000..dad908d2945f --- /dev/null +++ b/lib/libbe/Makefile @@ -0,0 +1,30 @@ +# $FreeBSD$ + +PACKAGE= lib${LIB} +LIB= be +SHLIB_MAJOR= 1 +SHLIB_MINOR= 0 + +SRCS= be.c be_access.c be_error.c be_info.c +INCS= be.h +MAN= libbe.3 + +WARNS?= 2 +IGNORE_PRAGMA= yes + +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 +CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/lib/libumem +CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzpool/common +CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/common/zfs +CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs +CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common +CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/head + +CFLAGS+= -DNEED_SOLARIS_BOOLEAN + +.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 -- cgit v1.2.3