Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Oct 2013 17:31:55 +0000 (UTC)
From:      Tijl Coosemans <tijl@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r331503 - in head/net-p2p/linuxdcpp: . files
Message-ID:  <201310241731.r9OHVtUK064100@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tijl
Date: Thu Oct 24 17:31:54 2013
New Revision: 331503
URL: http://svnweb.freebsd.org/changeset/ports/331503

Log:
  - Fix build on FreeBSD 10 (iconv, libc++).
  - USES=scons.
  - Add support for startup notifications.
  
  PR:		ports/183163
  Submitted by:	Vladimir Kondratiev <wulf@mail.mipt.ru>

Added:
  head/net-p2p/linuxdcpp/files/patch-libc++   (contents, props changed)
Modified:
  head/net-p2p/linuxdcpp/Makefile
  head/net-p2p/linuxdcpp/files/patch-SConstruct   (contents, props changed)

Modified: head/net-p2p/linuxdcpp/Makefile
==============================================================================
--- head/net-p2p/linuxdcpp/Makefile	Thu Oct 24 17:27:26 2013	(r331502)
+++ head/net-p2p/linuxdcpp/Makefile	Thu Oct 24 17:31:54 2013	(r331503)
@@ -2,12 +2,12 @@
 
 PORTNAME=	linuxdcpp
 PORTVERSION=	1.1.0
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	net-p2p
 MASTER_SITES=	http://launchpadlibrarian.net/69733951/
 
 MAINTAINER=	ports@FreeBSD.org
-COMMENT=	A port of the DC++ Direct Connect client to Unix-like systems
+COMMENT=	Port of the DC++ Direct Connect client to Unix-like systems
 
 LICENSE=	GPLv2
 
@@ -15,16 +15,28 @@ BUILD_DEPENDS=	${LOCALBASE}/include/boos
 
 USE_BZIP2=	yes
 USE_GNOME=	libglade2
-USES=		iconv pkgconfig
-USE_SCONS=	yes
+USES=		iconv pkgconfig scons
 USE_OPENSSL=	yes
 PORTDOCS=	*
+DESTDIRNAME=	FAKE_ROOT
 
-SCONS_BUILDENV=	${SCONS_ENV}
+OPTIONS_DEFINE=	NOTIFY
+OPTIONS_DEFAULT=NOTIFY
 
 .if defined(WITH_DEBUG)
-SCONS_ARGS=	debug=1
+MAKE_ARGS+=	debug=1
 .endif
 
-NO_STAGE=	yes
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MNOTIFY}
+LIB_DEPENDS+=	libnotify.so:${PORTSDIR}/devel/libnotify
+.else
+MAKE_ARGS+=	libnotify=0
+.endif
+
+post-patch:
+	@${REINPLACE_CMD} -e "s/'iconv'/'${ICONV_LIB:S/-l//}'/" \
+		${WRKSRC}/SConstruct
+
 .include <bsd.port.mk>

Modified: head/net-p2p/linuxdcpp/files/patch-SConstruct
==============================================================================
--- head/net-p2p/linuxdcpp/files/patch-SConstruct	Thu Oct 24 17:27:26 2013	(r331502)
+++ head/net-p2p/linuxdcpp/files/patch-SConstruct	Thu Oct 24 17:31:54 2013	(r331503)
@@ -9,7 +9,15 @@
  }
  
  # ----------------------------------------------------------------------
-@@ -139,6 +139,12 @@
+@@ -106,6 +106,7 @@
+ vars.AddVariables(
+ 	BoolVariable('debug', 'Compile the program with debug information', 0),
+ 	BoolVariable('release', 'Compile the program with optimizations', 0),
++	BoolVariable('libnotify', 'Enable notifications through libnotify', 1),
+ 	BoolVariable('profile', 'Compile the program with profiling information', 0),
+ 	PathVariable('PREFIX', 'Compile the program with PREFIX as the root for installation', '/usr/local', PathVariable.PathIsDir),
+ 	('FAKE_ROOT', 'Make scons install the program under a fake root', '')
+@@ -139,6 +140,12 @@
  if os.environ.has_key('CFLAGS'):
  	env['CFLAGS'] = os.environ['CFLAGS'].split()
  
@@ -22,3 +30,26 @@
  env['CPPDEFINES'] = [] # Initialize as a list so Append doesn't concat strings
  
  env.SConsignFile('build/sconf/.sconsign')
+@@ -263,14 +270,15 @@
+ 		conf.env.Append(CPPDEFINES = 'HAVE_IFADDRS_H')
+ 
+ 	# TODO: Implement a plugin system so libnotify doesn't have compile-time dependencies
+-	if not conf.CheckPKG('libnotify >= 0.4.1'):
+-		print '\tlibnotify >= 0.4.1 not found, disabling notifications.'
+-		print '\tNote: You might have the lib but not the headers'
+-	else:
+-		conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY')
+-		conf.env.ParseConfig('pkg-config --libs libnotify')
+-		if conf.CheckPKG('libnotify >= 0.7'):
+-			conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY_0_7')
++	if conf.env.get('libnotify'):
++		if not conf.CheckPKG('libnotify >= 0.4.1'):
++			print '\tlibnotify >= 0.4.1 not found, disabling notifications.'
++			print '\tNote: You might have the lib but not the headers'
++		else:
++			conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY')
++			conf.env.ParseConfig('pkg-config --libs libnotify')
++			if conf.CheckPKG('libnotify >= 0.7'):
++				conf.env.Append(CPPDEFINES = 'HAVE_LIBNOTIFY_0_7')
+ 
+ 	conf.CheckBZRRevision()

Added: head/net-p2p/linuxdcpp/files/patch-libc++
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/linuxdcpp/files/patch-libc++	Thu Oct 24 17:31:54 2013	(r331503)
@@ -0,0 +1,64 @@
+--- dcpp/stdinc.h.orig
++++ dcpp/stdinc.h
+@@ -123,7 +123,7 @@
+ #include <boost/scoped_array.hpp>
+ #include <boost/noncopyable.hpp>
+ 
+-#if defined(_MSC_VER) || defined(_STLPORT_VERSION)
++#if defined(_MSC_VER) || defined(_STLPORT_VERSION) || defined(_LIBCPP_VERSION)
+ 
+ #include <unordered_map>
+ #include <unordered_set>
+@@ -139,5 +139,8 @@
+ 
++#ifdef _LIBCPP_VERSION
++namespace std { namespace tr1 { using namespace std; }}
++#endif
+ namespace dcpp {
+ using namespace std;
+ using namespace std::tr1;
+ }
+--- dcpp/CID.h.orig	2011-04-17 21:57:09.000000000 +0400
++++ dcpp/CID.h	2013-09-13 00:50:16.544145469 +0400
+@@ -57,7 +57,10 @@
+ 
+ } // namespace dcpp
+ 
+-namespace std { namespace tr1 {
++namespace std {
++#ifndef _LIBCPP_VERSION
++namespace tr1 {
++#endif
+ template<>
+ struct hash<dcpp::CID> {
+ 	size_t operator()(const dcpp::CID& rhs) const {
+@@ -65,6 +68,8 @@
+ 	}
+ };
++#ifndef _LIBCPP_VERSION
+ }
++#endif
+ }
+ 
+ #endif // !defined(CID_H)
+--- dcpp/HashValue.h.orig	2011-04-17 21:57:09.000000000 +0400
++++ dcpp/HashValue.h	2013-09-13 00:48:18.173057104 +0400
+@@ -46,12 +46,17 @@
+ 
+ } // namespace dcpp
+ 
+-namespace std { namespace tr1 {
++namespace std {
++#ifndef _LIBCPP_VERSION
++namespace tr1 {
++#endif
+ template<typename T>
+ struct hash<dcpp::HashValue<T> > {
+ 	size_t operator()(const dcpp::HashValue<T>& rhs) const { return *(size_t*)rhs.data; }
+ };
++#ifndef _LIBCPP_VERSION
+ }
++#endif
+ }
+ 
+ #endif // !defined(HASH_VALUE_H)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310241731.r9OHVtUK064100>