[GRASS-dev] Re: OSX GRASS.app build news

William,

I tried out the new build system for Mac OS X and it worked great. AFAICT,
the make install created a perfect GRASS.app

This system will be excellent for compiling on the Mac OSX. With your
framework build for the libraries, it make compiling reasonably accessible
to even terminal averse Mac users.

As usual, I had to go into /lib/proj and /gui/tcltk/d.m and individually run
make in these folders. I don't understand why this is so, since both
compiled fine from within the folders.

I hope that someone with makefile experience can help you get these changes
permanently into the GRASS cvs like the debian and rmp setups.

Michael

On 2/20/07 8:57 PM, "William Kyngesburye" <kyngchaos@kyngchaos.com> wrote:

If you're not too busy and would like to test it, I submitted a set
of patches to the new tracker to add a Mac OS X app build to GRASS.

Apply the patches to the corresponding files in the existing grass
source (you may want to save backups). Drop the macosx folder in the
top level of the source.

Configure as you normally would, except set the prefix:

--prefix=/Applications

BUT don't make yet. Since the needed configure flag isn't available
yet (I don't know how to patch configure.in), you must manually
enable the app build. Edit platform.make and change the MACOSX_APP =
@MACOSX_APP@ line to:

MACOSX_APP = 1

Now, when you make, the macosx folder will be built. The install
completes the process. By default, TclTk X11 is bundled in the
package. The bindist target (make bindist) might be preferable so
you don't overwrite an existing GRASS.app. Unlike the unix bindist
which tarballs the binary and includes an install script, the OSX app
bindist just packages the app like the install does and put it in the
GRASS source folder, then you can drag it to whereever you like
(considering the no-spaces-in-pathname rule).

Since the @MACOSX_APP@ bit in platform.make will force an app build,
if you want to disable the app build delete that part, so you get:

MACOSX_APP =

(or use the original platform.make.in and reconfigure)

The other patches won't get in the way of a unix-style build.

It would be great if you could try this. If someone doesn't pick
this one up soon, maybe you know who to bug :slight_smile:

-----
William Kyngesburye <kyngchaos@kyngchaos.com>
http://www.kyngchaos.com/

"We are at war with them. Neither in hatred nor revenge and with no
particular pleasure I shall kill every ___ I can until the war is
over. That is my duty."

"Don't you even hate 'em?"

"What good would it do if I did? If all the many millions of people
of the allied nations devoted an entire year exclusively to hating
the ____ it wouldn't kill one ___ nor shorten the war one day."

<Ha, ha> "And it might give 'em all stomach ulcers."

- Tarzan, on war

__________________________________________
Michael Barton, Professor of Anthropology
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

phone: 480-965-6213
fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton