ports/102646: [PATCH]: lang/ruby18: make PREFIX-clean, fix permissions, add OPTIONS, etc; grab maintainership

Stanislav Sedov ssedov at mbsd.msk.ru
Tue Aug 29 16:40:18 UTC 2006


>Number:         102646
>Category:       ports
>Synopsis:       [PATCH]: lang/ruby18: make PREFIX-clean, fix permissions, add OPTIONS, etc; grab maintainership
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 29 16:40:16 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Stanislav Sedov
>Release:        FreeBSD 7.0-CURRENT i386
>Organization:
MBSD labs, Inc
>Environment:
System: FreeBSD fonon.realnet 7.0-CURRENT FreeBSD 7.0-CURRENT #1: Wed Aug 2 21:44:37 MSD 2006 root at fonon.realnet:/work/src/fbsd-cur/src/sys/i386/compile/FONON i386


	
>Description:
1) Make ruby18 port PREFIX clean. This requires changes both in Makefile and
   bsd.ruby.mk. Currently only minimal changes in b.r.m were introduced
   to not interfere with current ruby-* ports, though it will not influence
   on them either way, since all ruby ports currently not PREFIX clean and
   thus always get installed in ${LOCALBASE}. In my plans to make all
   ruby ports PREFIX-clean. If none minds I'll continue working in this
   direction. If Akinori MUSHA will be happy, I can take maintainership
   of bsd.ruby.mk as well.
2) Simplify Makefile by introducing some make logic.
3) Add OPTIONS
4) Generate some PLIST entries automatically. It will not interfere with
   other ruby-* ports, since only dirs unique to rubt18 will be scanned.
5) garantee permissions safety when installing docs and examples (eliminate
   ${CP} -r *)
6) Create handy docs and examples structure (install examples for external
   libraryes in separate directories)
7) Remove unused KNOB (NORUBYLIB)
8) Bump-up portrevision
9) Grab maintainership

Two files were added: files/vendorlibs and files/obsoleted.
The first lists libraries supplied with this port to generate plist entries
automatocally. Seconds provides a list of obsoleted packages.

>How-To-Repeat:
	
>Fix:

--- bsd.ruby.mk.diff begins here ---
--- bsd.ruby.mk.orig	Tue Aug 29 10:09:43 2006
+++ bsd.ruby.mk	Tue Aug 29 13:07:54 2006
@@ -229,13 +229,13 @@
 RUBY_ARCHLIBDIR?=	${RUBY_LIBDIR}/${RUBY_ARCH}
 RUBY_SITELIBDIR?=	${_RUBY_SITEDIR}/${RUBY_VER}
 RUBY_SITEARCHLIBDIR?=	${RUBY_SITELIBDIR}/${RUBY_ARCH}
-RUBY_DOCDIR?=		${LOCALBASE}/share/doc/${RUBY_NAME}
-RUBY_EXAMPLESDIR?=	${LOCALBASE}/share/examples/${RUBY_NAME}
-RUBY_RIDIR?=		${LOCALBASE}/share/ri/${RUBY_VER}/system
-RUBY_SITERIDIR?=	${LOCALBASE}/share/ri/${RUBY_VER}/site
+RUBY_DOCDIR?=		${PREFIX}/share/doc/${RUBY_NAME}
+RUBY_EXAMPLESDIR?=	${PREFIX}/share/examples/${RUBY_NAME}
+RUBY_RIDIR?=		${PREFIX}/share/ri/${RUBY_VER}/system
+RUBY_SITERIDIR?=	${PREFIX}/share/ri/${RUBY_VER}/site
 RUBY_MODDOCDIR?=	${RUBY_DOCDIR}/${RUBY_MODNAME}
 RUBY_MODEXAMPLESDIR?=	${RUBY_EXAMPLESDIR}/${RUBY_MODNAME}
-RUBY_ELISPDIR?=		${_RUBY_SYSLIBDIR}/ruby/elisp
+RUBY_ELISPDIR?=		${PREFIX}/lib/ruby/elisp
 
 # PLIST
 PLIST_RUBY_DIRS=	RUBY_LIBDIR="${RUBY_LIBDIR}" \
@@ -257,7 +257,7 @@
 			RUBY_SUFFIX="${RUBY_SUFFIX}" \
 			RUBY_NAME="${RUBY_NAME}" \
 			RUBY_DEFAULT_SUFFIX="${RUBY_DEFAULT_SUFFIX}" \
-			${PLIST_RUBY_DIRS:S,DIR="${LOCALBASE}/,DIR=",}
+			${PLIST_RUBY_DIRS:C,DIR="(${LOCALBASE}|${PREFIX})/,DIR=",}
 
 .if ${RUBY_VER} >= 1.7
 RUBY18_ONLY=		""
--- bsd.ruby.mk.diff ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list