Universal Build

edited 2008 Feb 12 in Developers
<i>This post was originally made by <b>skyjake</b> on the dengDevs blog. It was posted under the categories: Beta 5, Mac OS X, Platforms, Releases, Version 1.9.</i>

I had a few idle hours so I decided to do some work on the Mac OS X build. I took the old beta5.1 release and fixed Yagisan's CMake files so that they make a Universal build of the engine and all the plugins, and then bundle them like with the XCode build system. The Universal build of 1.9.0-beta5.1 is now available <a href="https://sourceforge.net/project/showfiles.php?group_id=74815&package_id=129649">on SourceForge</a>.

I have only tested this with Leopard, and it may well be that it won't run on 10.4 at all... I'm interested to hear how well it works on your systems.

I think I'll create a branch for the changes I made a bit later on, something like "1.9.0-beta5.1-universal". I haven't committed anything yet.

Comments

  • Nice! I'll try and make time to test this if I can (I have access to a couple of various Macs atm).
  • Now the branch is also there, so we can later on integrate these changes to the trunk.
  • <i>This comment was posted by dengDevs user <b>bungi</b>.</i>

    tried the universal build under 10.4.10 on Intel, and you're right, it doesn't run at all.
    It asks for libpng and libcurl4, which I didn't appear to have where it wanted them, then once I had installed those, it decided it wanted admin rights. Under the admin user, it goes bang in style. Looks like it doesn't like malloc. Console log available on request if you want.
    If you've got an XCode project I can run under XCode 2.4.1 I can try building it here on this machine, but last time I tried, it was struggling with the openGL libraries (about which I posted on sourceforge).

    thanks
    bungi
  • I guess we should link statically to libpng and libcurl. I think the previous builds were using static linking for them.

    The build was compiled using the 10.5 SDK. For some reason the 10.4u SDK doesn't work for me. I should investigate that a bit closer...
  • Re Doomsday requiring admin rights:
    That is something we need to look into anyway, as under Vista it means that Doomsday must be ran in compatibility mode for XPSp2 because of the fact we write to the application directory (save games, configs etc...). This data should be written to the user directory instead.
  • <i>This comment was posted by dengDevs user <b>bungi</b>.</i>

    The previous PowerPC build doesn't want admin rights, it runs happily under my usual non-admin user. This is something new and possibly not related to where the app. is installed or by whom. To test this build I just copied it onto a folder on the Desktop, to make sure it did run ok prior to install, and it was from there, in a folder structure owned by the current user that it was failing to get admin rights.
  • From a security point of view, I think it's a bad idea to statically link libpng and libcurl.

    The Linux version only needs root permission to install in the system path - otherwise it doesn't need admin rights. Perhaps you'll want to look at that for a hint on how to do that on Vista ?

    CMake should be able to create Xcode project files for you bungi. I ended up abandoning my work on universal builds as I don't have physical access to an osx box. For deng-ng I went for a unix style application, and will re-visit this in future.
  • <i>This comment was posted by dengDevs user <b>bungi</b>.</i>

    any hints how to use cmake, it's consistently telling me I can't do in-tree builds, and I cannot find any mechanism for telling it that the build and source folders are different, and neither of them is ./build. Somehow no matter what I do cmake invisibly sets both directories to the same one, and then barfs.
    I daresay cmake may have some advantages over autoconf, but I can't see them at present...
    Help? please,
  • <i>This comment was posted by dengDevs user <b>usunoro</b>.</i>

    The build works really really well, and is what I've been trying to do for a looong time. I couldn't, like the previous poster said, get cmake actually doing something. It roughly doubled to tripled my framerates however. Good job guys :)
Sign In or Register to comment.