OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
Re: NEW: KMyMoney2 for OpenBSD (w/ofx support) [long]

From: Landry Breuil (gastongcu.info)
Date: Fri Feb 01 2008 - 08:25:54 CST


On Thu, Jan 31, 2008 at 02:22:41PM -0800, Bill Karh wrote:
>
> I've had problems, in the past, getting KMM, with OFX support, to build
> and run on FreeBSD. Since then, I've changed my desktop to OpenBSD, and
> I thought I'd give it another try. It works, but I ran into some
> problems on the way. Oh, just so you know:
>
> KMyMoney is the Personal Finance Manager for KDE. It operates similar
> to MS-Money and Quicken, supports different account types,
> categorisation of expenses, QIF import/export, multiple currencies and
> initial online banking support.
>
> KMyMoney is not simply a clone of the commercially-available personal
> finance programs. Although many of the features present in KMyMoney
> can be found in other similar applications, KMyMoney strives to
> present an individual and unique view of your finances.
>
> -- kmymoney2.sourceforge.net
>

devel/libofx already exists in our ports-tree, and uses textproc/sp for
sgml parsing. productivity/grisbi works fine with this libofx, dunno for
kmymoney2 though.

Landry

> The first task was to get libofx working. I tried to use the existing
> port for sp (James Clark's SGML/XML parser) but it had missing symbols.
> The README for libofx recommended OpenSP so I made a port for that. The
> patches made for this port are as follows:
>
> patch-tests_Makefile_in
> OpenSP has some unfixed bugs that cause some of the tests to always
> fail. It doesn't look like these bugs will be fixed anytime soon,
> so I disabled them in the port for USE_REGRESS.
>
> patch-unicode_Makefile_in
> patch-unicode_catalog
> patch-unicode_unicode_soc
> By default OpenSP installs a catalog with only some unicode
> definitions. This series of patches enhances the catalog to
> include the standard stuff (html.dtd, html.dcl, etc.).
>
> Then found out that there was a collision with some files in the
> openjade port. So I updated the openjade port to a newer version (1.3
> to 1.3.2), and got it to use the libraries from opensp.
>
> The libofx port was next, after some minor tweaking (added curl and
> xmlpp dependencies to get ofx direct connect), it built fine with the
> new opensp port. I added the docbook and xmlto build dependencies to get
> the man pages, I hope that's not a problem. The patches made for this
> port are as follows:
>
> patch-Makefile_in
> doc installation directory fix
>
> patch-ofxconnect_ofxpartner_cpp
> needs unistd.h
>
> Then the kmymoney2 port had lots of problems; libtool issues, static
> initialization order, etc. I'd like to thank Marc Espie for his recent
> rant on MKDIR_P issues in autoconf/automake, it saved me a lot of time.
> Even though automake is called for, I only modified the .in files. This
> seems to work because automake fails to run for version reasons. Messy.
>
> patch-configure_in
> Remove bash'ism to detect if path is relative or absolute, and
> replace with POSIX expr(1). I think this change is okay, but there
> might be a better more well known way to do this. so let me know.
>
> patch-kmymoney2_plugins_Makefile_in
> Help libtool understand that plugins library is in the plugins
> directory.
>
> patch-kmymoney2_plugins_ofximport_Makefile_in
> Remove duplicate plugin library spec, and use absolute path to build
> directory.
>
> patch-kmymoney2_mymoney_mymoneyreport_cpp
> patch-kmymoney2_mymoney_mymoneyreport_h
> patch-kmymoney2_mymoney_mymoneystatement_cpp
> patch-kmymoney2_mymoney_mymoneytransactionfilter_cpp
> patch-kmymoney2_mymoney_mymoneytransactionfilter_h
> Juggle static initializers to make them follow the "construct on
> first use" idiom. This is what caused all the core dumps on startup
> when people would build KMM from source on OpenBSD (and FreeBSD?).
>
> These are my first ports, so please let me know what you think. I had a
> lot of fun putting them together. It would have taken a lot longer
> without the recent presentation on OpenBSD porting (by Michael Erdely
> and Bernd Ahlers at www.openbsd.org/papers/).
>
> I didn't attach patches to existing ports, only full ports. I am hoping
> for some feedback and to contact the maintainers before I try and make
> patches.
>
> If you plan on testing, it might be easier if you extracted these in
> /usr/ports/mystuff/, as the category path is included in the archive.
> For example, devel.libofx.tar.gz would extract as:
>
> devel/libofx
> devel/libofx/patches
> devel/libofx/patches/patch-Makefile_in
> devel/libofx/patches/patch-ofxconnect_ofxpartner_cpp
> devel/libofx/pkg
> devel/libofx/pkg/DESCR
> devel/libofx/pkg/PLIST
> devel/libofx/pkg/PFRAG.shared
> devel/libofx/Makefile
> devel/libofx/distinfo
>
> Also build and install in this order:
>
> deinstall openjade (if you have it installed)
> openjade (the one included here)
> opensp
> libofx
> kmymoney2
>
> TESTED:
>
> build and run on i386 and amd64
>
> --
> ======================================================================
> William Karh "Now look what you made me do."
> wkarhyahoo.com -- Ike Turner
>
>
> !DSPAM:47a25c9d348832085720509!