summaryrefslogtreecommitdiff
path: root/user/xorg-server/APKBUILD
blob: c4b5755fce71e3e320613b8851efc343f30b9481 (plain) (blame)
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
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=xorg-server
pkgver=1.20.7
pkgrel=0
pkgdesc="X.Org X11 server"
url="https://www.X.Org/"
arch="all"
options="suid"
license="MIT"
depends="font-cursor-misc font-misc-misc xkeyboard-config xkbcomp xinit"
depends_dev="libepoxy-dev libxfont2-dev mesa-dev"
makedepends="$depends_dev autoconf automake libtool util-macros
	eudev-dev libpciaccess-dev libdrm-dev libepoxy-dev pixman-dev
	libx11-dev libxdamage-dev libxinerama-dev libxkbfile-dev libxkbui-dev
	libxv-dev libxxf86dga-dev libxxf86misc-dev xcb-util-dev
	xcb-util-image-dev xcb-util-keysyms-dev xcb-util-renderutil-dev
	xcb-util-wm-dev xorgproto-dev
	xtrans
	openssl-dev perl zlib-dev
	"
# the modesetting driver is now shipped with xorg server
replaces="xf86-video-modesetting"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc xvfb $pkgname-xephyr
	$pkgname-xnest"
source="https://www.X.Org/releases/individual/xserver/$pkgname-$pkgver.tar.bz2
	autoconfig-sis.patch
	fix-musl-arm.patch
	"

# 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() {
	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() {
	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"

	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc/X11 \
		--localstatedir=/var \
		--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-glamor \
		--enable-ipv6 \
		--enable-kdrive \
		--enable-xace \
		--enable-xcsecurity \
		--enable-xephyr \
		--enable-xnest \
		--enable-xorg \
		--enable-xres \
		--enable-xv \
		--disable-xwayland \
		--disable-config-hal \
		--disable-dmx \
		--disable-systemd-logind \
		--with-os-vendor="${DISTRO_NAME:-Adélie Linux}"

	make
}

check() {
	make check
}

package() {
	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 -m755 -d "$pkgdir"/var/lib/xkb
	install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}

xvfb() {
	pkgdesc="X.Org server for virtual framebuffer (for testing)"
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/Xvfb "$subpkgdir"/usr/bin/
}

xephyr() {
	pkgdesc="kdrive-based X11 server (windowed framebuffer on X11 server)"
	depends=
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/Xephyr "$subpkgdir"/usr/bin/
}

xnest() {
	pkgdesc="X.Org nested server"
	depends=
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/Xnest "$subpkgdir"/usr/bin/
}

xwayland() {
	pkgdesc="X.Org server for Wayland"
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/Xwayland "$subpkgdir"/usr/bin/
}

sha512sums="c67612e379111c28c68941c0a660abf72be7669591b41ccaa3b3474c4540a03822a28d892831b12ce08bac6e5e7e33504c2d19ef2a0c2298f83bd083459f96f5  xorg-server-1.20.7.tar.bz2
d77151bc51766e1230a121c008ac1d0695275bf889b1db4b3330c1f8ee720b0e046cc935fa14aaef40b02fdea508e84e53959b560131ace14ace14943c8eb734  autoconfig-sis.patch
a5f910e72ff9abd4e4a0c6806cdbe48d1b0b6cc0586f36568da5864a8dedc46a3112fe86d7a1969033f4d5b0def4dc6e5c11b656fbcc964732b417e6c9577f22  fix-musl-arm.patch"