Go to file
tsoj 31939ba721
Add update all option to OXP manager (#381)
Closes #341
2021-02-22 16:16:33 +01:00
DebugOXP/Debug.oxp Bump master version to 1.91. 2020-08-30 14:28:12 +02:00
Doc Added tsoj to contributors list. 2021-02-20 19:12:29 +01:00
Mac-specific@90eb952576 Reverting Mac-specific to the last version that was known to work with Travis. 2020-08-12 09:09:00 +02:00
Oolite.xcodeproj Updated doc and removed normal map file from xproj 2019-12-19 08:02:39 +11:00
Resources Add update all option to OXP manager (#381) 2021-02-22 16:16:33 +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 Linux (#315): Added libnsl.so.1 in the bundled libs 2020-11-14 18:14:56 +02:00
installers Bump master version to 1.91. 2020-08-30 14:28:12 +02:00
src Add update all option to OXP manager (#381) 2021-02-22 16:16:33 +01:00
tests@ef000a26e9 Bringing tests to their latest revision. 2018-11-06 21:11:14 +01: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 Linux deps version bump 2019-06-09 14:37:02 +03:00
GNUmakefile.postamble As suggested in Debian patch, separate strip and debug options in build 2015-09-06 11:11:06 +01:00
Makefile Changed default target to 'help', updating 2020-09-09 17:23:58 +03:00
README.md Add update all option to OXP manager (#381) 2021-02-22 16:16:33 +01: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)

GitHub release

Windows Linux OSX
Github release Github release Github release
Github release Github release Github release
Github release
Github release

Oolite

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

For end-user documentation, see oolite.org and Elite Wiki.

Contents

  • debian: Files to enable automatic setup under Linux using dpkg (Debian package manager) tools
  • DebugOXP: Debug.oxp, the expansion pack that enables console support in debug and test release builds
  • deps
    • Cocoa-deps: Dependencies for Mac OS X
    • Cross-platform-deps: Dependencies for platforms other than Mac OS X
    • Linux-deps: Dependencies for Linux on x86 and x86_64 processors
    • URLs: URLs used for binary dependencies on Mac OS X
    • Windows-deps: Dependencies for Windows on x86 and x86_64 processors
  • Doc: Documentation (including user guides)
  • installers: Files used to create various installers
  • Mac-specific: Additional projects used only on Mac OS X
    • DataFormatters: Debugger configurations for Xcode
    • DebugBundle: Implements the Debug menu and in-app console
    • OCUnitTest: A small number of unit tests
    • Oolite-docktile: An embedded plug-in which implements the Oolite dock menu when Oolite is not running
    • Oolite-importer: A Spotlight importer to make saved games and OXPs searchable
  • Oolite.xcodeproj: The OS X Xcode project to build Oolite
  • Resources: Game assets and resource files for Mac and GNUstep application bundles
  • Schemata: Plist schema files for the OXP Verifier
  • src: Objective-C and C sources, incuding header files
    • BSDCompat: Support for BSDisms that gnu libc doesn't have (strl*)
    • Cocoa: Files that are only compiled on Mac OS X
    • Core: Files that are compiled on all platforms
    • SDL: Files that are only compiled for platforms that use SDL
  • tests: A mixed bag of test cases for manual testing and ad-hoc code tests.
  • tools: Various tools for preparing files, builds, releases etc.

Building

Mac OS X

You will need the latest version of Xcode from the App Store. Then double click on the Xcode project in the Finder, select one of the Oolite targets from the Scheme pop-up, and hit Build and Run (the play button in the toolbar).

Windows

See the Oolite wiki: http://wiki.alioth.net/index.php/Running_Oolite-Windows

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 release. On some systems, such as Gentoo, you may need to run make -f Makefile release OBJCFLAGS=-fobjc-exceptions.
If you get errors like make[1]: *** No rule to make target '/objc.make'. Stop. it might help if you run source /usr/share/GNUstep/Makefiles/GNUstep.sh (the exact path to GNUstep.sh might differ).
If you have problems with missing textures you can try to delete deps/Linux-deps/include/png.h and deps/Linux-deps/include/pngconf.h before compiling.

Also remember to first fetch the various submodules, see Git.

Running

On OS X, you can run from Xcode by clicking on the appropriate icon (or choosing 'Run' from the 'Product' menu).
On Linux/BSD/Unix, in a terminal, type openapp oolite, or if you compiled it yourself you can run it with ./oolite.app/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.