[Scummvm-devel] Build of ScummVM 0.8.2 on Solaris 10 x86

Laurent Blume laurent at elanor.org
Tue Feb 7 15:45:01 CET 2006


Eugene Sandulenko wrote:
> It perfectly fits here, in fact, our forums are wrong place for such
> discussions :)

Good, thanks!

> May you submit a patch?

I can, but I need some help to make it properly.

There are only two errors:

In file included from ./sword1/animation.h:25,
                 from sword1/animation.cpp:25:
./graphics/animation.h:34: error: conflicting declaration 'typedef int8
int8_t'
/usr/include/sys/int_types.h:54: error: 'int8_t' has a previous
declaration as `typedef char int8_t'

I don't know how to cleanly work around that, I just commented out the
duplicate declaration (and I'm not sure why the int16_t and others,
which are also declared in int_types.h, are not a problem).

Something like
#ifndef (sun)
  typedef int8 int8_t;
#endif

doesn't seem right to me.

The other error is much easier:
sword1/router.cpp:292: error: expected primary-expression before numeric
constant
sword1/router.cpp:292: error: expected `;' before numeric constant
(and more...)

Line 292 is:
        int32   SS;

And SS and DS are macros defined in /usr/include/sys/regset.h:

#define SS              18      /* only stored on a privilege transition */
#define DS              3

So they just have to be renamed, which I did.

But to do something clean in the files using those variables, the whole
set of variables should be renamed, too:

        int32   SS;
        int32   SD;
        int32   DS;
        int32   DD;

Would that do? Or is there something easier that I overlooked?

> Definitely. Also we need an official builder for Solaris packages. You
> may step in if you like. For that you should be able to:
> 
>   o Be accessible via e-mail at the time of release

Unless I'm on vacation, I am.

>   o Be able to test each engine. Demos are perfectly fine if you don't
>     own full versions of the games

I've got plenty of supported games (some of them I actually discovered
and bought recently for ScummVM, like Simon the Sorcerer)

>   o Build packages and upload them to sf.net
>   o Be at least aware about some platform-specific problems, but I guess
>     that your port should perfectly run all engines

I'll do my best there.

To give more detail, and also answer Marcus' email:
it's not a Solaris package (I'm just too lazy to do it).
However, I installed it with a specific --prefix=, with the needed
libraries, in a separate, relocatable directory. The scummvm binary and
the libraries have a relative runpath to point to the same directory.

It's like:
scummvm/
	bin/
	lib/
	man/
	include/

Is that proper for a distribution?
Would it be ok to have the needed libraries (SDL, FLAC, ...) in the
tarball, since those are not part of Solaris?
The result, with binaries stripped, is around 3 MiB in tar.bz2 for the
64 bit version.

> So you're welcome.
> 
> Please, build 0.8.0 tools packages too. Name your files something like
> 
>   scummvm-0.8.2-solaris10-x86.tar.bz2
>   scummvm-tools-0.8.0-solaris10-x86.tar.bz2

Ok, I'll try to build the second tomorrow (time to go to sleep now).

One question: would you rather have 32 bit or 64 bit versions, or both?
I like the fact of it being my first 64 bit game, but 32 bit is of
course more common.

> And put these files in:
[snip]
> Upload files to ftp://upload.sourceforge.net/incoming and drop me a
> line.

Will do as soon as I'm sure I'm not doing anything incorrectly.

Laurent
-- 
A hundred thousand lemmings can't be wrong!




More information about the Scummvm-devel mailing list