blob: c0536f02b6218e0228d1c2923b8c373e4359b6fe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
#!/bin/sh
#
# Fetch X11 headers from official freedesktop.org sources
# Run this script to populate xlibs/include with X11 headers
#
set -e
XLIBS_DIR="$(dirname "$0")"
INCLUDE_DIR="$XLIBS_DIR/include"
TMP_DIR="$XLIBS_DIR/tmp"
mkdir -p "$INCLUDE_DIR/X11/extensions"
mkdir -p "$INCLUDE_DIR/X11/Xcursor"
mkdir -p "$TMP_DIR"
echo "Downloading X11 headers..."
# xorgproto - X11 protocol headers
XORGPROTO_VER="2024.1"
XORGPROTO_URL="https://xorg.freedesktop.org/archive/individual/proto/xorgproto-${XORGPROTO_VER}.tar.xz"
if [ ! -f "$TMP_DIR/xorgproto-${XORGPROTO_VER}.tar.xz" ]; then
echo "Fetching xorgproto..."
curl -L -o "$TMP_DIR/xorgproto-${XORGPROTO_VER}.tar.xz" "$XORGPROTO_URL"
fi
tar -xf "$TMP_DIR/xorgproto-${XORGPROTO_VER}.tar.xz" -C "$TMP_DIR"
cp -r "$TMP_DIR/xorgproto-${XORGPROTO_VER}/include/X11/"* "$INCLUDE_DIR/X11/"
# libX11 - Core X11 headers
LIBX11_VER="1.8.10"
LIBX11_URL="https://xorg.freedesktop.org/archive/individual/lib/libX11-${LIBX11_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libX11-${LIBX11_VER}.tar.xz" ]; then
echo "Fetching libX11..."
curl -L -o "$TMP_DIR/libX11-${LIBX11_VER}.tar.xz" "$LIBX11_URL"
fi
tar -xf "$TMP_DIR/libX11-${LIBX11_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libX11-${LIBX11_VER}/include/X11/"*.h "$INCLUDE_DIR/X11/" 2>/dev/null || true
# libXext - Extension headers
LIBXEXT_VER="1.3.6"
LIBXEXT_URL="https://xorg.freedesktop.org/archive/individual/lib/libXext-${LIBXEXT_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libXext-${LIBXEXT_VER}.tar.xz" ]; then
echo "Fetching libXext..."
curl -L -o "$TMP_DIR/libXext-${LIBXEXT_VER}.tar.xz" "$LIBXEXT_URL"
fi
tar -xf "$TMP_DIR/libXext-${LIBXEXT_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libXext-${LIBXEXT_VER}/include/X11/extensions/"*.h "$INCLUDE_DIR/X11/extensions/" 2>/dev/null || true
# libXrender
LIBXRENDER_VER="0.9.12"
LIBXRENDER_URL="https://xorg.freedesktop.org/archive/individual/lib/libXrender-${LIBXRENDER_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libXrender-${LIBXRENDER_VER}.tar.xz" ]; then
echo "Fetching libXrender..."
curl -L -o "$TMP_DIR/libXrender-${LIBXRENDER_VER}.tar.xz" "$LIBXRENDER_URL"
fi
tar -xf "$TMP_DIR/libXrender-${LIBXRENDER_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libXrender-${LIBXRENDER_VER}/include/X11/extensions/"*.h "$INCLUDE_DIR/X11/extensions/" 2>/dev/null || true
# libXinerama
LIBXINERAMA_VER="1.1.5"
LIBXINERAMA_URL="https://xorg.freedesktop.org/archive/individual/lib/libXinerama-${LIBXINERAMA_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libXinerama-${LIBXINERAMA_VER}.tar.xz" ]; then
echo "Fetching libXinerama..."
curl -L -o "$TMP_DIR/libXinerama-${LIBXINERAMA_VER}.tar.xz" "$LIBXINERAMA_URL"
fi
tar -xf "$TMP_DIR/libXinerama-${LIBXINERAMA_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libXinerama-${LIBXINERAMA_VER}/include/X11/extensions/"*.h "$INCLUDE_DIR/X11/extensions/" 2>/dev/null || true
# libXfixes
LIBXFIXES_VER="6.0.1"
LIBXFIXES_URL="https://xorg.freedesktop.org/archive/individual/lib/libXfixes-${LIBXFIXES_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libXfixes-${LIBXFIXES_VER}.tar.xz" ]; then
echo "Fetching libXfixes..."
curl -L -o "$TMP_DIR/libXfixes-${LIBXFIXES_VER}.tar.xz" "$LIBXFIXES_URL"
fi
tar -xf "$TMP_DIR/libXfixes-${LIBXFIXES_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libXfixes-${LIBXFIXES_VER}/include/X11/extensions/"*.h "$INCLUDE_DIR/X11/extensions/" 2>/dev/null || true
# libXcursor
LIBXCURSOR_VER="1.2.2"
LIBXCURSOR_URL="https://xorg.freedesktop.org/archive/individual/lib/libXcursor-${LIBXCURSOR_VER}.tar.xz"
if [ ! -f "$TMP_DIR/libXcursor-${LIBXCURSOR_VER}.tar.xz" ]; then
echo "Fetching libXcursor..."
curl -L -o "$TMP_DIR/libXcursor-${LIBXCURSOR_VER}.tar.xz" "$LIBXCURSOR_URL"
fi
tar -xf "$TMP_DIR/libXcursor-${LIBXCURSOR_VER}.tar.xz" -C "$TMP_DIR"
cp "$TMP_DIR/libXcursor-${LIBXCURSOR_VER}/include/X11/Xcursor/"*.h "$INCLUDE_DIR/X11/Xcursor/" 2>/dev/null || true
echo "Cleaning up..."
rm -rf "$TMP_DIR"
echo "Done. Headers installed in $INCLUDE_DIR"
echo ""
echo "Add to Makefile: CXXFLAGS += -I./xlibs/include"
|