Go to file
Jens Ayton db2b1bbd75 Add Travis status image to README 2016-05-29 12:45:16 +02:00
DebugOXP/Debug.oxp Increase version to 1.83 for start of next development cycle 2015-05-31 10:06:47 +01:00
Doc Updated contributors' list with Rion's details. 2016-05-14 20:41:49 +02:00
Mac-specific@1c68bb163d Bump Mac-specific 2016-05-05 18:11:54 +02:00
Oolite.xcodeproj Mac: Suppress auto scheme creation in Xcode 2016-05-29 12:39:21 +02:00
Resources Remove </> key combination for information system traversing in F7 screen 2016-04-16 20:43:51 +01:00
Schemata Weapon type could now be any string depending on what equipment is present. 2015-01-17 14:36:42 +00:00
debian Fixes to deb-package builds. 2011-03-15 11:22:08 +00:00
deps Bump Cross-platform-deps 2016-05-29 12:10:37 +02:00
installers Updated year in game and Windows installer copyright messages to 2016. 2016-01-07 13:41:37 +01:00
src Disable check for unique sender name in parcel contracts. It seems OK if occasionally we get senders of the same name, but the alternative may result in silent disappearance of already accepted contracts, which is not good. 2016-05-27 18:29:53 +02:00
tests@3426ffc6da Finish off basic interface, a bit of cleanup 2014-01-13 18:27:43 +00:00
tools Incorporate Debian patch for icosmesh in other locales 2015-09-06 11:11:06 +01:00
.absolute_gitmodules Add instructions to README.txt for using git 2013-11-10 12:09:57 +00:00
.gitignore Mac: Suppress auto scheme creation in Xcode 2016-05-29 12:39:21 +02:00
.gitmodules Attempt to fix problem when checking out Windows deps (tries to do ssh connection to pull the dependency). 2013-10-31 14:20:28 +01:00
.travis.yml Add Travis CI support 2016-05-29 12:45:16 +02:00
Doxyfile Doxygen config file. Use "doxygen Doxyfile" to generate the 2015-03-14 17:16:16 +01:00
GNUmakefile Renamed macro OO_FOV_BY_KEY_ENABLED to OO_FOV_INFLIGHT_CONTROL_ENABLED and extended this compile-time switc functionality also to joystick control. 2015-04-03 17:15:32 +02:00
GNUmakefile.postamble As suggested in Debian patch, separate strip and debug options in build 2015-09-06 11:11:06 +01:00
Makefile As suggested in Debian patch, separate strip and debug options in build 2015-09-06 11:11:06 +01:00
README.md Add Travis status image to README 2016-05-29 12:45:16 +02:00
config.make Disabling FOV in-flight control. 2015-04-20 18:54:36 +02:00
libjs.make Revert "Linux: Makefiles updates for github project tree" 2013-10-10 20:12:27 +03:00

README.md

Build Status (Mac)

Oolite for all platforms can be built from this repository. Here is a quick guide to the source tree.

Guidelines

Nothing except makefiles/xcode projects, directories, and this readme file should appear in the top level directory. The deps directory should contain dependencies that are useful to carry along to build binary packages. The dependencies directory should be named: Opsys-cpuarch-deps Opsys should be exactly as reported by 'uname' with no flags (case sensitive!). The cpuarch should be the cpu architecture reported by uname -p (except i686, i586 etc should be translated to x86). This allows build scripts to automatically package up the right dependency tree in tarball installers. Cocoa-deps is an exception, because a different build system is used under Mac OS X.

Contents

  • autopackage: Directory for the apspec file for the Linux autopackage
  • Asset Source: Files used to create the various PNG and sound files
  • debian: Files to enable automatic setup under Linux using dpkg (Debian package manager) tools
  • deps: Dependencies for all plaforms:
    • Cocoa-deps: Dependencies for Mac OS X (macppc and macintel platforms)
    • Linux-deps: Dependencies for Linux on x86 and x86_64 processors
    • scripts: Scripts and script fragments for tarball/autopackage
  • Doc: Documentation (including user guides)
  • FreeDesktop: Files for GNOME/KDE desktop launchers
  • installers: Files used to create various installers
  • Oolite-importer: (OS X) The oolite Spotlight metadata importer
  • Oolite.xcodeproj: The OS X Xcode project to build Oolite
  • OSX-SDL: Project files for the SDL version of Oolite on OS X (very seldom used, more of a curiosity)
  • Resources: Files that live in the application bundle's Contents/Resources directory (AI, config, textures etc).
  • src: Objective-C and C sources, incuding header files:
    • Core: Files that are compiled on all platforms
    • SDL: Files that are only compiled for platforms that use SDL
    • Cocoa: Files that are only compiled on Mac OS X without SDL
    • BSDCompat: Support for BSDisms that gnu libc doesn't have (strl*)
  • tools: Various tools for preparing files, builds, releases etc.

Building

On Mac OS X, you will need the latest version of Xcode and OS X 10.4 (Tiger). You will also need all the relevant frameworks (they come with Xcode). If you don't yet have Xcode you can get it from the Apple Developer Connection (see the Apple web site) - ADC membership to get Xcode is free, and it's a rather nice IDE. Then double click on the Xcode project in the Finder, and hit Build.

For Windows, see the Oolite wiki: http://wiki.alioth.net/index.php/Running_Oolite-Windows

On Linux, if you have the Debian package tools (installed by default with Debian and Ubuntu), use dpkg-buildpackage.

On Linux, BSD and other Unix platforms without dpkg tools, you will need to get GNUstep and SDL development libraries in addition to what is usually installed by default if you choose to install the development headers/libraries etc. when initially installing the OS. For most Linux distros, GNUstep and SDL development libraries come prepackaged - just apt-get/yum install the relevant files. You may also need to install Mozilla Spidermonkey (libmozjs). On others you may need to build them from source. In particular, you need the SDL_Mixer library, which doesn't always come with the base SDL development kit. Then just type make, or, if you're using GNU make, make -f Makefile. On some systems, such as Gentoo, you may need to run make -f Makefile OBJCFLAGS=-fobjc-exceptions.

If you want to make the Linux autopackage, after getting the Autopackage development kit, just type makeinstaller, and a package file will be deposited in the top level.

Running

On OS X, you can run from Xcode by clicking on the appropriate icon (or choosing 'Build and Run'). On Linux/BSD/Unix, in a terminal, type openapp oolite

Git

The Oolite source is available from github. Use git clone https://github.com/OoliteProject/oolite to retrieve. Then git submodule update --init to fetch the various submodules.

If you've cloned the source from a forked repository instead, this may not work - due to relative directory paths in .gitmodules, git tries to download the submodules from the fork instead of the original oolite repository. A workaround is to copy the file .absolute_gitmodules onto .gitmodules, then perform the submodules init, then replace .gitmodules with the relative path version. eg, on Unix:

$ cp .absolute_gitmodules .gitmodules
$ git submodule update --init
$ git checkout -- .gitmodules

You should now have access to the submodules, without git complaining that .gitmodules has changed or including .gitmodules in pull requests.