RN rnmake  3.0.0
Rules.tarball.mk
Go to the documentation of this file.
1 ################################################################################
2 #
3 # Rules.tarball.mk
4 #
5 ifdef RNMAKE_DOXY
6 /*!
7 \file
8 
9 \brief Make Debian repo packages for a package.
10 
11 This file is automatically included by \ref Rules.mk when one or more of the
12 Debian make goals are specified.
13 
14 \pkgsynopsis
15 RN Make System
16 
17 \pkgfile{Rules.tarball.mk}
18 
19 \pkgauthor{Daniel Packard,daniel@roadnarrows.com}
20 \pkgauthor{Robin Knight,robin.knight@roadnarrows.com}
21 
22 \pkgcopyright{2009-2018,RoadNarrows LLC,http://www.roadnarrows.com}
23 
24 \license{MIT}
25 
26 \EulaBegin
27 \EulaEnd
28 
29 \cond RNMAKE_DOXY
30  */
31 endif
32 #
33 ################################################################################
34 
35 _RULES_TARBALL_MK = 1
36 
37 # binary tarball stem (basename without any extensions)
38 TARBALL_BIN_STEM = $(RNMAKE_PKG_FULL_NAME)-$(RNMAKE_ARCH)
39 
40 # tarball file basenames for source, documentation, and binary
41 TARBALL_SRC_NAME = $(RNMAKE_PKG_FULL_NAME)-src.tar.gz
42 TARBALL_DOC_NAME = $(RNMAKE_PKG_FULL_NAME)-doc.tar.gz
43 TARBALL_BIN_NAME = $(TARBALL_BIN_STEM)-$(RNMAKE_ARCH).tar.gz
44 
45 # binary tarball temporary staging directory
46 DISTDIR_TMP_TARBALL_BIN = $(DISTDIR_TMP)/$(TARBALL_BIN_STEM)
47 
48 
49 # make all tarball archives
50 .PHONY: tarballs
51 tarballs: pkgbanner tarball-bin tarball-doc tarball-src
52  $(footer)
53 
54 # make documentation tarball archive
55 .PHONY: tarball-doc
56 tarball-doc:
57  $(printTgtGoal)
58  $(if $(call isDir,$(DISTDIR_DOC)),,\
59  $(error No documentation - Try 'make documents' first.))
60  @cd $(DIST_ARCH)/doc; \
61  $(TAR) $(DISTDIR_REPO)/$(TARBALL_DOC_NAME) $(RNMAKE_PKG_FULL_NAME)-doc
62  $(footer)
63 
64 # make source tarball archive
65 DISTDIR_DOC = $(DIST_ARCH)/doc/$(RNMAKE_PKG_FULL_NAME)-doc
66 .PHONY: tarball-src
67 tarball-src:
68  $(printTgtGoal)
69  @$(RM) $(DISTDIR_SRC)
70  @test -d $(DISTDIR_SRC) || $(MKDIR) $(DISTDIR_SRC)
71  @$(RNMAKE_ROOT)/utils/tarball-src-filter.sh $(RNMAKE_PKG_ROOT) | \
72  while read src; \
73  do \
74  $(RNMAKE_ROOT)/utils/cppath.sh $$src $(DISTDIR_SRC); \
75  done;
76  @cd $(DIST_ARCH)/src; \
77  $(TAR) $(DISTDIR_REPO)/$(TARBALL_SRC_NAME) $(RNMAKE_PKG_FULL_NAME)
78  $(footer)
79 
80 # make binary tarball archive
81 .PHONY: tarball-bin
82 tarball-bin:
83  $(printTgtGoal)
84  $(if $(call isDir,$(DIST_ARCH)),,$(error Nothing made - Try 'make' first.))
85  @test -d $(DISTDIR_TMP_TARBALL_BIN) || $(MKDIR) $(DISTDIR_TMP_TARBALL_BIN)
86  @cd $(DIST_ARCH); \
87  $(FIND) bin lib include etc share -print | \
88  while read src; \
89  do \
90  if [ -f $$src ]; \
91  then \
92  $(RNMAKE_ROOT)/utils/cppath.sh $$src $(DISTDIR_TMP_TARBALL_BIN); \
93  fi; \
94  done;
95  @cd $(DIST_ARCH)/tmp; \
96  $(TAR) $(DISTDIR_REPO)/$(TARBALL_BIN_NAME) $(TARBALL_BIN_STEM)
97  $(footer)
98 
99 
100 ifdef RNMAKE_DOXY
101 /*! \endcond RNMAKE_DOXY */
102 endif