aboutsummaryrefslogtreecommitdiff
path: root/lang/ruby20
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2014-05-30 18:34:29 +0000
committerSteve Wills <swills@FreeBSD.org>2014-05-30 18:34:29 +0000
commit07e2d47f5360db77017e7aec7330874421a1c6b4 (patch)
tree71d21c296171786ae39a9a134e7ccad6bb2f17ec /lang/ruby20
parenta3bd135ce7dbdba187a665123b2eddba120c4fb6 (diff)
Notes
Diffstat (limited to 'lang/ruby20')
-rw-r--r--lang/ruby20/Makefile32
-rw-r--r--lang/ruby20/files/extra-patch-ext__readline__readline.c11
2 files changed, 37 insertions, 6 deletions
diff --git a/lang/ruby20/Makefile b/lang/ruby20/Makefile
index 63d1256cba3a..d4c681e22c7b 100644
--- a/lang/ruby20/Makefile
+++ b/lang/ruby20/Makefile
@@ -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}/include ${CFLAGS}" \
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
diff --git a/lang/ruby20/files/extra-patch-ext__readline__readline.c b/lang/ruby20/files/extra-patch-ext__readline__readline.c
new file mode 100644
index 000000000000..dd5a2eb1282b
--- /dev/null
+++ b/lang/ruby20/files/extra-patch-ext__readline__readline.c
@@ -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;