+# SPDX-License-Identifier: GPL-2.0
#
# Copyright (c) 2000-2006 Silicon Graphics, Inc. All Rights Reserved.
#
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 = .
m4/ltversion.m4 po/xfsprogs.pot .gitcensus $(CONFIGURE)
LDIRT = config.log .ltdep .dep config.status config.cache confdefs.h \
conftest* built .census install.* install-dev.* *.gz *.xz \
- autom4te.cache/* libtool include/builddefs include/platform_defs.h
+ autom4te.cache/* libtool include/builddefs
ifeq ($(HAVE_BUILDDEFS), yes)
LDIRDIRT = $(SRCDIR)
LIBFROG_SUBDIR = libfrog
DLIB_SUBDIRS = libxlog libxcmd libhandle
LIB_SUBDIRS = libxfs $(DLIB_SUBDIRS)
-TOOL_SUBDIRS = copy db estimate fsck growfs io logprint mkfs quota \
+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
-default: include/builddefs include/platform_defs.h
+default: include/builddefs
ifeq ($(HAVE_BUILDDEFS), no)
$(Q)$(MAKE) $(MAKEOPTS) -C . $@
else
copy: libxlog
mkfs: libxcmd
spaceman: libxcmd
+scrub: libhandle libxcmd
+rtcp: libfrog
ifeq ($(HAVE_BUILDDEFS), yes)
include $(BUILDRULES)
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
include/builddefs: configure
./configure $$LOCAL_CONFIGURE_OPTIONS
-include/platform_defs.h: include/builddefs
-## Recover from the removal of $@
- @if test -f $@; then :; else \
- rm -f include/builddefs; \
- $(MAKE) $(MAKEOPTS) $(AM_MAKEFLAGS) include/builddefs; \
- fi
-
install: $(addsuffix -install,$(SUBDIRS))
$(INSTALL) -m 755 -d $(PKG_DOC_DIR)
$(INSTALL) -m 644 README $(PKG_DOC_DIR)
#
# All this gunk is to allow for a make dist on an unconfigured tree
#
-dist: include/builddefs include/platform_defs.h default
+dist: include/builddefs default
ifeq ($(HAVE_BUILDDEFS), no)
$(Q)$(MAKE) $(MAKEOPTS) -C . $@
else
$(Q)$(MAKE) $(MAKEOPTS) $(SRCTAR)
endif
-deb: include/builddefs include/platform_defs.h
+deb: include/builddefs
ifeq ($(HAVE_BUILDDEFS), no)
$(Q)$(MAKE) $(MAKEOPTS) -C . $@
else
# need to build translations before the source tarball
$(Q)$(MAKE) $(MAKEOPTS) -C po
$(Q)$(MAKE) $(MAKEOPTS) $(SRCDIR)
- $(Q)cd $(SRCDIR) && dpkg-buildpackage
+ $(Q)rm -f $(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
+ $(Q)$(LN_S) $(SRCTAR) $(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
+ $(Q)cd $(SRCDIR) && dpkg-buildpackage $$LOCAL_DPKG_OPTIONS # -sa -S
endif
$(SRCDIR) : $(_FORCE) $(SRCTAR)