From 7b0eff1cfe9c7b078b465c201d12f18fc0515735 Mon Sep 17 00:00:00 2001
From: edgrif <edgrif>
Date: Tue, 9 Feb 2010 14:05:15 +0000
Subject: [PATCH] add macports description to build stuff...work in progress.

---
 web/developer/build_system.shtml | 291 ++++++++++++++++++++++++++++++-
 1 file changed, 290 insertions(+), 1 deletion(-)

diff --git a/web/developer/build_system.shtml b/web/developer/build_system.shtml
index fa8171bd7..626739365 100755
--- a/web/developer/build_system.shtml
+++ b/web/developer/build_system.shtml
@@ -1,8 +1,8 @@
 <!--#set var="banner" value="zmap_build.sh"-->
 <!--#include virtual="/perl/header"-->
 
+<!--#set var="author" value="edgrif@sanger.ac.uk" -->
 
-<!-- We get the banner from above -->
 
 <h2>SSH magic</h2>
 
@@ -37,3 +37,292 @@ rm -f root_checkout.sh     || exit 1;   \
 Note we run bash on the remote host. This explains some of the odd quoting...
 
 </p>
+
+
+
+<pre>
+
+MacPort Install
+---------------
+
+MacPorts resides at http://www.macports.org/ and is a website providing code
+and utilities for installing common unix programs on a Mac OS X system.
+
+MacPorts requires XCode and requires it at a very current level, XCode is
+however a large package so we should probably have a copy on a CD for local
+installs. NOTE that MacPorts won't install without the right level of XCode on
+the system.
+
+
+
+Installation directory:
+
+By default macports builds stuff in /opt/local, this could be changed to
+/usr/local but I didn't bother. If the desitination directory is left like this
+then it's crucial to make sure that during installing/building your PATH has
+/opt/local/bin and /opt/local/sbin ahead of /usr/local so the right versions of
+aclocal etc etc are picked up. The initial setup of macports tries to do the
+right thing by adding this to your path in your .cshrc (or whatever shell you
+use).
+
+
+
+Initial install of the MacPort utilities:
+
+
+1) Follow the instructions here to install the macports utilities
+
+http://www.macports.org/install.php
+
+
+2) Set the following environment variables
+
+setenv http_proxy http://wwwcache.sanger.ac.uk:3128
+setenv http-proxy-host wwwcache.sanger.ac.uk
+setenv http-proxy-port 3128
+
+(Note I'm not sure all of these are needed...)
+
+
+3) Edit the .subversion/servers file to include the following lines in the
+[global] section: 
+
+http-proxy-host = wwwcache.sanger.ac.uk 
+http-proxy-port = 3128
+
+
+3) Follow the instructions here to sync the MacPorts utilities and any
+ports already installed:
+
+http://trac.macports.org/wiki/howto/SyncingWithSVN
+
+Add this line to the sources.conf looks like this:
+
+file:///opt/local/var/macports/sources/svn.macports.org/trunk/dports/
+
+
+
+You can then use the "port install" command to install packages as required.
+
+</pre>
+
+
+<pre>
+
+
+MacPorts GTK Install
+--------------------
+
+This document describes the packages that need to be installed to allow
+development with the autoconf and GTK packages with some additional graphics
+packages required for zmap/acedb development.
+
+NOTE: It is assumed that the MacPorts utilities have been installed and that
+macports is installing into /opt/local.
+
+
+1) Install GTK
+
+> sudo port install gtk2
+
+
+2) Install libtool and libtool-devel packages
+
+> port install libtool
+
+> port install libtool-devel
+
+
+3) Install "check" utility
+
+> port install check
+
+
+
+4) Install libgd
+
+This package is needed by libg2 (see next item), it is not currently supported
+in macports so needs to be separately downloaded from the website:
+
+http://www.libgd.org/Downloads
+
+
+The downloaded file then needs to be gunzip'd and untar'd and then installed:
+
+> ./configure --prefix=/opt/local CPPFLAGS="-I/opt/local/include -I./" LDFLAGS="-L/opt/local/lib"
+
+> make
+
+> sudo make install
+
+
+
+5) Install libg2 
+
+As with libgd this package is not supported by MacPorts and can be downloaded from:
+
+http://sourceforge.net/projects/g2/
+
+
+The downloaded file then needs to be gunzip'd and untar'd and then installed:
+
+./configure --prefix=/opt/local CFLAGS="-I/opt/local/include"  CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
+
+> make depend
+
+> make
+
+Once the make has finished then check that you see "GD" support:
+
+Supported devices:
+    PostScript
+    FIG
+    X11
+    Xdbe
+    GD              <<<<<<< These two are vital !! 
+    GD (GIF)        <<<<<<<
+
+> sudo make install
+
+
+
+and that's it.
+
+
+</pre>
+
+
+ZMap Install
+------------
+
+ZMap requires several libraries to be installed, this documents covers
+installation of these libraires in a standard environment and a macports
+environment.
+
+
+1) Installing foocanvas....(this assumes you have a _patched_ foocanvas that
+includes all our extras....).
+
+
+For a standard /usr or /usr/local system:
+
+> ./autogen.sh
+
+
+For a MacPorts /opt/local system:
+
+> export ACLOCAL_FLAGS=" -I /opt/local/share/aclocal"  # NOTE the spaces !!!!!
+
+> ./autogen.sh --prefix=/opt/local
+
+
+and then in either case:
+
+> make
+
+> sudo make install
+
+
+
+2) Installing AceConn:
+
+For a MacPorts /opt/local system glibtoolize and the path to aclocal
+need to be set as environment variables before bootstrapping and building:
+
+> export LIBTOOLIZE=glibtoolize
+
+> export AC_LOCAL_INC=/opt/local/share/aclocal
+
+
+and then for all systems:
+
+> bootstrap -b
+
+> ./configure --prefix=/opt/local
+
+> make
+
+> sudo make install
+
+
+
+3) Install ZMap:
+
+
+In scripts
+
+1) build_config.mac.sh & build_config.mac18480i.sh
+
+altered stuff to point to /opt/local
+
+
+
+In src
+
+1) Makefile.am
+
+commented out include $(srcdir)/am_doxygen.am until I can find a way to conditionally
+include it...surely Roy knows how to do this....
+
+2) configure.ac
+
+- changed:
+
+AC_PREREQ(2.59)
+
+to 
+
+AC_PREREQ(2.65)
+
+
+- commented out all of doxygen (lines beginning DX_).
+
+
+- changed:
+
+zmap.pc
+dotZMap:dotZmap.in
+$srcdir/$DX_CONFIG:Doxyfile.in
+])
+
+AC_OUTPUT
+
+to
+
+
+zmap.pc
+dotZMap:dotZmap.in
+])
+
+#$srcdir/$DX_CONFIG:Doxyfile.in
+#
+
+AC_OUTPUT
+
+i.e. commented out the doxyfile bit, this needs to be made configurable...
+
+
+3) runbootstrap
+
+for darwin added:
+
+
+    export ACLOCAL_FLAGS=" -I /opt/local/share/aclocal"
+
+
+
+> cd ZMap/src
+
+> ./runboostrap
+
+
+
+
+
+<pre>
+
+
+</pre>
+
+
+<!--#include virtual="/perl/footer"-->
-- 
GitLab