From b429096b36cf44f773f01b371c0ff5a60ed61c95 Mon Sep 17 00:00:00 2001 From: David-John Willis Date: Sun, 22 Jan 2012 16:36:52 +0000 Subject: OPENPANDORA: Move all dist files into own folder under dists. * Update OpenPandora bundle targets to suit new layout. * Also add .in input files so we can automatically update version numbers. --- backends/platform/openpandora/build/PXML.xml | 55 ---- .../platform/openpandora/build/PXML_schema.xsd | 341 --------------------- .../platform/openpandora/build/README-OPENPANDORA | 19 -- backends/platform/openpandora/build/README-PND.txt | 38 --- .../openpandora/build/icon/preview-pic.png | Bin 72496 -> 0 bytes .../platform/openpandora/build/icon/scummvm.png | Bin 2656 -> 0 bytes backends/platform/openpandora/build/index.html | 26 -- backends/platform/openpandora/build/pnd_make.sh | 321 ------------------- backends/platform/openpandora/build/runscummvm.sh | 14 - backends/platform/openpandora/op-bundle.mk | 29 +- dists/openpandora/PXML.xml | 55 ++++ dists/openpandora/PXML.xml.in | 55 ++++ dists/openpandora/PXML_schema.xsd | 341 +++++++++++++++++++++ dists/openpandora/README-OPENPANDORA | 19 ++ dists/openpandora/README-OPENPANDORA.in | 19 ++ dists/openpandora/README-PND.txt | 38 +++ dists/openpandora/README-PND.txt.in | 38 +++ dists/openpandora/icon/preview-pic.png | Bin 0 -> 72496 bytes dists/openpandora/icon/scummvm.png | Bin 0 -> 2656 bytes dists/openpandora/index.html | 26 ++ dists/openpandora/index.html.in | 26 ++ dists/openpandora/pnd_make.sh | 321 +++++++++++++++++++ dists/openpandora/runscummvm.sh | 14 + 23 files changed, 967 insertions(+), 828 deletions(-) delete mode 100755 backends/platform/openpandora/build/PXML.xml delete mode 100644 backends/platform/openpandora/build/PXML_schema.xsd delete mode 100755 backends/platform/openpandora/build/README-OPENPANDORA delete mode 100755 backends/platform/openpandora/build/README-PND.txt delete mode 100755 backends/platform/openpandora/build/icon/preview-pic.png delete mode 100755 backends/platform/openpandora/build/icon/scummvm.png delete mode 100755 backends/platform/openpandora/build/index.html delete mode 100755 backends/platform/openpandora/build/pnd_make.sh delete mode 100755 backends/platform/openpandora/build/runscummvm.sh create mode 100644 dists/openpandora/PXML.xml create mode 100644 dists/openpandora/PXML.xml.in create mode 100644 dists/openpandora/PXML_schema.xsd create mode 100644 dists/openpandora/README-OPENPANDORA create mode 100644 dists/openpandora/README-OPENPANDORA.in create mode 100644 dists/openpandora/README-PND.txt create mode 100644 dists/openpandora/README-PND.txt.in create mode 100644 dists/openpandora/icon/preview-pic.png create mode 100644 dists/openpandora/icon/scummvm.png create mode 100644 dists/openpandora/index.html create mode 100644 dists/openpandora/index.html.in create mode 100644 dists/openpandora/pnd_make.sh create mode 100644 dists/openpandora/runscummvm.sh diff --git a/backends/platform/openpandora/build/PXML.xml b/backends/platform/openpandora/build/PXML.xml deleted file mode 100755 index a87c49e2b8..0000000000 --- a/backends/platform/openpandora/build/PXML.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - ScummVM - - ScummVM - - - - ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! - - ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. - - - - - - - - - - - - - ScummVM - - ScummVM - - - - ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! - - ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. - - - - - - - - - - - - - - - - - diff --git a/backends/platform/openpandora/build/PXML_schema.xsd b/backends/platform/openpandora/build/PXML_schema.xsd deleted file mode 100644 index 7c0d635016..0000000000 --- a/backends/platform/openpandora/build/PXML_schema.xsd +++ /dev/null @@ -1,341 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/backends/platform/openpandora/build/README-OPENPANDORA b/backends/platform/openpandora/build/README-OPENPANDORA deleted file mode 100755 index c8aabcbb7a..0000000000 --- a/backends/platform/openpandora/build/README-OPENPANDORA +++ /dev/null @@ -1,19 +0,0 @@ -ScummVM - OPENPANDORA SPECIFIC README ------------------------------------------------------------------------- -Please refer to the: - -ScummVM Forum: -WiKi: - -for the most current information on the port and any updates to this -documentation. - -The wiki includes detailed instructions on how to use the port and -control information. - ------------------------------------------------------------------------- -Credits - -Core ScummVM code (c) The ScummVM Team -OpenPandora backend (c) John Willis -Detailed (c) information can be found within the source code diff --git a/backends/platform/openpandora/build/README-PND.txt b/backends/platform/openpandora/build/README-PND.txt deleted file mode 100755 index 942c3a43e2..0000000000 --- a/backends/platform/openpandora/build/README-PND.txt +++ /dev/null @@ -1,38 +0,0 @@ -ScummVM - OPENPANDORA README - HOW TO INSTALL ------------------------------------------------------------------------- - -Please refer to the: - -ScummVM Forum: -WiKi: - -for the most current information on the port and any updates to this -documentation. - ------------------------------------------------------------------------- -Installing: - -This archive contains ScummVM in a PND format ready to be copied to the -OpenPandora and used. - -To install just copy the .pnd file from this archive to your device. - -You will need to place the .pnd file in a suitable location on your SD -card. - -/pandora/desktop <- place here if you wish the icon to show on the - desktop. Documentation will show in the menu. - -/pandora/menu <- place here if you wish the icon to show on the - Xfce menu. Documentation will show in the menu. - -/pandora/apps <- place here if you wish the icon to show on the - desktop and in the menu. Documentation will show - in the menu. - ------------------------------------------------------------------------- -Credits - -Core ScummVM code (c) The ScummVM Team -OpenPandora backend (c) John Willis -Detailed (c) information can be found within the source code diff --git a/backends/platform/openpandora/build/icon/preview-pic.png b/backends/platform/openpandora/build/icon/preview-pic.png deleted file mode 100755 index 2f4a536d30..0000000000 Binary files a/backends/platform/openpandora/build/icon/preview-pic.png and /dev/null differ diff --git a/backends/platform/openpandora/build/icon/scummvm.png b/backends/platform/openpandora/build/icon/scummvm.png deleted file mode 100755 index 128e59efc4..0000000000 Binary files a/backends/platform/openpandora/build/icon/scummvm.png and /dev/null differ diff --git a/backends/platform/openpandora/build/index.html b/backends/platform/openpandora/build/index.html deleted file mode 100755 index 34d381d0f8..0000000000 --- a/backends/platform/openpandora/build/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - -

-

Welcome to the ScummVM!

-

- -

-

ScummVM: OpenPandora Specific Documentation

-

- -ScummVM OpenPandora README
-ScummVM OpenPandora Website
-ScummVM OpenPandora WiKi
- -

-

ScummVM: General Documentation

-

- -ScummVM website
-ScummVM README
-ScummVM NEWS
-ScummVM Authors
-ScummVM Copyright
-GPL Licence
- - diff --git a/backends/platform/openpandora/build/pnd_make.sh b/backends/platform/openpandora/build/pnd_make.sh deleted file mode 100755 index 0c03e8154d..0000000000 --- a/backends/platform/openpandora/build/pnd_make.sh +++ /dev/null @@ -1,321 +0,0 @@ -#!/bin/bash -# -# pnd_make.sh -# -# This script is meant to ease generation of a pnd file. Please consult the output -# when running --help for a list of available parameters and an explaination of -# those. -# -# Required tools when running the script: -# bash -# echo, cat, mv, rm -# mkisofs or mksquashfs (the latter when using the -c param!) -# xmllint (optional, only for validation of the PXML against the schema) - - -PXML_schema=$(dirname ${0})/PXML_schema.xsd -GENPXML_PATH=$(dirname ${0})/genpxml.sh - -# useful functions ... -black='\E[30m' -red='\E[31m' -green='\E[32m' -yellow='\E[33m' -blue='\E[34m' -magenta='\E[35m' -cyan='\E[36m' -white='\E[37m' - -check_for_tool() -{ - which $1 &> /dev/null - if [ "$?" -ne "0" ]; - then - cecho "ERROR: Could not find the program '$1'. Please make sure -that it is available in your PATH since it is required to complete your request." $red - exit 1 - fi -} - -cecho () # Color-echo. Argument $1 = message, Argument $2 = color -{ - local default_msg="No message passed." # Doesn't really need to be a local variable. - message=${1:-$default_msg} # Defaults to default message. - color=${2:-$black} # Defaults to black, if not specified. - echo -e "$color$message" - tput sgr0 # Reset to normal. - return -} - - -print_help() -{ - cat << EOSTREAM -pnd_make.sh - A script to package "something" into a PND. - -Usage: - $(basename ${0}) {--directory|-d} {--pndname|-p} [{--compress-squashfs|-c}] - [{--genpxml} ] [{--icon|-i} ] [{--pxml|-x} ] - [{--schema|-s} ] [{--help|-h}] - - -Switches: - --compress-squashfs / -c Define whether or not the pnd should be compressed using - squashfs. If this parameter is selected, a compressed pnd - will be created. - - --directory / -d Sets the folder that is to be used for the resulting pnd - to . This option is mandatory for the script to - function correctly. - - --genpxml Sets the script used for generating a PXML file (if none - is available already) to . Please make sure to either - provide a full path or prefix a script in the current folder - with './' so that the script can actually be executed. If - this variable is not specified, $GENPXML_PATH - will be used. - - --help / -h Displays this help text. - - --icon / -i Sets the icon that will be appended in the pnd to . - - --pndname / -p Sets the output filename of the resulting pnd to . - This option is mandatory for the script to function - correctly. - - --pxml / -x Sets the PXML file that is to be used to . If you - neither provide a PXML file or set this entry to 'guess', - an existing 'PXML.xml' in your selected '--directory' - will be used, or the script $GENPXML_PATH - will be called to try to generate a basic PXML file for you. - - --schema / -s Sets the schema file, that is to be used for validation, - to =4.0 of squashfs -is required to be available in your PATH. -EOSTREAM -} - - -# Parse command line parameters -while [ "${1}" != "" ]; do - if [ "${1}" = "--compress-squashfs" ] || [ "${1}" = "-c" ]; - then - SQUASH=1 - shift 1 - elif [ "${1}" = "--directory" ] || [ "${1}" = "-d" ]; - then - FOLDER=$2 - shift 2 - elif [ "${1}" = "--genpxml" ]; - then - GENPXML_PATH=$2 - shift 2 - elif [ "${1}" = "--help" ] || [ "${1}" = "-h" ]; - then - print_help - exit 0 - elif [ "${1}" = "--icon" ] || [ "${1}" = "-i" ]; - then - ICON=$2 - shift 2 - elif [ "${1}" = "--pndname" ] || [ "${1}" = "-p" ]; - then - PNDNAME=$2 - shift 2 - elif [ "${1}" = "--pxml" ] || [ "${1}" = "-x" ]; - then - PXML=$2 - shift 2 - elif [ "${1}" = "--schema" ] || [ "${1}" = "-f" ] - then - PXML_schema=$2 - shift 2 - else - cecho "ERROR: '$1' is not a known argument. Printing --help and aborting." $red - print_help - exit 1 - fi -done - - -# Generate a PXML if the param is set to Guess or it is empty. -if [ ! $PXML ] || [ $PXML = "guess" ] && [ $PNDNAME ] && [ $FOLDER ]; -then - if [ -f $FOLDER/PXML.xml ]; # use the already existing PXML.xml file if there is one... - then - PXML=$FOLDER/PXML.xml - PXML_ALREADY_EXISTING="true" - else - if [ -f $GENPXML_PATH ]; - then - $GENPXML_PATH --src $FOLDER --dest $FOLDER --author $USER - if [ -f $FOLDER/PXML.xml ]; - then - PXML_GENERATED="true" - else - cecho "ERROR: Generating a PXML file using '$GENPXML_PATH' failed. -Please generate a PXML file manually." $red - exit 1 - fi - else - cecho "ERROR: Could not find '$GENPXML_PATH' for generating a PXML file." $red - exit 1 - fi - fi -fi - - -# Probe if required variables were set -echo -e -cecho "Checking if all required variables were set." $green -if [ ! $PNDNAME ] || [ ! $FOLDER ] || [ ! $PXML ]; -then - echo -e - cecho "ERROR: Not all required options were set! Please see the --help information below." $red - echo -e - print_help - exit 1 -else - echo "PNDNAME set to '$PNDNAME'." -fi -# Check if the selected folder actually exists -if [ ! -d $FOLDER ]; -then - echo -e - cecho "ERROR: '$FOLDER' doesn't exist or is not a folder." $red - exit 1 -else - echo "FOLDER set to '$FOLDER'." -fi -# Check if the selected PXML file actually exists -if [ ! -f $PXML ]; -then - echo -e - cecho "ERROR: '$PXML' doesn't exist or is not a file." $red - exit 1 -else - if [ $PXML_ALREADY_EXISTING ]; - then - echo "You have not explicitly specified a PXML to use, but an existing file was -found. Will be using this one." - elif [ $PXML_GENERATED ]; - then - echo "A PXML file was generated for you using '$GENPXML_PATH'. This file will -not be removed at the end of this script because you might want to review it, adjust -single entries and rerun the script to generate a pnd with a PXML file with all the -information you want to have listed." - fi - echo "PXML set to '$PXML'." -fi - -# Print the other variables: -if [ $ICON ]; -then - if [ ! -f $ICON ] - then - cecho "WARNING: '$ICON' doesn't exist, will not append the selected icon to the pnd." $red - else - echo "ICON set to '$ICON'." - USE_ICON="true" - fi -fi -if [ $SQUASH ]; -then - echo "Will use a squashfs for '$PNDNAME'." -fi - - -# Validate the PXML file (if xmllint is available) -# Errors and problems in this section will be shown but are not fatal. -echo -e -cecho "Trying to validate '$PXML' now. Will be using '$PXML_schema' to do so." $green -which xmllint &> /dev/null -if [ "$?" -ne "0" ]; -then - VALIDATED=false - cecho "WARNING: Could not find 'xmllint'. Validity check of '$PXML' is not possible!" $red -else - if [ ! -f "$PXML_schema" ]; - then - VALIDATED=false - cecho "WARNING: Could not find '$PXML_schema'. If you want to validate your -PXML file please make sure to provide a schema using the --schema option." $red - else - xmllint --noout --schema $PXML_schema $PXML - if [ "$?" -ne "0" ]; then VALIDATED=false; else VALIDATED=true; fi - fi -fi -# Print some message at the end about the validation in case the user missed the output above -if [ $VALIDATED = "false" ] -then - cecho "WARNING: Could not successfully validate '$PXML'. Please check the output -above. This does not mean that your pnd will be broken. Either you are not following the strict -syntax required for validation or you don't have all files/programs required for validating." $red -else - cecho "Your file '$PXML' was validated successfully. The resulting pnd should -work nicely with libpnd." $green -fi - - -# Make iso from folder -echo -e -cecho "Creating an iso file based on '$FOLDER'." $green -if [ $SQUASH ]; -then - check_for_tool mksquashfs - if [ $(mksquashfs -version | awk 'BEGIN{r=0} $3>=4{r=1} END{print r}') -eq 0 ]; - then - cecho "ERROR: Your squashfs version is older then version 4, please upgrade to 4.0 or later" $red - exit 1 - fi - mksquashfs $FOLDER $PNDNAME.iso -nopad -no-recovery -else - check_for_tool mkisofs - mkisofs -o $PNDNAME.iso -R $FOLDER -fi - -# Check that the iso file was actually created before continuing -if [ ! -f $PNDNAME.iso ]; -then - cecho "ERROR: The temporary file '$PNDNAME.iso' could not be created. -Please check the output above for any errors and retry after fixing them. Aborting." $red - exit 1 -fi - - -# Append pxml to iso -echo -e -cecho "Appending '$PXML' to the created iso file." $green -cat $PNDNAME.iso $PXML > $PNDNAME -rm $PNDNAME.iso #cleanup - - -# Append icon if specified and available -if [ $USE_ICON ]; -then - echo -e - cecho "Appending the icon '$ICON' to the pnd." $green - mv $PNDNAME $PNDNAME.tmp - cat $PNDNAME.tmp $ICON > $PNDNAME # append icon - rm $PNDNAME.tmp #cleanup -fi - - -# Final message -echo -e -if [ -f $PNDNAME ]; -then - cecho "Successfully finished creating the pnd '$PNDNAME'." $green -else - cecho "There seems to have been a problem and '$PNDNAME' was not created. Please check -the output above for any error messages. A possible cause for this is that there was -not enough space available." $red - exit 1 -fi - - -#if [ $PXML = "guess" ];then rm $FOLDER/PXML.xml; fi #cleanup diff --git a/backends/platform/openpandora/build/runscummvm.sh b/backends/platform/openpandora/build/runscummvm.sh deleted file mode 100755 index 9c9d8362cb..0000000000 --- a/backends/platform/openpandora/build/runscummvm.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -# Make sure any extra libs not in the firmware are pulled in. -LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:../lib -export LD_LIBRARY_PATH - -# Ensure we have a folder to store save games on the SD card. -mkdir saves - -# make a runtime dir, just incase it creates anything in CWD -mkdir runtime -cd runtime - -../bin/scummvm --fullscreen --gfx-mode=2x --config=../scummvm.config --themepath=../data diff --git a/backends/platform/openpandora/op-bundle.mk b/backends/platform/openpandora/op-bundle.mk index 089430f43c..284a0497a8 100755 --- a/backends/platform/openpandora/op-bundle.mk +++ b/backends/platform/openpandora/op-bundle.mk @@ -14,15 +14,15 @@ op-bundle: $(EXECUTABLE) $(MKDIR) "$(bundle_name)/scummvm/icon" $(MKDIR) "$(bundle_name)/scummvm/lib" - $(CP) $(srcdir)/backends/platform/openpandora/build/runscummvm.sh $(bundle_name)/scummvm/ - $(CP) $(srcdir)/backends/platform/openpandora/build/PXML.xml $(bundle_name)/scummvm/data/ + $(CP) $(srcdir)/dists/openpandora/runscummvm.sh $(bundle_name)/scummvm/ + $(CP) $(srcdir)/dists/openpandora/PXML.xml $(bundle_name)/scummvm/data/ - $(CP) $(srcdir)/backends/platform/openpandora/build/icon/scummvm.png $(bundle_name)/scummvm/icon/ - $(CP) $(srcdir)/backends/platform/openpandora/build/icon/preview-pic.png $(bundle_name)/scummvm/icon/ + $(CP) $(srcdir)/dists/openpandora/icon/scummvm.png $(bundle_name)/scummvm/icon/ + $(CP) $(srcdir)/dists/openpandora/icon/preview-pic.png $(bundle_name)/scummvm/icon/ - $(CP) $(srcdir)/backends/platform/openpandora/build/README-OPENPANDORA $(bundle_name)/scummvm/docs/ - $(CP) $(srcdir)/backends/platform/openpandora/build/index.html $(bundle_name)/scummvm/docs/ + $(CP) $(srcdir)/dists/openpandora/README-OPENPANDORA $(bundle_name)/scummvm/docs/ + $(CP) $(srcdir)/dists/openpandora/index.html $(bundle_name)/scummvm/docs/ $(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/docs/ @@ -50,15 +50,15 @@ op-pnd: $(EXECUTABLE) $(MKDIR) "$(bundle_name)/scummvm/icon" $(MKDIR) "$(bundle_name)/scummvm/lib" - $(CP) $(srcdir)/backends/platform/openpandora/build/runscummvm.sh $(bundle_name)/scummvm/ - $(CP) $(srcdir)/backends/platform/openpandora/build/PXML.xml $(bundle_name)/scummvm/data/ + $(CP) $(srcdir)/dists/openpandora/runscummvm.sh $(bundle_name)/scummvm/ + $(CP) $(srcdir)/dists/openpandora/PXML.xml $(bundle_name)/scummvm/data/ - $(CP) $(srcdir)/backends/platform/openpandora/build/icon/scummvm.png $(bundle_name)/scummvm/icon/ - $(CP) $(srcdir)/backends/platform/openpandora/build/icon/preview-pic.png $(bundle_name)/scummvm/icon/ + $(CP) $(srcdir)/dists/openpandora/icon/scummvm.png $(bundle_name)/scummvm/icon/ + $(CP) $(srcdir)/dists/openpandora/icon/preview-pic.png $(bundle_name)/scummvm/icon/ - $(CP) $(srcdir)/backends/platform/openpandora/build/README-OPENPANDORA $(bundle_name)/scummvm/docs/ - $(CP) $(srcdir)/backends/platform/openpandora/build/index.html $(bundle_name)/scummvm/docs/ + $(CP) $(srcdir)/dists/openpandora/README-OPENPANDORA $(bundle_name)/scummvm/docs/ + $(CP) $(srcdir)/dists/openpandora/index.html $(bundle_name)/scummvm/docs/ $(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/docs/ @@ -75,9 +75,10 @@ endif $(CP) $(libloc)/../arm-angstrom-linux-gnueabi/usr/lib/libFLAC.so.8.2.0 $(bundle_name)/scummvm/lib/libFLAC.so.8 - $(srcdir)/backends/platform/openpandora/build/pnd_make.sh -p $(bundle_name).pnd -c -d $(bundle_name)/scummvm -x $(bundle_name)/scummvm/data/PXML.xml -i $(bundle_name)/scummvm/icon/scummvm.png + $(srcdir)/dists/openpandora/pnd_make.sh -p $(bundle_name).pnd -c -d $(bundle_name)/scummvm -x $(bundle_name)/scummvm/data/PXML.xml -i $(bundle_name)/scummvm/icon/scummvm.png + + $(CP) $(srcdir)/dists/openpandora/README-PND.txt $(bundle_name) - $(CP) $(srcdir)/backends/platform/openpandora/build/README-PND.txt $(bundle_name) tar -cvjf $(bundle_name)-pnd.tar.bz2 $(bundle_name).pnd $(bundle_name)/README-PND.txt rm -R ./$(bundle_name) diff --git a/dists/openpandora/PXML.xml b/dists/openpandora/PXML.xml new file mode 100644 index 0000000000..896210bf01 --- /dev/null +++ b/dists/openpandora/PXML.xml @@ -0,0 +1,55 @@ + + + + + + + + + ScummVM 1.5.0git + + ScummVM 1.5.0git + + + + ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! + + ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. + + + + + + + + + + + + + ScummVM + + ScummVM + + + + ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! + + ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. + + + + + + + + + + + + + + + + + diff --git a/dists/openpandora/PXML.xml.in b/dists/openpandora/PXML.xml.in new file mode 100644 index 0000000000..938e9cb24a --- /dev/null +++ b/dists/openpandora/PXML.xml.in @@ -0,0 +1,55 @@ + + + + + + + + + ScummVM @VERSION@ + + ScummVM @VERSION@ + + + + ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! + + ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. + + + + + + + + + + + + + ScummVM + + ScummVM + + + + ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed! + + ScummVM supports many adventure games, including LucasArts SCUMM games (such as Monkey Island 1-3, Day of the Tentacle, Sam & Max, ...), many of Sierra's AGI and SCI games (such as King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword 1 and 2, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia 1-3, many of Humongous Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt games) and many more. + + + + + + + + + + + + + + + + + diff --git a/dists/openpandora/PXML_schema.xsd b/dists/openpandora/PXML_schema.xsd new file mode 100644 index 0000000000..7c0d635016 --- /dev/null +++ b/dists/openpandora/PXML_schema.xsd @@ -0,0 +1,341 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dists/openpandora/README-OPENPANDORA b/dists/openpandora/README-OPENPANDORA new file mode 100644 index 0000000000..b3947975c0 --- /dev/null +++ b/dists/openpandora/README-OPENPANDORA @@ -0,0 +1,19 @@ +ScummVM 1.5.0git - OPENPANDORA SPECIFIC README +------------------------------------------------------------------------ +Please refer to the: + +ScummVM Forum: +WiKi: + +for the most current information on the port and any updates to this +documentation. + +The wiki includes detailed instructions on how to use the port and +control information. + +------------------------------------------------------------------------ +Credits + +Core ScummVM code (c) The ScummVM Team +OpenPandora backend (c) John Willis +Detailed (c) information can be found within the source code diff --git a/dists/openpandora/README-OPENPANDORA.in b/dists/openpandora/README-OPENPANDORA.in new file mode 100644 index 0000000000..0a63a5938d --- /dev/null +++ b/dists/openpandora/README-OPENPANDORA.in @@ -0,0 +1,19 @@ +ScummVM @VERSION@ - OPENPANDORA SPECIFIC README +------------------------------------------------------------------------ +Please refer to the: + +ScummVM Forum: +WiKi: + +for the most current information on the port and any updates to this +documentation. + +The wiki includes detailed instructions on how to use the port and +control information. + +------------------------------------------------------------------------ +Credits + +Core ScummVM code (c) The ScummVM Team +OpenPandora backend (c) John Willis +Detailed (c) information can be found within the source code diff --git a/dists/openpandora/README-PND.txt b/dists/openpandora/README-PND.txt new file mode 100644 index 0000000000..240936f755 --- /dev/null +++ b/dists/openpandora/README-PND.txt @@ -0,0 +1,38 @@ +ScummVM 1.5.0git - OPENPANDORA README - HOW TO INSTALL +------------------------------------------------------------------------ + +Please refer to the: + +ScummVM Forum: +WiKi: + +for the most current information on the port and any updates to this +documentation. + +------------------------------------------------------------------------ +Installing: + +This archive contains ScummVM in a PND format ready to be copied to the +OpenPandora and used. + +To install just copy the .pnd file from this archive to your device. + +You will need to place the .pnd file in a suitable location on your SD +card. + +/pandora/desktop <- place here if you wish the icon to show on the + desktop. Documentation will show in the menu. + +/pandora/menu <- place here if you wish the icon to show on the + Xfce menu. Documentation will show in the menu. + +/pandora/apps <- place here if you wish the icon to show on the + desktop and in the menu. Documentation will show + in the menu. + +------------------------------------------------------------------------ +Credits + +Core ScummVM code (c) The ScummVM Team +OpenPandora backend (c) John Willis +Detailed (c) information can be found within the source code diff --git a/dists/openpandora/README-PND.txt.in b/dists/openpandora/README-PND.txt.in new file mode 100644 index 0000000000..076c0e0a5c --- /dev/null +++ b/dists/openpandora/README-PND.txt.in @@ -0,0 +1,38 @@ +ScummVM @VERSION@ - OPENPANDORA README - HOW TO INSTALL +------------------------------------------------------------------------ + +Please refer to the: + +ScummVM Forum: +WiKi: + +for the most current information on the port and any updates to this +documentation. + +------------------------------------------------------------------------ +Installing: + +This archive contains ScummVM in a PND format ready to be copied to the +OpenPandora and used. + +To install just copy the .pnd file from this archive to your device. + +You will need to place the .pnd file in a suitable location on your SD +card. + +/pandora/desktop <- place here if you wish the icon to show on the + desktop. Documentation will show in the menu. + +/pandora/menu <- place here if you wish the icon to show on the + Xfce menu. Documentation will show in the menu. + +/pandora/apps <- place here if you wish the icon to show on the + desktop and in the menu. Documentation will show + in the menu. + +------------------------------------------------------------------------ +Credits + +Core ScummVM code (c) The ScummVM Team +OpenPandora backend (c) John Willis +Detailed (c) information can be found within the source code diff --git a/dists/openpandora/icon/preview-pic.png b/dists/openpandora/icon/preview-pic.png new file mode 100644 index 0000000000..2f4a536d30 Binary files /dev/null and b/dists/openpandora/icon/preview-pic.png differ diff --git a/dists/openpandora/icon/scummvm.png b/dists/openpandora/icon/scummvm.png new file mode 100644 index 0000000000..128e59efc4 Binary files /dev/null and b/dists/openpandora/icon/scummvm.png differ diff --git a/dists/openpandora/index.html b/dists/openpandora/index.html new file mode 100644 index 0000000000..d7238c1889 --- /dev/null +++ b/dists/openpandora/index.html @@ -0,0 +1,26 @@ + + +

+

Welcome to the ScummVM!

+

+ +

+

ScummVM 1.5.0git: OpenPandora Specific Documentation

+

+ +ScummVM OpenPandora README
+ScummVM OpenPandora Website
+ScummVM OpenPandora WiKi
+ +

+

ScummVM 1.5.0git: General Documentation

+

+ +ScummVM website
+ScummVM README
+ScummVM NEWS
+ScummVM Authors
+ScummVM Copyright
+GPL Licence
+ + diff --git a/dists/openpandora/index.html.in b/dists/openpandora/index.html.in new file mode 100644 index 0000000000..42c8e8c147 --- /dev/null +++ b/dists/openpandora/index.html.in @@ -0,0 +1,26 @@ + + +

+

Welcome to the ScummVM!

+

+ +

+

ScummVM @VERSION@: OpenPandora Specific Documentation

+

+ +ScummVM OpenPandora README
+ScummVM OpenPandora Website
+ScummVM OpenPandora WiKi
+ +

+

ScummVM @VERSION@: General Documentation

+

+ +ScummVM website
+ScummVM README
+ScummVM NEWS
+ScummVM Authors
+ScummVM Copyright
+GPL Licence
+ + diff --git a/dists/openpandora/pnd_make.sh b/dists/openpandora/pnd_make.sh new file mode 100644 index 0000000000..0c03e8154d --- /dev/null +++ b/dists/openpandora/pnd_make.sh @@ -0,0 +1,321 @@ +#!/bin/bash +# +# pnd_make.sh +# +# This script is meant to ease generation of a pnd file. Please consult the output +# when running --help for a list of available parameters and an explaination of +# those. +# +# Required tools when running the script: +# bash +# echo, cat, mv, rm +# mkisofs or mksquashfs (the latter when using the -c param!) +# xmllint (optional, only for validation of the PXML against the schema) + + +PXML_schema=$(dirname ${0})/PXML_schema.xsd +GENPXML_PATH=$(dirname ${0})/genpxml.sh + +# useful functions ... +black='\E[30m' +red='\E[31m' +green='\E[32m' +yellow='\E[33m' +blue='\E[34m' +magenta='\E[35m' +cyan='\E[36m' +white='\E[37m' + +check_for_tool() +{ + which $1 &> /dev/null + if [ "$?" -ne "0" ]; + then + cecho "ERROR: Could not find the program '$1'. Please make sure +that it is available in your PATH since it is required to complete your request." $red + exit 1 + fi +} + +cecho () # Color-echo. Argument $1 = message, Argument $2 = color +{ + local default_msg="No message passed." # Doesn't really need to be a local variable. + message=${1:-$default_msg} # Defaults to default message. + color=${2:-$black} # Defaults to black, if not specified. + echo -e "$color$message" + tput sgr0 # Reset to normal. + return +} + + +print_help() +{ + cat << EOSTREAM +pnd_make.sh - A script to package "something" into a PND. + +Usage: + $(basename ${0}) {--directory|-d} {--pndname|-p} [{--compress-squashfs|-c}] + [{--genpxml} ] [{--icon|-i} ] [{--pxml|-x} ] + [{--schema|-s} ] [{--help|-h}] + + +Switches: + --compress-squashfs / -c Define whether or not the pnd should be compressed using + squashfs. If this parameter is selected, a compressed pnd + will be created. + + --directory / -d Sets the folder that is to be used for the resulting pnd + to . This option is mandatory for the script to + function correctly. + + --genpxml Sets the script used for generating a PXML file (if none + is available already) to . Please make sure to either + provide a full path or prefix a script in the current folder + with './' so that the script can actually be executed. If + this variable is not specified, $GENPXML_PATH + will be used. + + --help / -h Displays this help text. + + --icon / -i Sets the icon that will be appended in the pnd to . + + --pndname / -p Sets the output filename of the resulting pnd to . + This option is mandatory for the script to function + correctly. + + --pxml / -x Sets the PXML file that is to be used to . If you + neither provide a PXML file or set this entry to 'guess', + an existing 'PXML.xml' in your selected '--directory' + will be used, or the script $GENPXML_PATH + will be called to try to generate a basic PXML file for you. + + --schema / -s Sets the schema file, that is to be used for validation, + to =4.0 of squashfs +is required to be available in your PATH. +EOSTREAM +} + + +# Parse command line parameters +while [ "${1}" != "" ]; do + if [ "${1}" = "--compress-squashfs" ] || [ "${1}" = "-c" ]; + then + SQUASH=1 + shift 1 + elif [ "${1}" = "--directory" ] || [ "${1}" = "-d" ]; + then + FOLDER=$2 + shift 2 + elif [ "${1}" = "--genpxml" ]; + then + GENPXML_PATH=$2 + shift 2 + elif [ "${1}" = "--help" ] || [ "${1}" = "-h" ]; + then + print_help + exit 0 + elif [ "${1}" = "--icon" ] || [ "${1}" = "-i" ]; + then + ICON=$2 + shift 2 + elif [ "${1}" = "--pndname" ] || [ "${1}" = "-p" ]; + then + PNDNAME=$2 + shift 2 + elif [ "${1}" = "--pxml" ] || [ "${1}" = "-x" ]; + then + PXML=$2 + shift 2 + elif [ "${1}" = "--schema" ] || [ "${1}" = "-f" ] + then + PXML_schema=$2 + shift 2 + else + cecho "ERROR: '$1' is not a known argument. Printing --help and aborting." $red + print_help + exit 1 + fi +done + + +# Generate a PXML if the param is set to Guess or it is empty. +if [ ! $PXML ] || [ $PXML = "guess" ] && [ $PNDNAME ] && [ $FOLDER ]; +then + if [ -f $FOLDER/PXML.xml ]; # use the already existing PXML.xml file if there is one... + then + PXML=$FOLDER/PXML.xml + PXML_ALREADY_EXISTING="true" + else + if [ -f $GENPXML_PATH ]; + then + $GENPXML_PATH --src $FOLDER --dest $FOLDER --author $USER + if [ -f $FOLDER/PXML.xml ]; + then + PXML_GENERATED="true" + else + cecho "ERROR: Generating a PXML file using '$GENPXML_PATH' failed. +Please generate a PXML file manually." $red + exit 1 + fi + else + cecho "ERROR: Could not find '$GENPXML_PATH' for generating a PXML file." $red + exit 1 + fi + fi +fi + + +# Probe if required variables were set +echo -e +cecho "Checking if all required variables were set." $green +if [ ! $PNDNAME ] || [ ! $FOLDER ] || [ ! $PXML ]; +then + echo -e + cecho "ERROR: Not all required options were set! Please see the --help information below." $red + echo -e + print_help + exit 1 +else + echo "PNDNAME set to '$PNDNAME'." +fi +# Check if the selected folder actually exists +if [ ! -d $FOLDER ]; +then + echo -e + cecho "ERROR: '$FOLDER' doesn't exist or is not a folder." $red + exit 1 +else + echo "FOLDER set to '$FOLDER'." +fi +# Check if the selected PXML file actually exists +if [ ! -f $PXML ]; +then + echo -e + cecho "ERROR: '$PXML' doesn't exist or is not a file." $red + exit 1 +else + if [ $PXML_ALREADY_EXISTING ]; + then + echo "You have not explicitly specified a PXML to use, but an existing file was +found. Will be using this one." + elif [ $PXML_GENERATED ]; + then + echo "A PXML file was generated for you using '$GENPXML_PATH'. This file will +not be removed at the end of this script because you might want to review it, adjust +single entries and rerun the script to generate a pnd with a PXML file with all the +information you want to have listed." + fi + echo "PXML set to '$PXML'." +fi + +# Print the other variables: +if [ $ICON ]; +then + if [ ! -f $ICON ] + then + cecho "WARNING: '$ICON' doesn't exist, will not append the selected icon to the pnd." $red + else + echo "ICON set to '$ICON'." + USE_ICON="true" + fi +fi +if [ $SQUASH ]; +then + echo "Will use a squashfs for '$PNDNAME'." +fi + + +# Validate the PXML file (if xmllint is available) +# Errors and problems in this section will be shown but are not fatal. +echo -e +cecho "Trying to validate '$PXML' now. Will be using '$PXML_schema' to do so." $green +which xmllint &> /dev/null +if [ "$?" -ne "0" ]; +then + VALIDATED=false + cecho "WARNING: Could not find 'xmllint'. Validity check of '$PXML' is not possible!" $red +else + if [ ! -f "$PXML_schema" ]; + then + VALIDATED=false + cecho "WARNING: Could not find '$PXML_schema'. If you want to validate your +PXML file please make sure to provide a schema using the --schema option." $red + else + xmllint --noout --schema $PXML_schema $PXML + if [ "$?" -ne "0" ]; then VALIDATED=false; else VALIDATED=true; fi + fi +fi +# Print some message at the end about the validation in case the user missed the output above +if [ $VALIDATED = "false" ] +then + cecho "WARNING: Could not successfully validate '$PXML'. Please check the output +above. This does not mean that your pnd will be broken. Either you are not following the strict +syntax required for validation or you don't have all files/programs required for validating." $red +else + cecho "Your file '$PXML' was validated successfully. The resulting pnd should +work nicely with libpnd." $green +fi + + +# Make iso from folder +echo -e +cecho "Creating an iso file based on '$FOLDER'." $green +if [ $SQUASH ]; +then + check_for_tool mksquashfs + if [ $(mksquashfs -version | awk 'BEGIN{r=0} $3>=4{r=1} END{print r}') -eq 0 ]; + then + cecho "ERROR: Your squashfs version is older then version 4, please upgrade to 4.0 or later" $red + exit 1 + fi + mksquashfs $FOLDER $PNDNAME.iso -nopad -no-recovery +else + check_for_tool mkisofs + mkisofs -o $PNDNAME.iso -R $FOLDER +fi + +# Check that the iso file was actually created before continuing +if [ ! -f $PNDNAME.iso ]; +then + cecho "ERROR: The temporary file '$PNDNAME.iso' could not be created. +Please check the output above for any errors and retry after fixing them. Aborting." $red + exit 1 +fi + + +# Append pxml to iso +echo -e +cecho "Appending '$PXML' to the created iso file." $green +cat $PNDNAME.iso $PXML > $PNDNAME +rm $PNDNAME.iso #cleanup + + +# Append icon if specified and available +if [ $USE_ICON ]; +then + echo -e + cecho "Appending the icon '$ICON' to the pnd." $green + mv $PNDNAME $PNDNAME.tmp + cat $PNDNAME.tmp $ICON > $PNDNAME # append icon + rm $PNDNAME.tmp #cleanup +fi + + +# Final message +echo -e +if [ -f $PNDNAME ]; +then + cecho "Successfully finished creating the pnd '$PNDNAME'." $green +else + cecho "There seems to have been a problem and '$PNDNAME' was not created. Please check +the output above for any error messages. A possible cause for this is that there was +not enough space available." $red + exit 1 +fi + + +#if [ $PXML = "guess" ];then rm $FOLDER/PXML.xml; fi #cleanup diff --git a/dists/openpandora/runscummvm.sh b/dists/openpandora/runscummvm.sh new file mode 100644 index 0000000000..9c9d8362cb --- /dev/null +++ b/dists/openpandora/runscummvm.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +# Make sure any extra libs not in the firmware are pulled in. +LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:../lib +export LD_LIBRARY_PATH + +# Ensure we have a folder to store save games on the SD card. +mkdir saves + +# make a runtime dir, just incase it creates anything in CWD +mkdir runtime +cd runtime + +../bin/scummvm --fullscreen --gfx-mode=2x --config=../scummvm.config --themepath=../data -- cgit v1.2.3