From Camino Wiki
Jump to navigation Jump to search
N.B. These build instructions are obsolete and have been superseded by the instructions on Development:Building.

Building Camino (trunk) on your Intel Mac

These instructions are constantly changing and should not be considered a definitive resource, even though there is no other resource.

Preparing your Macintosh

Download and install XCode 2.3 from the Apple Developer Connection. (free registration)

Download and install Fink 0.8.1 from Fink.


sudo apt-get install orbit orbit-dev glib libidl2


Download and install the Shared Menus Cocoa framework using the instructions at Mozilla Developer Centre.


sudo mkdir -p /Developer/SDKs/MacOSX10.2.8.sdk/Library/Frameworks
sudo ln -s /Library/Frameworks/SharedMenusCocoa.framework /Developer/SDKs/MacOSX10.2.8.sdk/Library/Frameworks
sudo mkdir -p /Developer/SDKs/MacOSX10.4u.sdk/Library/Frameworks
sudo ln -s /Library/Frameworks/SharedMenusCocoa.framework /Developer/SDKs/MacOSX10.4u.sdk/Library/Frameworks

Pulling source and building in

N.B. Other than the Intel-specific stuff, the existing instructions provide more detail, so we want to merge these.

Open, change directory to where you would like to build Camino from (e.g., ~/dev/lizard).

cd ~/dev/lizard
cvs login
cvs co mozilla/
cvs co mozilla/camino/config/mozconfig

Now move into the mozilla directory and use your favourite text editor to create the file .mozconfig

cd mozilla
pico .mozconfig

If your Intel Mac has a Core Duo processor then your .mozconfig file should contain the following:

. $topsrcdir/camino/config/mozconfig
ac_add_options --disable-optimize
ac_add_options --enable-debug
mk_add_options MOZ_MAKE_FLAGS=-jN

Where N = # of CPUs +1, where # of CPUs = 2 on a Core Duo processor.

Please read the above line, again, you are not setting 'N' MAKE_FLAGS, but a real number as defined above!

To pull from cvs and build:

Please visit the Tinderbox and make sure that the 2nd, 3rd, and 6th columns are green.

make -f

When you're all done, your Camino ends up in camino/build (mozilla/camino/build for a non-OBJDIR build, {OBJDIR}/camino/build in an OBJDIR build).

Updating your source and rebuilding

Please visit the Tinderbox and make sure that the 2nd, 3rd, and 6th columns are green.

cd ~/dev/lizard/mozilla
cvs update -dP
make -f

(For OBJDIR builds, replace make -f with make -f checkout; cd ../{OBJDIR}; make)

Building in Xcode

  • Open Xcode, click your left-mouse button on File ... Open
  • Browse to mozilla/camino/ and select Camino.xcode
  • Choose to Upgrade a Copy
  • Click on Project... Edit Project Settings
  • In the General tab, select Mac OS X 10.4 (Universal) in the Cross-Develop Using Target SDK drop-down menu.
  • Click on Change in the panel that pops up.

N.B. Whenever Camino.xcode changes, you will need to repeat these steps. Luckily, the project file does not change often.

Setting Camino to use a different profile

This means you can run the Camino you are developing on alongside your day-to-day copy of Camino!

There are 2 ways to do this, you can either set this within XCode:

Click Project... Edit Active Executable 'Camino'
In the Arguments tab click the + button under the "Variables to be set in the environment" table.
In the Name column type 'CAMINO_PROFILE_DIR' in the Value column type in where you would like to store Camino's profile for your development copy.
Click Build & Go in the XCode Toolbar

Or you can set this at a Terminal:

Instead of clicking on Build & Go in the XCode toolbar, click on Build.

Open a

export CAMINO_PROFILE_DIR=AbsolutePathToDir
cd PathToWhereYourCamino.appLies

Your CAMINO_PROFILE_DIR can be anywhere you have write access to, my CAMINO_PROFILE_DIR points to ~/Documents/SoC/CAMINO_PROFILE_DIR/

My is in ~/Documents/SoC/mozilla/camino/build/Development/ so I cd to that directory before executing open

(Weak) Statistics

Total time to pull and make from scratch on:

  1. MacBook Core Duo 1.83GHz w/ 512MB RAM : 48 minutes.

I tested this using the command uptime && make -f && uptime.




Questions, comments, missing items, et cetera? See the Discussion tab.