svn commit: r355890 - in head: Mk lang/ruby20 lang/ruby20/files lang/ruby21 lang/ruby21/files

Steve Wills swills at FreeBSD.org
Fri May 30 18:34:31 UTC 2014


Author: swills
Date: Fri May 30 18:34:29 2014
New Revision: 355890
URL: http://svnweb.freebsd.org/changeset/ports/355890
QAT: https://qat.redports.org/buildarchive/r355890/

Log:
  - Force use of libreadline from ports rather than base, in order to avoid
    unexpectedly getting readline from ports if it's already installed.
  - Add patch to work with newer libreadline
  - Provide an option to use libedit from ports, avoiding the libedit in base.
  - Note 1: The patch to work with newer libreadline is only applied in the
    libreadline case since it actually breaks building with libedit.
  - Note 2: libreadline is not BSD licensed and while libedit would be
    preferable, it seems to have issues with UTF8 still, see ruby bug 9204. Once
    that's resolved, we can make libedit the default.
  
  PR:		ports/187928 [1] (based on)
  PR:		ports/188077 [2] (based on)
  Submitted by:	Shin-ya Murakami <murashin at gfd-dennou.org> [1]
  Submitted by:	Christoph Moench-Tegeder <cmt at burggraben.net> [2]
  Obtained from:	http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ext/readline/readline.c?r1=43458&r2=45225 (ruby upstream)
  MFH:		2014Q2

Added:
  head/lang/ruby20/files/extra-patch-ext__readline__readline.c   (contents, props changed)
  head/lang/ruby21/files/extra-patch-ext__readline__readline.c   (contents, props changed)
Modified:
  head/Mk/bsd.ruby.mk
  head/lang/ruby20/Makefile
  head/lang/ruby21/Makefile

Modified: head/Mk/bsd.ruby.mk
==============================================================================
--- head/Mk/bsd.ruby.mk	Fri May 30 18:33:59 2014	(r355889)
+++ head/Mk/bsd.ruby.mk	Fri May 30 18:34:29 2014	(r355890)
@@ -193,7 +193,7 @@ RUBY21=			"@comment "
 # Ruby 2.0
 #
 RUBY_RELVERSION=	2.0.0
-RUBY_PORTREVISION=	5
+RUBY_PORTREVISION=	6
 RUBY_PORTEPOCH=		1
 RUBY_PATCHLEVEL=	353
 
@@ -209,7 +209,7 @@ RUBY21=			"@comment "
 # Ruby 2.1
 #
 RUBY_RELVERSION=	2.1.1
-RUBY_PORTREVISION=	1
+RUBY_PORTREVISION=	2
 RUBY_PORTEPOCH=		1
 RUBY_PATCHLEVEL=	0
 

Modified: head/lang/ruby20/Makefile
==============================================================================
--- head/lang/ruby20/Makefile	Fri May 30 18:33:59 2014	(r355889)
+++ head/lang/ruby20/Makefile	Fri May 30 18:34:29 2014	(r355890)
@@ -40,16 +40,25 @@ USE_AUTOTOOLS=	autoconf
 WRKSRC=		${WRKDIR}/${PORTNAME}-${RUBY_DISTVERSION}
 
 RUBY_VER=		2.0
-USE_BZIP2=		yes
 USE_RUBY=		yes
 RUBY_NO_BUILD_DEPENDS=	yes
 RUBY_NO_RUN_DEPENDS=	yes
 
 NO_LATEST_LINK=	yes
 
-OPTIONS_DEFINE=	RDOC DEBUG
-RDOC_DESC=	Build and install Rdoc indexes
-DEBUG_DESC=	Compile-in debug info
+OPTIONS_DEFINE=		RDOC DEBUG
+OPTIONS_DEFAULT=	READLINE
+OPTIONS_RADIO=		EDIT
+OPTIONS_RADIO_EDIT=	LIBEDIT READLINE
+RDOC_DESC=		Build and install Rdoc indexes
+DEBUG_DESC=		Compile-in debug info
+EDIT_DESC=		Which line editing lib to use
+LIBEDIT_DESC=		Use libedit
+READLINE_DESC=		Use libreadline
+
+.include <bsd.port.options.mk>
+
+USES=		tar:bzip2
 
 .include <bsd.port.pre.mk>
 
@@ -83,6 +92,19 @@ CONFIGURE_ENV=	CFLAGS="-I${LOCALBASE}/in
 		LIBS="-L${LOCALBASE}/lib ${LDFLAGS}" \
 		debugflags=
 
+.if ${PORT_OPTIONS:MLIBEDIT}
+BUILD_DEPENDS+=	libedit>=0:${PORTSDIR}/devel/libedit
+RUN_DEPENDS+=	libedit>=0:${PORTSDIR}/devel/libedit
+CONFIGURE_ARGS+=	--enable-libedit --with-libedit-prefix=${LOCALBASE}
+.endif
+
+.if ${PORT_OPTIONS:MREADLINE}
+BUILD_DEPENDS+=	readline>=0:${PORTSDIR}/devel/readline
+RUN_DEPENDS+=	readline>=0:${PORTSDIR}/devel/readline
+CONFIGURE_ARGS+=	--disable-libedit --with-readline-prefix=${LOCALBASE}
+EXTRA_PATCHES+=		${FILESDIR}/extra-patch-ext__readline__readline.c
+.endif
+
 .if ${RUBY_VER} == ${RUBY_DEFAULT_VER}
 MLINKS=		${RUBY_NAME}.1 ruby.1
 PLIST_SUB+=	IF_DEFAULT=""
@@ -159,8 +181,6 @@ pre-su-install:
 			${STAGEDIR}${RUBY_SITEARCHLIBDIR}	\
 			${STAGEDIR}${RUBY_VENDORARCHLIBDIR}
 
-	${SETENV} LC_TIME=C /bin/date > ${STAGEDIR}${RUBY_RIDIR}/created.rid
-	${SETENV} LC_TIME=C /bin/date > ${STAGEDIR}${RUBY_SITERIDIR}/created.rid
 	${TOUCH} ${STAGEDIR}${RUBY_EXAMPLESDIR}/.keep_me
 	${TOUCH} ${STAGEDIR}${RUBY_DOCDIR}/.keep_me
 	${TOUCH} ${STAGEDIR}${RUBY_SITEARCHLIBDIR}/.keep_me

Added: head/lang/ruby20/files/extra-patch-ext__readline__readline.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/ruby20/files/extra-patch-ext__readline__readline.c	Fri May 30 18:34:29 2014	(r355890)
@@ -0,0 +1,11 @@
+--- ext/readline/readline.c.orig	2013/10/29 03:09:00	43458
++++ ext/readline/readline.c	2014/03/01 07:19:08	45225
+@@ -1974,7 +1974,7 @@
+ 
+     rl_attempted_completion_function = readline_attempted_completion_function;
+ #if defined(HAVE_RL_PRE_INPUT_HOOK)
+-    rl_pre_input_hook = (Function *)readline_pre_input_hook;
++    rl_pre_input_hook = (rl_hook_func_t *)readline_pre_input_hook;
+ #endif
+ #ifdef HAVE_RL_CATCH_SIGNALS
+     rl_catch_signals = 0;

Modified: head/lang/ruby21/Makefile
==============================================================================
--- head/lang/ruby21/Makefile	Fri May 30 18:33:59 2014	(r355889)
+++ head/lang/ruby21/Makefile	Fri May 30 18:34:29 2014	(r355890)
@@ -40,16 +40,25 @@ USE_AUTOTOOLS=	autoconf
 WRKSRC=		${WRKDIR}/${PORTNAME}-${RUBY_DISTVERSION}
 
 RUBY_VER=		2.1
-USE_BZIP2=		yes
 USE_RUBY=		yes
 RUBY_NO_BUILD_DEPENDS=	yes
 RUBY_NO_RUN_DEPENDS=	yes
 NO_LATEST_LINK=		yes
 MAKE_JOBS_UNSAFE=	yes
 
-OPTIONS_DEFINE=	RDOC DEBUG
-RDOC_DESC=	Build and install Rdoc indexes
-DEBUG_DESC=	Compile-in debug info
+OPTIONS_DEFINE=		RDOC DEBUG
+OPTIONS_DEFAULT=	READLINE
+OPTIONS_RADIO=		EDIT
+OPTIONS_RADIO_EDIT=	LIBEDIT READLINE
+RDOC_DESC=		Build and install Rdoc indexes
+DEBUG_DESC=		Compile-in debug info
+EDIT_DESC=		Which line editing lib to use
+LIBEDIT_DESC=		Use libedit
+READLINE_DESC=		Use libreadline
+
+.include <bsd.port.options.mk>
+
+USES=		tar:bzip2
 
 .include <bsd.port.pre.mk>
 
@@ -83,6 +92,19 @@ CONFIGURE_ENV=	CFLAGS="-I${LOCALBASE}/in
 		LIBS="-L${LOCALBASE}/lib ${LDFLAGS}" \
 		debugflags=
 
+.if ${PORT_OPTIONS:MLIBEDIT}
+BUILD_DEPENDS+=	libedit>=0:${PORTSDIR}/devel/libedit
+RUN_DEPENDS+=	libedit>=0:${PORTSDIR}/devel/libedit
+CONFIGURE_ARGS+=	--enable-libedit --with-libedit-prefix=${LOCALBASE}
+.endif
+
+.if ${PORT_OPTIONS:MREADLINE}
+BUILD_DEPENDS+=	readline>=0:${PORTSDIR}/devel/readline
+RUN_DEPENDS+=	readline>=0:${PORTSDIR}/devel/readline
+CONFIGURE_ARGS+=	--disable-libedit --with-readline-prefix=${LOCALBASE}
+EXTRA_PATCHES+=		${FILESDIR}/extra-patch-ext__readline__readline.c
+.endif
+
 .if ${RUBY_VER} == ${RUBY_DEFAULT_VER}
 MLINKS=		${RUBY_NAME}.1 ruby.1
 PLIST_SUB+=	IF_DEFAULT=""
@@ -155,8 +177,6 @@ pre-su-install:
 			${STAGEDIR}${RUBY_SITEARCHLIBDIR}	\
 			${STAGEDIR}${RUBY_VENDORARCHLIBDIR}
 
-	${SETENV} LC_TIME=C /bin/date > ${STAGEDIR}${RUBY_RIDIR}/created.rid
-	${SETENV} LC_TIME=C /bin/date > ${STAGEDIR}${RUBY_SITERIDIR}/created.rid
 	${TOUCH} ${STAGEDIR}${RUBY_EXAMPLESDIR}/.keep_me
 	${TOUCH} ${STAGEDIR}${RUBY_DOCDIR}/.keep_me
 	${TOUCH} ${STAGEDIR}${RUBY_SITEARCHLIBDIR}/.keep_me

Added: head/lang/ruby21/files/extra-patch-ext__readline__readline.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/ruby21/files/extra-patch-ext__readline__readline.c	Fri May 30 18:34:29 2014	(r355890)
@@ -0,0 +1,11 @@
+--- ext/readline/readline.c.orig	2013/10/29 03:09:00	43458
++++ ext/readline/readline.c	2014/03/01 07:19:08	45225
+@@ -1974,7 +1974,7 @@
+ 
+     rl_attempted_completion_function = readline_attempted_completion_function;
+ #if defined(HAVE_RL_PRE_INPUT_HOOK)
+-    rl_pre_input_hook = (Function *)readline_pre_input_hook;
++    rl_pre_input_hook = (rl_hook_func_t *)readline_pre_input_hook;
+ #endif
+ #ifdef HAVE_RL_CATCH_SIGNALS
+     rl_catch_signals = 0;


More information about the svn-ports-all mailing list