=begin extconf.rb for Ruby/Bonobo extention library =end $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__) + '/../glib/src/lib') require 'mkmf-gnome2' # # detect configurations # (PKGConfig.have_package('libbonobo-2.0') and PKGConfig.have_package('libbonoboui-2.0')) or exit 1 check_win32 top = File.expand_path(File.dirname(__FILE__) + '/..') # XXX $CFLAGS += " " + ['glib/src', 'gtk/src'].map{|d| "-I" + File.join(top, d) }.join(" ") if /cygwin|mingw/ =~ RUBY_PLATFORM top = "../.." [ ["glib/src", "ruby-glib2"], ].each{|d,l| $libs << " -l#{l}" $LDFLAGS << " -L#{top}/#{d}" } end begin srcdir = File.dirname($0) == "." ? "." : File.expand_path(File.dirname($0) + "/src") Dir.mkdir "src" unless FileTest.exist? "src" Dir.chdir "src" begin File.delete("rbbonoboinits.c") if FileTest.exist?("rbbonoboinits.c") obj_ext = ".#{$OBJEXT}" $libs = $libs.split(/\s/).uniq.join(' ') $source_files = Dir.glob("#{srcdir}/*.c").map{|fname| fname[0, srcdir.length+1] = '' fname } $objs = $source_files.collect do |item| item.gsub(/\.c$/, obj_ext) end add_obj("rbbonoboinits#{obj_ext}") # # create Makefiles # create_makefile("bonobo2", srcdir) raise Interrupt if not FileTest.exist? "Makefile" mfile = File.open("Makefile", "a") $source_files.each do |e| mfile.print "#{e.gsub(/\.c$/, obj_ext)}: #{e} rbbonobo.h \n" end mfile.print "\ rbbonoboinits.c:; $(RUBY) $(srcdir)/makeinits.rb $(srcdir)/*.c > $@ allclean: clean rm -rf *.a " mfile.close ensure Dir.chdir ".." end create_top_makefile rescue Interrupt # if $DEBUG print " [error] " + $!.to_s + "\n" # end end