Sun, 17 Dec 2023 14:25:34 +0100
[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.
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
1 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
2 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
3 | # |
364
3769ba002fd1
updates copyright date
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
363
diff
changeset
|
4 | # Copyright 2018 Olaf Wintermann. All rights reserved. |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
5 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
6 | # Redistribution and use in source and binary forms, with or without |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
7 | # modification, are permitted provided that the following conditions are met: |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
8 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
9 | # 1. Redistributions of source code must retain the above copyright |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
10 | # notice, this list of conditions and the following disclaimer. |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
11 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
12 | # 2. Redistributions in binary form must reproduce the above copyright |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
13 | # notice, this list of conditions and the following disclaimer in the |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
14 | # documentation and/or other materials provided with the distribution. |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
15 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
16 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
17 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
18 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
19 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
20 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
21 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
22 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
23 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
24 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
1bcaac272cdf
added existing source code
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 |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
26 | # POSSIBILITY OF SUCH DAMAGE. |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
27 | # |
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
28 | |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
29 | BUILD_ROOT = .. |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
30 | |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
31 | include ../config.mk |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
32 | |
46
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
33 | DAV_SRC = main.c |
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
34 | DAV_SRC += config.c |
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
35 | DAV_SRC += optparser.c |
191
0e45b04236a7
more specific error messages in dav-sync
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
185
diff
changeset
|
36 | DAV_SRC += error.c |
194
1950f483d3c4
added add-repository command to dav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
191
diff
changeset
|
37 | DAV_SRC += assistant.c |
334
5f80c5d0e87f
adds tar import/export
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
322
diff
changeset
|
38 | DAV_SRC += tar.c |
410
0b9bea2d7283
adds file io abstraction functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
364
diff
changeset
|
39 | DAV_SRC += system.c |
470
6bf798ad3aec
adds encrypted password store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
410
diff
changeset
|
40 | DAV_SRC += pwd.c |
517
8531b63accae
adds option to store a file info property
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
470
diff
changeset
|
41 | DAV_SRC += libxattr.c |
8531b63accae
adds option to store a file info property
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
470
diff
changeset
|
42 | DAV_SRC += finfo.c |
46
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
43 | |
470
6bf798ad3aec
adds encrypted password store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
410
diff
changeset
|
44 | SYNC_SRC = sync.c |
46
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
45 | SYNC_SRC += config.c |
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
46 | SYNC_SRC += scfg.c |
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
47 | SYNC_SRC += sopt.c |
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
48 | SYNC_SRC += db.c |
191
0e45b04236a7
more specific error messages in dav-sync
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
185
diff
changeset
|
49 | SYNC_SRC += error.c |
194
1950f483d3c4
added add-repository command to dav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
191
diff
changeset
|
50 | SYNC_SRC += assistant.c |
361
b6f2462ee055
adds xattr lib and tag support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
335
diff
changeset
|
51 | SYNC_SRC += libxattr.c |
517
8531b63accae
adds option to store a file info property
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
470
diff
changeset
|
52 | SYNC_SRC += finfo.c |
361
b6f2462ee055
adds xattr lib and tag support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
335
diff
changeset
|
53 | SYNC_SRC += tags.c |
410
0b9bea2d7283
adds file io abstraction functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
364
diff
changeset
|
54 | SYNC_SRC += system.c |
470
6bf798ad3aec
adds encrypted password store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
410
diff
changeset
|
55 | SYNC_SRC += pwd.c |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
56 | |
660
e835ec0b7f17
add tool for accessing extended attributes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
517
diff
changeset
|
57 | XATTR_SRC = xattrtool.c |
e835ec0b7f17
add tool for accessing extended attributes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
517
diff
changeset
|
58 | XATTR_SRC += libxattr.c |
e835ec0b7f17
add tool for accessing extended attributes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
517
diff
changeset
|
59 | |
67
6b0c60659652
fixed makefile file extensions
Mike Becker <universe@uap-core.de>
parents:
46
diff
changeset
|
60 | DAV_OBJ = $(DAV_SRC:%.c=../build/tool/%$(OBJ_EXT)) |
6b0c60659652
fixed makefile file extensions
Mike Becker <universe@uap-core.de>
parents:
46
diff
changeset
|
61 | SYNC_OBJ = $(SYNC_SRC:%.c=../build/tool/%$(OBJ_EXT)) |
660
e835ec0b7f17
add tool for accessing extended attributes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
517
diff
changeset
|
62 | XATTR_OBJ = $(XATTR_SRC:%.c=../build/tool/%$(OBJ_EXT)) |
46
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
63 | |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
64 | DAV_BIN = ../build/bin/dav$(APP_EXT) |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
65 | DAV_SYNC_BIN = ../build/bin/dav-sync$(APP_EXT) |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
66 | XATTRTOOL_BIN = ../build/bin/xattrtool$(APP_EXT) |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
67 | |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
68 | all: ../build/bin/dav ../build/bin/dav-sync ../build/bin/xattrtool |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
69 | |
747
efbd59642577
ucx 3 update, basic dav commands work, most stuff is still broken
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
746
diff
changeset
|
70 | $(DAV_BIN): $(DAV_OBJ) ../build/lib/libidav$(LIB_EXT) |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
71 | $(LD) -o $(DAV_BIN) $(DAV_OBJ) \ |
747
efbd59642577
ucx 3 update, basic dav commands work, most stuff is still broken
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
746
diff
changeset
|
72 | ../build/lib/libidav$(LIB_EXT) ../build/lib/libucx$(LIB_EXT) \ |
46
0542668d0f26
added new sync tool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
73 | $(LDFLAGS) $(DAV_LDFLAGS) |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
74 | |
747
efbd59642577
ucx 3 update, basic dav commands work, most stuff is still broken
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
746
diff
changeset
|
75 | $(DAV_SYNC_BIN): $(SYNC_OBJ) ../build/lib/libidav$(LIB_EXT) |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
76 | $(LD) -o $(DAV_SYNC_BIN) $(SYNC_OBJ) \ |
747
efbd59642577
ucx 3 update, basic dav commands work, most stuff is still broken
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
746
diff
changeset
|
77 | ../build/lib/libidav$(LIB_EXT) ../build/lib/libucx$(LIB_EXT) \ |
33
0bbbb0341606
some code cleanup and bug fixes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
21
diff
changeset
|
78 | $(LDFLAGS) $(DAV_LDFLAGS) |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
79 | |
746
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
80 | $(XATTRTOOL_BIN): $(XATTR_OBJ) |
a569148841ff
fix build system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
745
diff
changeset
|
81 | $(LD) -o $(XATTRTOOL_BIN) $(XATTR_OBJ) $(LDFLAGS) |
660
e835ec0b7f17
add tool for accessing extended attributes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
517
diff
changeset
|
82 | |
67
6b0c60659652
fixed makefile file extensions
Mike Becker <universe@uap-core.de>
parents:
46
diff
changeset
|
83 | ../build/tool/%$(OBJ_EXT): %.c |
750 | 84 | $(CC) -I../ucx -I../ $(CFLAGS) $(DAV_CFLAGS) -c -o $@ $< |
1
1bcaac272cdf
added existing source code
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
85 | |
797
edbb20b1438d
[Makefile] fix missing rules preventing dry-runs
Mike Becker <universe@uap-core.de>
parents:
750
diff
changeset
|
86 | ../build/lib/libidav$(LIB_EXT): |
edbb20b1438d
[Makefile] fix missing rules preventing dry-runs
Mike Becker <universe@uap-core.de>
parents:
750
diff
changeset
|
87 | test -f '$@' |
363
e9ed8e130ccf
adds support for macos file tags
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
361
diff
changeset
|
88 | |
287
99bcd7915a0d
adds cppcheck make target
Mike Becker <universe@uap-core.de>
parents:
194
diff
changeset
|
89 | cppcheck: $(DAV_SRC) $(SYNC_SRC) |
750 | 90 | $(CPPCHECK) $(CPPCHECK_CONFIG) -I../ucx $(CPPCHECK_FLAGS) $+ 2>> ../$(CPPCHECK_LOG) |
287
99bcd7915a0d
adds cppcheck make target
Mike Becker <universe@uap-core.de>
parents:
194
diff
changeset
|
91 |