FreeBSD Port: rubygem-passenger-4.0.41_2

David Keller david.keller at litchis.fr
Sun Apr 13 10:24:03 UTC 2014


Hi Sergey,

It's not related to gem dependency error but the symlink creation
might be incorrect:
${LN} -s ${GEM_LIB_DIR} ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${PORTNAME}

Will create the following symlink:
/usr/local/lib/ruby/gems/1.9/gems/passenger ->
lib/ruby/gems/1.9/gems/passenger-4.0.41

Rather than:
/usr/local/lib/ruby/gems/1.9/gems/passenger ->
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.41

Or:
/usr/local/lib/ruby/gems/1.9/gems/passenger -> passenger-4.0.41


You might prefer using:
${LN} -s ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${GEM_NAME}
${STAGEDIR}${PREFIX}/${GEMS_DIR}/${PORTNAME}

Or even:
${LN} -s ${GEM_NAME} ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${PORTNAME}

David

On Sun, Apr 13, 2014 at 4:13 AM, Sergey A. Osokin <osa at freebsd.org> wrote:
> On Sat, Apr 12, 2014 at 03:09:04AM -0500, Scot Hetzel wrote:
>> On Fri, Apr 11, 2014 at 5:51 PM, Steven Hartland
>> <killing at multiplay.co.uk> wrote:
>> > The change is from :N -> :M
>> > .if ${PORT_OPTIONS:MDEBUG}
>> >
>>  - Select only those words that match DEBUG
>>
>> > Which occurs 220 in the port tree and:
>> >
>> > .if ${PORT_OPTIONS:NDEBUG}
>> >
>> - Select words that don't match DEBUG
>>
>> > Which only occurs twice, so TBH I assumed it was a typo given every other
>> > option uses PORTOPTIONS:M${option}
>> >
>> > Unfortunately the docs don't seem to provide any clarification
>> > http://www.freebsd.org/doc/en/books/porters-handbook/makefile-options.html
>> > so if anyone could chime in with some details on the exact meanings that
>> > would be most appreciated.
>> >
>> You have to read the make(1) man page:
>>
>> http://www.freebsd.org/cgi/man.cgi?query=make&sektion=1
>
> So, the patch is here.
>
> But now I've got following error:
>
> x1% sudo make install
> ===>  Staging for rubygem-passenger-4.0.41_3
> ===>   rubygem-passenger-4.0.41_3 depends on package: rubygem-fastthread>=1.0.7 - found
> ===>   rubygem-passenger-4.0.41_3 depends on package: rubygem-rack>=1.4.5 - found
> ===>   rubygem-passenger-4.0.41_3 depends on package: rubygem-daemon_controller>=1.2.0 - found
> ===>   rubygem-passenger-4.0.41_3 depends on file: /usr/local/bin/gem19 - found
> ===>   rubygem-passenger-4.0.41_3 depends on file: /usr/local/bin/ruby19 - found
> ===>   rubygem-passenger-4.0.41_3 depends on file: /usr/local/sbin/apxs - found
> ===>   rubygem-passenger-4.0.41_3 depends on shared library: libeio.so - found
> ===>   rubygem-passenger-4.0.41_3 depends on shared library: libev.so - found
> ===>   rubygem-passenger-4.0.41_3 depends on shared library: libcurl.so - found
> ===>   Generating temporary packing list
> Building native extensions.  This could take a while...
> Successfully installed passenger-4.0.41
> 1 gem installed
> Installing RDoc documentation for passenger-4.0.41...
> (CC=clang CXX=clang++ /usr/home/osa/ports/www/rubygem-passenger/work/stage/usr/local/bin/passenger-install-apache2-module --auto)
> /usr/local/lib/ruby/site_ruby/1.9/rubygems/dependency.rb:247:in `to_specs': Could not find passenger (>= 0) amongst [daemon_controller-1.2.0, fastthread-1.0.7, rack-1.4.5, rake-10.2.2] (Gem::LoadError)
>         from /usr/local/lib/ruby/site_ruby/1.9/rubygems/dependency.rb:256:in `to_spec'
>         from /usr/local/lib/ruby/site_ruby/1.9/rubygems.rb:1231:in `gem'
>         from /usr/home/osa/ports/www/rubygem-passenger/work/stage/usr/local/bin/passenger-install-apache2-module:22:in `<main>'
> *** Error code 1
>
> Stop.
>
> Any idea what's wrong here?
>
> Index: Makefile
> ===================================================================
> --- Makefile    (revision 351090)
> +++ Makefile    (working copy)
> @@ -3,7 +3,7 @@
>
>  PORTNAME=      passenger
>  PORTVERSION=   4.0.41
> -PORTREVISION=  2
> +PORTREVISION=  3
>  CATEGORIES=    www rubygems
>  MASTER_SITES=  RG
>  PKGNAMEPREFIX= rubygem-
> @@ -39,11 +39,11 @@
>  .endif
>  .endif
>
> -LIB_DEPENDS+=  eio:${PORTSDIR}/devel/libeio \
> -               ev:${PORTSDIR}/devel/libev \
> -               curl:${PORTSDIR}/ftp/curl
> -BUILD_DEPENDS+=        rubygem-fastthread>=1.0.1:${PORTSDIR}/devel/rubygem-fastthread \
> -               rubygem-rack>=0:${PORTSDIR}/www/rubygem-rack \
> +LIB_DEPENDS+=  libeio.so:${PORTSDIR}/devel/libeio \
> +               libev.so:${PORTSDIR}/devel/libev \
> +               libcurl.so:${PORTSDIR}/ftp/curl
> +BUILD_DEPENDS+=        rubygem-fastthread>=1.0.7:${PORTSDIR}/devel/rubygem-fastthread \
> +               rubygem-rack>=1.4.5:${PORTSDIR}/www/rubygem-rack \
>                 rubygem-daemon_controller>=1.2.0:${PORTSDIR}/devel/rubygem-daemon_controller
>  RUN_DEPENDS:=  ${BUILD_DEPENDS}
>
> @@ -81,7 +81,7 @@
>                 s! -feliminate-unused-debug-symbols -feliminate-unused-debug-types!!g; \
>                 201,203s!true!false!' \
>                 ${WRKSRC}/build/basics.rb
> -.if ${PORT_OPTIONS:NDEBUG}
> +.if ${PORT_OPTIONS:MDEBUG}
>         @${REINPLACE_CMD} \
>                 's!-DPASSENGER_DEBUG!-DNDEBUG!g' \
>                 ${WRKSRC}/build/basics.rb
> @@ -101,19 +101,23 @@
>                 's!-lpthread!${PTHREAD_LIBS}!g' \
>                 ${WRKSRC}/lib/phusion_passenger/platform_info/cxx_portability.rb
>
> -post-build:
> +post-install:
>  .if ${PORT_OPTIONS:MAPACHE22}
> -       (CC=${CC} CXX=${CXX} ${WRKSRC}/bin/passenger-install-apache2-module --auto)
> +       (CC=${CC} CXX=${CXX} ${STAGEDIR}${PREFIX}/bin/passenger-install-apache2-module --auto)
>  .endif
> -
>  .if ${PORT_OPTIONS:MNGINX}
> -       (cd ${WRKSRC} && CC=${CC} CXX=${CXX} ${RAKE_BIN} nginx)
> +       (cd ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${GEM_NAME} && CC=${CC} CXX=${CXX} ${RAKE_BIN} nginx)
>  .endif
>  .if ${PORT_OPTIONS:MSYMLINK}
> -       ${LN} -s ${GEM_LIB_DIR} ${STAGE}${PREFIX}/${GEMS_DIR}/${PORTNAME}
> +       ${LN} -s ${GEM_LIB_DIR} ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${PORTNAME}
>  .endif
>
> -       ${FIND} ${WRKSRC} -name '*.o' -delete
> -       ${FIND} ${WRKSRC} -name '*.bak' -delete
> +       ${FIND} ${STAGEDIR} -name '*.o' -delete
> +       ${FIND} ${STAGEDIR} -name '*.bak' -delete
> +       ${FIND} ${STAGEDIR} -name '*.log' -delete
> +       ${RM} -rf \
> +               ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${GEM_NAME}/buildout/common \
> +               ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${GEM_NAME}/buildout/cache
> +       ${FIND} ${STAGEDIR}${PREFIX}/${GEMS_DIR}/${GEM_NAME}/buildout/ruby -name Makefile -delete
>
>  .include <bsd.port.mk>


More information about the freebsd-ports mailing list