Author: dmacvicar Date: Fri Oct 26 15:57:11 2007 New Revision: 7650 URL: http://svn.opensuse.org/viewcvs/zypp?rev=7650&view=rev Log: Find libraries, and wrap the ruby native module into a ruby file Added: trunk/sat-solver/cmake/modules/FindRuby.cmake Modified: trunk/sat-solver/bindings/ruby/CMakeLists.txt trunk/sat-solver/bindings/ruby/satsolver.rb trunk/sat-solver/bindings/satsolver.i Modified: trunk/sat-solver/bindings/ruby/CMakeLists.txt URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/ruby/CMakeLists.txt?rev=7650&r1=7649&r2=7650&view=diff ============================================================================== --- trunk/sat-solver/bindings/ruby/CMakeLists.txt (original) +++ trunk/sat-solver/bindings/ruby/CMakeLists.txt Fri Oct 26 15:57:11 2007 @@ -34,4 +34,5 @@ TARGET_LINK_LIBRARIES( satsolverx ${RUBY_LIBRARY} ) INSTALL(TARGETS satsolverx LIBRARY DESTINATION ${RUBY_VENDOR_ARCH_DIR}) +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/satsolver.rb DESTINATION ${RUBY_VENDORLIB_DIR} ) Modified: trunk/sat-solver/bindings/ruby/satsolver.rb URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/ruby/satsolver.rb?rev=7650&r1=7649&r2=7650&view=diff ============================================================================== --- trunk/sat-solver/bindings/ruby/satsolver.rb (original) +++ trunk/sat-solver/bindings/ruby/satsolver.rb Fri Oct 26 15:57:11 2007 @@ -1,7 +1,12 @@ require 'satsolverx' module Satsolver + include Satsolverx - + class Pool + def addsource_solv( fp, s); + pool_addsource_solv(self, fp, s); + end + end end \ No newline at end of file Modified: trunk/sat-solver/bindings/satsolver.i URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/bindings/satsolver.i?rev=7650&r1=7649&r2=7650&view=diff ============================================================================== --- trunk/sat-solver/bindings/satsolver.i (original) +++ trunk/sat-solver/bindings/satsolver.i Fri Oct 26 15:57:11 2007 @@ -1,4 +1,4 @@ -%module satsolver +%module satsolverx %{ Added: trunk/sat-solver/cmake/modules/FindRuby.cmake URL: http://svn.opensuse.org/viewcvs/zypp/trunk/sat-solver/cmake/modules/FindRuby.cmake?rev=7650&view=auto ============================================================================== --- trunk/sat-solver/cmake/modules/FindRuby.cmake (added) +++ trunk/sat-solver/cmake/modules/FindRuby.cmake Fri Oct 26 15:57:11 2007 @@ -0,0 +1,84 @@ +# - Find Ruby +# This module finds if Ruby is installed and determines where the include files +# and libraries are. It also determines what the name of the library is. This +# code sets the following variables: +# +# RUBY_INCLUDE_PATH = path to where ruby.h can be found +# RUBY_EXECUTABLE = full path to the ruby binary + +# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. +# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. + + +if(RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + # Already in cache, be silent + set(RUBY_FIND_QUIETLY TRUE) +endif (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + +# RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` +# RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` +# RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` +# RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` +# RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` + +FIND_PROGRAM(RUBY_EXECUTABLE NAMES ruby ruby1.8 ruby18 ) + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['archdir']" + OUTPUT_VARIABLE RUBY_ARCH_DIR) + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['libdir']" + OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH) + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['rubylibdir']" + OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH) + +# site_ruby +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['sitearchdir']" + OUTPUT_VARIABLE RUBY_SITEARCH_DIR) + +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['sitelibdir']" + OUTPUT_VARIABLE RUBY_SITELIB_DIR) + + +# vendor_ruby +EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r vendor-specific -e "print '-rvendor-specific'" + OUTPUT_VARIABLE RUBY_VENDOR_ARG) + +IF(RUBY_VENDOR_ARG) + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['vendorarchdir']" + OUTPUT_VARIABLE RUBY_VENDORARCH_DIR) + + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['vendorlibdir']" + OUTPUT_VARIABLE RUBY_VENDORLIB_DIR) +ELSE(RUBY_VENDOR_ARG) + # fall back to site*dir + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['sitearchdir']" + OUTPUT_VARIABLE RUBY_VENDORARCH_DIR) + + EXECUTE_PROCESS(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['sitelibdir']" + OUTPUT_VARIABLE RUBY_VENDORLIB_DIR) +ENDIF(RUBY_VENDOR_ARG) + +# this is not needed if you use "print" inside the ruby statements +# remove the new lines from the output by replacing them with empty strings +#STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}") +#STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}") +#STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}") + + +FIND_PATH(RUBY_INCLUDE_PATH + NAMES ruby.h + PATHS + ${RUBY_ARCH_DIR} + /usr/lib/ruby/1.8/i586-linux-gnu/ ) + +FIND_LIBRARY(RUBY_LIBRARY + NAMES ruby ruby1.8 + PATHS ${RUBY_POSSIBLE_LIB_PATH} + ) + +MARK_AS_ADVANCED( + RUBY_EXECUTABLE + RUBY_LIBRARY + RUBY_INCLUDE_PATH + ) -- To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org For additional commands, e-mail: zypp-commit+help@opensuse.org