summaryrefslogtreecommitdiffstats
path: root/main/xorg-server/APKBUILD
blob: ad160ecc0f4bb1c80163d30ce0bbebe237dc86de (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
189
190
191
192
193
194
195
196
197
198
199
200
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xorg-server
pkgver=1.16.0
pkgrel=2
pkgdesc="X.Org X servers"
url="http://xorg.freedesktop.org"
arch="all"
license="MIT"
options="suid"
subpackages="$pkgname-dev $pkgname-doc xfbdev xvfb $pkgname-xephyr
	$pkgname-xnest"
depends="
	font-misc-misc
	font-cursor-misc
	xkeyboard-config
	xkbcomp
	xinit
	dbus-x11
	"
depends_dev="
	bigreqsproto
	compositeproto
	damageproto
	dri2proto
	fixesproto
	fontsproto
	glproto
	inputproto
	kbproto
	libepoxy-dev
	libpciaccess-dev
	mesa-dev
	pixman-dev
	presentproto
	randrproto
	recordproto
	renderproto
	resourceproto
	scrnsaverproto
	videoproto
	xcmiscproto
	xextproto
	xf86driproto
	xineramaproto
	xproto
	"
makedepends="
	$depends_dev
	autoconf
	automake
	dbus-dev
	libdrm-dev
	libtool
	libx11-dev
	libxdamage-dev
	libxfont-dev
	libxinerama-dev
	libxkbfile-dev
	libxkbui-dev
	libxv-dev
	libxxf86dga-dev
	libxxf86misc-dev
	openssl-dev
	perl
	udev-dev
	util-macros
	xtrans
	xcb-util-dev
	xcb-util-image-dev
	xcb-util-keysyms-dev
	xcb-util-wm-dev
	zlib-dev
	"

source="http://xorg.freedesktop.org/releases/individual/xserver/$pkgname-$pkgver.tar.bz2
	autoconfig-nvidia.patch
	autoconfig-sis.patch
	fix-musl-arm.patch
	glamor-upstream-fix.patch
	20-modules.conf
	"


prepare() {
	cd "$srcdir"/$pkgname-$pkgver
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
	# Fix dbus config path
	sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.*  || return 1
	sed -i -e 's/termio.h/termios.h/' hw/xfree86/os-support/xf86_OSlib.h || return 1
}

build() {
	cd "$srcdir"/$pkgname-$pkgver
	# 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 \
		--enable-aiglx \
		--enable-composite \
		--enable-config-udev \
		--enable-dri \
		--enable-dri2 \
		--enable-glamor \
		--enable-glx-tls \
		--enable-ipv6 \
		--enable-xfbdev \
		--enable-kdrive \
		--enable-xorg \
		--enable-xv \
		--enable-xres \
		--enable-xace \
		--enable-xnest \
		--enable-xephyr \
		--disable-config-hal \
		--disable-dmx \
		--disable-tslib \
		--disable-config-dbus \
		--enable-config-udev \
		|| return 1

	make || return 1
}

package() {
	cd "$srcdir"/$pkgname-$pkgver
	make -j1 DESTDIR="$pkgdir" install || return 1
	find "$pkgdir" -name '*.la' -delete || return 1
	chmod u+s "$pkgdir"/usr/bin/Xorg

	install -m755 -d "$pkgdir"/etc/X11/xorg.conf.d || return 1
	install -m644 "$srcdir"/20-modules.conf "$pkgdir"/etc/X11/xorg.conf.d/ \
		|| return 1
	install -m755 -d "$pkgdir"/var/lib/xkb || return 1
	install -m644 -D COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
}


xfbdev() {
	pkgdesc="X.org server for framebuffer"
	depends=
	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin/Xfbdev "$subpkgdir"/usr/bin/
}

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/
}

md5sums="8a9ff6ee9907360f09b5bdabb8089502  xorg-server-1.16.0.tar.bz2
ea4852dedbb89550f6bc113ca66348a2  autoconfig-nvidia.patch
825ca99ea9348c66abdf2c479e0af485  autoconfig-sis.patch
043cbe8fc14729ae1e776788ae7593bf  fix-musl-arm.patch
e69a0e02135db7c210b266623141435d  glamor-upstream-fix.patch
77f2e12e577e9d8b67350b960958b7c4  20-modules.conf"
sha256sums="38330a03c5f7a38745a3f9816cf069db5b8844eebb358fd39dbabf61f32cd06b  xorg-server-1.16.0.tar.bz2
66e25f76a7496c429e0aff4b0670f168719bb0ceaeb88c6f2272f2bf3ed21162  autoconfig-nvidia.patch
7d5d36dd152eb0fab277a4aeba0a08ad77049e591a0dea92f565a4b62f0d0a50  autoconfig-sis.patch
b210a93b4d6128c0963ade3458925ff293e1c68ac20a15964357fd401f7161e0  fix-musl-arm.patch
fbd898f0e867c77c9bf918fd2e7956c7776ecb3cc3634c61290fb03513b47987  glamor-upstream-fix.patch
65343949384a88dc75142c9309a24c921baa60b43e0fc245052d220e53a4babb  20-modules.conf"
sha512sums="eab298e3728aa79ff2ba3f5c12637c4db0f9bbca49ed00b673b2bfedf605f33a69d8eb946bed98e3d28afd9bfaf62e21ce2e8606d84cae9906506d90c26f1662  xorg-server-1.16.0.tar.bz2
4dcaa60fbfc61636e7220a24a72bba19984a6dc752061cb40b1bd566c0e614d08927b6c223ffaaaa05636765fddacdc3113fde55d25fd09cd0c786ff44f51447  autoconfig-nvidia.patch
30a78f4278edd535c45ee3f80933427cb029a13abaa4b041f816515fdd8f64f00b9c6aef50d4eba2aaf0d4f333e730399864fd97fa18891273601c77a6637200  autoconfig-sis.patch
b799e757a22a61ac283adbd7a8df1ad4eccce0bb6cac38a0c962ba8438bba3cf6637a65bb64859e7b32399fca672283a49960207e186c271ba574580de360d09  fix-musl-arm.patch
869939c9b6b03c64128090060a987487aba7702c7198fa32117eca1d69e2c23ebcd9c647af39f04e97214e2a4a6040c32dd5d59ff73086ab936908a6175350c0  glamor-upstream-fix.patch
1697e8be032ca777b0ac9aab23cc45baec03cccdf04ec35374bb7dd4d5430fdc7f6786689f3edd8cd2289535966329e9636f7f94a8926d73464d398fa66da61a  20-modules.conf"