]>
git.ipfire.org Git - thirdparty/man-pages.git/blob - share/mk/dist.mk
1 ########################################################################
2 # Copyright 2021-2022, Alejandro Colomar <alx@kernel.org>
3 # SPDX-License-Identifier: GPL-3.0-or-later
4 ########################################################################
7 ifndef MAKEFILE_DIST_INCLUDED
8 MAKEFILE_DIST_INCLUDED
:= 1
11 include $(MAKEFILEDIR
)/build
/_.mk
12 include $(MAKEFILEDIR
)/cmd.mk
13 include $(MAKEFILEDIR
)/compress.mk
14 include $(MAKEFILEDIR
)/install/_.mk
15 include $(MAKEFILEDIR
)/version.mk
16 include $(MAKEFILEDIR
)/verbose.mk
19 _DISTDIR
:= $(builddir
)/dist
22 DEFAULT_TARFLAGS
:= --sort=name
23 DEFAULT_TARFLAGS
+= --owner
=root
:0
24 DEFAULT_TARFLAGS
+= --group
=root
:0
25 DEFAULT_TARFLAGS
+= --mtime
='$(DISTDATE)'
27 TARFLAGS
:= $(DEFAULT_TARFLAGS
) $(EXTRA_TARFLAGS
)
30 DISTFILES
:= $(shell $(GIT
) ls-files
$(HIDE_ERR
) |
$(SED
) 's,^,$(srcdir)/,')
31 _DISTFILES
:= $(patsubst $(srcdir)/%,$(_DISTDIR
)/%,$(DISTFILES
))
32 _DISTPAGES
:= $(filter $(_DISTDIR
)/man
%,$(_DISTFILES
))
33 _DISTOTHERS
:= $(filter-out $(_DISTDIR
)/man
%,$(_DISTFILES
))
35 DISTFILE
:= $(builddir
)/$(DISTNAME
).
tar
36 compression
:= bz2 gz lz xz
37 dist := $(foreach x
,$(compression
),dist-
$(x
))
45 $(_DISTPAGES
): $(_DISTDIR
)/man
%: $(srcdir)/man
% |
$$(@D
)/
47 $(INSTALL_DATA
) -T
$< $@
48 $(SED
) -i
'/^.TH/s/(unreleased)/$(DISTVERSION)/' $@
49 $(SED
) -i
"/^.TH/s/(date)/$$(git log --format=%cs -1 -- $< $(HIDE_ERR))/" $@
51 $(_DISTOTHERS
): $(_DISTDIR
)/%: $(srcdir)/% |
$$(@D
)/
56 $(DISTFILE
): $(_DISTFILES
) |
$$(@D
)/
58 $(TAR
) $(TARFLAGS
) -cf
$@
-T
/dev
/null
60 |
$(SED
) 's,^,$(_DISTDIR)/,' \
61 |
$(XARGS
) $(TAR
) $(TARFLAGS
) -rf
$@
-C
$(srcdir) \
62 --transform
's,^$(_DISTDIR),$(DISTNAME),'
64 $(DISTFILE
).bz2
: %.bz2
: % |
$$(@D
)/
66 $(BZIP2
) $(BZIP2FLAGS
) -kf
$<
69 $(DISTFILE
).gz
: %.gz
: % |
$$(@D
)/
71 $(GZIP
) $(GZIPFLAGS
) -knf
$<
73 $(DISTFILE
).lz
: %.lz
: % |
$$(@D
)/
75 $(LZIP
) $(LZIPFLAGS
) -kf
$<
78 $(DISTFILE
).xz
: %.xz
: % |
$$(@D
)/
80 $(XZ
) $(XZFLAGS
) -kf
$<
84 dist-tar
: $(DISTFILE
);
87 $(dist): dist-
%: $(DISTFILE
).
%;