[PATCH] Various OSX fixes & .app bundle building support

From: "Florian G(dot) Pflug" <fgp(at)phlo(dot)org>
To: pgadmin-hackers(at)postgresql(dot)org
Subject: [PATCH] Various OSX fixes & .app bundle building support
Date: 2005-03-12 16:41:20
Message-ID: 42331BB0.3090405@phlo.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi

I tried compiling pgadminIII on OSX, and (compared to a few months ago),
things were relativly smooth. There were, howevery, a few problems,
which the attached patches try to solve.

.) When SSL support is disabled in libpq, pgConn::IsSSLconnected is not
included in pgConn, although there other code depends on IsSSLconnected.
The attached pgadmin3-sslfix.diff defined IsSSLconnected even when ssl
is disabled in libpq, but it always returns false in this case.

.) I wanted to build a .app bundle for pgadmin, but I found no support
for this in the build system. I added an option --build-bundle that
basically overwrites --prefix to $(pwd)tmp, and added a PgAdminIII.app
target to Makefile.am. The built bundle includes the pgadmin3 binary
(named PgAdminIII, all shared libraries that binary depends on (system
libs in /usr/lib and /System are excluded), the documentation and the
ui/ folder. This code is in pgadmin3-buildbundle.diff

.) I added code to pgAdmin3.cpp to find the ui and doc folder inside the
bundle, using the SystemPathsCF class from wx (only when __WXMAC__, of
course). Using just SystemPaths would be cleaner, as it should default
to sensible locations on all plattforms, but as of wxmac 2.5.4,
SystemPaths refers to the unix-implemenation, not to the osx
implemenation. This code is in pgadmin3-usebundle.diff

Open Problems:
.) The resulting .app is HUGHE - My app currently has 250Mb - but since
I compiled wxmac and libpq as shared libs (which therefore are copied to
the bundle by my PgAdminIII.app target), and include debug support, this
is not unreasonable. I haven't check how big it gets when it's linked
statically, and is stripped...

.) The bundle doesn't include pg_dump and the slony sqls. I plan to fix
this - but it's hard since the build system currently doesn't know where
to find those.

.) Most dialogs in pgadmin are unuseable on osx, because the window is
too small - I believe that pgadmin uses absolute pixel-based positioning
in the .xrc files, and unfortunatly ui-controls are much bigger on osx..

.) The help window behaves very strange - it has no titlebar, and is
attached to the top of the screen..

I hope this helps - I'd like to see OSX being an supported plattform for
pgadmin3, and I'd like to help to get there..

greetings, Florian Pflug

Attachment Content-Type Size
pgadmin3-usebundle.diff text/plain 2.2 KB
pgadmin3-buildbundle.diff text/plain 3.4 KB
pgadmin3-sslfix.diff text/plain 960 bytes

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Florian G. Pflug 2005-03-13 13:56:55 Re: [PATCH] Various OSX fixes & .app bundle building
Previous Message Dave Page 2005-03-11 20:34:07 Re: RFC: pgAgent Scheduler Design