summaryrefslogtreecommitdiffstats
path: root/templates/html5/AGLbuild
blob: ccbc28beb369013c829d4df6a9576039522c2e6d (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
#!/usr/bin/make -f
# Copyright (C) 2015, 2016 "IoT.bzh"
# Author "Romain Forlot" <romain.forlot@iot.bzh>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#	 http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

BUILD_DIR   := build
PACKAGING_DIR := packaging/wgt

VPATH = etc:$(PACKAGING_DIR):$(PACKAGING_DIR)/etc:$(BUILD_DIR)

.PHONY: all clean mrproper package

all: build

clean:
	@([ -d ${BUILD_DIR} ] && make -C ${BUILD_DIR} clean) || echo Nothing to clean

mrproper:
	rm -rf ${BUILD_DIR}

build:  ${BUILD_DIR}/Makefile
	cmake --build ${BUILD_DIR} --target all

package: config.xml.in icon.png.in build | $(PKG_FILELIST)
	mkdir -p ${BUILD_DIR}/$@/{bin,etc,lib,htdocs,data}
	cmake --build ${BUILD_DIR} --target widget

${BUILD_DIR}/Makefile:
	@[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}
	@[ -f ${BUILD_DIR}/Makefile ] || (cd ${BUILD_DIR} && cmake ${CMAKE_OPTS} ..)
ild_directory>/tmp/deploy/images/qemux86-64/bzImage <build_directory>/tmp/deploy/images/qemux86-64/agl-demo-platform-qemux86-64.ext4 ``` When QEMU boot, assign an IP address. For example: ``` ifconfig <your environment> 192.168.0.10 netmask 255.255.255.0 ``` ## How to run RVGPU remotely Prepare two images, one as the Sender and the other as the Receiver. It is necessary for the Sender and Receiver to be within the same network. **Receiver side** ``` $ export XDG_RUNTIME_DIR=/run/user/<your_UID> $ rvgpu-renderer -b <your_Area>@0,0 -p <Port_Number> & ``` Replace the placeholders with the appropriate values: - `<your_UID>`: Specify according to your environment, for example:1001 - `<your_Area>`: Enter an usable area for example: 1080x1488 With the following command, you can know the usable area. ``` $ journalctl | grep -i "usable area" # Example Output: Nov 29 11:42:53 qemux86-64 agl-compositor[259]: [11:42:53.166] Usable area: 1080x1488+0,216 ``` - `<Port_Number>`: Enter an available port number, for example: 55555 **Sender side** Create the following shell script **run_remote_app.sh** in any `<WORKDIR>` for a smooth experience. ``` #!/bin/bash export XDG_RUNTIME_DIR=/tmp export LD_LIBRARY_PATH=/usr/lib/mesa-virtio # ------------- # launch app # ------------- $@ ``` Save the file and run the following to start weston. ``` $ rvgpu-proxy -s 1080x1488@0,0 -n <IP_address_of_Receiver>:<Port_Number> & $ <WORKDIR>/run_remote_app.sh weston --backend drm-backend.so -Swayland-0 --seat=seat_virtual -i 0 & ``` Replace the placeholders with the appropriate values: - `<Port_Number>`: Port set in the renderer. After completing these steps, the Weston screen from the Sender will be transferred and displayed on the Receiver using rvgpu-proxy and rvgpu-renderer. You can verify that everything is functioning properly by launching wayland applications on the Sender side, such as: ``` $ weston-simple-egl -f ``` You can also verify the touch or keyboard operation support of the RVGPU by using app such as ``` $ weston-smoke $ weston-editor ``` **Note**: There are known issues with mouse, such as the cursor becoming invisible and occasional flickering of a green screen. **Appendix** - By building the RVGPU on Ubuntu, it is possible to enable bidirectional remote rendering between the agl-demo-platform and Ubuntu. For the build procedure on Ubuntu, see the following URL: https://github.com/unified-hmi/remote-virtio-gpu