From 94506894837242877c147bd755111cfd8f993ea7 Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Wed, 5 Dec 2018 21:44:09 -0600 Subject: [PATCH] Fix Sim for newer distros __builtin found fix for rbendian.h tools/configure defines SIM_USE_BYTESWAP_H if byteswap.h is found in /usr/include/ maybe there is a better mechanism for this genshortcut.sh is a simple script to make .desktop shortcut files several newer distros don't allow you to run the simulator from the file manager, this or perhaps a different method can probably be included while building a sim at a later date. for now it can be run manually like so: similar to ../tools/configure run from your simulator folder ../tools/genshortcut.sh exepath shortname icon ex. ../tools/genshortcut.sh ./rockboxui clip+sim music-app Change-Id: Ia05d3a9349b27c5968a4a7a68b2eb480e60faec3 --- firmware/include/rbendian.h | 4 ++++ tools/configure | 7 +++++++ tools/genshortcut.sh | 41 +++++++++++++++++++++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100755 tools/genshortcut.sh diff --git a/firmware/include/rbendian.h b/firmware/include/rbendian.h index dbb6d4e822..0e941b8f06 100644 --- a/firmware/include/rbendian.h +++ b/firmware/include/rbendian.h @@ -23,6 +23,10 @@ #include "config.h" +#ifdef SIM_USE_BYTESWAP_H +#include +#endif + #ifndef __MINGW32__ #include #endif diff --git a/tools/configure b/tools/configure index 330c6640fe..6398c48d06 100755 --- a/tools/configure +++ b/tools/configure @@ -10,6 +10,9 @@ # global CC options for all platforms CCOPTS="-W -Wall -Wundef -O -nostdlib -ffreestanding -Wstrict-prototypes -pipe -std=gnu99" +#newer versions GLIBC use byteswap.h +BYTESWP="/usr/include/byteswap.h" + # LD options for the core LDOPTS="" # LD options for the core + plugins @@ -4471,6 +4474,10 @@ fi if [ "yes" = "$simulator" ]; then echo Unsetting APPLICATION define for SIMULATOR build unset application + if test -f "$BYTESWP"; then + echo Using "$BYTESWP" + extradefines="$extradefines -DSIM_USE_BYTESWAP_H=$BYTESWP" + fi fi if [ "yes" = "$application" ]; then diff --git a/tools/genshortcut.sh b/tools/genshortcut.sh new file mode 100755 index 0000000000..88596c8483 --- /dev/null +++ b/tools/genshortcut.sh @@ -0,0 +1,41 @@ +#!/bin/sh +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# +#shortcut.desktop generator + +# Create a .desktop entry to allow the simulator to be executed in newer shells +# $1 executable +# $2 shortcut name +# $3 icon +create_shortcut() { + path="$(cd "$(dirname "$1")"; pwd)/" + execname=$(basename "$1") + shortname="$2" + icon="$3" + shortcut="$path$shortname.desktop" + + echo "Creating shortcut $shortcut" + echo "path: $path" + echo "exec: $execname" + echo "icon: $icon" + + echo "[Desktop Entry] + Encoding=UTF-8 + Version=1.1 + Type=Application + Categories=Apps; + Terminal=false + Name=$shortname + Path=$path + Exec=$path/$execname + Icon=$icon + Name[en-US]=$shortname" > $shortcut +} + +#./genshortcut.sh ./rockboxui target-sim music-app +create_shortcut $@