]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blobdiff - Makefile
Merge tag 'xfsprogs-fixes-6.6_2024-01-11' of https://git.kernel.org/pub/scm/linux...
[thirdparty/xfsprogs-dev.git] / Makefile
index 6774825e9ee0775cdfdf690ae3d0ce4ae2a14e2a..c12df98dbef384d218f203309b83338fad1bc23a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -16,6 +16,20 @@ else
   Q = @
 endif
 
+CHECK=sparse
+CHECK_OPTS=-Wsparse-all -Wbitwise -Wno-transparent-union -Wno-return-void -Wno-undef \
+       -Wno-non-pointer-null -D__CHECK_ENDIAN__ -D__linux__
+
+ifeq ("$(origin C)", "command line")
+  CHECK_CMD=$(CHECK) $(CHECK_OPTS)
+  CHECKSRC=$(C)
+else
+  CHECK_CMD=@true
+  CHECKSRC=0
+endif
+
+export CHECK_CMD CHECKSRC
+
 MAKEOPTS = --no-print-directory Q=$(Q)
 
 TOPDIR = .
@@ -48,25 +62,17 @@ HDR_SUBDIRS = include libxfs
 LIBFROG_SUBDIR = libfrog
 DLIB_SUBDIRS = libxlog libxcmd libhandle
 LIB_SUBDIRS = libxfs $(DLIB_SUBDIRS)
-TOOL_SUBDIRS = copy db estimate fsck growfs io logprint mkfs quota \
-               mdrestore repair rtcp m4 man doc debian spaceman scrub
+TOOL_SUBDIRS = copy db estimate fsck fsr growfs io logprint mkfs quota \
+               mdrestore repair rtcp m4 man doc debian spaceman
 
-ifneq ("$(PKG_PLATFORM)","darwin")
-TOOL_SUBDIRS += fsr
+ifeq ("$(ENABLE_SCRUB)","yes")
+TOOL_SUBDIRS += scrub
 endif
 
 ifneq ("$(XGETTEXT)","")
 TOOL_SUBDIRS += po
 endif
 
-# If we are on OS X, use glibtoolize from MacPorts, as OS X doesn't have
-# libtoolize binary itself.
-LIBTOOLIZE_TEST=$(shell libtoolize --version >/dev/null 2>&1 && echo found)
-LIBTOOLIZE_BIN=libtoolize
-ifneq ("$(LIBTOOLIZE_TEST)","found")
-LIBTOOLIZE_BIN=glibtoolize
-endif
-
 # include is listed last so it is processed last in clean rules.
 SUBDIRS = $(LIBFROG_SUBDIR) $(LIB_SUBDIRS) $(TOOL_SUBDIRS) include
 
@@ -93,6 +99,7 @@ copy: libxlog
 mkfs: libxcmd
 spaceman: libxcmd
 scrub: libhandle libxcmd
+rtcp: libfrog
 
 ifeq ($(HAVE_BUILDDEFS), yes)
 include $(BUILDRULES)
@@ -100,14 +107,8 @@ else
 clean: # if configure hasn't run, nothing to clean
 endif
 
-
-# Recent versions of libtool require the -i option for copying auxiliary
-# files (config.sub, config.guess, install-sh, ltmain.sh), while older
-# versions will copy those files anyway, and don't understand -i.
-LIBTOOLIZE_INSTALL = `$(LIBTOOLIZE_BIN) -n -i >/dev/null 2>/dev/null && echo -i`
-
 configure: configure.ac
-       $(LIBTOOLIZE_BIN) -c $(LIBTOOLIZE_INSTALL) -f
+       libtoolize -c -i -f
        cp include/install-sh .
        aclocal -I m4
        autoconf