Algo que vi usar en más de un lugar es matchear contra RUBY_PLATFORM. Algo como RUBY_PLATFORM =~ /(:?mswin|mingw)/
-foca 2009/7/8 Norman Clarke <[email protected]>: >> Mientras le agregaba features a una tool me encontre con que tenia que >> agregar a mi .gemspec una gem "win32ole". La tool tambien funciona en >> Linux/osx (primordialmente), entonces agregarle la dependencia de win32ole >> todo el tiempo no tiene sentido. Me preguntaba si alguien sabe como hacerlo >> sin tener que usar rake. >> Busque y busque pero no encontre nada en la documentacion. Se me ocurrio >> hacer un require 'platform' y en el add_dependency lo filtre con un if >> Platform::IMPL == :mswin , pero no creo sea "the ruby way" ajajaj > > > Hola Matias, > Hace tiempo que se está pidiendo eso[1], pero hasta ahora creo que la > recomendación estándar sigue siendo: hacer 2 gems, uno para Windows cuyo > gemspec tiene la dependencia, y otro para las otras plataformas que no la > tiene. Mucho no me gusta pero es una posibilidad. > Acá[2] hay un artículo que explica como podés emular un "post install hook;" > quizás así podés ejecutar código que determina la plataforma e instala > win32ole si está corriendo en Windows. Pero como la otra recomendación, es > un hack y no sé si siempre va a funcionar con todas la versiones de > Rubygems. > Una tercera opción sería simplemente mostrar un mensaje después de la > instalación, diciendo a los usuarios que tienen que instalar win32ole si > están usando Windows. No es lo más fácil para ellos, pero quizás es lo más > práctico para vos. > Ninguna de las tres opciones me satisfacen > pero creo que es lo que te queda. :-( > Saludos, > Norman > > [1] http://rubyforge.org/pipermail/rubyinstaller-devel/2008-April/000312.html > [2] http://blog.costan.us/2008/11/post-install-post-update-scripts-for.html > > _______________________________________________ > Ruby mailing list > [email protected] > http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar > > _______________________________________________ Ruby mailing list [email protected] http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
