summaryrefslogtreecommitdiff
path: root/xlibs/README.md
blob: 58e33bcd5c3911903c00aaeb26b5f04beeae7c2c (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
# Bundled X11 Headers

This directory contains bundled X11 headers for building FLTK without
system X11 development packages installed.

## Required Sources

Download from freedesktop.org:

1. **xorgproto** - X11 protocol headers
   https://gitlab.freedesktop.org/xorg/proto/xorgproto

2. **libX11** - Core X11 library headers
   https://gitlab.freedesktop.org/xorg/lib/libx11

3. **libXext** - X11 extension headers
   https://gitlab.freedesktop.org/xorg/lib/libxext

4. **libXrender** - Render extension
   https://gitlab.freedesktop.org/xorg/lib/libxrender

5. **libXinerama** - Xinerama extension
   https://gitlab.freedesktop.org/xorg/lib/libxinerama

6. **libXfixes** - Xfixes extension
   https://gitlab.freedesktop.org/xorg/lib/libxfixes

7. **libXcursor** - Cursor library
   https://gitlab.freedesktop.org/xorg/lib/libxcursor

## Directory Structure

```
xlibs/
  include/
    X11/
      Xlib.h
      X.h
      Xutil.h
      Xatom.h
      ...
      extensions/
        Xinerama.h
        Xfixes.h
        Xrender.h
      Xcursor/
        Xcursor.h
      Xft/
        Xft.h (system dependency - requires fontconfig/freetype)
```

## Note on Xft

Xft is NOT bundled because it depends on:
- FreeType2
- FontConfig
- Cairo (optional)

These remain as system dependencies.

## Build Usage

Add `-I./xlibs/include` to CXXFLAGS when X11 dev headers are not installed.