devel/thrift*: fix double installation of cmake files

This will resolve the issue that you cannot install the
compile (devel/thrift) with the c-binding (devel/thrift-c_glib.

Reported by:	marklmi@yahoo.com
This commit is contained in:
Matthias Fechner 2025-03-24 18:15:42 +02:00
parent 1dc6ac8d8d
commit 7b8357c02d
7 changed files with 32 additions and 12 deletions

View file

@ -4,21 +4,22 @@ PORTEPOCH= 1
CATEGORIES= devel
MASTER_SITES= APACHE/thrift/${PORTVERSION}
DISTNAME= thrift-${PORTVERSION}
PKGNAMESUFFIX= -c_glib
MAINTAINER= ports@FreeBSD.org
COMMENT= C glib interface to Thrift
WWW= https://thrift.apache.org/
PKGNAMESUFFIX= -c_glib
BUILDIR= ${WRKDIR}/${DISTNAME}/lib/c_glib
DISTINFO_FILE= ${.CURDIR}/../thrift/distinfo
LIB_DEPENDS= libevent.so:devel/libevent
USES= bison cmake compiler:c++11-lang cpe gnome pathfix \
pkgconfig ssl
CPE_VENDOR= apache
CMAKE_ON= BUILD_C_GLIB BUILD_SHARED_LIBS
CMAKE_ON= BUILD_C_GLIB
CMAKE_OFF= BUILD_CPP BUILD_HASKELL BUILD_JAVA BUILD_JAVASCRIPT \
BUILD_NODEJS BUILD_PYTHON
USE_GNOME= glib20

View file

@ -37,8 +37,6 @@ lib/libthrift_c_glib.so
lib/libthrift_c_glib.so.%%PORTVERSION%%
lib/libthrift_c_glib_zlib.so
lib/libthrift_c_glib_zlib.so.%%PORTVERSION%%
lib/cmake/thrift/ThriftConfig.cmake
lib/cmake/thrift/ThriftConfigVersion.cmake
lib/cmake/thrift/thrift_c_glibTargets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/thrift/thrift_c_glibTargets.cmake
lib/cmake/thrift/thrift_c_glib_zlibTargets-%%CMAKE_BUILD_TYPE%%.cmake

View file

@ -16,16 +16,17 @@ BROKEN_i386= undefined reference to 'boost::atomics::detail::lockpool::scoped_lo
LIB_DEPENDS= libboost_system.so:devel/boost-libs \
libevent.so:devel/libevent
DISTINFO_FILE= ${.CURDIR}/../thrift/distinfo
USES= bison cmake pkgconfig compiler:c++11-lang cpe \
pathfix ssl
CPE_VENDOR= apache
USE_LDCONFIG= yes
CMAKE_ON= BUILD_CPP
CMAKE_OFF= BUILD_C_GLIB BUILD_JAVA BUILD_JAVASCRIPT BUILD_NODEJS BUILD_PYTHON BUILD_HASKELL BUILD_TESTING
MAKE_JOBS_UNSAFE= yes
DISTINFO_FILE= ${.CURDIR}/../thrift/distinfo
PLIST_SUB= PORTVERSION="${THRIFT_PORTVERSION}"
CMAKE_ON= BUILD_CPP BUILD_SHARED_LIBS
CMAKE_OFF= BUILD_C_GLIB BUILD_JAVA BUILD_JAVASCRIPT BUILD_NODEJS BUILD_PYTHON BUILD_HASKELL
.include <bsd.port.pre.mk>

View file

@ -105,8 +105,6 @@ lib/libthriftnb.so.%%PORTVERSION%%
lib/libthriftz.so
lib/libthriftz.so.0
lib/libthriftz.so.%%PORTVERSION%%
lib/cmake/thrift/ThriftConfig.cmake
lib/cmake/thrift/ThriftConfigVersion.cmake
lib/cmake/thrift/thriftTargets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/thrift/thriftTargets.cmake
lib/cmake/thrift/thriftnbTargets-%%CMAKE_BUILD_TYPE%%.cmake

View file

@ -11,6 +11,8 @@ WWW= https://thrift.apache.org/
LICENSE= APACHE20
LIB_DEPENDS= libevent.so:devel/libevent
USES= bison cmake compiler:c++11-lang cpe pkgconfig
CPE_VENDOR= apache
USE_LDCONFIG= yes
@ -20,7 +22,6 @@ USE_LDCONFIG= yes
# For Perl support, use devel/p5-Thrift.
# For Python support, use devel/py-thrift.
# For Ruby support, use devel/rubygem-thrift.
# For PHP support, use devel/php5-thrift.
# For nodejs support, use devel/node-thrift.
# Other languages are not yet supported, please feel free to contribute
# using one of the leaf ports as an example.

View file

@ -4,7 +4,27 @@
# see $PORTSDIR/devel/thrift for examples
THRIFT_PORTVERSION= 0.16.0
LICENSE= APACHE20
MASTER_SITE_APACHE+= https://archive.apache.org/dist/%SUBDIR%/
CONFIGURE_ARGS+= \
--without-tests
# Make sure we install thrift compiler related files not with child packages
.if !empty(PKGNAMESUFFIX) || ${PORTNAME} != "thrift"
_USES_install+= 900:thrift-post-install
BUILD_DEPENDS+= thrift>=${PORTVERSION}:devel/thrift
RUN_DEPENDS+= thrift>=${PORTVERSION}:devel/thrift
CMAKE_ARGS+= -DTHRIFT_COMPILER=${PREFIX}/bin/thrift
CMAKE_ON+= BUILD_SHARED_LIBS
CMAKE_OFF+= BUILD_COMPILER
thrift-post-install:
${RM} ${STAGEDIR}${PREFIX}/lib/cmake/thrift/FindLibevent.cmake
${RM} ${STAGEDIR}${PREFIX}/lib/cmake/thrift/ThriftConfig.cmake
${RM} ${STAGEDIR}${PREFIX}/lib/cmake/thrift/ThriftConfigVersion.cmake
.else
MAKE_ON+= BUILD_COMPILER
CMAKE_OFF+= BUILD_SHARED_LIB
.endif

View file

@ -1,3 +1,4 @@
bin/thrift
lib/cmake/thrift/FindLibevent.cmake
lib/cmake/thrift/ThriftConfig.cmake
lib/cmake/thrift/ThriftConfigVersion.cmake