Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add build tools, build instructions #2

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
*.o
.idea/
bin/
interface/autosave/
19 changes: 19 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,21 @@
# muX
muOS Frontend

## Configuration
- Download the [buildroot/Batocera Lite SDK Toolchain](https://github.com/rg35xx-cfw/rg35xx-cfw.github.io/releases)
- Unpack the tarfile, and then run the `./relocate.sh` in the root directory to update the buildroot SDK accordingly.

The `setvars.sh` script included in this file prepares the environment variables for the current session to build for the target device.
- This shell script assumes your toolchain directory lives at `~/x-tools`.

To build, a target device must be exported to environment variable `DEVICE`. Device options are located in `common/help.h`, and include:

- RG28XX
- RG32XXH
- RG35XXOG
- RG35XXPLUS
- RG35XXSP
- RG35XX2024

## Build
To build, first run `. ./setvars.sh` to set the correct environment variables for the current session, and then `./buildall.sh`, which will make all of the individual subfolders. The resultant applications will be placed into the `./bin` directory.
1 change: 1 addition & 0 deletions buildall.sh
Original file line number Diff line number Diff line change
@@ -10,6 +10,7 @@ BUILD_COUNT=0
CURRENT_DIR=$(pwd)

rm -rf bin/mux*
mkdir bin

for MUX in */; do
if [ -d "$MUX" ]; then
32 changes: 16 additions & 16 deletions muxarchive/ui/filelist.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
ui_scrArchive.c
ui.c
ui_comp_hook.c
ui_helpers.c
ui_img_nothing_png.c
ui_img_muoskofi_png.c
ui_font_Awesome.c
ui_font_AwesomeBig.c
ui_font_AwesomeBrand.c
ui_font_AwesomeBrandSmall.c
ui_font_AwesomeSmall.c
ui_font_Gamepad.c
ui_font_GamepadNav.c
ui_font_NotoSans.c
ui_font_NotoSansBig.c
ui_font_NotoSansSmall.c
ui/ui_scrArchive.c
ui/ui.c
ui/ui_comp_hook.c
ui/ui_helpers.c
ui/ui_img_nothing_png.c
ui/ui_img_muoskofi_png.c
ui/ui_font_Awesome.c
ui/ui_font_AwesomeBig.c
ui/ui_font_AwesomeBrand.c
ui/ui_font_AwesomeBrandSmall.c
ui/ui_font_AwesomeSmall.c
ui/ui_font_Gamepad.c
ui/ui_font_GamepadNav.c
ui/ui_font_NotoSans.c
ui/ui_font_NotoSansBig.c
ui/ui_font_NotoSansSmall.c
32 changes: 16 additions & 16 deletions muxnetwork/ui/filelist.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
ui_scrNetwork.c
ui.c
ui_comp_hook.c
ui_helpers.c
ui_img_nothing_png.c
ui_img_muoskofi_png.c
ui_font_Awesome.c
ui_font_AwesomeBig.c
ui_font_AwesomeBrand.c
ui_font_AwesomeBrandSmall.c
ui_font_AwesomeSmall.c
ui_font_Gamepad.c
ui_font_GamepadNav.c
ui_font_NotoSans.c
ui_font_NotoSansBig.c
ui_font_NotoSansSmall.c
ui/ui_scrNetwork.c
ui/ui.c
ui/ui_comp_hook.c
ui/ui_helpers.c
ui/ui_img_nothing_png.c
ui/ui_img_muoskofi_png.c
ui/ui_font_Awesome.c
ui/ui_font_AwesomeBig.c
ui/ui_font_AwesomeBrand.c
ui/ui_font_AwesomeBrandSmall.c
ui/ui_font_AwesomeSmall.c
ui/ui_font_Gamepad.c
ui/ui_font_GamepadNav.c
ui/ui_font_NotoSans.c
ui/ui_font_NotoSansBig.c
ui/ui_font_NotoSansSmall.c
32 changes: 16 additions & 16 deletions muxsysinfo/ui/filelist.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
ui_scrSysInfo.c
ui.c
ui_comp_hook.c
ui_helpers.c
ui_img_nothing_png.c
ui_img_muoskofi_png.c
ui_font_Awesome.c
ui_font_AwesomeBig.c
ui_font_AwesomeBrand.c
ui_font_AwesomeBrandSmall.c
ui_font_AwesomeSmall.c
ui_font_Gamepad.c
ui_font_GamepadNav.c
ui_font_NotoSans.c
ui_font_NotoSansBig.c
ui_font_NotoSansSmall.c
ui/ui_scrSysInfo.c
ui/ui.c
ui/ui_comp_hook.c
ui/ui_helpers.c
ui/ui_img_nothing_png.c
ui/ui_img_muoskofi_png.c
ui/ui_font_Awesome.c
ui/ui_font_AwesomeBig.c
ui/ui_font_AwesomeBrand.c
ui/ui_font_AwesomeBrandSmall.c
ui/ui_font_AwesomeSmall.c
ui/ui_font_Gamepad.c
ui/ui_font_GamepadNav.c
ui/ui_font_NotoSans.c
ui/ui_font_NotoSansBig.c
ui/ui_font_NotoSansSmall.c
32 changes: 16 additions & 16 deletions muxtester/ui/filelist.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
ui_scrTester.c
ui.c
ui_comp_hook.c
ui_helpers.c
ui_img_nothing_png.c
ui_img_muoskofi_png.c
ui_font_Awesome.c
ui_font_AwesomeBig.c
ui_font_AwesomeBrand.c
ui_font_AwesomeBrandSmall.c
ui_font_AwesomeSmall.c
ui_font_Gamepad.c
ui_font_GamepadNav.c
ui_font_NotoSans.c
ui_font_NotoSansBig.c
ui_font_NotoSansSmall.c
ui/ui_scrTester.c
ui/ui.c
ui/ui_comp_hook.c
ui/ui_helpers.c
ui/ui_img_nothing_png.c
ui/ui_img_muoskofi_png.c
ui/ui_font_Awesome.c
ui/ui_font_AwesomeBig.c
ui/ui_font_AwesomeBrand.c
ui/ui_font_AwesomeBrandSmall.c
ui/ui_font_AwesomeSmall.c
ui/ui_font_Gamepad.c
ui/ui_font_GamepadNav.c
ui/ui_font_NotoSans.c
ui/ui_font_NotoSansBig.c
ui/ui_font_NotoSansSmall.c
32 changes: 16 additions & 16 deletions muxvisual/ui/filelist.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
ui_scrVisual.c
ui.c
ui_comp_hook.c
ui_helpers.c
ui_img_nothing_png.c
ui_img_muoskofi_png.c
ui_font_Awesome.c
ui_font_AwesomeBig.c
ui_font_AwesomeBrand.c
ui_font_AwesomeBrandSmall.c
ui_font_AwesomeSmall.c
ui_font_Gamepad.c
ui_font_GamepadNav.c
ui_font_NotoSans.c
ui_font_NotoSansBig.c
ui_font_NotoSansSmall.c
ui/ui_scrVisual.c
ui/ui.c
ui/ui_comp_hook.c
ui/ui_helpers.c
ui/ui_img_nothing_png.c
ui/ui_img_muoskofi_png.c
ui/ui_font_Awesome.c
ui/ui_font_AwesomeBig.c
ui/ui_font_AwesomeBrand.c
ui/ui_font_AwesomeBrandSmall.c
ui/ui_font_AwesomeSmall.c
ui/ui_font_Gamepad.c
ui/ui_font_GamepadNav.c
ui/ui_font_NotoSans.c
ui/ui_font_NotoSansBig.c
ui/ui_font_NotoSansSmall.c
54 changes: 54 additions & 0 deletions setvars.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#!/bin/bash

# Device options are listed in common/help.h.
# Targets include:
# RG28XX
# RG35XXH
# RG35XXOG
# RG35XXPLUS
# RG35XXSP
# RG35XX2024
export DEVICE=RG35XXPLUS

# This is the location of your installed Batocera Lite SDK Toolchain.
# If this is incorrect, point it to your directory.
export XTOOL=$HOME/x-tools
export XHOST=arm-buildroot-linux-gnueabihf
export XBIN=$XTOOL/bin

export PATH="${PATH}:$XBIN"

export SYSROOT=$XTOOL/$XHOST/$XHOST/sysroot
export DESTDIR=$SYSROOT

export CC=$XBIN/$XHOST-gcc
export CXX=$XBIN/$XHOST-g++
export AR=$XBIN/$XHOST-ar
export LD=$XBIN/$XHOST-ld
export STRIP=$XBIN/$XHOST-strip

export LD_LIBRARY_PATH="$SYSROOT/usr/lib"

export CPP_FLAGS="--sysroot=$SYSROOT -I$SYSROOT/usr/include"
export LD_FLAGS="-L$SYSROOT -L$SYSROOT/lib -L$SYSROOT/usr/lib -L$SYSROOT/usr/local/lib -L$SYSROOT/usr/include/sound"

export CPPFLAGS=$CPP_FLAGS
export LDFLAGS=$LD_FLAGS

export CFLAGS="-marm -mfpu=neon -mfloat-abi=hard $CPP_FLAGS"
export CCFLAGS=$CPP_FLAGS
export CXXFLAGS=$CPP_FLAGS

export INC_DIR=$CPP_FLAGS
export LIB_DIR=$LD_FLAGS

export ARMABI=$XHOST
export TOOLCHAIN_DIR=$XTOOL/$XHOST

export PKG_CONFIG_PATH=$SYSROOT/usr/lib/pkgconfig
export PKG_CONF_PATH=$XBIN/pkgconf

export CROSS_COMPILE=$XBIN/$XHOST-

export SDL_CONFIG=$SYSROOT/usr/bin/sdl-config
export FREETYPE_CONFIG=$SYSROOT/usr/bin/freetype-config