Mercurial > vanilla
annotate graphics/mesa/mesa.sh @ 264:99bc133dd404
graphics/mesa: initial import, closes #1281
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 21 Mar 2019 21:15:00 +0100 |
parents | |
children | 0c8bd6c16d43 |
rev | line source |
---|---|
264
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/sh |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr> |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Permission to use, copy, modify, and/or distribute this software for any |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # purpose with or without fee is hereby granted, provided that the above |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # copyright notice and this permission notice appear in all copies. |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 PKGNAME=mesa |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 PKGVERSION=18.3.5 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 PKGREVISION=1 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 PKGLICENSE="CUSTOM" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 PKGSUMMARY="opensource OpenGL implementation" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 PKGDOWNLOAD="https://mesa.freedesktop.org/archive/$PKGNAME-$PKGVERSION.tar.xz" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 PKGDEPENDS="" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 PKGOPTIONS="DRM LLVM WAYLAND X" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 : ${CC:=gcc} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 : ${CFLAGS:=-O2} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 : ${CXX:=g++} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 : ${CXXFLAGS:=-O2} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 : ${LDFLAGS:=} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 : ${DRM:=yes} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 : ${LLVM:=yes} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 : ${WAYLAND:=yes} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 : ${X:=yes} |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 with_platforms="" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 with_gallium_drivers="r300,r600,virgl,svga,swrast" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 with_vulkan_drivers="intel" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 if [ "$DRM" = "yes" ]; then |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 with_platforms="drm,$platforms" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 fi |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 if [ "$LLVM" = "yes" ]; then |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 PKGDEPENDS="dev/llvm:build $PKGDEPENDS" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 with_llvm="-D llvm=true" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 with_gallium_drivers="radeonsi,$with_gallium_drivers" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 with_vulkan_drivers="amd,$with_vulkan_drivers" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 else |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 with_llvm="-D llvm=false" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 fi |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 if [ "$WAYLAND" = "yes" ]; then |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 with_platforms="wayland,$with_platforms" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 fi |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 if [ "$X" = "yes" ]; then |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 with_platforms="x11,$with_platforms" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 with_dri="-D dri3=true" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 with_glx="-D glx=dri" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 else |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 with_dri="-D dri3=false" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 with_glx="-D glx=disabled" |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 fi |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 build() |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 { |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 rm -rf $PKGNAME-$PKGVERSION |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 tar xvaf $PKGNAME-$PKGVERSION.tar.xz |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 pushd $PKGNAME-$PKGVERSION |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 # https://git.alpinelinux.org/aports/plain/main/mesa/musl-fix-includes.patch |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 patch -p1 < ../musl.patch |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 CC="$CC" \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 CFLAGS="$CFLAGS" \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 CXX="$CXX" \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 CXXFLAGS="$CXXFLAGS" \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 LDFLAGS="$LDFLAGS" \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 meson \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 --prefix /usr \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 --buildtype release \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 --default-library shared \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 -D egl=true \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 -D bpm=true \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 -D platforms=$with_platforms \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 -D gallium-drivers=$with_gallium_drivers \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
88 -D vulkan-drivers=$with_vulkan_drivers \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 $with_llvm \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 $with_dri \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 $with_glx \ |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 . build |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 ninja -C build |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 DESTDIR=$DESTDIR ninja -C build install |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 popd |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 rm -rf $PKGNAME-$PKGVERSION |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 } |
99bc133dd404
graphics/mesa: initial import, closes #1281
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 |