Message ID | 20240819132222.219434-1-cem@kernel.org (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | libfrog: Unconditionally build fsprops.c | expand |
On Mon, Aug 19, 2024 at 03:22:05PM +0200, cem@kernel.org wrote: > From: Carlos Maiolino <cem@kernel.org> > > The new xfs_io fs properties subcommand, requires fsprops to be build, > while libfrog conditionally build it according to the existence of > libattr. > > This causes builds to fail if the libattr headers are not available, > without a clear output. > > Now that xfs_io unconditionally requires libfrog/fsprops.c to be built, > remove the condition from libfrog's Makefile. That means we'll also need to make libattr mandatory in configure, right?
On Mon, Aug 19, 2024 at 07:09:32AM -0700, Christoph Hellwig wrote: > On Mon, Aug 19, 2024 at 03:22:05PM +0200, cem@kernel.org wrote: > > From: Carlos Maiolino <cem@kernel.org> > > > > The new xfs_io fs properties subcommand, requires fsprops to be build, > > while libfrog conditionally build it according to the existence of > > libattr. > > > > This causes builds to fail if the libattr headers are not available, > > without a clear output. > > > > Now that xfs_io unconditionally requires libfrog/fsprops.c to be built, > > remove the condition from libfrog's Makefile. > > That means we'll also need to make libattr mandatory in configure, > right? How about we just opencode ATTR_ENTRY in libfrog and then we can get rid of the libattr dependency for it and xfs_scrub? IIRC that's the only piece of libattr that those pieces actually need. --D
On Mon, Aug 19, 2024 at 08:12:16AM -0700, Darrick J. Wong wrote: > > How about we just opencode ATTR_ENTRY in libfrog and then we can get rid > of the libattr dependency for it and xfs_scrub? IIRC that's the only > piece of libattr that those pieces actually need. We'd also have to switch from attrlist_ent to xfs_attrlist_ent and maybe a few similar substitutions, but otherwise it should work. While we're at it, it might be worth to do the same for scrub and get rid of the libattr dependency entirely.
On Mon, Aug 19, 2024 at 08:23:41AM GMT, Christoph Hellwig wrote: > On Mon, Aug 19, 2024 at 08:12:16AM -0700, Darrick J. Wong wrote: > > > > How about we just opencode ATTR_ENTRY in libfrog and then we can get rid > > of the libattr dependency for it and xfs_scrub? IIRC that's the only > > piece of libattr that those pieces actually need. > > We'd also have to switch from attrlist_ent to xfs_attrlist_ent > and maybe a few similar substitutions, but otherwise it should work. > > While we're at it, it might be worth to do the same for scrub and > get rid of the libattr dependency entirely. > > Sounds like a plan, I can work on that. Thanks for the reviews Carlos
diff --git a/libfrog/Makefile b/libfrog/Makefile index acddc894e..53de7c174 100644 --- a/libfrog/Makefile +++ b/libfrog/Makefile @@ -21,6 +21,7 @@ crc32.c \ file_exchange.c \ fsgeom.c \ fsproperties.c \ +fsprops.c \ getparents.c \ histogram.c \ list_sort.c \ @@ -49,6 +50,7 @@ div64.h \ file_exchange.h \ fsgeom.h \ fsproperties.h \ +fsprops.h \ getparents.h \ histogram.h \ logging.h \ @@ -61,12 +63,6 @@ scrub.h \ workqueue.h LSRCFILES += gen_crc32table.c - -ifeq ($(HAVE_LIBATTR),yes) -CFILES+=fsprops.c -HFILES+=fsprops.h -endif - LDIRT = gen_crc32table crc32table.h default: ltdepend $(LTLIBRARY)