| 1 |
This Mac OS X document was written by Anders F Bjorklund <afb@users.sf.net> |
|---|
| 2 |
|
|---|
| 3 |
Building the software |
|---|
| 4 |
===================== |
|---|
| 5 |
|
|---|
| 6 |
To make a Universal Binary (of DSSS) use this command to build rebuild: |
|---|
| 7 |
|
|---|
| 8 |
make -C rebuild CXXFLAGS="-O2 -g -arch ppc -arch i386" |
|---|
| 9 |
|
|---|
| 10 |
Then we ask DSSS to build itself, using the new version: |
|---|
| 11 |
|
|---|
| 12 |
./rebuild/rebuild -full -Irebuild sss/main.d -ofdsss -arch ppc -arch i386 |
|---|
| 13 |
|
|---|
| 14 |
./dsss build -v -vdmd -version=OSXUniversalBinary |
|---|
| 15 |
|
|---|
| 16 |
Alternatively, if you don't want a Universal Binary use: |
|---|
| 17 |
|
|---|
| 18 |
make -f Makefile.gdc.posix |
|---|
| 19 |
|
|---|
| 20 |
Making the package |
|---|
| 21 |
================== |
|---|
| 22 |
|
|---|
| 23 |
* Note that you need Admin priviledges, to make PKG |
|---|
| 24 |
|
|---|
| 25 |
* Install the software to the Package Contents Root: |
|---|
| 26 |
|
|---|
| 27 |
./dsss install --prefix=`pwd`/Root |
|---|
| 28 |
|
|---|
| 29 |
* Strip the binaries from the big debugging symbols: |
|---|
| 30 |
|
|---|
| 31 |
strip -S Root/bin/* Root/lib/lib*.a |
|---|
| 32 |
|
|---|
| 33 |
* Set the file ownership, for all the Package files: |
|---|
| 34 |
|
|---|
| 35 |
sudo chown -R root:wheel Root |
|---|
| 36 |
|
|---|
| 37 |
* Open DSSS.pmproj with /Developer/Applications/Utilities/PackageMaker.app |
|---|
| 38 |
|
|---|
| 39 |
* Update the version info to match the current, see "Package Version" tab |
|---|
| 40 |
|
|---|
| 41 |
* Build the PKG bundle (DSSS.pkg), "Build..." item |
|---|
| 42 |
|
|---|
| 43 |
* Add the PKG to a DMG (dsss-x.yy-gdc-mac-10.z.dmg) |
|---|
| 44 |
|
|---|
| 45 |
* The name of the HFS+ disk image should be: "DSSS" |
|---|
| 46 |
|
|---|
| 47 |
hdiutil create -srcfolder DSSS -fs HFS+ -format UDZO -ov dsss.dmg |
|---|
| 48 |
|
|---|
| 49 |
* It should be "internet-enabled", to unpack itself |
|---|
| 50 |
|
|---|
| 51 |
hdiutil internet-enable -yes dsss.dmg |
|---|
| 52 |
|
|---|
| 53 |
Stand-alone rebuild |
|---|
| 54 |
=================== |
|---|
| 55 |
|
|---|
| 56 |
* Build the Universal Binary |
|---|
| 57 |
|
|---|
| 58 |
make CXXFLAGS="-O2 -g -arch ppc -arch i386" |
|---|
| 59 |
|
|---|
| 60 |
* Strip out debugging symbols |
|---|
| 61 |
|
|---|
| 62 |
strip -S rebuild |
|---|
| 63 |
|
|---|
| 64 |
* Make HTML manpage version (optional) |
|---|
| 65 |
|
|---|
| 66 |
man2html <rebuild.1 >rebuild.1.html |
|---|
| 67 |
touch -r rebuild.1 rebuild.1.html |
|---|
| 68 |
|
|---|
| 69 |
* Archive the distribution |
|---|
| 70 |
|
|---|
| 71 |
zip -r -y rebuild.zip rebuild rebuild.1* rebuild.conf dymoduleinit.d |
|---|
| 72 |
zip -r -y rebuild.zip README InstallMe.command *.txt |
|---|