diff options
author | gusi <gusi@df743ca5-7f9a-e211-a948-0013205c9059> | 2014-03-27 06:35:18 +0800 |
---|---|---|
committer | gusi <gusi@df743ca5-7f9a-e211-a948-0013205c9059> | 2014-03-27 06:35:18 +0800 |
commit | 38d18a23805b724ea1788b39c6478bcfd0226113 (patch) | |
tree | 1ab786a314584f4e80a0f6c4c46459a0c5e3897b | |
parent | ff97f9f2fc56434bf4a5502d34b1f85a3765d3cb (diff) | |
download | marcuscom-ports-experimental-38d18a23805b724ea1788b39c6478bcfd0226113.tar.gz marcuscom-ports-experimental-38d18a23805b724ea1788b39c6478bcfd0226113.tar.zst marcuscom-ports-experimental-38d18a23805b724ea1788b39c6478bcfd0226113.zip |
Changes to try to allow py-gobject3 for Python2 and Python3 to coexist.
Create pygoject3-common which installs the header and the .pc file for py-gobject3 (Python2)
and py3-gobject3 (Python3)
Prevent devel/py[3]-gobject3 from installing the header and the .pc files.
When installing devel/py[3]-gobject3, pull in py-gobject3-common.
To track py[3]-gobject3 in bsd.gnome.mk without using %%PYTHON_SITELIB%% in bsd.gnome.mk we
create fake files under share/py[3]-gobject3/
Discussed and reviewd by: kwm
git-svn-id: svn://creme-brulee.marcuscom.com/ports-experimental/trunk@19379 df743ca5-7f9a-e211-a948-0013205c9059
-rw-r--r-- | Mk/bsd.gnome.mk | 2 | ||||
-rw-r--r-- | devel/py-gobject3/Makefile | 6 | ||||
-rw-r--r-- | devel/py3-gobject3/Makefile | 10 | ||||
-rw-r--r-- | devel/py3-gobject3/pkg-plist | 5 | ||||
-rw-r--r-- | devel/pygobject3-common/Makefile | 49 | ||||
-rw-r--r-- | devel/pygobject3-common/pkg-descr | 4 | ||||
-rw-r--r-- | devel/pygobject3-common/pkg-plist | 3 |
7 files changed, 70 insertions, 9 deletions
diff --git a/Mk/bsd.gnome.mk b/Mk/bsd.gnome.mk index 0ad424e..a3e1283 100644 --- a/Mk/bsd.gnome.mk +++ b/Mk/bsd.gnome.mk @@ -472,7 +472,7 @@ pygobject_BUILD_DEPENDS= pygobject-codegen-2.0:${PORTSDIR}/devel/py-gobject pygobject_RUN_DEPENDS= pygobject-codegen-2.0:${PORTSDIR}/devel/py-gobject pygobject_USE_GNOME_IMPL= glib20 -py3gobject3_DETECT= ${LOCALBASE}/libdata/pkgconfig/pygobject-3.0.pc +py3gobject3_DETECT= ${LOCALBASE}/share/py3gobject3/.keep py3gobject3_BUILD_DEPENDS= py3?-gobject3>=0:${PORTSDIR}/devel/py3-gobject3 py3gobject3_RUN_DEPENDS= py3?-gobject3>=0:${PORTSDIR}/devel/py3-gobject3 py3gobject3_USE_GNOME_IMPL= glib20 diff --git a/devel/py-gobject3/Makefile b/devel/py-gobject3/Makefile index 605884f..54adf14 100644 --- a/devel/py-gobject3/Makefile +++ b/devel/py-gobject3/Makefile @@ -4,7 +4,7 @@ PORTNAME= gobject PORTVERSION= 3.12.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel python MASTER_SITES= GNOME MASTER_SITE_SUBDIR= sources/pygobject/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} @@ -21,7 +21,8 @@ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/pycairo.pc:${PORTSDIR}/graphics/py-cairo LIB_DEPENDS= libffi.so:${PORTSDIR}/devel/libffi -RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/pycairo.pc:${PORTSDIR}/graphics/py-cairo +RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/pycairo.pc:${PORTSDIR}/graphics/py-cairo \ + pygobject3-common:${PORTSDIR}/devel/pygobject3-common USES= gmake pathfix pkgconfig tar:xz USE_GNOME= glib20 introspection @@ -48,7 +49,6 @@ post-install: @${RM} -f ${STAGEDIR}${PREFIX}/include/pygobject-3.0/pygobject.h \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig/pygobject-3.0.pc @${RMDIR} ${STAGEDIR}${PREFIX}/include/pygobject-3.0 - # we need a file to use in bsd.gnome.mk _DETECT line. @${MKDIR} ${STAGEDIR}${PREFIX}/share/pygobject3/ @${TOUCH} ${STAGEDIR}${PREFIX}/share/pygobject3/.keep diff --git a/devel/py3-gobject3/Makefile b/devel/py3-gobject3/Makefile index 23fc623..2784754 100644 --- a/devel/py3-gobject3/Makefile +++ b/devel/py3-gobject3/Makefile @@ -4,6 +4,7 @@ PORTNAME= gobject PORTVERSION= 3.12.0 +PORTREVISION= 1 CATEGORIES= devel python MASTER_SITES= GNOME MASTER_SITE_SUBDIR= sources/pygobject/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} @@ -20,7 +21,8 @@ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/py3cairo.pc:${PORTSDIR}/graphics/py3-cairo LIB_DEPENDS= libffi.so:${PORTSDIR}/devel/libffi -RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/py3cairo.pc:${PORTSDIR}/graphics/py3-cairo +RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/py3cairo.pc:${PORTSDIR}/graphics/py3-cairo \ + pygobject3-common>=0:${PORTSDIR}/devel/pygobject3-common USES= gmake pathfix pkgconfig tar:xz USE_GNOME= glib20 introspection @@ -45,6 +47,10 @@ post-patch: post-install: @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/gi/*.so - + @${RM} -f ${STAGEDIR}${PREFIX}/include/pygobject-3.0/pygobject.h \ + ${STAGEDIR}${PREFIX}/libdata/pkgconfig/pygobject-3.0.pc + @${RMDIR} ${STAGEDIR}${PREFIX}/include/pygobject-3.0 + @${MKDIR} ${STAGEDIR}${PREFIX}/share/py3gobject3/ + @${TOUCH} ${STAGEDIR}${PREFIX}/share/py3gobject3/.keep .include <bsd.port.post.mk> diff --git a/devel/py3-gobject3/pkg-plist b/devel/py3-gobject3/pkg-plist index 4ba50c4..1c45d7b 100644 --- a/devel/py3-gobject3/pkg-plist +++ b/devel/py3-gobject3/pkg-plist @@ -1,4 +1,3 @@ -include/pygobject-3.0/pygobject.h %%PYTHON_SITELIBDIR%%/gi/__init__.py %%PYTHON_SITELIBDIR%%/gi/__pycache__/__init__.cpython-33.pyc %%PYTHON_SITELIBDIR%%/gi/__pycache__/__init__.cpython-33.pyo @@ -76,7 +75,8 @@ include/pygobject-3.0/pygobject.h %%PYTHON_SITELIBDIR%%/pygtkcompat/__pycache__/pygtkcompat.cpython-33.pyo %%PYTHON_SITELIBDIR%%/pygtkcompat/generictreemodel.py %%PYTHON_SITELIBDIR%%/pygtkcompat/pygtkcompat.py -libdata/pkgconfig/pygobject-3.0.pc +share/py3gobject3/.keep +@dirrm share/py3gobject3 @dirrm %%PYTHON_SITELIBDIR%%/pygtkcompat/__pycache__ @dirrm %%PYTHON_SITELIBDIR%%/pygtkcompat @dirrm %%PYTHON_SITELIBDIR%%/gi/repository/__pycache__ @@ -87,4 +87,3 @@ libdata/pkgconfig/pygobject-3.0.pc @dirrm %%PYTHON_SITELIBDIR%%/gi/_gobject @dirrm %%PYTHON_SITELIBDIR%%/gi/__pycache__ @dirrm %%PYTHON_SITELIBDIR%%/gi -@dirrmtry include/pygobject-3.0 diff --git a/devel/pygobject3-common/Makefile b/devel/pygobject3-common/Makefile new file mode 100644 index 0000000..6e637f3 --- /dev/null +++ b/devel/pygobject3-common/Makefile @@ -0,0 +1,49 @@ +# Created by: Gustau Perez i Querol <gustau.perez@gmail.com> +# $FreeBSD$ +# $MCom$ + +PORTNAME= pygobject +PORTVERSION= 3.12.0 +PORTREVISION= 2 +CATEGORIES= devel python +MASTER_SITES= GNOME +MASTER_SITE_SUBDIR= sources/pygobject/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} +PKGNAMESUFFIX= 3-common +DISTNAME= pygobject-${PORTVERSION} +DIST_SUBDIR= gnome3 + +MAINTAINER= gnome@FreeBSD.org +COMMENT= Common files for the Python bindings for GObject + +LICENSE= LGPL21 +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/pycairo.pc:${PORTSDIR}/graphics/py-cairo + +USES= gmake pathfix pkgconfig tar:xz +USE_PYTHON_BUILD= 2 +USE_GNOME= glib20 introspection +GNU_CONFIGURE= yes +USE_LDCONFIG= yes + +# this port doesn't work with py-gobject < 2.28.6_2, clungle below +CONFLICTS= py*-gtk-0* py*-gobject-2.*.[0-6] py*-gobject-2.*.[7-9] \ + py*-gobject-2.*.6_1 + +.include <bsd.port.pre.mk> + +post-patch: + @${REINPLACE_CMD} -e 's|SUBDIRS = examples gi tests|SUBDIRS = examples gi|g' \ + ${WRKSRC}/Makefile.in + +do-build: + ${DO_NADA} + +do-install: + ${MKDIR} ${STAGEDIR}${PREFIX}/include/pygobject-3.0/ + ${INSTALL_DATA} ${WRKSRC}/gi/pygobject.h \ + ${STAGEDIR}${PREFIX}/include/pygobject-3.0/pygobject.h + ${INSTALL_DATA} ${WRKSRC}/pygobject-3.0.pc \ + ${STAGEDIR}${PREFIX}/libdata/pkgconfig/pygobject-3.0.pc + +.include <bsd.port.post.mk> diff --git a/devel/pygobject3-common/pkg-descr b/devel/pygobject3-common/pkg-descr new file mode 100644 index 0000000..eded7fc --- /dev/null +++ b/devel/pygobject3-common/pkg-descr @@ -0,0 +1,4 @@ +PyGObject provides a convenient wrapper for the GObject+ library for use +in Python programs, and takes care of many of the boring details such as +managing memory and type casting. When combined with PyGTK, PyORBit and +gnome-python, it can be used to write full featured Gnome applications. diff --git a/devel/pygobject3-common/pkg-plist b/devel/pygobject3-common/pkg-plist new file mode 100644 index 0000000..39dca2f --- /dev/null +++ b/devel/pygobject3-common/pkg-plist @@ -0,0 +1,3 @@ +include/pygobject-3.0/pygobject.h +libdata/pkgconfig/pygobject-3.0.pc +@dirrm include/pygobject-3.0 |