ReferencePlatforms/Mac: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 57: Line 57:
  ln -s dports.MozillaReferencePlatform dports
  ln -s dports.MozillaReferencePlatform dports


* Next, you need to install a series of ports, all of which should already be contained (and the right version) in the dports tarball you just unpacked. If you see the port command hitting the network at all while installing the needed ports, something has gone wrong.<br/>Here is a short script that will install all the needed ports. Some of the ports have dependencies, so installing them in a different order would probably cut down on time, but I'm just listing them all here alphabetically for clarity:
* Next, you need to install a series of ports, all of which should already be contained (and the right version) in the dports tarball you just unpacked. If you see the port command hitting the network at all while installing the needed ports, something has gone wrong.<br/><br/>Here is a short script that will install all the needed ports. Some of the ports have dependencies, so installing them in a different order would probably cut down on time, but I'm just listing them all here alphabetically for clarity:


  #!/bin/bash
  #!/bin/bash

Revision as of 18:31, 8 December 2006

Darwin Version

PPC: Darwin xserve03.build.mozilla.org 8.7.2 Darwin Kernel Version 8.7.2: Tue Jul 25 23:14:47 PDT 2006; root:xnu-792.10.96.obj~3/RELEASE_PPC Power Macintosh powerpc

Intel:


ssh

The first step is to get ssh working with the cltbld keys on the new machine. Unfortunately, this presents a bit of a chicken-and-egg problem, as the ssh keys necessary to access cvs are not yet on the machine.

Two possible solutions are:

  1. checkout the cltbld ssh keys on a machine that already has the keys installed and then scp the .ssh directory over (cvs -d :ext:cltbld@cvs.mozilla.org:/mofo co -d .ssh release/tinderbox-configs/host/ssh; scp -r .ssh new_machine:~)
  2. scp the cltbld keys over directly from a machine that already has them installed (cd ~;scp -r xserve06:~/.ssh .)

ENV setup

ocvs -d :ext:cltbld@cvs.mozilla.org:/mofo co release/tinderbox-configs/host
ln -s release/tinderbox-configs/host/mac-osx-profile .profile

...at which point you'll probably want to restart your shell to use the new .profile.

Ref platform packages

The next step is to retrieve the Mac reference platform packages from CVS:

ocvs -d :ext:cltbld@cvs.mozilla.org:/mofo co ref-platforms/mac

This should yield 4 files:

1703e153e7954c976bc39e3e226ae219  DarwinPorts-1.2-10.4.dmg
65c3aeb974f5f8c75b8daa92c9185122  SharedMenusCocoa.dmg
039b8961863bd240817a6eed38f67704  dports.tar.gz
1d89f956ea2ee3a248449c3c0e0d6834  xcode_2.2.1_8g1165_018213632.dmg

Installing Xcode

  1. Mount the Xcode disk image, and begin installing the XcodeTools.mpkg.
  2. When it comes time to choose the Installation Type, choose "Customize"
  3. Under "Cross-Development," select all the available SDKs, and then click "Install"

Installing DarwinPorts (PPC)

  • Install the DarwinPorts package using the DarwinPorts-1.2-10.4.dmg.
  • Unpack the dport tarball of packages and move them into place:
cd ~ref-platforms/mac
tar zxf dports.tar.gz
cd /opt/local/var
mv db db.old
mkdir db
mv ~/ref-platforms/mac/dports.MozillaReferencePlatform db/
cd db/
ln -s dports.MozillaReferencePlatform dports
  • Next, you need to install a series of ports, all of which should already be contained (and the right version) in the dports tarball you just unpacked. If you see the port command hitting the network at all while installing the needed ports, something has gone wrong.

    Here is a short script that will install all the needed ports. Some of the ports have dependencies, so installing them in a different order would probably cut down on time, but I'm just listing them all here alphabetically for clarity:
#!/bin/bash
port -f install apr @1.2.7_0
port -f install apr-util @1.2.7_0
port -f install cvs @1.11.21_0
port -f install db4 @4.3.29_0
port -f install expat @2.0.0_1 
port -f install gettext @0.14.6_0
port -f install glib2 @2.10.3_0
port -f install libiconv @1.10_1
port -f install libidl @0.8.6_0
port -f install neon @0.25.5_0 
port -f install openssl @0.9.8b_0
port -f install pkgconfig @0.20_0
port -f install subversion @1.3.2_0
port -f install wget @1.10.2_0
port -f install zlib @1.2.3_0

Running port installed after you're done should show only the 15 ports listed above as installed.

Installing SharedMenusCocoa

  1. Open the SharedMenusCocoa image.
  2. Copy the SharedMenusCocoa.framework directory from SharedMenusCocoa/build to /Library/Frameworks
  3. Follow the instructions on the Camino build reference page for creating the links in the older SDKs.

chown scripts

After you've created your initial /builds/tinderbox directory structure, checkout and build the following tools that are also required for changing permissions while packaging on Macs:

cd ~
cvs -d :ext:cltbld@cvs.mozilla.org:/cvsroot co mozilla/build/macosx/permissions
cd mozilla/build/macosx/permissions
gcc -o chown_revert chown_revert.c
gcc -o chown_root chown_root.c
mkdir -p /builds/tinderbox/bin
cp chown_revert chown_root /builds/tinderbox/bin
cd /builds/tinderbox/bin
chmod 4755 chown*
ln -s chown_revert revert_root