Also lerne ich ruby
im Moment und entdeckte rake
. Ich mag es, neue Werkzeuge zu lernen, indem ich Dinge, die ich bereits kenne, mit ihnen umsetze, also versuche ich, einen Makefile
zu konvertieren, den ich zu rake
habe.Makefile äquivalentes Verhalten in Rakefile
Lassen Sie uns sagen, dass es wie folgt aussieht:
main: build/*.o
clang -c $^ -o [email protected]
build/%.o: src/%.c | build
clang -c $< -o [email protected]
build:
mkdir build
Was besondere über dieses Make lautet:
- Mustervergleich mit
%
- Auftrag nur Abhängigkeit mit
| build
Gibt es eine Möglichkeit, diese Logik mit rake
zu implementieren, oder muss ich ruby
selbst verwenden? Z.B.
task :default => "main"
file "main" => "build/%.o" do
sh "clang -o 'main' ??"
end
file 'build/%.o' => "src/%.c" do # order only dependency on `build`
sh "clang -c ?? ??"
end