aboutsummaryrefslogtreecommitdiffstats
path: root/finance/gnucash/Makefile
blob: 0ee6b1a578d7fc37da2da8f79744af9450834052 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# $FreeBSD$
#   $MCom: ports/finance/gnucash/Makefile,v 1.26 2008/12/31 03:25:18 mezz Exp $

PORTNAME=   gnucash
PORTVERSION=    2.6.19
PORTREVISION=   1
CATEGORIES= finance gnome
MASTER_SITES=   SF/${PORTNAME}/${PORTNAME}%20%28stable%29/${PORTVERSION}

MAINTAINER= madpilot@FreeBSD.org
COMMENT=    Quicken-like money and finance manager

LICENSE=    GPLv2 GPLv3
LICENSE_COMB=   dual

LIB_DEPENDS=    libgnome-keyring.so:security/libgnome-keyring \
        libwebkitgtk-1.0.so:www/webkit-gtk2 \
        libgoffice-0.8.so:devel/goffice \
        libfontconfig.so:x11-fonts/fontconfig \
        libfreetype.so:print/freetype2 \
        libsecret-1.so:security/libsecret \
        libsoup-2.4.so:devel/libsoup
RUN_DEPENDS=    p5-libwww>=0:www/p5-libwww \
        p5-Date-Manip>=0:devel/p5-Date-Manip \
        p5-Finance-Quote>=0:finance/p5-Finance-Quote

FLAVORS=        guile2 guile1

guile1_PKGNAMESUFFIX=   -guile1
guile1_LIB_DEPENDS=     libguile.so:lang/guile \
            libgmp.so:math/gmp \
            libltdl.so:devel/libltdl
guile1_BUILD_DEPENDS=   slib-guile>0:lang/slib-guile
guile1_RUN_DEPENDS= slib-guile>0:lang/slib-guile
guile1_CONFLICTS_INSTALL=   gnucash-[0-9]*
guile2_LIB_DEPENDS=     libguile-2.0.so:lang/guile2 \
            libgc-threaded.so:devel/boehm-gc-threaded
guile2_BUILD_DEPENDS=   slib-guile2>0:lang/slib-guile2
guile2_RUN_DEPENDS= slib-guile2>0:lang/slib-guile2
guile2_CONFLICTS_INSTALL=   gnucash-guile1-[0-9]*

OPTIONS_DEFINE= AQBANKING OFX DATABASE LOCALE_TAX PYTHON GTKMM DOCS

AQBANKING_DESC= AqBanking support (HBCI/OpenHBCI)
OFX_DESC=   OFX support
DATABASE_DESC=  Enable SQL database backends
LOCALE_TAX_DESC=    Enable localized tax categories
GTKMM_DESC= Enable GTKMM based UI

OPTIONS_SUB=        yes
AQBANKING_CONFIGURE_ENABLE=aqbanking
AQBANKING_LIB_DEPENDS=  libgwengui-gtk2.so:devel/gwenhywfar-gtk2 \
            libktoblzcheck.so:finance/ktoblzcheck \
            libaqbanking.so:finance/aqbanking
AQBANKING_VARS=     GLIB_SCHEMAS+=org.gnucash.dialogs.import.hbci.gschema.xml
OFX_CONFIGURE_ENABLE=   ofx
OFX_LIB_DEPENDS=    libofx.so:finance/libofx
OFX_VARS=       GLIB_SCHEMAS+=org.gnucash.dialogs.import.ofx.gschema.xml
DATABASE_CONFIGURE_ENABLE=dbi
DATABASE_BUILD_DEPENDS= libdbi-drivers>=0:databases/libdbi-drivers
DATABASE_LIB_DEPENDS=   libdbi.so:databases/libdbi
DATABASE_RUN_DEPENDS=   libdbi-drivers>=0:databases/libdbi-drivers
DATABASE_CONFIGURE_ON=  --with-dbi-dbd-dir=${LOCALBASE}/lib/dbd
LOCALE_TAX_CONFIGURE_ON=--enable-locale-specific-tax
PYTHON_CONFIGURE_ON=    --enable-python
PYTHON_USES=        python:2.7
GTKMM_USE=      GNOME=gtkmm24
GTKMM_CONFIGURE_ON= --enable-gtkmm
GTKMM_CONFIGURE_OFF=    --disable-gtkmm

USES=       compiler:c++11-lib desktop-file-utils gettext gmake libtool localbase \
        perl5 pkgconfig shebangfix tar:bzip2
USE_XORG=   x11
USE_CXXSTD= c++11
INSTALLS_ICONS= yes
USE_GNOME+= cairo gtk20 intltool libgnomecanvas libxml2 libxslt
GNU_CONFIGURE=  yes
USE_LDCONFIG=   yes
CONFIGURE_ARGS= --disable-error-on-warning \
        --disable-doxygen
SHEBANG_FILES=  src/gnc-test-env.pl src/quotes/gnc-fq-dump
WRKSRC=     ${WRKDIR}/${PORTNAME}-${DISTVERSION}

GLIB_SCHEMAS=   org.gnucash.dialogs.business.gschema.xml \
        org.gnucash.dialogs.checkprinting.gschema.xml \
        org.gnucash.dialogs.commodities.gschema.xml \
        org.gnucash.dialogs.export.csv.gschema.xml \
        org.gnucash.dialogs.gschema.xml \
        org.gnucash.dialogs.import.csv.gschema.xml \
        org.gnucash.dialogs.import.generic.gschema.xml \
        org.gnucash.dialogs.import.qif.gschema.xml \
        org.gnucash.dialogs.reconcile.gschema.xml \
        org.gnucash.dialogs.sxs.gschema.xml \
        org.gnucash.dialogs.totd.gschema.xml \
        org.gnucash.gschema.xml \
        org.gnucash.history.gschema.xml \
        org.gnucash.warnings.gschema.xml \
        org.gnucash.window.pages.account.tree.gschema.xml \
        org.gnucash.window.pages.gschema.xml

.if ${FLAVOR:U} == guile1
CONFIGURE_ARGS+=    --with-guile=1.8
PLIST_SUB+=     GUILE2="@comment "
.elif ${FLAVOR:U${FLAVORS:[1]}} == guile2
CONFIGURE_ARGS+=    --with-guile=2.0
PLIST_SUB+=     GUILE2=""
.endif

.include <bsd.port.pre.mk>

.if ${CHOSEN_COMPILER_TYPE} == gcc
LDFLAGS+=   -lstdc++
.endif

post-install-PYTHON-on:
    @(cd ${STAGEDIR}${PREFIX} \
        && ${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \
        -d ${PYTHONPREFIX_SITELIBDIR} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}/${PORTNAME})
    @(cd ${STAGEDIR}${PREFIX} \
        && ${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py \
        -d ${PYTHONPREFIX_SITELIBDIR} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;}/${PORTNAME})
    @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/gnucash/_gnucash_core_c.so

post-install:
    @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib*so*
    @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/gnucash/lib*.so

.include <bsd.port.post.mk>