main
configure
1#!/bin/sh
2set -eu
3
4PLATFORM=$(uname -s)
5CPPFLAGS=
6LDFLAGS="-Llibmaus/build"
7
8case "$PLATFORM" in
9 Darwin)
10 BACKEND=mac
11 LDLIBS="-lmaus_mac \
12 -framework Cocoa \
13 -framework CoreVideo \
14 -framework IOKit \
15 -framework CoreGraphics \
16 -framework CoreFoundation \
17 -framework Carbon"
18 ;;
19
20 Linux|FreeBSD|OpenBSD)
21 if [ -n "${WAYLAND_DISPLAY:-}" ]; then
22 BACKEND=way
23 CPPFLAGS=-DBACKEND_WAY
24 LDLIBS="-lmaus_way -lwayland-client"
25 elif [ -n "${DISPLAY:-}" ]; then
26 BACKEND=x11
27 CPPFLAGS=-DBACKEND_X11
28 LDLIBS="-lmaus_x11 -lX11 -lXext"
29 else
30 echo "No X11 or Wayland display found" >&2
31 exit 1
32 fi
33
34 case "$PLATFORM" in
35 Linux)
36 CPPFLAGS="-D_XOPEN_SOURCE=700 $CPPFLAGS"
37 ;;
38 OpenBSD)
39 CPPFLAGS="-I/usr/X11R6/include $CPPFLAGS"
40 LDFLAGS="-L/usr/X11R6/lib $LDFLAGS"
41 ;;
42 esac
43 ;;
44
45 *)
46 echo "Unsupported platform: $PLATFORM" >&2
47 exit 1
48 ;;
49esac
50
51(
52 cd libmaus
53 rm -rf build/
54 ./configure --backend="$BACKEND"
55 make
56)
57
58cat >platform.mk <<EOF
59CPPFLAGS += $CPPFLAGS
60LDFLAGS += $LDFLAGS
61LDLIBS += $LDLIBS
62EOF
63
64echo "Configuration done"