Go to file
cim 948dc08c01 Weapon type could now be any string depending on what equipment is present. 2015-01-17 14:36:42 +00:00
DebugOXP/Debug.oxp Fix placement of "use strict" in the debug console 2014-09-21 20:26:11 +01:00
Doc Sundry OOExpand adoptions 2015-01-09 22:57:02 +01:00
Mac-specific@9718c76f27 Bump Mac-specific 2014-12-30 16:20:25 +01:00
Oolite.xcodeproj Xcode project update 2014-11-08 00:26:07 +01:00
Resources Sundry OOExpand adoptions 2015-01-09 22:57:02 +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 Xcode project update 2014-11-08 00:26:07 +01:00
installers Change year to 2015 in visible game and Win installer messages. Happy new year. 2015-01-01 11:59:41 +01:00
src playerEnteredContract(type,info) method 2015-01-15 18:23:47 +00:00
tests@3426ffc6da Finish off basic interface, a bit of cleanup 2014-01-13 18:27:43 +00:00
tools Store full seeds in planetinfo 2014-10-18 14:45:41 +01:00
.absolute_gitmodules Add instructions to README.txt for using git 2013-11-10 12:09:57 +00:00
.gitignore Removed Basic-debug.oxp makefile 2013-10-13 15:20:08 +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
GNUmakefile Merge master into fancy-expand (using imerge) 2015-01-04 15:07:47 +01:00
GNUmakefile.postamble Scenario loading screen 2013-12-01 18:29:08 +00:00
Makefile Windows installer: Refuse to run if the user tries to install the 64-bit version of the game on a 32-bit system. 2013-12-23 09:37:27 +01:00
README.txt Fix git clone url in README.txt (thanks stimer). Closes issue #83. 2014-02-02 18:13:15 +01:00
config.make Makefiles - rework to accomodate new Javascript library 2011-02-16 13:24:56 +00:00
libjs.make Revert "Linux: Makefiles updates for github project tree" 2013-10-10 20:12:27 +03:00

README.txt

Grand Unified Source Tree for Oolite
====================================

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

1. 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.

2. 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.

3. 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'.

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.

4. 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'

5. 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.