]> git.proxmox.com Git - mirror_zfs.git/blobdiff - Makefile.am
zfs promote|rename .../%recv should be an error
[mirror_zfs.git] / Makefile.am
index 39f3fd08484720127149b62f03e843076c1c8996..814998675cd9992369581eff26023ce30cdec3de 100644 (file)
@@ -1,25 +1,94 @@
-AUTOMAKE_OPTIONS = foreign dist-zip
+ACLOCAL_AMFLAGS = -I config
 
-SUBDIRS = doc scripts $(BUILDDIR)
-CONFIG_CLEAN_FILES =  aclocal.m4 config.guess config.sub
-CONFIG_CLEAN_FILES += depcomp missing mkinstalldirs
-EXTRA_DIST = autogen.sh
+include config/rpm.am
+include config/deb.am
+include config/tgz.am
 
-.PHONY: quilt
-quilt:   .quilt-$(BUILDDIR)
-autogen: .autogen-$(BUILDDIR)
-config:  .config-$(BUILDDIR)
-.quilt-$(BUILDDIR):
-       ./scripts/quilt.sh -p $(NAME) -b $(BUILDDIR) -s $(SERIESFILE) -d $(PATCHDIR)
-       echo $(BUILDDIR) >$@
+SUBDIRS = include rpm
+if CONFIG_USER
+SUBDIRS += udev etc man scripts lib tests cmd contrib
+endif
+if CONFIG_KERNEL
+SUBDIRS += module
 
-unquilt:
-       rm -rf $(BUILDDIR)
-       rm -f .quilt-$(BUILDDIR)
+extradir = @prefix@/src/zfs-$(VERSION)
+extra_HEADERS = zfs.release.in zfs_config.h.in
 
-clean-generic:
+kerneldir = @prefix@/src/zfs-$(VERSION)/$(LINUX_VERSION)
+nodist_kernel_HEADERS = zfs.release zfs_config.h module/$(LINUX_SYMBOLS)
+endif
 
-distclean: unquilt
+AUTOMAKE_OPTIONS = foreign
+EXTRA_DIST  = autogen.sh copy-builtin
+EXTRA_DIST += config/config.awk config/rpm.am config/deb.am config/tgz.am
+EXTRA_DIST += META DISCLAIMER COPYRIGHT README.markdown OPENSOLARIS.LICENSE
 
-rpms: dist Makefile
-       rpmbuild -ta $(distdir).tar.gz
+distclean-local::
+       -$(RM) -R autom4te*.cache
+       -find . \( -name SCCS -o -name BitKeeper -o -name .svn -o -name CVS \
+               -o -name .pc -o -name .hg -o -name .git \) -prune -o \
+               \( -name '*.orig' -o -name '*.rej' -o -name '*~' \
+               -o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
+               -o -name '.*.rej' -o -name '.script-config' -o -size 0 \
+               -o -name '*%' -o -name '.*.cmd' -o -name 'core' \
+               -o -name 'Makefile' -o -name 'Module.symvers' \
+               -o -name '*.order' -o -name '*.markers' \) \
+               -type f -print | xargs $(RM)
+
+dist-hook:
+       sed -i 's/Release:[[:print:]]*/Release:      $(RELEASE)/' \
+               $(distdir)/META
+
+checkstyle: cstyle shellcheck flake8 commitcheck
+
+commitcheck:
+       @if git rev-parse --git-dir > /dev/null 2>&1; then \
+               scripts/commitcheck.sh; \
+       fi
+
+cstyle:
+       @find ${top_srcdir} -name '*.[hc]' ! -name 'zfs_config.*' \
+               ! -name '*.mod.c' -type f -exec scripts/cstyle.pl -cpP {} \+
+
+shellcheck:
+       @if type shellcheck > /dev/null 2>&1; then \
+               shellcheck --exclude=SC1090 --format=gcc scripts/paxcheck.sh \
+                       scripts/zloop.sh \
+                       scripts/zfs-tests.sh \
+                       scripts/zfs.sh \
+                       scripts/commitcheck.sh \
+                       $$(find cmd/zed/zed.d/*.sh -type f) \
+                       $$(find cmd/zpool/zpool.d/* -executable); \
+       fi
+
+lint: cppcheck paxcheck
+
+cppcheck:
+       @if type cppcheck > /dev/null 2>&1; then \
+               cppcheck --inline-suppr --quiet --force --error-exitcode=2 \
+               ${top_srcdir}; \
+       fi
+
+paxcheck:
+       @if type scanelf > /dev/null 2>&1; then \
+               scripts/paxcheck.sh ${top_srcdir}; \
+       fi
+
+flake8:
+       @if type flake8 > /dev/null 2>&1; then \
+               flake8 ${top_srcdir}; \
+       fi
+
+ctags:
+       $(RM) tags
+       find $(top_srcdir) -name .git -prune -o -name '*.[hc]' | xargs ctags
+
+etags:
+       $(RM) TAGS
+       find $(top_srcdir) -name .pc -prune -o -name '*.[hc]' | xargs etags -a
+
+tags: ctags etags
+
+pkg: @DEFAULT_PACKAGE@
+pkg-kmod: @DEFAULT_PACKAGE@-kmod
+pkg-utils: @DEFAULT_PACKAGE@-utils