@@ -38,16 +38,70 @@ function do_buildroot
3838function do_linux
3939{
4040 ASSERT git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git -b linux-6.1.y --depth=1
41+ mkdir -p linux/out
4142 cp -f configs/linux.config linux/.config
4243 export PATH=" $PWD /buildroot/output/host/bin:$PATH "
4344 export CROSS_COMPILE=riscv32-buildroot-linux-gnu-
4445 export ARCH=riscv
46+ export INSTALL_MOD_PATH=" out"
4547 pushd linux
4648 ASSERT make olddefconfig
4749 ASSERT make $PARALLEL
50+ ASSERT make modules_install
4851 cp -f arch/riscv/boot/Image ../Image
4952 popd
5053}
5154
55+ function do_libepoxy
56+ {
57+ ASSERT git clone https://github.com/anholt/libepoxy.git
58+ pushd libepoxy
59+ cp ../configs/riscv-cross-file .
60+ ASSERT meson --cross-file riscv-cross-file build/riscv
61+ ASSERT meson compile -C build/riscv
62+ DESTDIR=../../../libepoxy_out meson install -C build/riscv
63+ popd
64+ }
65+
66+ function do_virglrenderer
67+ {
68+ ASSERT git clone https://gitlab.freedesktop.org/virgl/virglrenderer.git
69+ pushd virglrenderer
70+ cp ../configs/riscv-cross-file .
71+ ASSERT meson --cross-file riscv-cross-file build/riscv
72+ ASSERT meson compile -C build/riscv
73+ DESTDIR=../../../virglrenderer_out meson install -C build/riscv
74+ popd
75+ }
76+
77+ function do_directfb
78+ {
79+ export PATH=$PATH :$PWD /buildroot/output/host/bin
80+ export BUILDROOT_OUT=$PWD /buildroot/output/
81+ mkdir -p directfb
82+
83+ # Build DirectFB2
84+ ASSERT git clone https://github.com/directfb2/DirectFB2.git
85+ pushd DirectFB2
86+ cp ../configs/riscv-cross-file .
87+ ASSERT meson -Ddrmkms=true --cross-file riscv-cross-file build/riscv
88+ ASSERT meson compile -C build/riscv
89+ DESTDIR=$BUILDROOT_OUT /host/riscv32-buildroot-linux-gnu/sysroot meson install -C build/riscv
90+ DESTDIR=../../../directfb meson install -C build/riscv
91+ popd
92+
93+ # Build DirectFB2 examples
94+ ASSERT git clone https://github.com/directfb2/DirectFB-examples.git
95+ pushd DirectFB-examples/
96+ cp ../configs/riscv-cross-file .
97+ ASSERT meson --cross-file riscv-cross-file build/riscv
98+ ASSERT meson compile -C build/riscv
99+ DESTDIR=../../../directfb meson install -C build/riscv
100+ popd
101+ }
102+
52103do_buildroot && OK
53104do_linux && OK
105+ do_libepoxy && OK
106+ do_virglrenderer && OK
107+ do_directfb && OK
0 commit comments