aboutsummaryrefslogtreecommitdiffstats
path: root/main/xorg-server/APKBUILD
blob: 369a9e471936fb5d776f62feacc02cd66eeb3e86 (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
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xorg-server
pkgver=1.14.4
pkgrel=0
pkgdesc="X.Org X servers"
url="http://xorg.freedesktop.org"
arch="all"
license="custom"
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
	libpciaccess-dev
	mesa-dev
	pixman-dev
	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
	zlib-dev
	"

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


prepare() {
	cd "$srcdir"/$pkgname-$pkgver
	update_config_sub || return 1
	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-glx-tls \
		--enable-dri \
		--enable-dri2 \
		--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 || 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="9d68a30258c67faa3c036a4a85e8bf97  xorg-server-1.14.4.tar.bz2
ea4852dedbb89550f6bc113ca66348a2  autoconfig-nvidia.patch
825ca99ea9348c66abdf2c479e0af485  autoconfig-sis.patch
ccc57d75801b716a45ce6a67f4a9f163  fix-musl-arm.patch"
sha256sums="608ccfaafb845f6e559884a30f946d365209172416710d687b190e9e1ff65dc3  xorg-server-1.14.4.tar.bz2
66e25f76a7496c429e0aff4b0670f168719bb0ceaeb88c6f2272f2bf3ed21162  autoconfig-nvidia.patch
7d5d36dd152eb0fab277a4aeba0a08ad77049e591a0dea92f565a4b62f0d0a50  autoconfig-sis.patch
0cb8f7a5628037f24d05d86eed26ca0252c3ff95856367b606b64080da6db432  fix-musl-arm.patch"
sha512sums="c288a9d38b08d675b90e860539c4cbd423be90fa27dd1a5fa443076475801bfa74b1f5a0dd6282cc1c9c8ff30bdff77c1eb587186479ebfcaf57185c2affba8a  xorg-server-1.14.4.tar.bz2
4dcaa60fbfc61636e7220a24a72bba19984a6dc752061cb40b1bd566c0e614d08927b6c223ffaaaa05636765fddacdc3113fde55d25fd09cd0c786ff44f51447  autoconfig-nvidia.patch
30a78f4278edd535c45ee3f80933427cb029a13abaa4b041f816515fdd8f64f00b9c6aef50d4eba2aaf0d4f333e730399864fd97fa18891273601c77a6637200  autoconfig-sis.patch
fdb45ed50e5aeac1bc8d22f1377517c52235aea7d15bb4664a774aea5c2c4fbbc9654dce6e5b3fee15ec9eadb2f87f88ca7d62a36c458df8a0dfa5b431ab225a  fix-musl-arm.patch"