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"