blob: 9b405c3b6f81b7596feb29cde4ceb8f6cc8f81e7 (
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
|
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xorg-server
pkgver=1.20.4
pkgrel=0
pkgdesc="X.Org X servers"
url="http://xorg.freedesktop.org"
arch="all"
license="MIT"
options="suid"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc xvfb $pkgname-xephyr
$pkgname-xnest $pkgname-xwayland"
# the modesetting driver is now shipped with xorg server
replaces="xf86-video-modesetting"
depends="
font-misc-misc
font-cursor-misc
xkeyboard-config
xkbcomp
xinit
"
depends_dev="
libepoxy-dev
libxfont2-dev
mesa-dev
"
makedepends="
$depends_dev
autoconf
automake
eudev-dev
libdrm-dev
libepoxy-dev
libpciaccess-dev
openssl-dev
libtool
libx11-dev
libxdamage-dev
libxinerama-dev
libxkbfile-dev
libxkbui-dev
libxv-dev
libxxf86dga-dev
libxxf86misc-dev
perl
pixman-dev
util-macros
wayland-dev
wayland-protocols
xcb-util-dev
xcb-util-image-dev
xcb-util-keysyms-dev
xcb-util-renderutil-dev
xcb-util-wm-dev
xorgproto
xtrans
zlib-dev
"
source="https://www.x.org/releases/individual/xserver/$pkgname-$pkgver.tar.bz2
autoconfig-nvidia.patch
autoconfig-sis.patch
fix-musl-arm.patch
20-modules.conf
"
builddir="$srcdir"/$pkgname-$pkgver
# secfixes:
# 1.20.3-r0:
# - CVE-2018-14665
# 1.19.5-r0:
# - CVE-2017-12176
# - CVE-2017-12177
# - CVE-2017-12178
# - CVE-2017-12179
# - CVE-2017-12180
# - CVE-2017-12181
# - CVE-2017-12182
# - CVE-2017-12183
# - CVE-2017-12184
# - CVE-2017-12185
# - CVE-2017-12186
# - CVE-2017-12187
# - CVE-2017-13721
# - CVE-2017-13723
prepare() {
cd "$builddir"
default_prepare
# Fix dbus config path
sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.*
sed -i -e 's/termio.h/termios.h/' hw/xfree86/os-support/xf86_OSlib.h
}
build() {
cd "$builddir"
# xorg modules does not work with the -z now and it seems like we
# cannot pass over the linker flag to .so files. so we tweak the
# gcc specs.
export CFLAGS="$CFLAGS -D_GNU_SOURCE"
[ "$CLIBC" == musl ] && export CFLAGS="$CFLAGS -D__gid_t=gid_t -D__uid_t=uid_t"
export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
_fontroot="/usr/share/fonts"
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc/X11 \
--localstatedir=/var \
--with-fontrootdir=$_fontroot \
--with-default-font-path=${_fontroot}/misc,${_fontroot}/100dpi:unscaled,${_fontroot}/75dpi:unscaled,${_fontroot}/TTF,${_fontroot}/Type1 \
--with-xkb-path=/usr/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--without-systemd-daemon \
--enable-composite \
--enable-config-udev \
--enable-dri \
--enable-dri2 \
--enable-dri3 \
--enable-glamor \
--enable-ipv6 \
--enable-kdrive \
--enable-xace \
--enable-xcsecurity \
--enable-xephyr \
--enable-xnest \
--enable-xorg \
--enable-xres \
--enable-xv \
--enable-xwayland \
--disable-config-hal \
--disable-dmx \
--disable-systemd-logind \
--with-os-vendor="${DISTRO_NAME:-Alpine Linux}"
make
}
check() {
cd "$builddir"
make check
}
package() {
cd "$builddir"
make -j1 DESTDIR="$pkgdir" install
chmod u+s "$pkgdir"/usr/bin/Xorg
# Don't conflict with xf86-input-evdev
rm -f "$pkgdir"/usr/share/X11/xorg.conf.d/10-evdev.conf
install -m755 -d "$pkgdir"/etc/X11/xorg.conf.d
install -m644 "$srcdir"/20-modules.conf "$pkgdir"/etc/X11/xorg.conf.d/
install -m755 -d "$pkgdir"/var/lib/xkb
install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}
xvfb() {
pkgdesc="Virtual Framebuffer 'fake' X server"
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/Xvfb "$subpkgdir"/usr/bin/
}
xephyr() {
pkgdesc="kdrive based X Server which targets a window on a host X Server as its framebuffer"
depends=
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/Xephyr "$subpkgdir"/usr/bin/
}
xnest() {
pkgdesc="A nested Xorg server"
depends=
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/Xnest "$subpkgdir"/usr/bin/
}
xwayland() {
pkgdesc="run X clients under wayland"
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/Xwayland "$subpkgdir"/usr/bin/
}
sha512sums="f1c92ef6d7613e0636973d3395b48dfdad42230847ab1c8b1cea84647a968f649f9aba97bdb01c10ee8351cbe954d4e6ca4a0fc84bb8fa662d49c8ba2aee00a8 xorg-server-1.20.4.tar.bz2
016d10e59681d36be19aacc1505103bd340a5e81855e551997b42f8b54796be46fb2d91be8d1aa3bebb10d34e51258be9de1299c2e351b840450de38ff103df0 autoconfig-nvidia.patch
30a78f4278edd535c45ee3f80933427cb029a13abaa4b041f816515fdd8f64f00b9c6aef50d4eba2aaf0d4f333e730399864fd97fa18891273601c77a6637200 autoconfig-sis.patch
b799e757a22a61ac283adbd7a8df1ad4eccce0bb6cac38a0c962ba8438bba3cf6637a65bb64859e7b32399fca672283a49960207e186c271ba574580de360d09 fix-musl-arm.patch
95036f2452732cc31f6b646da9f46b7be30f4c9392724386b02f67fece1f506b00e15d14cbd8cf0ce75ca1fd144b4bea7e59288d4aaf4d6c1e06e5168931eb67 20-modules.conf"
|