Wed, 02 Jul 2025 23:21:17 +0200
resolve TODOs regarding input.h
a) mouse position must be integer, because it can be negative (though rarely)
b) we should not trade "access complexity" for space in the scancodes array
8
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
1 | #!/bin/sh |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
2 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
3 | dir="$1" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
4 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
5 | if [ -z "$dir" ]; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
6 | echo "Usage: $0 <src_dir>" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
7 | exit 1 |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
8 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
9 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
10 | if [ -d "$dir" ]; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
11 | : |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | else |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
13 | echo "'$dir' is not a directory" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
14 | exit 1 |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
15 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
16 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
17 | if [ -z "$CC" ]; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
18 | for cc in gcc clang ; do |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
19 | if command -v "$cc" > /dev/null ; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
20 | CC="$cc" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
21 | break |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
22 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
23 | done |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
24 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
25 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
26 | if [ -z "$CC" ]; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
27 | echo "No suitable compiler found to generate make rules" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
28 | exit 1 |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
29 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
30 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
31 | if command -v sed > /dev/null ; then |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
32 | : |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
33 | else |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
34 | echo "You need the 'sed' program for this script to work." |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
35 | exit 1 |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
36 | fi |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
37 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
38 | cd "$dir" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
39 | |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
40 | mv Makefile Makefile.old |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
41 | sed '/FORCE:/q' Makefile.old > Makefile |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
42 | echo >> Makefile |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
43 | for file in `ls *.c` ; do |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
44 | "$CC" -MT "\$(BUILD_DIR)/${file/.c/.o}" -MM $CFLAGS "$file" |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
45 | printf '\t@echo "Compiling $<"\n' |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
46 | printf '\t$(CC) -o $@ $(CFLAGS) -c $<\n\n' |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
47 | done >> Makefile |
756b49205a29
add script to update make rules
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
48 | rm Makefile.old |