docs/src/Makefile

Sun, 17 Dec 2023 14:25:34 +0100

author
Mike Becker <universe@uap-core.de>
date
Sun, 17 Dec 2023 14:25:34 +0100
changeset 797
edbb20b1438d
parent 714
10a5d6ce0906
permissions
-rw-r--r--

[Makefile] fix missing rules preventing dry-runs

We have to support dry-runs, because many IDEs are using
dry-runs to collect build information.

Some rules have dependencies that expect certain files or
directories to be just present. We added respective build
rules which invoke the test program. This way, the behavior
when running make normally is exactly the same, but dry-runs
are also not failing now.

265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 # Copyright 2017 Olaf Wintermann. All rights reserved.
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 # Redistribution and use in source and binary forms, with or without
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 # modification, are permitted provided that the following conditions are met:
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 # 1. Redistributions of source code must retain the above copyright
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 # notice, this list of conditions and the following disclaimer.
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 # 2. Redistributions in binary form must reproduce the above copyright
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 # notice, this list of conditions and the following disclaimer in the
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 # documentation and/or other materials provided with the distribution.
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 # POSSIBILITY OF SUCH DAMAGE.
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 #
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 PANDOC=pandoc
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30 PFLAGS = -c davdoc.css -B header.html -A footer.html
562
78a25071ed88 adds missing make target dependencies for documentation
Mike Becker <universe@uap-core.de>
parents: 436
diff changeset
31 PDEPEND = header.html footer.html
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
32 PFLAGSMAN=-s -t man
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
33
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
34 SRC = getting-started.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
35 SRC += commands.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
36 SRC += list.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
37 SRC += get.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
38 SRC += put.md
714
10a5d6ce0906 adds documentation for the edit command
Mike Becker <universe@uap-core.de>
parents: 703
diff changeset
39 SRC += edit.md
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
40 SRC += mkdir.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
41 SRC += remove.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
42 SRC += copy.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
43 SRC += move.md
694
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
44 SRC += rename.md
407
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
45 SRC += export.md
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
46 SRC += import.md
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
47 SRC += get-property.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
48 SRC += set-property.md
320
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 285
diff changeset
49 SRC += remove-property.md
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
50 SRC += lock.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
51 SRC += unlock.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
52 SRC += info.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
53 SRC += date.md
694
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
54 SRC += versioncontrol.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
55 SRC += list-versions.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
56 SRC += checkout.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
57 SRC += checkin.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
58 SRC += uncheckout.md
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
59 SRC += configuration.md
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
60 SRC += encryption.md
266
8c44c5919691 more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 265
diff changeset
61 SRC += add-repository.md
407
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
62 SRC += remove-repository.md
266
8c44c5919691 more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 265
diff changeset
63 SRC += list-repositories.md
694
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
64 SRC += repository-url.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
65 SRC += add-user.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
66 SRC += remove-user.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
67 SRC += edit-user.md
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
68 SRC += list-users.md
266
8c44c5919691 more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 265
diff changeset
69 SRC += check-config.md
273
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
70 SRC += introduction.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
71 SRC += sync-commands.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
72 SRC += pull.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
73 SRC += push.md
320
12ed560c926c adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 285
diff changeset
74 SRC += archive.md
694
60edf3d679fd add empty documentation pages for all new commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 562
diff changeset
75 SRC += restore.md
562
78a25071ed88 adds missing make target dependencies for documentation
Mike Becker <universe@uap-core.de>
parents: 436
diff changeset
76 SRC += list-conflicts.md
273
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
77 SRC += resolve-conflicts.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
78 SRC += delete-conflicts.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
79 SRC += trash-info.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
80 SRC += empty-trash.md
407
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
81 SRC += add-tag.md
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
82 SRC += remove-tag.md
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
83 SRC += set-tags.md
9505224d2fd2 adds documentation for new dav features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 320
diff changeset
84 SRC += list-tags.md
273
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
85 SRC += add-directory.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
86 SRC += list-directories.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
87 SRC += sync-check-config.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
88 SRC += check-repositories.md
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
89 SRC += sync-configuration.md
703
2e3a24b9896a update man pages
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 694
diff changeset
90 SRC += sync-list-versions.md
273
c743721d566f more documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 266
diff changeset
91
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
92 SRCMAN = dav.1.md
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
93 SRCMAN += dav-sync.1.md
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
94
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
95 HTML = $(SRC:%.md=build/%.html)
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
96 MAN = $(SRCMAN:%.md=build/%.man)
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
97
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
98 DISTHTML = ../html
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
99 DISTMAN = ../man
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
100
285
02d3e4b1245f adds some small fixes for 1.0 release
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 276
diff changeset
101 FILES = build/davdoc.css build/index.html
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
102
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
103 all: doc manual
276
20a176d5a53e adds more details to add-directory.md
Mike Becker <universe@uap-core.de>
parents: 275
diff changeset
104
20a176d5a53e adds more details to add-directory.md
Mike Becker <universe@uap-core.de>
parents: 275
diff changeset
105 doc: build $(HTML) $(FILES)
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
106
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
107 manual: build $(MAN)
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
108
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
109 build:
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
110 mkdir -p build
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
111
562
78a25071ed88 adds missing make target dependencies for documentation
Mike Becker <universe@uap-core.de>
parents: 436
diff changeset
112 build/%.html: %.md $(PDEPEND)
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
113 $(PANDOC) $(PFLAGS) $< -o $@
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
114
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
115 build/%.man: %.md
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
116 $(PANDOC) $(PFLAGSMAN) $< -o $@
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
117
562
78a25071ed88 adds missing make target dependencies for documentation
Mike Becker <universe@uap-core.de>
parents: 436
diff changeset
118 build/davdoc.css: davdoc.css
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
119 cp davdoc.css build
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
120
562
78a25071ed88 adds missing make target dependencies for documentation
Mike Becker <universe@uap-core.de>
parents: 436
diff changeset
121 build/index.html: index.html
285
02d3e4b1245f adds some small fixes for 1.0 release
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 276
diff changeset
122 cp index.html build
02d3e4b1245f adds some small fixes for 1.0 release
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 276
diff changeset
123
436
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
124 dist: doc manual
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
125 rm -Rf $(DISTHTML) $(DISTMAN)
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
126 mkdir -p $(DISTHTML) $(DISTMAN)
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
127 cp build/*.html $(DISTHTML)/
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
128 cp build/*.css $(DISTHTML)/
daea53362170 adds draft man pages
Mike Becker <universe@uap-core.de>
parents: 407
diff changeset
129 cp build/*.man $(DISTMAN)/
275
fa48ab29abd2 adds more details to add-directory.md
Mike Becker <universe@uap-core.de>
parents: 273
diff changeset
130
276
20a176d5a53e adds more details to add-directory.md
Mike Becker <universe@uap-core.de>
parents: 275
diff changeset
131 clean:
265
ee9e63c437c4 adds documentation for most dav commands
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
132 rm -Rf build
276
20a176d5a53e adds more details to add-directory.md
Mike Becker <universe@uap-core.de>
parents: 275
diff changeset
133

mercurial