install_executables (Gem::Commands::SetupCommand)

    # File lib/rubygems/commands/setup_command.rb, line 158
      def install_executables(bin_dir)
        say "Installing gem executable" if @verbose

        @bin_file_names = []

        Dir.chdir 'bin' do
          bin_files = Dir['*']

          bin_files.delete 'update_rubygems'

          bin_files.each do |bin_file|
            bin_file_formatted = if options[:format_executable] then
                                   Gem.default_exec_format % bin_file
                                 else
                                   bin_file
                                 end

            dest_file = File.join bin_dir, bin_file_formatted
            bin_tmp_file = File.join Dir.tmpdir, bin_file

            begin
              bin = File.readlines bin_file
              bin[0] = "#!#{Gem.ruby}\n"

              File.open bin_tmp_file, 'w' do |fp|
                fp.puts bin.join
              end

              install bin_tmp_file, dest_file, :mode => 0755
              @bin_file_names << dest_file
            ensure
              rm bin_tmp_file
            end

            next unless Gem.win_platform?

            begin
              bin_cmd_file = File.join Dir.tmpdir, "#{bin_file}.bat"

              File.open bin_cmd_file, 'w' do |file|
                file.puts "@ECHO OFF\nIF NOT \"%~f0\" == \"~f0\" GOTO :WinNT\n@\"\#{File.basename(Gem.ruby).chomp('\"')}\" \"\#{dest_file}\" %1 %2 %3 %4 %5 %6 %7 %8 %9\nGOTO :EOF\n:WinNT\n@\"\#{File.basename(Gem.ruby).chomp('\"')}\" \"%~dpn0\" %*\n"
              end

              install bin_cmd_file, "#{dest_file}.bat", :mode => 0755
            ensure
              rm bin_cmd_file
            end
          end
        end
      end