1
0
mirror of https://github.com/libretro/Lakka-LibreELEC.git synced 2024-11-21 22:46:19 +00:00
Lakka-LibreELEC/projects/RPi/options

172 lines
5.4 KiB
Plaintext

################################################################################
# setup system defaults
################################################################################
# The TARGET_CPU variable controls which processor should be targeted for
# generated code.
case $TARGET_ARCH in
arm)
# Valid TARGET_CPU for Raspberry Pi based devices are:
# arm1176jzf-s cortex-a7 cortex-a53
if [ "$DEVICE" = "RPi" -o "$DEVICE" = "GPICase" ]; then
TARGET_CPU="arm1176jzf-s"
elif [ "$DEVICE" = "RPi2" ]; then
TARGET_CPU="cortex-a7"
elif [ "${DEVICE}" = "Pi02GPi" ]; then
TARGET_CPU="cortex-a53"
elif [ "${DEVICE:0:4}" = "RPi4" ]; then
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc"
else
echo "${DEVICE} ${ARCH} not supported on ${DISTRO}!"
exit 1
fi
# TARGET_FLOAT:
# Specifies which floating-point ABI to use. Permissible values are:
# soft hard
TARGET_FLOAT="hard"
# Valid TARGET_FPU for Raspberry Pi based devices:
# This specifies what floating point hardware (or hardware emulation) is
# available on the target. Permissible names are:
# vfp neon-vfpv4 neon-fp-armv8
if [ "$DEVICE" = "RPi" -o "$DEVICE" = "GPICase" ]; then
TARGET_FPU="vfp"
elif [ "$DEVICE" = "RPi2" ]; then
TARGET_FPU="neon-vfpv4"
elif [ "${DEVICE}" = "Pi02GPi" ]; then
TARGET_FPU="neon-fp-armv8"
elif [ "${DEVICE:0:4}" = "RPi4" ]; then
TARGET_FPU="neon-fp-armv8"
fi
# Kernel target
KERNEL_TARGET="zImage"
;;
aarch64)
if [ "${DISTRO}" != "Lakka" ]; then
echo "${DEVICE} ${ARCH} not supported on ${DISTRO}!"
exit 1
elif [ "${DEVICE}" = "RPi3" -o "${DEVICE}" = "RPiZero2-GPiCASE2W" ]; then
TARGET_CPU="cortex-a53"
elif [ "${DEVICE:0:4}" = "RPi4" ]; then
TARGET_CPU="cortex-a72"
elif [ "${DEVICE}" = "RPi5" ]; then
TARGET_CPU="cortex-a76"
TARGET_CPU_FLAGS="+crc+crypto"
else
echo "${DEVICE} ${ARCH} not supported on ${DISTRO}!"
exit 1
fi
TARGET_CPU_FLAGS="+crc"
TARGET_FPU="neon-fp-armv8"
TARGET_FLOAT="hard"
KERNEL_TARGET="Image"
ADDITIONAL_PACKAGES+=" rpi_userland"
;;
esac
# Bootloader to use (bcm2835-bootloader)
BOOTLOADER="bcm2835-bootloader"
# Additional kernel make parameters (for example to specify the u-boot loadaddress)
KERNEL_MAKE_EXTRACMD="dtbs"
# Additional kernel dependencies
KERNEL_EXTRA_DEPENDS_TARGET=""
# Kernel to use. values can be:
# default: default mainline kernel
LINUX="raspberrypi"
# use framebuffer console
EXTRA_CMDLINE="console=tty0"
################################################################################
# setup build defaults
################################################################################
# Project CFLAGS
PROJECT_CFLAGS=""
# SquashFS compression method (gzip / lzo / xz / zstd)
SQUASHFS_COMPRESSION="zstd"
################################################################################
# setup project defaults
################################################################################
# OpenGL(X) implementation to use (no / mesa)
OPENGL="no"
# OpenGL-ES implementation to use (no / bcm2835-driver / mesa)
OPENGLES="mesa"
# Vulkan implementation to use (vulkan-loader / no)
VULKAN="no"
# Displayserver to use (wl / no)
DISPLAYSERVER="no"
# Windowmanager to use (weston / no)
WINDOWMANAGER="no"
# Xorg Graphic drivers to use (all / vc4 / none)
# Space separated list is supported,
# e.g. GRAPHIC_DRIVERS="vc4"
GRAPHIC_DRIVERS="vc4"
# KODI Player implementation to use (default / bcm2835-driver / mesa)
KODIPLAYER_DRIVER="mesa"
# use the kernel CEC framework for libcec (yes / no)
CEC_FRAMEWORK_SUPPORT="yes"
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
# Space separated list is supported,
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
FIRMWARE="misc-firmware wlan-firmware dvb-firmware brcmfmac_sdio-firmware-rpi"
# build with installer (yes / no)
INSTALLER_SUPPORT="no"
# kernel image name
KERNEL_NAME="kernel.img"
# additional drivers to install:
# for a list of additional drivers see packages/linux-drivers
# Space separated list is supported,
# e.g. ADDITIONAL_DRIVERS+=" DRIVER1 DRIVER2"
# Comment ADDITIONAL_PACKAGES below if using bcm2835-driver
ADDITIONAL_DRIVERS+=" bcm2835-driver"
if [ "${ALSA_SUPPORT}" = "yes" ]; then
ADDITIONAL_DRIVERS+=" rpi-cirrus-config"
fi
# build and install driver addons (yes / no)
DRIVER_ADDONS_SUPPORT="no"
# driver addons to install:
# for a list of additional drivers see packages/linux-driver-addons
# Space separated list is supported,
DRIVER_ADDONS="crazycat dvb-latest"
# additional packages to install:
ADDITIONAL_PACKAGES+=" bcm2835-userland bcm2835-utils"
# debug tty path
DEBUG_TTY="/dev/console"
# Overrides for Lakka
if [ "${DISTRO}" = "Lakka" ]; then
FIRMWARE="${FIRMWARE//dvb-firmware/}"
DRIVER_ADDONS_SUPPORT="no"
DRIVER_ADDONS=""
if [ "${DEVICE:0:4}" = "RPi4" -o "${DEVICE}" = "RPi5" ]; then
VULKAN="vulkan-loader"
fi
fi