src/Makefile

Tue, 21 Jan 2025 18:25:59 +0100

author
Mike Becker <universe@uap-core.de>
date
Tue, 21 Jan 2025 18:25:59 +0100
changeset 2
7384ebae6b7c
parent 1
9bf126bc825c
child 3
c87bde92805f
permissions
-rw-r--r--

add utility to spawn processes and retrieve their output

0
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 # Copyright 2025 Mike Becker. All rights reserved.
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2 #
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 # Redistribution and use in source and binary forms, with or without
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4 # modification, are permitted provided that the following conditions are met:
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 #
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
6 # 1. Redistributions of source code must retain the above copyright
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 # notice, this list of conditions and the following disclaimer.
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 #
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9 # 2. Redistributions in binary form must reproduce the above copyright
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 # notice, this list of conditions and the following disclaimer in the
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 # documentation and/or other materials provided with the distribution.
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
12 #
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16 # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 include ../config.mk
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25
2
7384ebae6b7c add utility to spawn processes and retrieve their output
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
26 SRC=main.cpp process.cpp
0
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
27 OBJ=$(SRC:%.cpp=../build/%.o)
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
28 OUTPUT=../build/fallusmeter
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
29
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
30 all: $(OUTPUT) FORCE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
31
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
32 $(OUTPUT): $(OBJ)
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
33 $(CXX) $(LDFLAGS) -o $@ $^
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
34
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
35 clean: FORCE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
36 rm -Rf build
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
37
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
38 compile: config.mk build FORCE
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
39 @cd src && $(MAKE)
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
40
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
41 FORCE:
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
42
1
9bf126bc825c add settings and CLI
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
43 ../build/main.o: main.cpp settings.h
0
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
44 @echo "Compiling $<"
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
45 $(CXX) -o $@ $(CXXFLAGS) -c $<
b4b281ef2d0f project init
Mike Becker <universe@uap-core.de>
parents:
diff changeset
46
2
7384ebae6b7c add utility to spawn processes and retrieve their output
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
47 ../build/process.o: process.cpp process.h
7384ebae6b7c add utility to spawn processes and retrieve their output
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
48 @echo "Compiling $<"
7384ebae6b7c add utility to spawn processes and retrieve their output
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
49 $(CXX) -o $@ $(CXXFLAGS) -c $<
7384ebae6b7c add utility to spawn processes and retrieve their output
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
50

mercurial