1#ifndef MAKE_COMPILER_STRATEGY_H
2#define MAKE_COMPILER_STRATEGY_H
49 void compile_run(
const std::string& sourceFile,
const std::string& outputBinary)
override;
58 void compile(
const std::string& sourceFile,
const std::string& outputBinary)
override;
71 void set_param_file(std::filesystem::path path) { param_file_ = std::move(path); }
74 void set_output_file(std::filesystem::path path) { output_file_ = std::move(path); }
80 std::filesystem::path param_file_{};
81 std::filesystem::path output_file_{};
Declares compilation strategies and utilities for executing shell commands.
Abstract base class for compilation and run strategies.
std::string model
Model name.
std::string wilson
Wilson basis / label name.
Compilation strategy using a make-based build system.
MakeCompilerStrategy(std::string model, std::string wilson)
Constructs a MakeCompilerStrategy for a given (model, wilson) pair.
void compile_run(const std::string &sourceFile, const std::string &outputBinary) override
Compiles if necessary and then runs the resulting binary.
void set_output_file(std::filesystem::path path)
void set_param_file(std::filesystem::path path)
double Q_match
Matching scale (default: 80.379 GeV, the physical W mass).
void set_Q_match(double Q_match)
Sets the matching scale passed to the binary.
void compile(const std::string &sourceFile, const std::string &outputBinary) override
Invokes make in the given source directory.