ext/games_dice/extconf.rb in games_dice-0.3.5 vs ext/games_dice/extconf.rb in games_dice-0.3.6
- old
+ new
@@ -1,3 +1,25 @@
# ext/games_dice/extconf.rb
-require 'mkmf'
-create_makefile( 'games_dice/games_dice' )
+can_compile_extensions = false
+want_extensions = true
+
+begin
+ require 'mkmf'
+ can_compile_extensions = true
+rescue Exception
+ # This will appear only in verbose mode.
+ $stderr.puts "Could not require 'mkmf'. Not fatal: The extensions are optional."
+end
+
+
+if can_compile_extensions && want_extensions
+ create_makefile( 'games_dice/games_dice' )
+
+else
+ # Create a dummy Makefile, to satisfy Gem::Installer#install
+ mfile = open("Makefile", "wb")
+ mfile.puts '.PHONY: install'
+ mfile.puts 'install:'
+ mfile.puts "\t" + '@echo "Extensions not installed, falling back to pure Ruby version."'
+ mfile.close
+
+end