Rake (Rake)

Перейти к навигации Перейти к поиску
Rake
Тип Утилиты для разработки программного обеспечения
Автор Джим Вейрих[вд]
Разработчик Джим Вайрих
Написана на Ruby
Операционная система кроссплатформенное программное обеспечение
Последняя версия 13.0.6 (9 июля, 2021)
Репозиторий github.com/ruby/rake
Лицензия MIT License
Сайт ruby.github.io/rake/

Rake (МФА [reɪk]; с англ. — «грабли», «разгребать») — инструмент для автоматизации сборки программного кода, написанный на Ruby, и применяющийся в основном для проектов на Ruby (но используется также и для проектов на других языках). Подобен SCons, Make и Apache Ant, но имеет несколько отличий, в частности, так называемые Rakefile (аналоги Makefile в утилите make) используют синтаксис Ruby. Основной автор — Джим Вайрих (Jim Weirich).

Использует блоки анонимных функций Ruby для определения различных задач, используя синтаксис Ruby. В нём есть библиотека основных заданий, таких как функции для задач манипулирования файлами и библиотека для удаления скомпилированных файлов (задача «очистки»). Как и Make, Rake может также синтезировать задачи, основываясь на шаблонах (например, автоматическая сборка задачи компилирования файла на основе шаблонов имён файлов).

Пример простого сценария Rake для сборки программы HelloWorld на языке Си:

  file 'hello.o' => ['hello.c'] do
    sh 'cc -c -o hello.o hello.c'
  end
  file 'hello' => ['hello.o'] do
    sh 'cc -o hello hello.o'
  end