ScummVM for Atari Falcon running MiNT

Discussion about other and unofficial ports of ScummVM

Moderator: ScummVM Team

Post Reply
Altstar
Posts: 2
Joined: Tue Jun 14, 2016 12:07 am
Contact:

ScummVM for Atari Falcon running MiNT

Post by Altstar » Wed Jun 15, 2016 12:14 am

Hi,

I'm trying to build ScummVM with a cross-compiler (from http://vincent.riviere.free.fr/soft/m68k-atari-mint/ ) under Cygwin for my Atari Falcon.

cham@antares ~/src/scummvm
$ ./configure --host=m68k-atari-mint --disable-mt32emu --disable-hq-scalers --disable-scalers

cham@antares ~/src/scummvm
$ make
C++ backends/platform/sdl/sdl.o
C++ backends/platform/sdl/sdl-window.o
C++ backends/platform/sdl/posix/posix-main.o
C++ backends/platform/sdl/posix/posix.o
In file included from ./backends/fs/posix/posix-fs.h:31:0,
from backends/platform/sdl/posix/posix.cpp:36:
/opt/cross-mint/lib/gcc/m68k-atari-mint/4.6.4/../../../../m68k-atari-mint/include/unistd.h:1027:25: error: macro "random" passed 1 arguments, but takes just 0
/opt/cross-mint/lib/gcc/m68k-atari-mint/4.6.4/../../../../m68k-atari-mint/include/unistd.h:1027:27: error: expected initializer before 'throw'
/opt/cross-mint/lib/gcc/m68k-atari-mint/4.6.4/../../../../m68k-atari-mint/include/unistd.h:1028:13: error: expected initializer before 'SYMBOL'
make: *** [Makefile.common:104: backends/platform/sdl/posix/posix.o] Error 1

Any ideas why the build fails?
Regards,
Christoph

User avatar
sev
ScummVM Lead
Posts: 1967
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Post by sev » Wed Jun 15, 2016 4:29 am

Apparently your port is using random() in unistd.h, while normally it is a forbidden symbol in ScummVM.

You need to add the following definition to line 25 in file backends/platform/sdl/posix/posix.cpp:

Code: Select all

#define FORBIDDEN_SYMBOL_EXCEPTION_random
Eugene

Altstar
Posts: 2
Joined: Tue Jun 14, 2016 12:07 am
Contact:

Post by Altstar » Sun Jun 19, 2016 6:19 am

Many thanks! I have changed this and fixed another one (srandom) in C:\cygwin\opt\cross-mint\m68k-atari-mint\include\unistd.h

Now it fails (see below) on the midi support. I have tried to disable MIDI but it looks like the code causing the issues is not disabled.

cham@antares ~/src/scummvm
$ ./configure --host=m68k-atari-mint --disable-mt32emu --disable-hq-scalers --disable-scalers --disable-debug --disable-all-engines --disable-fluidsynth --opengl-mode=none --disable-seq-midi

cham@antares ~/src/scummvm
$ make
C++ backends/platform/sdl/sdl.o
C++ backends/platform/sdl/sdl-window.o
C++ backends/platform/sdl/posix/posix-main.o
C++ backends/platform/sdl/posix/posix.o
C++ base/main.o
C++ base/commandLine.o
C++ base/plugins.o
C++ gui/about.o
C++ gui/chooser.o
C++ gui/console.o
C++ gui/debugger.o
C++ gui/dialog.o
C++ gui/error.o
C++ gui/EventRecorder.o
C++ gui/filebrowser-dialog.o
C++ gui/gui-manager.o
C++ gui/launcher.o
C++ gui/massadd.o
C++ gui/message.o
C++ gui/object.o
C++ gui/options.o
C++ gui/predictivedialog.o
C++ gui/saveload.o
C++ gui/saveload-dialog.o
C++ gui/themebrowser.o
C++ gui/ThemeEngine.o
C++ gui/ThemeEval.o
C++ gui/ThemeLayout.o
C++ gui/ThemeParser.o
C++ gui/Tooltip.o
C++ gui/widget.o
C++ gui/widgets/editable.o
C++ gui/widgets/edittext.o
C++ gui/widgets/list.o
C++ gui/widgets/popup.o
C++ gui/widgets/scrollbar.o
C++ gui/widgets/tab.o
C++ gui/browser.o
C++ gui/editrecorddialog.o
C++ gui/onscreendialog.o
C++ gui/recorderdialog.o
AR gui/libgui.a
RANLIB gui/libgui.a
C++ backends/base-backend.o
C++ backends/modular-backend.o
C++ backends/audiocd/audiocd-stream.o
C++ backends/audiocd/default/default-audiocd.o
C++ backends/events/default/default-events.o
C++ backends/fs/abstract-fs.o
C++ backends/fs/stdiostream.o
C++ backends/log/log.o
C++ backends/midi/alsa.o
C++ backends/midi/dmedia.o
C++ backends/midi/seq.o
C++ backends/midi/sndio.o
C++ backends/midi/stmidi.o
backends/midi/stmidi.cpp: In member function 'virtual Common::Error StMidiMusicPlugin::createInstance(MidiDriver**, MidiDriver::DeviceHandle) const':
backends/midi/stmidi.cpp:145:100: error: return type 'struct Common::Error' is incomplete
backends/midi/stmidi.cpp:148:9: error: 'kNoError' is not a member of 'Common'
make: *** [Makefile.common:104: backends/midi/stmidi.o] Error 1

User avatar
sev
ScummVM Lead
Posts: 1967
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Post by sev » Sun Jun 19, 2016 9:19 am

Ugh, that one is pretty basic. This is a consequence of the port not being touched for a while.

You need to add to file backends/midi/stmidi.cpp the following line:

Code: Select all

#include "common/error.h"
Eugene

Post Reply