mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 19:04:45 +03:00
Move zfs_gitrev.h to build directory
Currently an out-of-tree build does not work with read-only source directory because zfs_gitrev.h can't be created. Move this file to the build directory, which is more appropriate for a generated file, and drop the dist-hook for zfs_gitrev.h. There is no need to distribute this file since it will be regenerated as part of the compilation in any case. scripts/make_gitrev.sh tries to avoid updating zfs_gitrev.h if there has been no change, however this doesn't cover the case when the source directory is not in git: in that case zfs_gitrev.h gets overwritten even though it's always "unknown". Simplify the logic to always write out a new version of zfs_gitrev.h, compare against the old and overwrite only if different. This is now simple enough to just include in the Makefile, so drop the script. Reviewed-by: Ryan Moeller <ryan@iXsystems.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Arvind Sankar <nivedita@alum.mit.edu> Closes #10493
This commit is contained in:
committed by
Brian Behlendorf
parent
33982eb24c
commit
109d2c9310
+17
-4
@@ -47,11 +47,25 @@ EXTRA_DIST += module/zfs/THIRDPARTYLICENSE.cityhash.descrip
|
||||
|
||||
@CODE_COVERAGE_RULES@
|
||||
|
||||
GITREV = include/zfs_gitrev.h
|
||||
|
||||
.PHONY: gitrev
|
||||
gitrev:
|
||||
-${top_srcdir}/scripts/make_gitrev.sh
|
||||
ZFS_GITREV=$$(cd $(top_srcdir) && \
|
||||
git describe --always --long --dirty 2>/dev/null); \
|
||||
ZFS_GITREV=$${ZFS_GITREV:-unknown}; \
|
||||
printf '#define\tZFS_META_GITREV "%s"\n' \
|
||||
"$${ZFS_GITREV}" >$(GITREV)~; \
|
||||
if cmp -s $(GITREV) $(GITREV)~; then \
|
||||
$(RM) $(GITREV)~; \
|
||||
else \
|
||||
mv -f $(GITREV)~ $(GITREV); \
|
||||
fi
|
||||
|
||||
BUILT_SOURCES = gitrev
|
||||
$(GITREV): gitrev
|
||||
|
||||
BUILT_SOURCES = $(GITREV)
|
||||
CLEANFILES = $(GITREV)
|
||||
|
||||
# Double-colon rules are allowed; there are multiple independent definitions.
|
||||
distclean-local::
|
||||
@@ -70,8 +84,7 @@ all-local:
|
||||
-[ -x ${top_builddir}/scripts/zfs-tests.sh ] && \
|
||||
${top_builddir}/scripts/zfs-tests.sh -c
|
||||
|
||||
dist-hook: gitrev
|
||||
cp ${top_srcdir}/include/zfs_gitrev.h $(distdir)/include; \
|
||||
dist-hook:
|
||||
sed ${ac_inplace} -e 's/Release:[[:print:]]*/Release: $(RELEASE)/' \
|
||||
$(distdir)/META
|
||||
|
||||
|
||||
Reference in New Issue
Block a user