aboutsummaryrefslogtreecommitdiffstats
path: root/Mk/bsd.ruby.mk
diff options
context:
space:
mode:
authorswills <swills@FreeBSD.org>2016-04-28 00:36:41 +0800
committerswills <swills@FreeBSD.org>2016-04-28 00:36:41 +0800
commit900b8428054e4288c9669f4f17359be2ae8a45c3 (patch)
tree146c1b1aad08357a95df3348dea477d956cd3816 /Mk/bsd.ruby.mk
parentc5f5d48270cbe2ede4cb24ba577ced5ea769dd2f (diff)
downloadfreebsd-ports-gnome-900b8428054e4288c9669f4f17359be2ae8a45c3.tar.gz
freebsd-ports-gnome-900b8428054e4288c9669f4f17359be2ae8a45c3.tar.zst
freebsd-ports-gnome-900b8428054e4288c9669f4f17359be2ae8a45c3.zip
create USES=gem and update rubygem- ports to use it
Note that for now ports still have to have USE_RUBY=yes to use USES=gem PR: 209041 Differential Revision: https://reviews.freebsd.org/D6070
Diffstat (limited to 'Mk/bsd.ruby.mk')
-rw-r--r--Mk/bsd.ruby.mk139
1 files changed, 1 insertions, 138 deletions
diff --git a/Mk/bsd.ruby.mk b/Mk/bsd.ruby.mk
index e3b868ff9ac0..e8cd9c4981fa 100644
--- a/Mk/bsd.ruby.mk
+++ b/Mk/bsd.ruby.mk
@@ -56,10 +56,7 @@ Ruby_Include_MAINTAINER= ruby@FreeBSD.org
# documents from. If this is defined and not empty,
# USE_RUBY_RDTOOL is implied and RUBY_RD_HTML_FILES is
# defined.
-# USE_RUBYGEMS - Says that the port uses rubygems packaging system.
-# RUBYGEM_AUTOPLIST - Generate packing list for rubygems based port
-# automatically.
-#
+# USE_RUBYGEMS - Do not use this -- instead USES=gem
#
# [variables that each port should not (re)define]
#
@@ -263,24 +260,6 @@ _RUBY_VENDORDIR?= ${_RUBY_SYSLIBDIR}/ruby/vendor_ruby
.if !defined(_INVALID_RUBY_VER)
-.if defined(LANG) && !empty(LANG)
-GEM_ENV+= LANG=${LANG}
-.else
-GEM_ENV+= LANG=en_US.UTF-8
-.endif
-
-.if defined(LC_ALL) && !empty(LC_ALL)
-GEM_ENV+= LC_ALL=${LC_ALL}
-.else
-GEM_ENV+= LC_ALL=en_US.UTF-8
-.endif
-
-.if defined(LC_CTYPE) && !empty(LC_CTYPE)
-GEM_ENV+= LC_CTYPE=${LC_CTYPE}
-.else
-GEM_ENV+= LC_CTYPE=UTF-8
-.endif
-
RUBY_DEFAULT_SUFFIX?= ${RUBY_DEFAULT_VER:S/.//}
RUBY_DISTVERSION?= ${RUBY_VERSION}
@@ -392,122 +371,6 @@ RUBY_FLAGS+= -d
.endif
#
-# RubyGems support
-#
-.if defined(USE_RUBYGEMS)
-
-BUILD_DEPENDS+= ${RUBYGEMBIN}:devel/ruby-gems
-RUN_DEPENDS+= ${RUBYGEMBIN}:devel/ruby-gems
-
-PKGNAMEPREFIX?= rubygem-
-EXTRACT_SUFX= .gem
-EXTRACT_ONLY=
-DIST_SUBDIR= rubygem
-
-EXTRACT_DEPENDS+= ${RUBYGEMBIN}:devel/ruby-gems
-GEMS_BASE_DIR= lib/ruby/gems/${RUBY_VER}
-GEMS_DIR= ${GEMS_BASE_DIR}/gems
-DOC_DIR= ${GEMS_BASE_DIR}/doc
-CACHE_DIR= ${GEMS_BASE_DIR}/cache
-SPEC_DIR= ${GEMS_BASE_DIR}/specifications
-EXT_DIR= ${GEMS_BASE_DIR}/extensions
-GEM_NAME?= ${PORTNAME}-${PORTVERSION}
-GEM_LIB_DIR?= ${GEMS_DIR}/${GEM_NAME}
-GEM_DOC_DIR?= ${DOC_DIR}/${GEM_NAME}
-GEM_SPEC?= ${SPEC_DIR}/${GEM_NAME}.gemspec
-GEM_CACHE?= ${CACHE_DIR}/${GEM_NAME}.gem
-
-PLIST_SUB+= PORTVERSION="${PORTVERSION}" \
- REV="${RUBY_GEM}" \
- GEMS_BASE_DIR="lib/ruby/gems/${RUBY_VER}" \
- GEMS_DIR="${GEMS_DIR}" \
- DOC_DIR="${DOC_DIR}" \
- CACHE_DIR="${CACHE_DIR}" \
- SPEC_DIR="${SPEC_DIR}" \
- EXT_DIR="${EXT_DIR}" \
- PORT="${PORTNAME}-${PORTVERSION}" \
- GEM_NAME="${GEM_NAME}" \
- GEM_LIB_DIR="${GEM_LIB_DIR}" \
- GEM_DOC_DIR="${GEM_DOC_DIR}" \
- GEM_SPEC="${GEM_SPEC}" \
- GEM_CACHE="${GEM_CACHE}" \
- EXTRACT_SUFX="${EXTRACT_SUFX}"
-
-RUBYGEMBIN= ${LOCALBASE}/bin/gem${RUBY_VER:S/.//}
-
-. if defined(DISTFILES)
-GEMFILES= ${DISTFILES:C/:[^:]+$//}
-. else
-GEMFILES= ${DISTNAME}${EXTRACT_SUFX}
-. endif
-
-GEMSPEC= ${PORTNAME}.gemspec
-
-RUBYGEM_ARGS=-l --no-update-sources --install-dir ${STAGEDIR}${PREFIX}/lib/ruby/gems/${RUBY_VER} --ignore-dependencies --bindir=${STAGEDIR}${PREFIX}/bin
-GEM_ENV+= RB_USER_INSTALL=yes
-.if defined(NOPORTDOCS)
-RUBYGEM_ARGS+= --no-rdoc --no-ri
-.else
-RUBYGEM_ARGS+= --rdoc --ri
-.endif
-
-.if !target(do-extract)
-do-extract:
- @${SETENV} ${GEM_ENV} ${RUBYGEMBIN} unpack --target=${WRKDIR} ${DISTDIR}/${DIST_SUBDIR}/${GEMFILES}
- @(cd ${BUILD_WRKSRC}; if ! ${SETENV} ${GEM_ENV} ${RUBYGEMBIN} spec --ruby ${DISTDIR}/${DIST_SUBDIR}/${GEMFILES} > ${GEMSPEC} ; then \
- if [ -n "${BUILD_FAIL_MESSAGE}" ] ; then \
- ${ECHO_MSG} "===> Extraction failed unexpectedly."; \
- (${ECHO_CMD} "${BUILD_FAIL_MESSAGE}") | ${FMT} 75 79 ; \
- fi; \
- ${FALSE}; \
- fi)
-.endif
-
-.if !target(do-build)
-do-build:
- @(cd ${BUILD_WRKSRC}; if ! ${SETENV} ${GEM_ENV} ${RUBYGEMBIN} build --force ${GEMSPEC} ; then \
- if [ -n "${BUILD_FAIL_MESSAGE}" ] ; then \
- ${ECHO_MSG} "===> Compilation failed unexpectedly."; \
- (${ECHO_CMD} "${BUILD_FAIL_MESSAGE}") | ${FMT} 75 79 ; \
- fi; \
- ${FALSE}; \
- fi)
-.endif
-
-.if !target(do-install)
-do-install:
- (cd ${BUILD_WRKSRC}; ${SETENV} ${GEM_ENV} ${RUBYGEMBIN} install ${RUBYGEM_ARGS} ${GEMFILES} -- --build-args ${CONFIGURE_ARGS})
- ${RM} -r ${STAGEDIR}${PREFIX}/${GEMS_BASE_DIR}/build_info/
- ${FIND} ${STAGEDIR}${PREFIX}/${GEMS_BASE_DIR} -type f -name '*.so' -exec ${STRIP_CMD} {} +
- ${FIND} ${STAGEDIR}${PREFIX}/${GEMS_BASE_DIR} -type f \( -name mkmf.log -or -name gem_make.out \) -delete
- ${RM} -rf ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR}/ext \
- ${STAGEDIR}${PREFIX}/${CACHE_DIR} 2> /dev/null || ${TRUE}
- ${RMDIR} ${STAGEDIR}${PREFIX}/${EXT_DIR} 2> /dev/null || ${TRUE}
-.if defined(NOPORTDOCS)
- -@${RMDIR} ${STAGEDIR}${PREFIX}/${DOC_DIR}
-.endif
-.endif
-
-. if defined(RUBYGEM_AUTOPLIST)
-. if !target(post-install-script)
-post-install-script:
- @${ECHO} ${GEM_SPEC} >> ${TMPPLIST}
-.if !defined(NOPORTDOCS)
- @${FIND} -ds ${STAGEDIR}${PREFIX}/${DOC_DIR} -type f -print | ${SED} -E -e \
- 's,^${STAGEDIR}${PREFIX}/?,,' >> ${TMPPLIST}
-.endif
- @${FIND} -ds ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR} -type f -print | ${SED} -E -e \
- 's,^${STAGEDIR}${PREFIX}/?,,' >> ${TMPPLIST}
- @if [ -d ${STAGEDIR}${PREFIX}/${EXT_DIR} ]; then \
- ${FIND} -ds ${STAGEDIR}${PREFIX}/${EXT_DIR} -type f -print | ${SED} -E -e \
- 's,^${STAGEDIR}${PREFIX}/?,,' >> ${TMPPLIST} ; \
- fi
-. endif
-. endif
-
-.endif # USE_RUBYGEMS
-
-#
# extconf.rb support
#
.if defined(USE_RUBY_EXTCONF)