CVSROOT: /cvs Module name: ports Changes by: jer...@cvs.openbsd.org 2010/10/12 10:03:41
Modified files: lang/ruby : ruby.port.mk Log message: Don't build C extensions inside gems during the fake stage, instead build them during the build stage and install them during fake. devel/ruby-gems doesn't have separate build and install commands, as most gems are pure ruby code and don't need a separate build stage. When ruby-gems is installing a gem with C extensions, it builds them during the install. Since installing is done during the fake stage, this meant that the extensions were getting built as root. Previously, this was required, as gem's --user-install option was broken. However, since that option has now been fixed, we use it to install the gem to a temporary location as the current user during build, and then mv and chown the files during fake. Thanks to bernd@ for pointing out that the fixed --user-install option allowed this. ok landry