summaryrefslogblamecommitdiffstats
path: root/devel/gir-repository/bsd.gir.mk
blob: 4d253e9e6b5ec19e5575aa54e5900358f950f92b (plain) (tree)
1
2
3

                              
                 










































































                                                                    
                                                                                    













































                                                                                       
                                                         


















































































































































                                                                                                                  
PORTNAME=   gir-repository
PORTVERSION=    0.6.5
PORTREVISION?=  3

MAINTAINER= gnome@FreeBSD.org

GIRDIR=     ${LOCALBASE}/share/gir-1.0

atk_CATEGORY=   accessibility
atk_GIR=    Atk-1.0

pango_CATEGORY= x11-toolkits
pango_GIR=  Pango-1.0

poppler_CATEGORY=   graphics
poppler_GIR=    Poppler-0.8

gtk20_CATEGORY= x11-toolkits
gtk20_GIR=  Gtk-2.0
gtk20_GIR_TMPL= gtk

webkit_CATEGORY=    www
webkit_GIR= WebKit-1.0

libsoup_CATEGORY=   devel
libsoup_GIR=    Soup-2.4
libsoup_GIR_TMPL=   soup

dbus_CATEGORY=  devel
dbus_GIR=   DBus-1.0

gconf2_CATEGORY=    devel
gconf2_GIR= GConf-2.0

babl_CATEGORY=  x11
babl_GIR=   Babl-0.0

nautilus_CATEGORY=  x11-fm
nautilus_GIR=   Nautilus-1.0

gnomekeyring_CATEGORY=  security
gnomekeyring_GIR=   GnomeKeyring-2.0

libnotify_CATEGORY= devel
libnotify_GIR=  Notify-0.4

gstreamer_CATEGORY= multimedia
gstreamer_GIR=  Gst-0.10

gtksourceview2_CATEGORY=    x11-toolkits
gtksourceview2_GIR= GtkSource-2.2

vte_CATEGORY=   x11-toolkits
vte_GIR=    Vte-1.0

unique_CATEGORY=    x11-toolkits
unique_GIR= Unique-1.0

avahi_CATEGORY= net
avahi_GIR=  Avahi-0.6

gnomemenus_CATEGORY=    x11
gnomemenus_GIR= GMenu-2.0

libwnck_CATEGORY=   x11-toolkits
libwnck_GIR=    Wnck-1.0

goocanvas_CATEGORY= graphics
goocanvas_GIR=  GooCanvas-0.10

.if defined(PKGNAMESUFFIX)

MASTER_SITES=   GNOME
DIST_SUBDIR=    gnome2

COMMENT?=   Introspection information for ${GIR_NAME}

BUILD_DEPENDS=  g-ir-scanner:${PORTSDIR}/devel/gobject-introspection
RUN_DEPENDS=    ${GIRDIR}/Everything-1.0.gir:${PORTSDIR}/devel/gobject-introspection

USE_BZIP2=  yes
GNU_CONFIGURE=  yes
USE_GMAKE=  yes
USE_GNOME=  gnomehack pkgconfig

GIR_NAME=   ${PKGNAMESUFFIX:S/-//g}
DEP_NAMES=  ${GIR_NAME}

GIRDIR_REL= ${GIRDIR:S,^${LOCALBASE}/,,}
TYPELIBDIR_REL= lib/girepository-1.0

PLIST=      ${NONEXISTENT}

_USE_GIR_ALL=   dbus atk pango pangoxft poppler gtk gconf soup babl nautilusextension \
        gnomekeyring webkit notify gnio clutter clutter_gtk clutter_cairo \
        gstreamer gstbufferlist_h gstreamer_plugins_base gtksourceview vte \
        goocanvas gssdp gupnp avahi unique gmenu wnck

.if ${GIR_NAME} == "atk"
USE_GNOME+= atk
GIR_FILES=  Atk-1.0
.endif

.if ${GIR_NAME} == "pango"
USE_GNOME+= pango
GIR_FILES=  Pango-1.0 PangoFT2-1.0 PangoCairo-1.0 PangoX-1.0 PangoXft-1.0
DEP_NAMES+= pangoxft
.endif

.if ${GIR_NAME} == "poppler"
LIB_DEPENDS+=   poppler-glib.4:${PORTSDIR}/graphics/poppler-gtk
USE_GIR=    gtk20 pango
GIR_FILES=  Poppler-0.8
CLEAR_DEPS+=    Gdk-2.0
.endif

.if ${GIR_NAME} == "gtk20"
USE_GNOME+= gtk20
USE_GIR=    atk pango
GIR_FILES=  Gdk-2.0 Gtk-2.0 GdkPixbuf-2.0
LIB_FILES=  Gdk Gtk
DEP_NAMES=  gtk
.endif

.if ${GIR_NAME} == "webkit"
LIB_DEPENDS+=   webkit-1.0.13:${PORTSDIR}/www/webkit-gtk2
USE_GIR=    gtk20 libsoup
GIR_FILES=  WebKit-1.0 JSCore-1.0
.endif

.if ${GIR_NAME} == "libsoup"
LIB_DEPENDS+=   soup-2.4.1:${PORTSDIR}/devel/libsoup
GIR_FILES=  Soup-2.4
DEP_NAMES=  soup
.endif

.if ${GIR_NAME} == "gconf2"
USE_GNOME+= gconf2
GIR_FILES=  GConf-2.0
DEP_NAMES=  gconf
.endif

.if ${GIR_NAME} == "babl"
LIB_DEPENDS+=   babl-0.0.0:${PORTSDIR}/x11/babl
GIR_FILES=  Babl-0.0
.endif

.if ${GIR_NAME} == "nautilus"
USE_GNOME+= nautilus2
USE_GIR=    gtk20
GIR_FILES=  Nautilus-1.0
DEP_NAMES=  nautilusextension
.endif

.if ${GIR_NAME} == "gnomekeyring"
LIB_DEPENDS+=   gnome-keyring.0:${PORTSDIR}/security/gnome-keyring
GIR_FILES=  GnomeKeyring-2.0
.endif

.if ${GIR_NAME} == "libnotify"
LIB_DEPENDS+=   notify.1:${PORTSDIR}/devel/libnotify
USE_GIR=    gtk20
GIR_FILES=  Notify-0.4
DEP_NAMES=  notify
.endif

.if ${GIR_NAME} == "dbus"
LIB_DEPENDS+=   dbus-glib-1.2:${PORTSDIR}/devel/dbus-glib
GIR_FILES=  DBus-1.0
LIB_FILES=  DBus
.endif

.if ${GIR_NAME} == "gstreamer"
USE_GSTREAMER=  yes bad
DEP_NAMES+= gstbufferlist_h gstreamer_plugins_base
GIR_FILES=  Gst-0.10 GstBase-0.10 GstNet-0.10 GstController-0.10 \
        GstAudio-0.10 GstFft-0.10 GstInterfaces-0.10 GstNetbuffer-0.10 \
        GstPbutils-0.10 GstRiff-0.10 GstRtp-0.10 GstRtsp-0.10 \
        GstSdp-0.10 GstTag-0.10 GstVideo-0.10
.endif

.if ${GIR_NAME} == "gtksourceview2"
USE_GNOME+= gtksourceview2
USE_GIR=    gtk20
GIR_FILES=  GtkSource-2.2
DEP_NAMES=  gtksourceview
.endif

.if ${GIR_NAME} == "vte"
USE_GNOME+= vte
USE_GIR=    gtk20
GIR_FILES=  Vte-1.0
.endif

.if ${GIR_NAME} == "unique"
LIB_DEPENDS+=   unique-1.0.2:${PORTSDIR}/x11-toolkits/unique
USE_GIR=    gtk20
GIR_FILES=  Unique-1.0
.endif

.if ${GIR_NAME} == "avahi"
LIB_DEPENDS+=   avahi-gobject.0:${PORTSDIR}/net/avahi-app
GIR_FILES=  Avahi-0.6 AvahiCore-0.6
.endif

.if ${GIR_NAME} == "gnomemenus"
USE_GNOME+= gnomemenus
USE_GIR=    gtk20
GIR_FILES=  GMenu-2.0
DEP_NAMES=  gmenu
.endif

.if ${GIR_NAME} == "libwnck"
USE_GNOME+= libwnck
USE_GIR=    gtk20
GIR_FILES=  Wnck-1.0
DEP_NAMES=  wnck
.endif

.if ${GIR_NAME} == "goocanvas"
LIB_DEPENDS+=   goocanvas.3:${PORTSDIR}/graphics/goocanvas
USE_GIR=    gtk20
GIR_FILES=  GooCanvas-0.10
.endif

. for component in ${USE_GIR:C/^([^:]+).*/\1/}
CLEAR_DEPS+=    ${${component}_GIR}
BUILD_DEPENDS+= ${GIRDIR}/${${component}_GIR}.gir:${PORTSDIR}/${${component}_CATEGORY}/gir-repository-${component}
RUN_DEPENDS+=   ${GIRDIR}/${${component}_GIR}.gir:${PORTSDIR}/${${component}_CATEGORY}/gir-repository-${component}
. endfor

pre-patch:
# disable all components
.for component in ${_USE_GIR_ALL}
    @${REINPLACE_CMD} -e 's|have_${component}=true|have_${component}=false|g' \
        ${WRKSRC}/configure
.endfor
.if defined(DEP_NAMES)
# enable components
.for component in ${DEP_NAMES}
    @${REINPLACE_CMD} -e 's|have_${component}=false|have_${component}=true|g' \
        ${WRKSRC}/configure
.endfor
.endif

post-configure:
.if defined(CLEAR_DEPS)
# clear Makefile targets
. for dep in ${CLEAR_DEPS}
    @${REINPLACE_CMD} -e 's|${dep}.gir||g' \
        ${WRKSRC}/gir/Makefile
. endfor
.endif

.if !target(post-install-script)
post-install-script:
# build plist
.for gir in ${GIR_FILES}
    @${ECHO} ${TYPELIBDIR_REL}/${gir}.typelib >> ${TMPPLIST}
    @${ECHO} ${GIRDIR_REL}/${gir}.gir >> ${TMPPLIST}
.endfor
.for lib in ${LIB_FILES}
    @${ECHO} lib/libgirepo-${lib}-custom.a >> ${TMPPLIST}
    @${ECHO} lib/libgirepo-${lib}-custom.la >> ${TMPPLIST}
    @${ECHO} lib/libgirepo-${lib}-custom.so >> ${TMPPLIST}
.endfor
    @${ECHO_CMD} "@unexec rmdir %D/${TYPELIBDIR_REL} 2>/dev/null || true" >> ${TMPPLIST}
    @${ECHO_CMD} "@unexec rmdir %D/${GIRDIR_REL} 2>/dev/null || true" >> ${TMPPLIST}
.endif

.endif

.include <bsd.port.mk>