Index: head/Mk/Uses/gem.mk =================================================================== --- head/Mk/Uses/gem.mk (revision 511764) +++ head/Mk/Uses/gem.mk (revision 511765) @@ -1,135 +1,136 @@ # $FreeBSD$ # # Support rubygem packages # # Feature: gem # Usage: USES=gem[:noautoplist] # Valid args: noautoplist Don't generate the plist automatically # # MAINTAINER: portmgr@FreeBSD.org .if !defined(_INCLUDE_USES_GEM_MK) _INCLUDE_USES_GEM_MK= yes _valid_ARGS= noautoplist # Sanity check .for arg in ${gem_ARGS} . if empty(_valid_ARGS:M${arg}) IGNORE= Incorrect 'USES+= gem:${gem_ARGS}' usage: argument [${arg}] is not recognized . endif .endfor 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?= ${DISTNAME} 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 GEMSPEC= ${PORTNAME}.gemspec GEM_ENV+= RB_USER_INSTALL=yes USE_LOCALE?= en_US.UTF-8 GEM_ENV+= LANG=${USE_LOCALE} LC_ALL=${USE_LOCALE} 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 RUBYGEM_ARGS=-l --no-update-sources --install-dir ${STAGEDIR}${PREFIX}/lib/ruby/gems/${RUBY_VER} --ignore-dependencies --bindir=${STAGEDIR}${PREFIX}/bin .if ${PORT_OPTIONS:MDOCS} RUBYGEM_ARGS+= --document rdoc,ri .else RUBYGEM_ARGS+= --no-document .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_80} ; \ 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_80} ; \ fi; \ ${FALSE}; \ fi) .endif .if !target(do-install) do-install: (cd ${BUILD_WRKSRC}; ${SETENV} ${GEM_ENV} ${RUBYGEMBIN} install ${RUBYGEM_ARGS} ${GEMFILES} -- ${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} -r ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR}/ext \ - ${STAGEDIR}${PREFIX}/${CACHE_DIR} 2> /dev/null || ${TRUE} + ${FIND} ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR}/ext -type f -not -name '*.so' -delete 2> /dev/null || ${TRUE} + ${FIND} ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR}/ext -type d -empty -delete 2> /dev/null || ${TRUE} + ${RM} -r ${STAGEDIR}${PREFIX}/${CACHE_DIR} 2> /dev/null || ${TRUE} ${RMDIR} ${STAGEDIR}${PREFIX}/${EXT_DIR} 2> /dev/null || ${TRUE} .if !${PORT_OPTIONS:MDOCS} -@${RMDIR} ${STAGEDIR}${PREFIX}/${DOC_DIR} .endif .endif .if empty(gem_ARGS:Mnoautoplist) _USES_install+= 820:gem-autoplist gem-autoplist: @${ECHO} ${GEM_SPEC} >> ${TMPPLIST} .if ${PORT_OPTIONS:MDOCS} @${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 Index: head/security/rubygem-scrypt/Makefile =================================================================== --- head/security/rubygem-scrypt/Makefile (revision 511764) +++ head/security/rubygem-scrypt/Makefile (revision 511765) @@ -1,22 +1,21 @@ # Created by: Sunpoet Po-Chuan Hsieh # $FreeBSD$ PORTNAME= scrypt PORTVERSION= 3.0.6 +PORTREVISION= 1 CATEGORIES= security rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Scrypt key derivation function LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= rubygem-ffi-compiler>=1.0:devel/rubygem-ffi-compiler USES= gem USE_RUBY= yes - -NO_ARCH= yes .include Index: head/textproc/rubygem-cld3/Makefile =================================================================== --- head/textproc/rubygem-cld3/Makefile (revision 511764) +++ head/textproc/rubygem-cld3/Makefile (revision 511765) @@ -1,33 +1,21 @@ # $FreeBSD$ PORTNAME= cld3 DISTVERSION= 3.2.4 +PORTREVISION= 1 CATEGORIES= textproc rubygems MASTER_SITES= RG MAINTAINER= ruby@FreeBSD.org COMMENT= Compact Language Detection for Ruby LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= protobuf>0:devel/protobuf \ - rubygem-ffi110>1.1.0<1.11.0:devel/rubygem-ffi110 + rubygem-ffi110>=1.1.0<1.11.0:devel/rubygem-ffi110 USES= gem pkgconfig USE_RUBY= yes - -## do-install here to prevent removal of ext -do-install: - (cd ${BUILD_WRKSRC}; ${SETENV} ${GEM_ENV} ${RUBYGEMBIN} install \ - ${RUBYGEM_ARGS} ${GEMFILES} -- ${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} -r ${STAGEDIR}${PREFIX}/${CACHE_DIR} 2> /dev/null || ${TRUE} - ${RMDIR} ${STAGEDIR}${PREFIX}/${DOC_DIR} 2> /dev/null || ${TRUE} - ${RMDIR} ${STAGEDIR}${PREFIX}/${EXT_DIR} 2> /dev/null || ${TRUE} .include Index: head/textproc/rubygem-ox/files/patch-gemspec =================================================================== --- head/textproc/rubygem-ox/files/patch-gemspec (revision 511764) +++ head/textproc/rubygem-ox/files/patch-gemspec (nonexistent) @@ -1,11 +0,0 @@ ---- ox.gemspec.orig 2016-05-23 07:20:09 UTC -+++ ox.gemspec -@@ -7,7 +7,7 @@ Gem::Specification.new do |s| - s.version = "2.4.1" - - s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version= -- s.require_paths = ["lib".freeze, "ext".freeze] -+ s.require_paths = ["lib".freeze] - s.authors = ["Peter Ohler".freeze] - s.date = "2016-04-30" - s.description = "A fast XML parser and object serializer that uses only standard C lib.\n \nOptimized XML (Ox), as the name implies was written to provide speed optimized\nXML handling. It was designed to be an alternative to Nokogiri and other Ruby\nXML parsers for generic XML parsing and as an alternative to Marshal for Object\nserialization. ".freeze Property changes on: head/textproc/rubygem-ox/files/patch-gemspec ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/textproc/rubygem-ox/Makefile =================================================================== --- head/textproc/rubygem-ox/Makefile (revision 511764) +++ head/textproc/rubygem-ox/Makefile (revision 511765) @@ -1,25 +1,17 @@ # $FreeBSD$ PORTNAME= ox PORTVERSION= 2.10.0 +PORTREVISION= 1 CATEGORIES= textproc rubygems MASTER_SITES= RG MAINTAINER= ruby@FreeBSD.org COMMENT= Speed-optimized XML parser and object serializer for Ruby LICENSE= MIT USES= gem USE_RUBY= yes - -# The original gem depends on ext/ox/ox.so, -# but the ext directory is eliminated by FreeBSD's Uses/gem.mk framework. -# The workaround below is to create symlink lib/ox/ox.so pointing to lib/ox.so. - -PLIST_FILES= ${GEM_LIB_DIR}/lib/ox/ox.so - -post-install: - ${LN} -s ../ox.so ${STAGEDIR}${PREFIX}/${GEM_LIB_DIR}/lib/ox .include Index: head/textproc/rubygem-sassc/Makefile =================================================================== --- head/textproc/rubygem-sassc/Makefile (revision 511764) +++ head/textproc/rubygem-sassc/Makefile (revision 511765) @@ -1,24 +1,21 @@ # Created by: Po-Chuan Hsieh # $FreeBSD$ PORTNAME= sassc PORTVERSION= 2.1.0 +PORTREVISION= 1 CATEGORIES= textproc rubygems MASTER_SITES= RG MAINTAINER= sunpoet@FreeBSD.org COMMENT= Use libsass with Ruby LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt -LIB_DEPENDS= libsass.so:textproc/libsass RUN_DEPENDS= rubygem-ffi>=1.9<2:devel/rubygem-ffi USES= gem gmake USE_RUBY= yes - -post-patch: - @${REINPLACE_CMD} -e '/ffi_lib/ s|__dir__|"${LOCALBASE}/lib"|' ${WRKSRC}/lib/sassc/native.rb .include