6c17d02551
temporary handling code in the app_server. * RootLayer no longer creates the input_server messaging port - this is now the responsibility of the input_server. * Moved AS_CREATE_[OFFSCREEN_]WINDOW from ServerApp::_MessageLooper() to _DispatchMessage(). * The RootLayer thread is now started as soon as the input_server is there. * removed or disabled any input_server stuff in the AppServer class. * removed old message commmands to the app_server. * Removed the R5_CURSOR_COMM and HAIKU_APPSERVER_COMM definitions: the input_server is now automatically built correctly depending on the target. * InputServer::EventLoop() plays now safe and checks for error conditions. * InputServer::EnqueueDeviceMessage() seems to leak memory, added TODO about this. * InputServer event loop messaging uses ports for inner-app communication - why? * The InputServer event loop thread is no longer killed on exit, it just quits when its port is gone. * Minor cleanup in input_server. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14949 a95241bf-73f2-0310-859d-f6bbb57e9c96 |
||
---|---|---|
build | ||
data | ||
docs | ||
headers | ||
src | ||
configure | ||
Jamfile | ||
Jamrules | ||
makehaikufloppy | ||
ReadMe |
Setting Up -------- The build system uses Jam/MR (http://www.perforce.com/jam/jam.html). A BeOS executable of Jam 2.5 is available at: http://haiku-os.org/downloads.php?mode=download&id=10&mirror=0 Unzip the executable and copy it to /boot/home/config/bin. The Jam source code is also included in the source tree. You can as well cd into "src/tools/jam" and run "make" to obtain an executable. To build Haiku you also need Oliver Tappe's GCC 2.95.3. You can get it at BeBits: http://www.bebits.com/app/4011 Older versions of GCC 2.95.3 will likely not work. Configuring -------- Open a Terminal and change to your Haiku trunk folder. To configure the build you can run configure like this: $ ./configure --target=TARGET Where "TARGET" is the target platform for the build. Valid targets are "r5", "bone", "dano" and "haiku". If you omit the target it defaults to "haiku". To configure for ZETA use the "dano" target. The configure script generates a file named "BuildConfig" in the "build" directory. As long as configure is not modified (!), there is no need to call it again. That is for re-building you only need to invoke Jam or makehdimage (see below). If you don't update the source tree very frequently, you may want to execute configure after each update just to be on the safe side. Building -------- The preferred method to build Haiku (currently only possible on a BeOS machine) is this: $ makehdimage /Haiku Where "/Haiku" is the mounted BFS partition where you want to install Haiku on. This can be any BFS partition with enough space available. Use DriveSetup to initialize a partition to BFS. If the parameter is omitted, makehdimage currently creates a 60 MB Haiku image in this directory that you can use for Bochs, Qemu and other emulators to boot. To build the whole source tree for your selected target platform (to use the apps, drivers, add-ons, etc.) you can simply invoke Jam: $ jam Or to build only a specific app/driver/etc. include it as an argument: $ jam Pulse NOTE: If you have checked out the latest SVN revision, it is not unlikely that some parts of the tree won't build. Running ------- Generally there are two ways of running Haiku. On real hardware using a partition and on emulated hardware using an emulator like Bochs. 1. On Real Hardware If you have installed Haiku to it's own partition you can include this partition in your bootmanager and try to boot Haiku like any other OS you have installed. To include a new partition in the BeOS bootmanager run this in a Terminal: $ bootman And follow the steps of the installer. 2. On Emulated Hardware For emulated hardware you should build a "haiku.image" using makehdimage without arguments. How to setup this image depends on your emulater. A tutorial for Bochs on BeOS is below. Bochs ----- Version 2.2 of Bochs for BeOS (BeBochs) can be downloaded from BeBits: http://www.bebits.com/app/3324 The package installs to: /boot/apps/BeBochs2.2 You have to set up a configuration for Bochs. You should edit the ".bochsrc" to include the following: ata0-master: type=disk, path="/path/to/haiku.image", cylinders=122, heads=16, spt=63 boot: disk Now you can start Bochs: $ cd /boot/apps/BeBochs2.2 $ ./bochs Answer with RETURN and with some patience you will see Haiku booting. If booting into the graphical evironment fails you can try to hit "space" at the very beginning of the boot process. The Haiku bootloader should then come up and you can select some safe mode options. Docbook documentation --------------------- Requirements : - Docbook XML DTD (http://www.oasis-open.org/docbook/xml/4.2/docbook-xml-4.2.zip) - Docbook Stylesheets (http://prdownloads.sourceforge.net/docbook/docbook-xsl-1.68.1.tar.bz2) - libxml2, xmllin (http://libpak.neoni.net/packages/LibPak_libxml2_dev.zip) - libxslt, xsltproc (http://libpak.neoni.net/packages/LibPak_libxslt_dev.zip) XML catalogs must be configured to avoid internet access : - in Docbook Stylesheets directory : sh ./INSTALL - in your .profile, add something like this : export XML_CATALOG_FILES="/boot/home/docbook-xsl-1.68.1/catalog.xml /boot/home/docbook-xml-4.2/catalog.xml /etc/xml/catalog"