Initial commit
This commit is contained in:
50
backends/platform/sdl/opendingux/README.BUILD
Normal file
50
backends/platform/sdl/opendingux/README.BUILD
Normal file
@@ -0,0 +1,50 @@
|
||||
Build instructions
|
||||
==================
|
||||
Running Linux on an x86/amd64 machine:
|
||||
|
||||
1. Download and install the desired toolchain (https://github.com/OpenDingux/buildroot/releases) in /opt/
|
||||
|
||||
For example, for gcw0:
|
||||
|
||||
curl -L https://github.com/OpenDingux/buildroot/releases/download/od-2022.09.22/opendingux-gcw0-toolchain.2022-09-22.tar.xz -o gcw0-toolchain.tar.xz && \
|
||||
sudo mkdir -p /opt/gcw0-toolchain && sudo chown -R "${USER}:" /opt/gcw0-toolchain && \
|
||||
tar -C /opt -xf gcw0-toolchain.tar.xz && \
|
||||
cd /opt/gcw0-toolchain && \
|
||||
./relocate-sdk.sh
|
||||
|
||||
2. git clone the ScummVM repository
|
||||
|
||||
3. Run 'backends/platform/sdl/opendingux/build_odbeta.sh x'
|
||||
where x=gcw0|lepus|rs90
|
||||
|
||||
the rs90 build applies to the rg99
|
||||
|
||||
Or if you want a dual opk with one launcher capable of starting games directly
|
||||
for e.g. simplemenu integration :
|
||||
'backends/platform/sdl/opendingux/build_odbeta.sh x dualopk'
|
||||
|
||||
4. Copy the resulting file scummvm_$(target).opk or scummvm_$(target)_dual.opk to your device
|
||||
|
||||
Game Auto-Detection (dualopk only)
|
||||
==================================
|
||||
1) add a blank text file 'detect.svm' alongside your individual game folders, for example:
|
||||
---------------
|
||||
| - roms/scummvm/
|
||||
| - detect.svm
|
||||
| - Game Folder/
|
||||
| - game files
|
||||
------------------
|
||||
2) load ScummVM, navigate to and select 'detect.svm'
|
||||
- the loading screen will show while the script runs
|
||||
- this may take longer if you have many games
|
||||
- .svm files will be generated for each of your games
|
||||
3) load one of the .svm files to start your game directly
|
||||
|
||||
Troubleshooting
|
||||
===============
|
||||
In case you need to submit a bugreport, you may find the log file at the
|
||||
following path:
|
||||
|
||||
~/.scummvm/scummvm.log
|
||||
|
||||
The log file is being overwritten at every ScummVM run.
|
||||
39
backends/platform/sdl/opendingux/README.OPENDINGUX
Normal file
39
backends/platform/sdl/opendingux/README.OPENDINGUX
Normal file
@@ -0,0 +1,39 @@
|
||||
[ScummVM-Opendingux README]
|
||||
|
||||
Controls
|
||||
========
|
||||
Left Stick - Mouse
|
||||
Left Stick+R - Slow Mouse
|
||||
A - Left mouse click
|
||||
B - Right mouse click
|
||||
Y - Escape
|
||||
L - Game Menu (F5)
|
||||
Start - Global Menu
|
||||
Select - Virtual Keyboard
|
||||
Dpad - Keypad ‘Cursor’ Keys
|
||||
|
||||
On devices that have no stick, d-pad is mouse, cursor keys are not binded
|
||||
|
||||
Game Auto-Detection (dualopk only)
|
||||
==================================
|
||||
1) add a blank text file 'detect.svm' alongside your individual game folders, for example:
|
||||
---------------
|
||||
| - roms/scummvm/
|
||||
| - detect.svm
|
||||
| - Game Folder/
|
||||
| - game files
|
||||
------------------
|
||||
2) load ScummVM, navigate to and select 'detect.svm'
|
||||
- the loading screen will show while the script runs
|
||||
- this may take longer if you have many games
|
||||
- .svm files will be generated for each of your games
|
||||
3) load one of the .svm files to start your game directly
|
||||
|
||||
Troubleshooting
|
||||
===============
|
||||
In case you need to submit a bugreport, you may find the log file at the
|
||||
following path:
|
||||
|
||||
~/.scummvm/scummvm.log
|
||||
|
||||
The log file is being overwritten at every ScummVM run.
|
||||
38
backends/platform/sdl/opendingux/build_odbeta.sh
Normal file
38
backends/platform/sdl/opendingux/build_odbeta.sh
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
target=$1
|
||||
if [ "$2" = "dualopk" ]; then
|
||||
dualopk="dualopk=yes"
|
||||
else
|
||||
dualopk=
|
||||
fi
|
||||
|
||||
case $target in
|
||||
|
||||
gcw0)
|
||||
libc=uclibc
|
||||
;;
|
||||
|
||||
lepus | rs90)
|
||||
libc=musl
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "please provide a valid target for the build: gcw0, lepus or rs90"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
TOOLCHAIN=/opt/$target-toolchain
|
||||
SYSROOT=$TOOLCHAIN/mipsel-$target-linux-$libc
|
||||
|
||||
export PATH=$TOOLCHAIN/usr/bin:$SYSROOT/usr/include:$TOOLCHAIN/bin:$PATH
|
||||
export CXX=mipsel-linux-g++
|
||||
|
||||
./configure --host=opendingux-$target --enable-release --disable-detection-full --default-dynamic --enable-plugins
|
||||
|
||||
make -j12 od-make-opk $dualopk
|
||||
|
||||
ls -lh scummvm_$target*.opk
|
||||
44
backends/platform/sdl/opendingux/opendingux-main.cpp
Normal file
44
backends/platform/sdl/opendingux/opendingux-main.cpp
Normal file
@@ -0,0 +1,44 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "backends/platform/sdl/opendingux/opendingux.h"
|
||||
#include "backends/plugins/sdl/sdl-provider.h"
|
||||
#include "base/main.h"
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
|
||||
g_system = new OSystem_SDL_Opendingux();
|
||||
assert(g_system);
|
||||
|
||||
g_system->init();
|
||||
|
||||
#ifdef DYNAMIC_MODULES
|
||||
PluginManager::instance().addPluginProvider(new SDLPluginProvider());
|
||||
#endif
|
||||
|
||||
// Invoke the actual ScummVM main entry point:
|
||||
int res = scummvm_main(argc, argv);
|
||||
|
||||
// Free OSystem
|
||||
g_system->destroy();
|
||||
|
||||
return res;
|
||||
}
|
||||
217
backends/platform/sdl/opendingux/opendingux.cpp
Normal file
217
backends/platform/sdl/opendingux/opendingux.cpp
Normal file
@@ -0,0 +1,217 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#define FORBIDDEN_SYMBOL_EXCEPTION_system
|
||||
|
||||
#include "common/scummsys.h"
|
||||
#include "common/config-manager.h"
|
||||
#include "common/translation.h"
|
||||
|
||||
#include "backends/graphics/opendingux/opendingux-graphics.h"
|
||||
#include "backends/platform/sdl/opendingux/opendingux.h"
|
||||
|
||||
#include "backends/fs/posix/posix-fs-factory.h"
|
||||
#include "backends/fs/posix/posix-fs.h"
|
||||
#include "backends/saves/default/default-saves.h"
|
||||
|
||||
#include "backends/keymapper/action.h"
|
||||
#include "backends/keymapper/keymapper-defaults.h"
|
||||
#include "backends/keymapper/hardware-input.h"
|
||||
#include "backends/keymapper/keymap.h"
|
||||
#include "backends/keymapper/keymapper.h"
|
||||
|
||||
#define SCUMM_DIR "~/.scummvm"
|
||||
#define CONFIG_FILE "~/.scummvmrc"
|
||||
#define SAVE_PATH "~/.scummvm/saves"
|
||||
#define LOG_FILE "~/.scummvm/scummvm.log"
|
||||
#define JOYSTICK_DIR "/sys/devices/platform/joystick"
|
||||
|
||||
static const Common::KeyTableEntry odKeyboardButtons[] = {
|
||||
// I18N: Hardware key
|
||||
{ "JOY_A", Common::KEYCODE_LCTRL, _s("A") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_B", Common::KEYCODE_LALT, _s("B") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_X", Common::KEYCODE_SPACE, _s("X") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_Y", Common::KEYCODE_LSHIFT, _s("Y") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_BACK", Common::KEYCODE_ESCAPE, _s("Select") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_START", Common::KEYCODE_RETURN, _s("Start") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_LEFT_SHOULDER", Common::KEYCODE_TAB, _s("L") },
|
||||
// I18N: Hardware key
|
||||
{ "JOY_RIGHT_SHOULDER", Common::KEYCODE_BACKSPACE, _s("R") },
|
||||
{ "JOY_UP", Common::KEYCODE_UP, _s("D-pad Up") },
|
||||
{ "JOY_DOWN", Common::KEYCODE_DOWN, _s("D-pad Down") },
|
||||
{ "JOY_LEFT", Common::KEYCODE_LEFT, _s("D-pad Left") },
|
||||
{ "JOY_RIGHT", Common::KEYCODE_RIGHT, _s("D-pad Right") },
|
||||
{nullptr, Common::KEYCODE_INVALID, nullptr }
|
||||
};
|
||||
|
||||
static const Common::HardwareInputTableEntry odJoystickButtons[] = {
|
||||
// I18N: Hardware key
|
||||
{ "JOY_LEFT_TRIGGER", Common::JOYSTICK_BUTTON_LEFT_STICK, _s("L3") },
|
||||
{ nullptr, 0, nullptr }
|
||||
};
|
||||
|
||||
static const Common::AxisTableEntry odJoystickAxes[] = {
|
||||
{ "JOY_LEFT_STICK_X", Common::JOYSTICK_AXIS_LEFT_STICK_X, Common::kAxisTypeFull, _s("Left Stick X") },
|
||||
{ "JOY_LEFT_STICK_Y", Common::JOYSTICK_AXIS_LEFT_STICK_Y, Common::kAxisTypeFull, _s("Left Stick Y") },
|
||||
{ nullptr, 0, Common::kAxisTypeFull, nullptr }
|
||||
};
|
||||
|
||||
Common::KeymapperDefaultBindings *OSystem_SDL_Opendingux::getKeymapperDefaultBindings() {
|
||||
Common::KeymapperDefaultBindings *keymapperDefaultBindings = new Common::KeymapperDefaultBindings();
|
||||
|
||||
if (!Posix::assureDirectoryExists(JOYSTICK_DIR)) {
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGlobalKeymapName, "VMOUSEUP", "JOY_UP");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGlobalKeymapName, "VMOUSEDOWN", "JOY_DOWN");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGlobalKeymapName, "VMOUSELEFT", "JOY_LEFT");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGlobalKeymapName, "VMOUSERIGHT", "JOY_RIGHT");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGuiKeymapName, "UP", "");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGuiKeymapName, "DOWN", "");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGuiKeymapName, "LEFT", "");
|
||||
keymapperDefaultBindings->setDefaultBinding(Common::kGuiKeymapName, "RIGHT", "");
|
||||
keymapperDefaultBindings->setDefaultBinding("engine-default", "UP", "");
|
||||
keymapperDefaultBindings->setDefaultBinding("engine-default", "DOWN", "");
|
||||
keymapperDefaultBindings->setDefaultBinding("engine-default", "LEFT", "");
|
||||
keymapperDefaultBindings->setDefaultBinding("engine-default", "RIGHT", "");
|
||||
}
|
||||
|
||||
return keymapperDefaultBindings;
|
||||
}
|
||||
|
||||
void OSystem_SDL_Opendingux::init() {
|
||||
|
||||
_fsFactory = new POSIXFilesystemFactory();
|
||||
if (!Posix::assureDirectoryExists(SCUMM_DIR)) {
|
||||
system("mkdir " SCUMM_DIR);
|
||||
}
|
||||
|
||||
// Invoke parent implementation of this method
|
||||
OSystem_SDL::init();
|
||||
}
|
||||
|
||||
void OSystem_SDL_Opendingux::initBackend() {
|
||||
#ifdef RS90
|
||||
ConfMan.registerDefault("fullscreen", false);
|
||||
#else
|
||||
ConfMan.registerDefault("fullscreen", true);
|
||||
#endif
|
||||
ConfMan.registerDefault("aspect_ratio", true);
|
||||
ConfMan.registerDefault("themepath", Common::Path("./themes"));
|
||||
ConfMan.registerDefault("extrapath", Common::Path("./engine-data"));
|
||||
ConfMan.registerDefault("gui_theme", "builtin");
|
||||
ConfMan.registerDefault("scale_factor", "1");
|
||||
|
||||
ConfMan.setBool("fullscreen", true);
|
||||
ConfMan.setInt("joystick_num", 0);
|
||||
|
||||
if (!ConfMan.hasKey("aspect_ratio")) {
|
||||
ConfMan.setBool("aspect_ratio", true);
|
||||
}
|
||||
if (!ConfMan.hasKey("themepath")) {
|
||||
ConfMan.setPath("themepath", "./themes");
|
||||
}
|
||||
if (!ConfMan.hasKey("extrapath")) {
|
||||
ConfMan.setPath("extrapath", "./engine-data");
|
||||
}
|
||||
if (!ConfMan.hasKey("savepath")) {
|
||||
ConfMan.setPath("savepath", SAVE_PATH);
|
||||
}
|
||||
if (!ConfMan.hasKey("gui_theme")) {
|
||||
ConfMan.set("gui_theme", "builtin");
|
||||
}
|
||||
if (!ConfMan.hasKey("scale_factor")) {
|
||||
ConfMan.set("scale_factor", "1");
|
||||
}
|
||||
if (!ConfMan.hasKey("opl_driver")) {
|
||||
ConfMan.set("opl_driver", "db");
|
||||
}
|
||||
if (!ConfMan.hasKey("kbdmouse_speed")) {
|
||||
ConfMan.setInt("kbdmouse_speed", 2);
|
||||
}
|
||||
#ifdef LEPUS
|
||||
if (!ConfMan.hasKey("output_rate")) {
|
||||
ConfMan.set("output_rate", "22050");
|
||||
}
|
||||
#elif RS90
|
||||
if (!ConfMan.hasKey("output_rate")) {
|
||||
ConfMan.set("output_rate", "11025");
|
||||
}
|
||||
#endif
|
||||
// Create the savefile manager
|
||||
if (_savefileManager == nullptr) {
|
||||
_savefileManager = new DefaultSaveFileManager(SAVE_PATH);
|
||||
}
|
||||
|
||||
if (!_eventSource)
|
||||
_eventSource = new SdlEventSource();
|
||||
if (!_graphicsManager)
|
||||
_graphicsManager = new OpenDinguxGraphicsManager(_eventSource, _window);
|
||||
|
||||
OSystem_SDL::initBackend();
|
||||
}
|
||||
|
||||
Common::Path OSystem_SDL_Opendingux::getDefaultConfigFileName() {
|
||||
return CONFIG_FILE;
|
||||
|
||||
}
|
||||
|
||||
Common::Path OSystem_SDL_Opendingux::getDefaultLogFileName() {
|
||||
return LOG_FILE;
|
||||
}
|
||||
|
||||
bool OSystem_SDL_Opendingux::hasFeature(Feature f) {
|
||||
switch (f) {
|
||||
case kFeatureFullscreenMode:
|
||||
case kFeatureAspectRatioCorrection:
|
||||
return false;
|
||||
case kFeatureKbdMouseSpeed:
|
||||
return true;
|
||||
default:
|
||||
return OSystem_SDL::hasFeature(f);
|
||||
}
|
||||
}
|
||||
|
||||
void OSystem_SDL_Opendingux::setFeatureState(Feature f, bool enable) {
|
||||
OSystem_SDL::setFeatureState(f, enable);
|
||||
}
|
||||
|
||||
bool OSystem_SDL_Opendingux::getFeatureState(Feature f) {
|
||||
return OSystem_SDL::getFeatureState(f);
|
||||
}
|
||||
|
||||
Common::HardwareInputSet *OSystem_SDL_Opendingux::getHardwareInputSet() {
|
||||
using namespace Common;
|
||||
|
||||
CompositeHardwareInputSet *inputSet = new CompositeHardwareInputSet();
|
||||
|
||||
// Users may use USB mice - keyboards currently not possible with SDL1 as it conflicts with gpios
|
||||
inputSet->addHardwareInputSet(new MouseHardwareInputSet(defaultMouseButtons));
|
||||
//inputSet->addHardwareInputSet(new KeyboardHardwareInputSet(defaultKeys, defaultModifiers));
|
||||
inputSet->addHardwareInputSet(new KeyboardHardwareInputSet(odKeyboardButtons, defaultModifiers));
|
||||
inputSet->addHardwareInputSet(new JoystickHardwareInputSet(odJoystickButtons, odJoystickAxes));
|
||||
|
||||
return inputSet;
|
||||
}
|
||||
42
backends/platform/sdl/opendingux/opendingux.h
Normal file
42
backends/platform/sdl/opendingux/opendingux.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef PLATFORM_SDL_OPENDINGUX_H
|
||||
#define PLATFORM_SDL_OPENDINGUX_H
|
||||
|
||||
#include "backends/platform/sdl/sdl.h"
|
||||
|
||||
class OSystem_SDL_Opendingux : public OSystem_SDL {
|
||||
public:
|
||||
void init() override;
|
||||
void initBackend() override;
|
||||
bool hasFeature(Feature f) override;
|
||||
void setFeatureState(Feature f, bool enable) override;
|
||||
bool getFeatureState(Feature f) override;
|
||||
Common::HardwareInputSet *getHardwareInputSet() override;
|
||||
Common::KeymapperDefaultBindings *getKeymapperDefaultBindings() override;
|
||||
|
||||
protected:
|
||||
Common::Path getDefaultConfigFileName() override;
|
||||
Common::Path getDefaultLogFileName() override;
|
||||
};
|
||||
|
||||
#endif
|
||||
55
backends/platform/sdl/opendingux/opendingux.mk
Normal file
55
backends/platform/sdl/opendingux/opendingux.mk
Normal file
@@ -0,0 +1,55 @@
|
||||
OD_EXE_STRIPPED := scummvm_stripped$(EXEEXT)
|
||||
bundle = od-opk
|
||||
OPKNAME = $(OPENDINGUX_TARGET)
|
||||
|
||||
all: $(OD_EXE_STRIPPED)
|
||||
|
||||
$(OD_EXE_STRIPPED): $(EXECUTABLE)
|
||||
$(STRIP) $< -o $@
|
||||
|
||||
$(bundle): all
|
||||
$(MKDIR) $(bundle)
|
||||
$(CP) $(DIST_FILES_DOCS) $(bundle)/
|
||||
|
||||
ifneq ($(OPENDINGUX_TARGET), rs90)
|
||||
$(MKDIR) $(bundle)/themes
|
||||
$(CP) $(DIST_FILES_THEMES) $(bundle)/themes/
|
||||
endif
|
||||
|
||||
ifdef DIST_FILES_ENGINEDATA
|
||||
$(MKDIR) $(bundle)/engine-data
|
||||
$(CP) $(DIST_FILES_ENGINEDATA) $(bundle)/engine-data/
|
||||
endif
|
||||
ifdef DIST_FILES_NETWORKING
|
||||
$(CP) $(DIST_FILES_NETWORKING) $(bundle)/
|
||||
endif
|
||||
ifdef DIST_FILES_VKEYBD
|
||||
$(CP) $(DIST_FILES_VKEYBD) $(bundle)/
|
||||
endif
|
||||
ifdef DYNAMIC_MODULES
|
||||
$(MKDIR) $(bundle)/plugins
|
||||
$(CP) $(PLUGINS) $(bundle)/plugins/
|
||||
endif
|
||||
$(CP) $(EXECUTABLE) $(bundle)/scummvm
|
||||
|
||||
$(CP) $(srcdir)/dists/opendingux/scummvm.png $(bundle)/
|
||||
$(CP) $(srcdir)/dists/opendingux/startUI.$(OPENDINGUX_TARGET).desktop $(bundle)/
|
||||
ifdef dualopk
|
||||
$(CP) $(srcdir)/dists/opendingux/startGame.$(OPENDINGUX_TARGET).desktop $(bundle)/
|
||||
$(CP) $(srcdir)/dists/opendingux/scummvm.sh $(bundle)/
|
||||
endif
|
||||
|
||||
$(CP) $(srcdir)/backends/platform/sdl/opendingux/README.OPENDINGUX $(bundle)/README.man.txt
|
||||
echo >> $(bundle)/README.man.txt
|
||||
echo '[General README]' >> $(bundle)/README.man.txt
|
||||
echo >> $(bundle)/README.man.txt
|
||||
cat $(srcdir)/README.md | sed -e 's/\[/⟦/g' -e 's/\]/⟧/g' -e '/^1\.1)/,$$ s/^[0-9][0-9]*\.[0-9][0-9]*.*/\[&\]/' >> $(bundle)/README.man.txt
|
||||
|
||||
od-make-opk: $(bundle)
|
||||
$(STRIP) $(bundle)/scummvm
|
||||
|
||||
ifdef dualopk
|
||||
$(srcdir)/dists/opendingux/make-opk.sh -d $(bundle) -o scummvm_$(OPKNAME)_dual
|
||||
else
|
||||
$(srcdir)/dists/opendingux/make-opk.sh -d $(bundle) -o scummvm_$(OPKNAME)
|
||||
endif
|
||||
Reference in New Issue
Block a user