# File lib/action_view/helpers/asset_tag_helper.rb, line 243
      def javascript_include_tag(*sources)
        options = sources.extract_options!.stringify_keys
        cache   = options.delete("cache")
        recursive = options.delete("recursive")

        if ActionController::Base.perform_caching && cache
          joined_javascript_name = (cache == true ? "all" : cache) + ".js"
          joined_javascript_path = File.join(JAVASCRIPTS_DIR, joined_javascript_name)

          unless File.exists?(joined_javascript_path)
            JavaScriptSources.create(self, @controller, sources, recursive).write_asset_file_contents(joined_javascript_path)
          end
          javascript_src_tag(joined_javascript_name, options)
        else
          JavaScriptSources.create(self, @controller, sources, recursive).expand_sources.collect { |source|
            javascript_src_tag(source, options)
          }.join("\n")
        end
      end