When will we see your macports files?
... here they are.
Since there are now 10 Portfiles and some source code patches, I've made a complete build environment. IMO this has some advantages:
- it's much easier to provide own Portfiles and keep them running especially after doing a MacPorts selfupdate
- new Portfiles, which are not in MacPorts already can be used (Gimp 2.6 depends on GEGL and BABL. Currently there are no official Portfiles)
- it's easier to provide own source code patches, see above
- most of the "not needed" ports (gnome, bonobono, various py25-something and others) could be dropped. This speeds up compiling and makes the Gimp.app bundle cleaner and smaller. Less dependencies give less bugs
- it will be easier to patch all ports so that they compile as "universal" (not realised yet)
- it uses MacPorts, so we have a well known basis
But first, some warnings
This is _NOT_ a "Howto compile Gimp on your own" manual for users. It's intended for developers who want to help providing pre-built Gimp packages for users. You need some knowledge about shell scripting, patching sources and managing MacPorts repositories.
There's no guarantee that this will work on your system.
Use it at your own risk. Improper use may damage your system, so you'll be warned.
Still there?
Let's go.
First, please move anyting in your ~/src/macports to a save place. Uninstall MacPorts or move it out of the way, so that it's not used if you call the port command. We will soon build a new one.
The environment contains three basic parts. Scripts, the GimpPorts file hierarchy and an application template.
You find this posting and the downloads at:
http://gimp.lisanet.de/Website/Developer.htmlDownload them to your ~/src/macports and extract them there.
A "ls -l" sould give you something like:
- Code: Select all
drwxr-xr-x 4 simone simone 136 7 Jul 22:53 Gimp-app template
drwxr-xr-x 6 simone simone 204 5 Okt 10:55 GimpPorts
-rwxr-xr-x@ 1 simone simone 5113 4 Okt 23:09 gp-app
-rwxr-xr-x@ 1 simone simone 3255 5 Okt 11:43 gp-makeports
-rwxr-xr-x@ 1 simone simone 359 5 Okt 11:21 gp-prep
The scriptsI've tried to document the scripts as well as I could, so please have a look at the sources to see the details.
gp-prep
Use this script to ensure that the symlink /tmp/skl/Gimp.app points to the correct directory.
gp-makeports
This script downloads the newest MacPorts sources, compiles it, does a selfupdate, and integrates the GimpPorts directory tree. You have to run it twice (more later).
gp-app
After building gimp (see below) this script makes a Gimp application bundle using the provided template
Gimp-app templateThis is the template for the application bundle. I've updated the scripts:
"script"
Leopard only (Tiger will follow soon). fixed a typo. No new functionality.
"openDoc"
Leopard only. fixed a typo. No new functionality.
"bin/gimp"
In order to make drag&drop working I had to use dbus. So this script needs to be modified too.
"bin/gimp-remote"
see bin/gimp. No need to use gimp-remote-2.6, because dbus / gimp-2.6 handles this
The QuickLook plugin is included and updated to gimp-2.6
BTW, I've designed a new icon for Gimp. It makes use of Leopard's higher resolution (512x512 pixel). Much better look in Coverflow.
GimpPorts directory tree"ports"
This contains the various Portfiles. This way I got rid of the annoying p5-getopt-long bug and could drop most unneeded ports (gnome, py25-..., p5-...). But there's still a error in py25-hashlib. Just run "sudo port install gimp" again.
See
https://trac.macports.org/ticket/13930"distfiles"
I've patched ufraw to use slightly different file extensions (tiff instead of tif) which will be more compatible with Aperture. And, now the main window stays open after you've saved a file. Currently I haven't made a diff to the offical sources, so I had to provide the whole source in this form as a distfile. (as usual, ...the patchfile will follow soon.)
"Application"
MacPorts should install it's "applications" here, at least I hope it does. So these apps are out of the way. And if you delete GimpPorts they're gone too. See
http://guide.macports.org/#internals.co ... tion-filesBuilding Gimpgo to your ~/src/macports dir and run "gp-prep" to ensure the symlink exists.
Then run "gp-makeports". This should download the newest MacPorts sources and extract them.
Run "gp-makeports" again. (sorry, but I have no other idea on how to manage this on Leopard and Tiger too. Any suggestions?) This will compile MacPorts, doing a selfupdate and patching MacPorts configuration files, so that the GimpPorts tree will be used. Finally it gives you some hints on what to do next.
Because there is still a minor bug in one of the ports, it's not possible to do the compiling phase in a shell script. So please do
- Code: Select all
export PATH=/tmp/skl/Gimp.app/Contents/Resources/bin:$PATH
sudo port install gimp
The compiling phase may stop with an error on "py25-hashlib". Just type "sudo port install gimp" again.
If everything went well, run "gp-app". This will build the final Gimp application bundle.
Finally do
- Code: Select all
port installed > gimp-build.log
This will log all the ports used in this build. This may help in finding bugs between different builds.
ToDo- apdopt the application template to Tiger. Changing "script" and "openDoc" should be enough. I've just set up a fresh Tiger system on my MacBook and started compiling MacPorts. So I think a Tiger / Intel version will come soon.
- make all ports build as "universal"
- anything else?
Willing to help?I'd be glad, if you'll help to improve this build environment. Please post your enhancements, bug reports or anything else here in this formum or drop me a mail (skl at lisanet dot de)
Enjoy
Simone