From 760226a4df7aae1c88d44f62772a801aaeb746e2 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Sun, 13 Oct 2024 21:13:34 +0000 Subject: [PATCH 01/17] Add manifest and test files for converter --- converter/manifest.h | 86 ++++++++++++++++++++++++++++++++ converter/testing/build.ninja | 18 +++++++ converter/testing/build.ninja.cc | 33 ++++++++++++ converter/testing/build.sh | 1 + converter/testing/hello.cpp | 6 +++ 5 files changed, 144 insertions(+) create mode 100644 converter/manifest.h create mode 100644 converter/testing/build.ninja create mode 100644 converter/testing/build.ninja.cc create mode 100755 converter/testing/build.sh create mode 100644 converter/testing/hello.cpp diff --git a/converter/manifest.h b/converter/manifest.h new file mode 100644 index 0000000000..81765814da --- /dev/null +++ b/converter/manifest.h @@ -0,0 +1,86 @@ +#pragma once + +#include +#include + +namespace shadowdash { + +class Token { + public: + enum Type { LITERAL, VAR }; + + constexpr Token(Type type, std::string_view value) + : type_(type), value_(value) {} + + constexpr Token(std::string_view value) : Token(Token::LITERAL, value) {} + + constexpr Token(const char* value) : Token(Token::LITERAL, value) {} + + Type type_; + std::string_view value_; +}; + +constexpr Token operator"" _l(const char* value, std::size_t len) { + return Token(Token::Type::LITERAL, { value, len }); +} + +constexpr Token operator"" _v(const char* value, std::size_t len) { + return Token(Token::Type::VAR, { value, len }); +} + +class str { + public: + str(std::initializer_list tokens) : tokens_(tokens) {} + std::initializer_list tokens_; +}; + +using binding = std::pair; +using map = std::initializer_list; + +class list { + public: + list(std::initializer_list values) : values_(values) {} + std::initializer_list values_; +}; + +class var { + public: + var(const char* name, str value) {} +}; + +class rule { + public: + rule(map bindings) {} +}; + +class build { + public: + build( // + list outputs, // + list implicit_outputs, // + rule& rule, // + list inputs, // + list implicit_inputs, // + list order_only_inputs, // + map bindings) // + {} +}; + +static constexpr auto in = "in"_v; +static constexpr auto out = "out"_v; + +} // namespace shadowdash + +#define let(name, ...) \ + var name { \ + #name, str { \ + __VA_ARGS__ \ + } \ + } + +#define bind(name, ...) \ + { \ + #name, str { \ + __VA_ARGS__ \ + } \ + } diff --git a/converter/testing/build.ninja b/converter/testing/build.ninja new file mode 100644 index 0000000000..ab05721556 --- /dev/null +++ b/converter/testing/build.ninja @@ -0,0 +1,18 @@ +rule clang_tidy + command = clang-tidy $in + +rule compile + command = g++ -c $in -o $out + +rule link + command = g++ $in -o $out + + +build hello.o: compile hello.cpp + +build hello: link hello.o + +# build tidy: clang_tidy hello.cpp + +default hello + diff --git a/converter/testing/build.ninja.cc b/converter/testing/build.ninja.cc new file mode 100644 index 0000000000..23a5214b7b --- /dev/null +++ b/converter/testing/build.ninja.cc @@ -0,0 +1,33 @@ +#include "../manifest.h" + +using namespace shadowdash; + +void manifest() { + let(flags, "-O3"); + + auto compile = rule{ { + bind(command, "g++", "flags"_v, "-c", in, "-o", out), // + } }; + + auto link = rule{ { + bind(command, "g++", in, "-o", out), // + } }; + + build(list{ str{ "hello.o" } }, // + {}, // + compile, // + list{ str{ "hello.cc" } }, // + {}, // + {}, // + { bind(flags, "-O2") } // + ); + + build(list{ str{ "hello" } }, // + {}, // + link, // + list{ str{ "hello.o" } }, // + {}, // + {}, // + {} // + ); +} diff --git a/converter/testing/build.sh b/converter/testing/build.sh new file mode 100755 index 0000000000..9f8a962ab7 --- /dev/null +++ b/converter/testing/build.sh @@ -0,0 +1 @@ +g++ -fPIC -shared -o libmanifest.so build.ninja.cc diff --git a/converter/testing/hello.cpp b/converter/testing/hello.cpp new file mode 100644 index 0000000000..e9753d4812 --- /dev/null +++ b/converter/testing/hello.cpp @@ -0,0 +1,6 @@ +#include + +auto main() -> int{ + std::cout << "Hell, Ninja!" << '\n'; + return 0; +} From d71da4494184dab6d06f2d691b2cbcf5756da0cb Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Sun, 13 Oct 2024 21:36:37 +0000 Subject: [PATCH 02/17] Make testing build.ninja and build.ninja.cc consistent --- converter/testing/build.ninja | 11 +++-------- converter/testing/build.ninja.cc | 6 ++++-- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/converter/testing/build.ninja b/converter/testing/build.ninja index ab05721556..0fe588dc65 100644 --- a/converter/testing/build.ninja +++ b/converter/testing/build.ninja @@ -1,18 +1,13 @@ -rule clang_tidy - command = clang-tidy $in - +flags = -O3 rule compile - command = g++ -c $in -o $out + command = g++ $flags -c $in -o $out rule link command = g++ $in -o $out - build hello.o: compile hello.cpp + flags = -O2 build hello: link hello.o -# build tidy: clang_tidy hello.cpp - default hello - diff --git a/converter/testing/build.ninja.cc b/converter/testing/build.ninja.cc index 23a5214b7b..03772245ae 100644 --- a/converter/testing/build.ninja.cc +++ b/converter/testing/build.ninja.cc @@ -6,11 +6,11 @@ void manifest() { let(flags, "-O3"); auto compile = rule{ { - bind(command, "g++", "flags"_v, "-c", in, "-o", out), // + bind(command, "g++", "flags"_v, "-c", "in"_v, "-o", "out"_v), // } }; auto link = rule{ { - bind(command, "g++", in, "-o", out), // + bind(command, "g++", "in"_v, "-o", "out"_v), // } }; build(list{ str{ "hello.o" } }, // @@ -30,4 +30,6 @@ void manifest() { {}, // {} // ); + + default(str("hello")); } From d09f9e07acd1428c0b41f071fdb41bc494cf3e5c Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Sun, 13 Oct 2024 21:36:53 +0000 Subject: [PATCH 03/17] Start implementing converter in Python --- converter/convert.py | 98 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 converter/convert.py diff --git a/converter/convert.py b/converter/convert.py new file mode 100644 index 0000000000..0dbbc98e27 --- /dev/null +++ b/converter/convert.py @@ -0,0 +1,98 @@ +import argparse + +def parse_ninja_file(ninja_file_content): + rules = {} + builds = [] + current_rule = None + default_target = None + + lines = ninja_file_content.splitlines() + + for line in lines: + line = line.strip() + if line.startswith("rule"): + current_rule = line.split()[1] + rules[current_rule] = {"command": None, "flags": "-O3"} + elif line.startswith("command ="): + if current_rule: + rules[current_rule]["command"] = line.split("=", 1)[1].strip() + elif line.startswith("flags ="): + if current_rule: + rules[current_rule]["flags"] = line.split("=", 1)[1].strip() + elif line.startswith("build"): + parts = line.split() + output, rule, inputs = parts[1], parts[2], parts[3:] + builds.append((output, rule, inputs)) + elif line.startswith("default"): + default_target = line.split()[1] + + return rules, builds, default_target + +def generate_manifest_cc(rules, builds, default_target): + cc_code = '#include "../manifest.h"\n\nusing namespace shadowdash;\n\nvoid manifest() {\n' + cc_code += f' let(flags, "{rules["compile"]["flags"]}");\n\n' + + for rule, details in rules.items(): + cc_code += f' auto {rule} = rule{{ {{\n' + command = details["command"].replace("$flags", '"flags"_v').replace("$in", "in").replace("$out", "out") + cc_code += f' bind(command, {command}), //\n' + cc_code += f' }} }};\n\n' + + for build in builds: + output, rule, inputs = build + inputs_str = ", ".join([f'str{{ "{inp}" }}' for inp in inputs]) + if rule == "compile" and "flags" in rules["compile"] and rules["compile"]["flags"] != "-O3": + cc_code += f' build(list{{ str{{ "{output}" }} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {rule}, //\n' + cc_code += f' list{{ {inputs_str} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{ bind(flags, "{rules["compile"]["flags"]}") }} //\n' + cc_code += f' );\n\n' + else: + cc_code += f' build(list{{ str{{ "{output}" }} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {rule}, //\n' + cc_code += f' list{{ {inputs_str} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{}} //\n' + cc_code += f' );\n\n' + + cc_code += f' build(list{{ str{{ "{default_target}" }} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' link, //\n' + cc_code += f' list{{ str{{ "{default_target}.o" }} }}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{}}, //\n' + cc_code += f' {{}} //\n' + cc_code += f' );\n' + + cc_code += '}\n' + return cc_code + +def main(): + # argument parser for input and output file names + parser = argparse.ArgumentParser(description="Convert a build.ninja file to a build.ninja.cc file.") + parser.add_argument('input_file', help="Path to the input build.ninja file") + parser.add_argument('output_file', help="Path to the output build.ninja.cc file") + + args = parser.parse_args() + + # read input file + with open(args.input_file, 'r') as f: + ninja_file_content = f.read() + + # parse the ninja file + rules, builds, default_target = parse_ninja_file(ninja_file_content) + + # generate the manifest.cc content + manifest_cc_content = generate_manifest_cc(rules, builds, default_target) + + # write the output to the file + with open(args.output_file, 'w') as f: + f.write(manifest_cc_content) + +if __name__ == "__main__": + main() From 92c56031cd056e8fb095844aa3c35ca76065afa1 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 16 Oct 2024 23:46:11 +0000 Subject: [PATCH 04/17] Move Python converter to archive - will use cpp to do the conversion while using ninja parser --- converter/{ => archive}/convert.py | 0 converter/src/hooks.cpp | 21 ++++++++++++ converter/src/main.cpp | 55 ++++++++++++++++++++++++++++++ converter/{ => src}/manifest.h | 0 4 files changed, 76 insertions(+) rename converter/{ => archive}/convert.py (100%) create mode 100644 converter/src/hooks.cpp create mode 100644 converter/src/main.cpp rename converter/{ => src}/manifest.h (100%) diff --git a/converter/convert.py b/converter/archive/convert.py similarity index 100% rename from converter/convert.py rename to converter/archive/convert.py diff --git a/converter/src/hooks.cpp b/converter/src/hooks.cpp new file mode 100644 index 0000000000..741b1a4a01 --- /dev/null +++ b/converter/src/hooks.cpp @@ -0,0 +1,21 @@ + +void HandleRule(Rule* rule) +{ + // output string + std::string output = "auto " + rule.name_ + " = rule{{bind(command, \"g++\", \"flags\"_v, \"-c\", "; + + // Iterate over the parsed_ vector in the "command" binding + for (const auto& entry : rule.bindings_["command"].parsed_) { + if (entry.second == RAW) { + output += "\"" + entry.first + "\", "; // Add quotes for raw strings + } else if (entry.second == SPECIAL) { + output += entry.first + ", "; // No quotes for special variables + } + } + + // Finish the string + output += ")}};"; + + // Print the result + std::cout << output << std::endl; +} diff --git a/converter/src/main.cpp b/converter/src/main.cpp new file mode 100644 index 0000000000..be5f3603d4 --- /dev/null +++ b/converter/src/main.cpp @@ -0,0 +1,55 @@ +#include +#include +#include +#include + +// Assuming you have these constants +enum EvalStringType { RAW, SPECIAL }; + +// Example structures based on your description +struct EvalString { + std::string first; + EvalStringType second; +}; + +struct Binding { + std::vector parsed_; +}; + +struct Rule { + std::string name_; + std::map bindings_; +}; + +int main() { + // Simulate your object + Rule rule; + rule.name_ = "compile"; + rule.bindings_["command"].parsed_ = { + {"g++ -c ", RAW}, + {"in", SPECIAL}, + {" -o ", RAW}, + {"out", SPECIAL}, + {" ", RAW} + }; + + // Begin the output string + std::string output = "auto " + rule.name_ + " = rule{{bind(command, \"g++\", \"flags\"_v, \"-c\", "; + + // Iterate over the parsed_ vector in the "command" binding + for (const auto& entry : rule.bindings_["command"].parsed_) { + if (entry.second == RAW) { + output += "\"" + entry.first + "\", "; // Add quotes for raw strings + } else if (entry.second == SPECIAL) { + output += entry.first + ", "; // No quotes for special variables + } + } + + // Finish the string + output += ")}};"; + + // Print the result + std::cout << output << std::endl; + + return 0; +} diff --git a/converter/manifest.h b/converter/src/manifest.h similarity index 100% rename from converter/manifest.h rename to converter/src/manifest.h From 1e73da65b6c7c123336a4238d35fb5d03c0b7867 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Thu, 17 Oct 2024 00:35:32 +0000 Subject: [PATCH 05/17] Start changing ninja code itself to behave as a converter instead of a separate binary; Add debug build script for converter based on ninja --- build.sh | 2 ++ src/ninja.cc | 31 +++++++++++++++++++++++++++++++ src/util.cc | 3 +++ src/util.h | 4 ++++ 4 files changed, 40 insertions(+) create mode 100755 build.sh diff --git a/build.sh b/build.sh new file mode 100755 index 0000000000..b09867ae76 --- /dev/null +++ b/build.sh @@ -0,0 +1,2 @@ +cmake -DCMAKE_BUILD_TYPE=Debug -B debug-build +cmake --build debug-build --parallel --config Debug --target ninja diff --git a/src/ninja.cc b/src/ninja.cc index 2902359f15..4943d10dcf 100644 --- a/src/ninja.cc +++ b/src/ninja.cc @@ -21,6 +21,8 @@ #include #include +#include + #ifdef _WIN32 #include "getopt.h" #include @@ -52,6 +54,9 @@ #include "util.h" #include "version.h" +// mr: +#include + using namespace std; #ifdef _WIN32 @@ -1562,6 +1567,11 @@ NORETURN void real_main(int argc, char** argv) { exit((ninja.*options.tool->func)(&options, argc, argv)); } + // add preamble + g_output_ss << "#include \"manifest.h\"\n\n"; + g_output_ss << "using namespace shadowdash;\n\n"; + g_output_ss << "void manifest() {\n"; // start manifest() function + g_output_ss << "\n{"; // // Limit number of rebuilds, to prevent infinite loops. const int kCycleLimit = 100; for (int cycle = 1; cycle <= kCycleLimit; ++cycle) { @@ -1577,7 +1587,27 @@ NORETURN void real_main(int argc, char** argv) { status->Error("%s", err.c_str()); exit(1); } +} + g_output_ss << "\n}"; // exit manifest() function + + std::string result = g_output_ss.str(); + std::cout << result << std::endl; // write to stdout for now, change it to write to file later + + // write to file + std::ofstream outFile("output.cc"); + + // Check if the file opened successfully + if (outFile.is_open()) { + outFile << result; + outFile.close(); + } else { + std::cerr << "Error opening file for writing.\n"; + } + + exit(0); // exit(1) was suggested above by ninja to exit out; crashes otherwise +} +/* don't need anything other than parsing if (options.tool && options.tool->when == Tool::RUN_AFTER_LOAD) exit((ninja.*options.tool->func)(&options, argc, argv)); @@ -1615,6 +1645,7 @@ NORETURN void real_main(int argc, char** argv) { options.input_file, kCycleLimit); exit(1); } +*/ } // anonymous namespace diff --git a/src/util.cc b/src/util.cc index ac1b14e55f..4b1e70e040 100644 --- a/src/util.cc +++ b/src/util.cc @@ -60,6 +60,9 @@ #include "edit_distance.h" +// my globals +std::stringstream g_output_ss; + using namespace std; void Fatal(const char* msg, ...) { diff --git a/src/util.h b/src/util.h index 211a43d348..8189bfa5b3 100644 --- a/src/util.h +++ b/src/util.h @@ -48,6 +48,10 @@ NORETURN void Fatal(const char* msg, ...); # define NINJA_FALLTHROUGH // nothing #endif +// my globals +#include +extern std::stringstream g_output_ss; + /// Log a warning message. void Warning(const char* msg, ...); void Warning(const char* msg, va_list ap); From dde456b421bad3f0524cedaaa62b4120ec467405 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Thu, 31 Oct 2024 00:30:24 +0000 Subject: [PATCH 06/17] Add converter usage instructions in readme --- README.md | 109 +++++++----------------------------------------------- 1 file changed, 14 insertions(+), 95 deletions(-) diff --git a/README.md b/README.md index 9312d935f3..d9f883a5a8 100644 --- a/README.md +++ b/README.md @@ -1,100 +1,19 @@ -# Ninja - -Ninja is a small build system with a focus on speed. -https://ninja-build.org/ - -See [the manual](https://ninja-build.org/manual.html) or -`doc/manual.asciidoc` included in the distribution for background -and more details. - -Binaries for Linux, Mac and Windows are available on - [GitHub](https://github.com/ninja-build/ninja/releases). -Run `./ninja -h` for Ninja help. - -Installation is not necessary because the only required file is the -resulting ninja binary. However, to enable features like Bash -completion and Emacs and Vim editing modes, some files in misc/ must be -copied to appropriate locations. - -If you're interested in making changes to Ninja, read -[CONTRIBUTING.md](CONTRIBUTING.md) first. - -## Building Ninja itself - -You can either build Ninja via the custom generator script written in Python or -via CMake. For more details see -[the wiki](https://github.com/ninja-build/ninja/wiki). - -### Python - -``` -./configure.py --bootstrap +# Shadowdash Converter +## Build +```sh +./build.sh ``` +This will create the converter in the `debug-build` directory with debug symbols. -This will generate the `ninja` binary and a `build.ninja` file you can now use -to build Ninja with itself. - -If you have a GoogleTest source directory, you can build the tests -by passing its path with `--gtest-source-dir=PATH` option, or the -`GTEST_SOURCE_DIR` environment variable, e.g.: - -``` -./configure.py --bootstrap --gtest-source-dir=/path/to/googletest -./ninja all # build ninja_test and other auxiliary binaries -./ninja_test` # run the unit-test suite. -``` - -Use the CMake build below if you want to use a preinstalled binary -version of the library. - -### CMake - -``` -cmake -Bbuild-cmake -cmake --build build-cmake +## Run +```sh +./debug-build/ninja ``` +Run the above in a directory where a `build.ninja` file is present -The `ninja` binary will now be inside the `build-cmake` directory (you can -choose any other name you like). - -To run the unit tests: - +## Testing +```sh +cd converter/testing/ +../../debug-build/ninja ``` -./build-cmake/ninja_test -``` - -## Generating documentation - -### Ninja Manual - -You must have `asciidoc` and `xsltproc` in your PATH, then do: - -``` -./configure.py -ninja manual doc/manual.pdf -``` - -Which will generate `doc/manual.html`. - -To generate the PDF version of the manual, you must have `dblatext` in your PATH then do: - -``` -./configure.py # only if you didn't do it previously. -ninja doc/manual.pdf -``` - -Which will generate `doc/manual.pdf`. - -### Doxygen documentation - -If you have `doxygen` installed, you can build documentation extracted from C++ -declarations and comments to help you navigate the code. Note that Ninja is a standalone -executable, not a library, so there is no public API, all details exposed here are -internal. - -``` -./configure.py # if needed -ninja doxygen -``` - -Then open `doc/doxygen/html/index.html` in a browser to look at it. +This will run the converter on the hello world example `build.ninja` file and produce `output.cc` as a result. From b04bb73962ce55cc2ab6e0a333831b2112777b27 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Tue, 22 Oct 2024 16:25:43 +0000 Subject: [PATCH 07/17] Handle rules for converter --- src/manifest_parser.cc | 50 ++++++++++++++++++++++++++++++++++++++++++ src/ninja.cc | 8 +++++-- 2 files changed, 56 insertions(+), 2 deletions(-) diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index c4b2980164..0bec08b8a3 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -131,6 +131,41 @@ bool ManifestParser::ParsePool(string* err) { return true; } +std::vector split_by_spaces(const std::string& line) { + std::vector tokens; + std::istringstream iss(line); + std::string token; + + while (iss >> token) { + tokens.push_back(token); // Extract token and push to vector + } + + return tokens; +} + +std::string extract_variable(const std::string& token) { + // Check if the token starts with '$' and contains both '${' and '}' + if (token[0] == '$' && token.find("${") == 0 && token.find('}') != std::string::npos) { + // Extract the content between '${' and '}' + size_t start = token.find("{") + 1; + size_t end = token.find("}"); + return token.substr(start, end - start); + } + + // Return an empty string if it's not a valid ${} expression + return ""; +} + +std::string extract_token(const std::string& token){ + std::string output = extract_variable(token); + if (output.empty()){ + return "\"" + token + "\""; + } + else { + return "\"" + output + "\"_v"; + } +} + bool ManifestParser::ParseRule(string* err) { string name; @@ -170,6 +205,21 @@ bool ManifestParser::ParseRule(string* err) { return lexer_.Error("expected 'command =' line", err); env_->AddRule(rule); + // add rule here to the stringstream + g_output_ss << "\nauto " << rule->name_ << " = rule{ {\n" + << " "; + g_output_ss << "bind(command, "; + + std::vector tokens = split_by_spaces(rule->bindings_.at("command").Unparse()); + + for (size_t i=0; i < tokens.size(); ++i) { + g_output_ss << extract_token(tokens[i]); + if (i != tokens.size() - 1) { + g_output_ss << ","; + } + } + g_output_ss << ")\n" << "} };\n"; + return true; } diff --git a/src/ninja.cc b/src/ninja.cc index 4943d10dcf..3e2f02628a 100644 --- a/src/ninja.cc +++ b/src/ninja.cc @@ -1571,10 +1571,14 @@ NORETURN void real_main(int argc, char** argv) { g_output_ss << "#include \"manifest.h\"\n\n"; g_output_ss << "using namespace shadowdash;\n\n"; g_output_ss << "void manifest() {\n"; // start manifest() function - g_output_ss << "\n{"; // + + /* // Limit number of rebuilds, to prevent infinite loops. const int kCycleLimit = 100; for (int cycle = 1; cycle <= kCycleLimit; ++cycle) { + } +} +*/ NinjaMain ninja(ninja_command, config); ManifestParserOptions parser_opts; @@ -1587,7 +1591,7 @@ NORETURN void real_main(int argc, char** argv) { status->Error("%s", err.c_str()); exit(1); } -} + g_output_ss << "\n}"; // exit manifest() function std::string result = g_output_ss.str(); From 4753b56806872b74c187b6b7ebdd9c8fd9a43d62 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Thu, 24 Oct 2024 01:29:26 +0000 Subject: [PATCH 08/17] Handle let statements for converter --- src/manifest_parser.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index 0bec08b8a3..8d623af821 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -230,6 +230,14 @@ bool ManifestParser::ParseLet(string* key, EvalString* value, string* err) { return false; if (!lexer_.ReadVarValue(value, err)) return false; + + // handle conversion of let + g_output_ss << "\nlet("; + g_output_ss << *key; + g_output_ss << ", \""; + g_output_ss << value->Evaluate(env_); // parent function gets value this way + g_output_ss << "\");"; + return true; } From 8ae9f15048149a38df3a35c303e37c33af05be74 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 30 Oct 2024 19:54:27 +0000 Subject: [PATCH 09/17] Handle edges (build statements) for converter --- src/manifest_parser.cc | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index 8d623af821..6ab11a22f1 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -366,6 +366,8 @@ bool ManifestParser::ParseEdge(string* err) { // Bindings on edges are rare, so allocate per-edge envs only when needed. bool has_indent_token = lexer_.PeekToken(Lexer::INDENT); BindingEnv* env = has_indent_token ? new BindingEnv(env_) : env_; + + std::map savedBindings; while (has_indent_token) { string key; EvalString val; @@ -373,6 +375,10 @@ bool ManifestParser::ParseEdge(string* err) { return false; env->AddBinding(key, val.Evaluate(env_)); + + // mr: save bindings for adding later + savedBindings[key] = val.Evaluate(env_); + has_indent_token = lexer_.PeekToken(Lexer::INDENT); } @@ -467,6 +473,30 @@ bool ManifestParser::ParseEdge(string* err) { } assert(!edge->dyndep_->generated_by_dep_loader()); } + + // add edge here to the stringstream + g_output_ss << "\n\nbuild("; + + g_output_ss << "list{ str{ "; + g_output_ss << "\"" << outs[0].Evaluate(env) << "\""; // todo: make this a loop + g_output_ss << " } },\n"; + + g_output_ss << "\t{},\n"; + + g_output_ss << "\t" << rule->name_ << ",\n"; + + g_output_ss << "\tlist{ str{ "; + g_output_ss << "\"" << ins[0].Evaluate(env) << "\""; // todo: make this a loop + g_output_ss << " } },\n"; + + g_output_ss << "\t{},\n"; + g_output_ss << "\t{},\n"; + + for (const auto& pair : savedBindings) { + g_output_ss << "\t{ bind(" << pair.first << ", \"" << pair.second << "\") }\n"; + } + + g_output_ss << ");\n"; return true; } From 62ddf32e37f0733fdee46e1f0161a14e3c9e92d2 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 30 Oct 2024 23:21:23 +0000 Subject: [PATCH 10/17] Handle default statements for converter --- src/manifest_parser.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index 6ab11a22f1..e94e02c62f 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -258,6 +258,10 @@ bool ManifestParser::ParseDefault(string* err) { if (!state_->AddDefault(path, &default_err)) return lexer_.Error(default_err, err); +// add to converter output for each default: default(str("hello")); + g_output_ss << "\ndefault(str(\""; + g_output_ss << path << "\"));\n"; + eval.Clear(); if (!lexer_.ReadPath(&eval, err)) return false; From d27564bb2f1f2fa875826ebf969b2651bfb679da Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Thu, 31 Oct 2024 00:39:25 +0000 Subject: [PATCH 11/17] Fix bug with converting let statements (to prevent extra statements from printing in converted output) --- src/manifest_parser.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index e94e02c62f..4bdc7b7845 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -69,6 +69,13 @@ bool ManifestParser::Parse(const string& filename, const string& input, if (name == "ninja_required_version") CheckNinjaVersion(value); env_->AddBinding(name, value); + + // handle conversion of let + g_output_ss << "\nlet("; + g_output_ss << name; + g_output_ss << ", \""; + g_output_ss << value; // parent function gets value this way + g_output_ss << "\");\n"; break; } case Lexer::INCLUDE: @@ -231,13 +238,6 @@ bool ManifestParser::ParseLet(string* key, EvalString* value, string* err) { if (!lexer_.ReadVarValue(value, err)) return false; - // handle conversion of let - g_output_ss << "\nlet("; - g_output_ss << *key; - g_output_ss << ", \""; - g_output_ss << value->Evaluate(env_); // parent function gets value this way - g_output_ss << "\");"; - return true; } @@ -479,7 +479,7 @@ bool ManifestParser::ParseEdge(string* err) { } // add edge here to the stringstream - g_output_ss << "\n\nbuild("; + g_output_ss << "\nbuild("; g_output_ss << "list{ str{ "; g_output_ss << "\"" << outs[0].Evaluate(env) << "\""; // todo: make this a loop From 76602c8f28c69469023a53a9ce229d250776f8ae Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Sat, 2 Nov 2024 05:42:09 +0000 Subject: [PATCH 12/17] Formatting improvements for output file - tab characters --- converter/testing/build.ninja.cc | 1 + src/manifest_parser.cc | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/converter/testing/build.ninja.cc b/converter/testing/build.ninja.cc index 03772245ae..5ba0658574 100644 --- a/converter/testing/build.ninja.cc +++ b/converter/testing/build.ninja.cc @@ -3,6 +3,7 @@ using namespace shadowdash; void manifest() { + let(flags, "-O3"); auto compile = rule{ { diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index 4bdc7b7845..505499f0a9 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -71,7 +71,7 @@ bool ManifestParser::Parse(const string& filename, const string& input, env_->AddBinding(name, value); // handle conversion of let - g_output_ss << "\nlet("; + g_output_ss << "\n\tlet("; g_output_ss << name; g_output_ss << ", \""; g_output_ss << value; // parent function gets value this way @@ -213,9 +213,9 @@ bool ManifestParser::ParseRule(string* err) { env_->AddRule(rule); // add rule here to the stringstream - g_output_ss << "\nauto " << rule->name_ << " = rule{ {\n" + g_output_ss << "\n\tauto " << rule->name_ << " = rule{ {\n" << " "; - g_output_ss << "bind(command, "; + g_output_ss << "\tbind(command, "; std::vector tokens = split_by_spaces(rule->bindings_.at("command").Unparse()); @@ -225,7 +225,7 @@ bool ManifestParser::ParseRule(string* err) { g_output_ss << ","; } } - g_output_ss << ")\n" << "} };\n"; + g_output_ss << ")\n" << "\t} };\n"; return true; } @@ -259,7 +259,7 @@ bool ManifestParser::ParseDefault(string* err) { return lexer_.Error(default_err, err); // add to converter output for each default: default(str("hello")); - g_output_ss << "\ndefault(str(\""; + g_output_ss << "\n\tdefault(str(\""; g_output_ss << path << "\"));\n"; eval.Clear(); @@ -479,28 +479,28 @@ bool ManifestParser::ParseEdge(string* err) { } // add edge here to the stringstream - g_output_ss << "\nbuild("; + g_output_ss << "\n\tbuild("; g_output_ss << "list{ str{ "; g_output_ss << "\"" << outs[0].Evaluate(env) << "\""; // todo: make this a loop g_output_ss << " } },\n"; - g_output_ss << "\t{},\n"; + g_output_ss << "\t\t{},\n"; - g_output_ss << "\t" << rule->name_ << ",\n"; + g_output_ss << "\t\t" << rule->name_ << ",\n"; - g_output_ss << "\tlist{ str{ "; + g_output_ss << "\t\tlist{ str{ "; g_output_ss << "\"" << ins[0].Evaluate(env) << "\""; // todo: make this a loop g_output_ss << " } },\n"; - g_output_ss << "\t{},\n"; - g_output_ss << "\t{},\n"; + g_output_ss << "\t\t{},\n"; + g_output_ss << "\t\t{},\n"; for (const auto& pair : savedBindings) { - g_output_ss << "\t{ bind(" << pair.first << ", \"" << pair.second << "\") }\n"; + g_output_ss << "\t\t{ bind(" << pair.first << ", \"" << pair.second << "\") }\n"; } - g_output_ss << ");\n"; + g_output_ss << "\t);\n"; return true; } From 30d35500fc5ea09d1672adeacb3d21af7a3279d5 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Sat, 2 Nov 2024 05:32:22 +0000 Subject: [PATCH 13/17] Change converter output to match Team 5 output --- converter/testing/manifest_example.cc | 46 +++++++++++++++ src/manifest_parser.cc | 83 +++++++++++++++++++-------- src/ninja.cc | 27 ++++++++- src/util.cc | 1 + src/util.h | 1 + 5 files changed, 130 insertions(+), 28 deletions(-) create mode 100644 converter/testing/manifest_example.cc diff --git a/converter/testing/manifest_example.cc b/converter/testing/manifest_example.cc new file mode 100644 index 0000000000..4fdb41cbc9 --- /dev/null +++ b/converter/testing/manifest_example.cc @@ -0,0 +1,46 @@ +#include "manifest.h" + +manifest() { + rule( + compile, + bind(command, {"g++", "-c", "in"_v, "-o", "out"_v, "-MD", "-MF", "depfile"_v}), + bind(depfile, {"out"_v, ".d"}), + bind(deps, {"gcc"}), + ); + + rule( + link, + bind(command, {"g++", "in"_v, "-o", "out"_v}), + ); + + auto build1 = build(list(str("hello.o"), str("hello2.o")), + list(), + compile, + list(str("hello.c")), + list(), + list(), + { bind(test, {"123"}) } + ); + + auto build2 = build(list(str("hello")), + list(), + link, + list(str("hello.o")), + list(), + list(), + { } + ); + + auto build3 = build(list(str("hello.d")), + list(), + phony, + list(), + list(), + list(), + { } + ); + + default(str("test")); + + ShadowDash({ build1, build2, build3 }, {pool1, pool2, pool3}, default_target); +} diff --git a/src/manifest_parser.cc b/src/manifest_parser.cc index 505499f0a9..73d6807cbf 100644 --- a/src/manifest_parser.cc +++ b/src/manifest_parser.cc @@ -73,9 +73,9 @@ bool ManifestParser::Parse(const string& filename, const string& input, // handle conversion of let g_output_ss << "\n\tlet("; g_output_ss << name; - g_output_ss << ", \""; + g_output_ss << ", {\""; g_output_ss << value; // parent function gets value this way - g_output_ss << "\");\n"; + g_output_ss << "\"});\n"; break; } case Lexer::INCLUDE: @@ -163,7 +163,17 @@ std::string extract_variable(const std::string& token) { return ""; } -std::string extract_token(const std::string& token){ +void escape_quotes_in_place(std::string& input) { + for (size_t i = 0; i < input.size(); ++i) { + if (input[i] == '"') { + input.insert(i, "\\"); + ++i; // skip the added backslash + } + } +} + +std::string extract_token(std::string& token){ + escape_quotes_in_place(token); std::string output = extract_variable(token); if (output.empty()){ return "\"" + token + "\""; @@ -212,10 +222,11 @@ bool ManifestParser::ParseRule(string* err) { return lexer_.Error("expected 'command =' line", err); env_->AddRule(rule); + // add rule here to the stringstream - g_output_ss << "\n\tauto " << rule->name_ << " = rule{ {\n" + g_output_ss << "\nauto " << rule->name_ << " = rule{{\n" << " "; - g_output_ss << "\tbind(command, "; + g_output_ss << "bind(command, {"; std::vector tokens = split_by_spaces(rule->bindings_.at("command").Unparse()); @@ -225,7 +236,7 @@ bool ManifestParser::ParseRule(string* err) { g_output_ss << ","; } } - g_output_ss << ")\n" << "\t} };\n"; + g_output_ss << "})\n" << "}};\n"; return true; } @@ -258,10 +269,11 @@ bool ManifestParser::ParseDefault(string* err) { if (!state_->AddDefault(path, &default_err)) return lexer_.Error(default_err, err); +/* // add to converter output for each default: default(str("hello")); g_output_ss << "\n\tdefault(str(\""; g_output_ss << path << "\"));\n"; - +*/ eval.Clear(); if (!lexer_.ReadPath(&eval, err)) return false; @@ -479,30 +491,51 @@ bool ManifestParser::ParseEdge(string* err) { } // add edge here to the stringstream - g_output_ss << "\n\tbuild("; + g_output_ss << "\nauto build" << g_build_count++ << " = build("; - g_output_ss << "list{ str{ "; - g_output_ss << "\"" << outs[0].Evaluate(env) << "\""; // todo: make this a loop - g_output_ss << " } },\n"; + g_output_ss << "list{{"; + for (auto it = outs.begin(); it != outs.end(); ++it) + { + g_output_ss << "str{{\"" << it->Evaluate(env) << "\"}}"; + if (std::next(it) != outs.end()) { + g_output_ss << ", "; + } + } + g_output_ss << "}},\n"; - g_output_ss << "\t\t{},\n"; + g_output_ss << "\tlist{{}},\n"; - g_output_ss << "\t\t" << rule->name_ << ",\n"; + std::string tmp_rule_name = rule->name_; + if (tmp_rule_name == "phony") tmp_rule_name = "rule::phony"; + g_output_ss << "\t" << tmp_rule_name << ",\n"; - g_output_ss << "\t\tlist{ str{ "; - g_output_ss << "\"" << ins[0].Evaluate(env) << "\""; // todo: make this a loop - g_output_ss << " } },\n"; - - g_output_ss << "\t\t{},\n"; - g_output_ss << "\t\t{},\n"; - - for (const auto& pair : savedBindings) { - g_output_ss << "\t\t{ bind(" << pair.first << ", \"" << pair.second << "\") }\n"; + g_output_ss << "\tlist{{ "; + for (auto it = ins.begin(); it != ins.end(); ++it) + { + g_output_ss << "\t\tstr{{\"" << it->Evaluate(env) << "\"}}"; + if (std::next(it) != ins.end()) { + g_output_ss << ", "; + } } - - g_output_ss << "\t);\n"; + g_output_ss << " } },\n"; - return true; + g_output_ss << "\tlist{{}},\n"; + g_output_ss << "\tlist{{}},\n"; + + g_output_ss << "{"; + for (auto it = savedBindings.begin(); it != savedBindings.end(); ++it) { + escape_quotes_in_place(it->second); + g_output_ss << "\tbind(" << it->first << ", {\"" << it->second << "\"})"; + if (std::next(it) != savedBindings.end()) { + g_output_ss << ",\n"; + } else { + g_output_ss << "\n"; + } + } + g_output_ss << "}"; + + g_output_ss << ");\n"; + return true; } bool ManifestParser::ParseFileInclude(bool new_scope, string* err) { diff --git a/src/ninja.cc b/src/ninja.cc index 3e2f02628a..3bcc6ac5d5 100644 --- a/src/ninja.cc +++ b/src/ninja.cc @@ -1570,7 +1570,18 @@ NORETURN void real_main(int argc, char** argv) { // add preamble g_output_ss << "#include \"manifest.h\"\n\n"; g_output_ss << "using namespace shadowdash;\n\n"; - g_output_ss << "void manifest() {\n"; // start manifest() function + +/* for later + g_output_ss << "\ +Token operator\"\" _l(const char* value, std::size_t len) {\n\ + return Token(Token::Type::LITERAL, std::string(value, len));\n\ +}\n\n\ +Token operator\"\" _v(const char* value, std::size_t len) {\n\ + return Token(Token::Type::VAR, std::string(value, len));\n\ +}\n\n"; +*/ + g_output_ss << "extern \"C\" {\n"; + g_output_ss << "\tbuildGroup manifest() {\n"; // start manifest() function /* // Limit number of rebuilds, to prevent infinite loops. @@ -1591,8 +1602,18 @@ NORETURN void real_main(int argc, char** argv) { status->Error("%s", err.c_str()); exit(1); } - - g_output_ss << "\n}"; // exit manifest() function + + g_output_ss << "return buildGroup({"; + for(int i=1; i extern std::stringstream g_output_ss; +extern int g_build_count; /// Log a warning message. void Warning(const char* msg, ...); From 20178746f6dbfabc4805966ecf1a2d18e5409b16 Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Mon, 18 Nov 2024 02:33:26 +0000 Subject: [PATCH 14/17] Add zlib build.ninja and compiled files --- converter/test-zlib/build.ninja | 744 +++++++++++++++++++++++++ converter/test-zlib/compile.sh | 2 + converter/test-zlib/libmanifest.so | Bin 0 -> 618896 bytes converter/test-zlib/manifest.h | 234 ++++++++ converter/test-zlib/output.cc | 865 +++++++++++++++++++++++++++++ 5 files changed, 1845 insertions(+) create mode 100644 converter/test-zlib/build.ninja create mode 100755 converter/test-zlib/compile.sh create mode 100755 converter/test-zlib/libmanifest.so create mode 100644 converter/test-zlib/manifest.h create mode 100644 converter/test-zlib/output.cc diff --git a/converter/test-zlib/build.ninja b/converter/test-zlib/build.ninja new file mode 100644 index 0000000000..ccc15a10d9 --- /dev/null +++ b/converter/test-zlib/build.ninja @@ -0,0 +1,744 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Ninja" Generator, CMake Version 3.22 + +# This file contains all the build statements describing the +# compilation DAG. + +# ============================================================================= +# Write statements declared in CMakeLists.txt: +# +# Which is the root file. +# ============================================================================= + +# ============================================================================= +# Project: zlib +# Configurations: +# ============================================================================= + +############################################# +# Minimal version of Ninja required by this file + +ninja_required_version = 1.5 + +# ============================================================================= +# Include auxiliary files. + + +############################################# +# Include rules file. + +# CMAKE generated file: DO NOT EDIT! +# Generated by "Ninja" Generator, CMake Version 3.22 + +# This file contains all the rules used to get the outputs files +# built from the input files. +# It is included in the main 'build.ninja'. + +# ============================================================================= +# Project: zlib +# Configurations: +# ============================================================================= +# ============================================================================= + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__zlib_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C shared library. + +rule C_SHARED_LIBRARY_LINKER__zlib_ + command = $PRE_LINK && /usr/bin/cc -fPIC $LANGUAGE_COMPILE_FLAGS $ARCH_FLAGS $LINK_FLAGS -shared $SONAME_FLAG$SONAME -o $TARGET_FILE $in $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking C shared library $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for creating library symlink. + +rule CMAKE_SYMLINK_LIBRARY + command = /usr/bin/cmake -E cmake_symlink_library $in $SONAME $out && $POST_BUILD + description = Creating library symlink $out + + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__zlibstatic_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C static library. + +rule C_STATIC_LIBRARY_LINKER__zlibstatic_ + command = $PRE_LINK && /usr/bin/cmake -E rm -f $TARGET_FILE && /usr/bin/ar qc $TARGET_FILE $LINK_FLAGS $in && /usr/bin/ranlib $TARGET_FILE && $POST_BUILD + description = Linking C static library $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__example_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C executable. + +rule C_EXECUTABLE_LINKER__example_ + command = $PRE_LINK && /usr/bin/cc $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking C executable $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__minigzip_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C executable. + +rule C_EXECUTABLE_LINKER__minigzip_ + command = $PRE_LINK && /usr/bin/cc $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking C executable $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__example64_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C executable. + +rule C_EXECUTABLE_LINKER__example64_ + command = $PRE_LINK && /usr/bin/cc $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking C executable $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for compiling C files. + +rule C_COMPILER__minigzip64_ + depfile = $DEP_FILE + deps = gcc + command = /usr/bin/cc $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C executable. + +rule C_EXECUTABLE_LINKER__minigzip64_ + command = $PRE_LINK && /usr/bin/cc $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking C executable $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for running custom commands. + +rule CUSTOM_COMMAND + command = $COMMAND + description = $DESC + + +############################################# +# Rule for re-running cmake. + +rule RERUN_CMAKE + command = /usr/bin/cmake --regenerate-during-build -S/home/opensource/zlib -B/home/opensource/zlib + description = Re-running CMake... + generator = 1 + + +############################################# +# Rule for cleaning all built files. + +rule CLEAN + command = /usr/bin/ninja $FILE_ARG -t clean $TARGETS + description = Cleaning all built files... + + +############################################# +# Rule for printing all primary targets available. + +rule HELP + command = /usr/bin/ninja -t targets + description = All primary targets available: + + + +# ============================================================================= + +############################################# +# Logical path to working directory; prefix for absolute paths. + +cmake_ninja_workdir = /home/opensource/zlib/ +# ============================================================================= +# Object build statements for SHARED_LIBRARY target zlib + + +############################################# +# Order-only phony target for zlib + +build cmake_object_order_depends_target_zlib: phony || CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/adler32.c.o: C_COMPILER__zlib_ /home/opensource/zlib/adler32.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/adler32.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/compress.c.o: C_COMPILER__zlib_ /home/opensource/zlib/compress.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/compress.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/crc32.c.o: C_COMPILER__zlib_ /home/opensource/zlib/crc32.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/crc32.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/deflate.c.o: C_COMPILER__zlib_ /home/opensource/zlib/deflate.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/deflate.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/gzclose.c.o: C_COMPILER__zlib_ /home/opensource/zlib/gzclose.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/gzclose.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/gzlib.c.o: C_COMPILER__zlib_ /home/opensource/zlib/gzlib.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/gzlib.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/gzread.c.o: C_COMPILER__zlib_ /home/opensource/zlib/gzread.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/gzread.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/gzwrite.c.o: C_COMPILER__zlib_ /home/opensource/zlib/gzwrite.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/gzwrite.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/inflate.c.o: C_COMPILER__zlib_ /home/opensource/zlib/inflate.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/inflate.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/infback.c.o: C_COMPILER__zlib_ /home/opensource/zlib/infback.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/infback.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/inftrees.c.o: C_COMPILER__zlib_ /home/opensource/zlib/inftrees.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/inftrees.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/inffast.c.o: C_COMPILER__zlib_ /home/opensource/zlib/inffast.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/inffast.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/trees.c.o: C_COMPILER__zlib_ /home/opensource/zlib/trees.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/trees.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/uncompr.c.o: C_COMPILER__zlib_ /home/opensource/zlib/uncompr.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/uncompr.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + +build CMakeFiles/zlib.dir/zutil.c.o: C_COMPILER__zlib_ /home/opensource/zlib/zutil.c || cmake_object_order_depends_target_zlib + DEFINES = -DZLIB_DLL -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlib.dir/zutil.c.o.d + FLAGS = -fPIC + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlib.dir + OBJECT_FILE_DIR = CMakeFiles/zlib.dir + + +# ============================================================================= +# Link build statements for SHARED_LIBRARY target zlib + + +############################################# +# Link the shared library libz.so.1.3.1.1-motley + +build libz.so.1.3.1.1-motley: C_SHARED_LIBRARY_LINKER__zlib_ CMakeFiles/zlib.dir/adler32.c.o CMakeFiles/zlib.dir/compress.c.o CMakeFiles/zlib.dir/crc32.c.o CMakeFiles/zlib.dir/deflate.c.o CMakeFiles/zlib.dir/gzclose.c.o CMakeFiles/zlib.dir/gzlib.c.o CMakeFiles/zlib.dir/gzread.c.o CMakeFiles/zlib.dir/gzwrite.c.o CMakeFiles/zlib.dir/inflate.c.o CMakeFiles/zlib.dir/infback.c.o CMakeFiles/zlib.dir/inftrees.c.o CMakeFiles/zlib.dir/inffast.c.o CMakeFiles/zlib.dir/trees.c.o CMakeFiles/zlib.dir/uncompr.c.o CMakeFiles/zlib.dir/zutil.c.o + LINK_FLAGS = -Wl,--version-script,"/home/opensource/zlib/zlib.map" + OBJECT_DIR = CMakeFiles/zlib.dir + POST_BUILD = : + PRE_LINK = : + SONAME = libz.so.1 + SONAME_FLAG = -Wl,-soname, + TARGET_FILE = libz.so.1.3.1.1-motley + TARGET_PDB = z.so.dbg + + +############################################# +# Create library symlink libz.so + +build libz.so.1 libz.so: CMAKE_SYMLINK_LIBRARY libz.so.1.3.1.1-motley + POST_BUILD = : + +# ============================================================================= +# Object build statements for STATIC_LIBRARY target zlibstatic + + +############################################# +# Order-only phony target for zlibstatic + +build cmake_object_order_depends_target_zlibstatic: phony || CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/adler32.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/adler32.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/adler32.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/compress.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/compress.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/compress.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/crc32.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/crc32.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/crc32.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/deflate.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/deflate.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/deflate.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/gzclose.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/gzclose.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/gzclose.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/gzlib.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/gzlib.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/gzlib.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/gzread.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/gzread.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/gzread.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/gzwrite.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/gzwrite.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/gzwrite.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/inflate.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/inflate.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/inflate.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/infback.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/infback.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/infback.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/inftrees.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/inftrees.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/inftrees.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/inffast.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/inffast.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/inffast.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/trees.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/trees.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/trees.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/uncompr.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/uncompr.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/uncompr.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + +build CMakeFiles/zlibstatic.dir/zutil.c.o: C_COMPILER__zlibstatic_ /home/opensource/zlib/zutil.c || cmake_object_order_depends_target_zlibstatic + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/zlibstatic.dir/zutil.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/zlibstatic.dir + OBJECT_FILE_DIR = CMakeFiles/zlibstatic.dir + + +# ============================================================================= +# Link build statements for STATIC_LIBRARY target zlibstatic + + +############################################# +# Link the static library libz.a + +build libz.a: C_STATIC_LIBRARY_LINKER__zlibstatic_ CMakeFiles/zlibstatic.dir/adler32.c.o CMakeFiles/zlibstatic.dir/compress.c.o CMakeFiles/zlibstatic.dir/crc32.c.o CMakeFiles/zlibstatic.dir/deflate.c.o CMakeFiles/zlibstatic.dir/gzclose.c.o CMakeFiles/zlibstatic.dir/gzlib.c.o CMakeFiles/zlibstatic.dir/gzread.c.o CMakeFiles/zlibstatic.dir/gzwrite.c.o CMakeFiles/zlibstatic.dir/inflate.c.o CMakeFiles/zlibstatic.dir/infback.c.o CMakeFiles/zlibstatic.dir/inftrees.c.o CMakeFiles/zlibstatic.dir/inffast.c.o CMakeFiles/zlibstatic.dir/trees.c.o CMakeFiles/zlibstatic.dir/uncompr.c.o CMakeFiles/zlibstatic.dir/zutil.c.o + OBJECT_DIR = CMakeFiles/zlibstatic.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = libz.a + TARGET_PDB = z.a.dbg + +# ============================================================================= +# Object build statements for EXECUTABLE target example + + +############################################# +# Order-only phony target for example + +build cmake_object_order_depends_target_example: phony || cmake_object_order_depends_target_zlib + +build CMakeFiles/example.dir/test/example.c.o: C_COMPILER__example_ /home/opensource/zlib/test/example.c || cmake_object_order_depends_target_example + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/example.dir/test/example.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/example.dir + OBJECT_FILE_DIR = CMakeFiles/example.dir/test + + +# ============================================================================= +# Link build statements for EXECUTABLE target example + + +############################################# +# Link the executable example + +build example: C_EXECUTABLE_LINKER__example_ CMakeFiles/example.dir/test/example.c.o | libz.so.1.3.1.1-motley || libz.so libz.so + LINK_LIBRARIES = -Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley + OBJECT_DIR = CMakeFiles/example.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = example + TARGET_PDB = example.dbg + +# ============================================================================= +# Object build statements for EXECUTABLE target minigzip + + +############################################# +# Order-only phony target for minigzip + +build cmake_object_order_depends_target_minigzip: phony || cmake_object_order_depends_target_zlib + +build CMakeFiles/minigzip.dir/test/minigzip.c.o: C_COMPILER__minigzip_ /home/opensource/zlib/test/minigzip.c || cmake_object_order_depends_target_minigzip + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/minigzip.dir/test/minigzip.c.o.d + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/minigzip.dir + OBJECT_FILE_DIR = CMakeFiles/minigzip.dir/test + + +# ============================================================================= +# Link build statements for EXECUTABLE target minigzip + + +############################################# +# Link the executable minigzip + +build minigzip: C_EXECUTABLE_LINKER__minigzip_ CMakeFiles/minigzip.dir/test/minigzip.c.o | libz.so.1.3.1.1-motley || libz.so libz.so + LINK_LIBRARIES = -Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley + OBJECT_DIR = CMakeFiles/minigzip.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = minigzip + TARGET_PDB = minigzip.dbg + +# ============================================================================= +# Object build statements for EXECUTABLE target example64 + + +############################################# +# Order-only phony target for example64 + +build cmake_object_order_depends_target_example64: phony || cmake_object_order_depends_target_zlib + +build CMakeFiles/example64.dir/test/example.c.o: C_COMPILER__example64_ /home/opensource/zlib/test/example.c || cmake_object_order_depends_target_example64 + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/example64.dir/test/example.c.o.d + FLAGS = -D_FILE_OFFSET_BITS=64 + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/example64.dir + OBJECT_FILE_DIR = CMakeFiles/example64.dir/test + + +# ============================================================================= +# Link build statements for EXECUTABLE target example64 + + +############################################# +# Link the executable example64 + +build example64: C_EXECUTABLE_LINKER__example64_ CMakeFiles/example64.dir/test/example.c.o | libz.so.1.3.1.1-motley || libz.so libz.so + LINK_LIBRARIES = -Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley + OBJECT_DIR = CMakeFiles/example64.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = example64 + TARGET_PDB = example64.dbg + +# ============================================================================= +# Object build statements for EXECUTABLE target minigzip64 + + +############################################# +# Order-only phony target for minigzip64 + +build cmake_object_order_depends_target_minigzip64: phony || cmake_object_order_depends_target_zlib + +build CMakeFiles/minigzip64.dir/test/minigzip.c.o: C_COMPILER__minigzip64_ /home/opensource/zlib/test/minigzip.c || cmake_object_order_depends_target_minigzip64 + DEFINES = -D_LARGEFILE64_SOURCE=1 + DEP_FILE = CMakeFiles/minigzip64.dir/test/minigzip.c.o.d + FLAGS = -D_FILE_OFFSET_BITS=64 + INCLUDES = -I/home/opensource/zlib + OBJECT_DIR = CMakeFiles/minigzip64.dir + OBJECT_FILE_DIR = CMakeFiles/minigzip64.dir/test + + +# ============================================================================= +# Link build statements for EXECUTABLE target minigzip64 + + +############################################# +# Link the executable minigzip64 + +build minigzip64: C_EXECUTABLE_LINKER__minigzip64_ CMakeFiles/minigzip64.dir/test/minigzip.c.o | libz.so.1.3.1.1-motley || libz.so libz.so + LINK_LIBRARIES = -Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley + OBJECT_DIR = CMakeFiles/minigzip64.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = minigzip64 + TARGET_PDB = minigzip64.dbg + + +############################################# +# Utility command for test + +build CMakeFiles/test.util: CUSTOM_COMMAND + COMMAND = cd /home/opensource/zlib && /usr/bin/ctest --force-new-ctest-process + DESC = Running tests... + pool = console + restat = 1 + +build test: phony CMakeFiles/test.util + + +############################################# +# Utility command for edit_cache + +build CMakeFiles/edit_cache.util: CUSTOM_COMMAND + COMMAND = cd /home/opensource/zlib && /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. + DESC = No interactive CMake dialog available... + restat = 1 + +build edit_cache: phony CMakeFiles/edit_cache.util + + +############################################# +# Utility command for rebuild_cache + +build CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND + COMMAND = cd /home/opensource/zlib && /usr/bin/cmake --regenerate-during-build -S/home/opensource/zlib -B/home/opensource/zlib + DESC = Running CMake to regenerate build system... + pool = console + restat = 1 + +build rebuild_cache: phony CMakeFiles/rebuild_cache.util + + +############################################# +# Utility command for list_install_components + +build list_install_components: phony + + +############################################# +# Utility command for install + +build CMakeFiles/install.util: CUSTOM_COMMAND all + COMMAND = cd /home/opensource/zlib && /usr/bin/cmake -P cmake_install.cmake + DESC = Install the project... + pool = console + restat = 1 + +build install: phony CMakeFiles/install.util + + +############################################# +# Utility command for install/local + +build CMakeFiles/install/local.util: CUSTOM_COMMAND all + COMMAND = cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake + DESC = Installing only the local directory... + pool = console + restat = 1 + +build install/local: phony CMakeFiles/install/local.util + + +############################################# +# Utility command for install/strip + +build CMakeFiles/install/strip.util: CUSTOM_COMMAND all + COMMAND = cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake + DESC = Installing the project stripped... + pool = console + restat = 1 + +build install/strip: phony CMakeFiles/install/strip.util + +# ============================================================================= +# Target aliases. + +build zlib: phony libz.so + +build zlibstatic: phony libz.a + +# ============================================================================= +# Folder targets. + +# ============================================================================= + +############################################# +# Folder: /home/opensource/zlib + +build all: phony libz.so libz.a example minigzip example64 minigzip64 + +# ============================================================================= +# Built-in targets + + +############################################# +# Re-run CMake if any of its inputs changed. + +build build.ninja: RERUN_CMAKE | /usr/share/cmake-3.22/Modules/CMakeCInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake /usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake /usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake /usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake /usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake /usr/share/cmake-3.22/Modules/CheckTypeSize.cmake /usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU.cmake /usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake /usr/share/cmake-3.22/Modules/Platform/Linux.cmake /usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.22.1/CMakeCCompiler.cmake CMakeFiles/3.22.1/CMakeSystem.cmake CMakeLists.txt zconf.h.cmakein zlib.pc.cmakein + pool = console + + +############################################# +# A missing CMake input file is not an error. + +build /usr/share/cmake-3.22/Modules/CMakeCInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake /usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake /usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake /usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake /usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake /usr/share/cmake-3.22/Modules/CheckTypeSize.cmake /usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU.cmake /usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake /usr/share/cmake-3.22/Modules/Platform/Linux.cmake /usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.22.1/CMakeCCompiler.cmake CMakeFiles/3.22.1/CMakeSystem.cmake CMakeLists.txt zconf.h.cmakein zlib.pc.cmakein: phony + + +############################################# +# Clean all the built files. + +build clean: CLEAN + + +############################################# +# Print all primary targets available. + +build help: HELP + + +############################################# +# Make the all target the default. + +default all diff --git a/converter/test-zlib/compile.sh b/converter/test-zlib/compile.sh new file mode 100755 index 0000000000..b291e1b429 --- /dev/null +++ b/converter/test-zlib/compile.sh @@ -0,0 +1,2 @@ +/root/opensource/ninja/debug-build/ninja >/dev/null +clang++ -shared -fPIC -o libmanifest.so output.cc 2>&1 diff --git a/converter/test-zlib/libmanifest.so b/converter/test-zlib/libmanifest.so new file mode 100755 index 0000000000000000000000000000000000000000..0dac102fae055812364447080882670f95ef8778 GIT binary patch literal 618896 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

el+b7F=g3F0{YrQ=zcsB7?#F>Jp5^qhME_e#@ zHpC&p6Nv{9cYFt8&vC@*#BG8{5pPS}BKQ#Efy4>H!-%&dZWKI(czfb{!Gnl-OQ^k8 z@J__M<ZotCvmOdWyE_CR|#H1%q73QOz_3TS;WPH&nM=kXnTR+vxvEMXwMZ~PP{L1 zSnzD({fILKPbJ=;I9>1*;sc07f+rI560E)B8ySCMF754Yf=3Y#C2kRX2=OrDgy3Ps zyyR$a6g-4@1aZCKLB!d_wSspd9!Xp!cp&jX#ASl}6Z2M2d$Hi&#N2AP7YP1pJn$jJ zxq?3-{v~l(@O#AE;;&j2QiFr$*JtX*9;$IVYd@bWooJ-s$cm?s{#4UoC z6OSTJ2)>7SG;yQgTZy@)Z?6}8192X4t>9(EM-W#DUP62%ahc$YiSvnz1)opMOT+d8 z!DkVVBhD3EPRv^j?P0;QiFt|Eo+)@L@p$5N!BdEjAr1+iNIZeK<0~0|;sW9}!J~+e zC2kRX2r)0k+7p6@5p%2D-Y9qo@nqt9!Gnm8Bd!&^6Y+0|s{{`uKAyNtaDU=L;$p$Q ziFr$>y+H6+M+5WHqCHpeC&VWbhXub!d=hb{;5Ud*CQcW;n)nprkl<&Di-jF^{F?Nx%85YHqo6MQi- z7ohfH!RHgtA}$bo7V&K2T*2kUrxAw*&nBKjoGExJ@m%6`!BdENDbyYkJdt=laYv_& zKXDmxo8VEzrxUjbK7_cOI3ai#@dDyT!9$2Ei0cIpB3?*bD|jd3Gl;7M4g z{fR4yiv{;4UPN3V_^YFU&mzth{0Z^d#9_hj5&xDrQ}7$a=Mbk0UQK*1aY*p9#Jr?y z@AyK-pSX&+P4Eih^N3pnFDE{qI3f5R;>E;`f^Q|hfVf`p4a6RCt>9(E7ZO(qUP62k zahc$YiK~f=1)on`LtG&EEaHoaa|M?ZM~K6MXA@sSoGExJag;b+@D$?T6Ndy(B)*im z<8v8*;#%T1!J~*TBW@9V2=Nl)gy3PsmlHP%9zuKtalPO{#7l{51@A2+;%kXRf}bV6 zj=1ALGXBK%#BG9C5MNK+B6vCR4a5n-_YmJm+$i`~;y)4B3%-H)&&0KYml5AYTqSr3 z@y*0#f-fd+ATAbsKJhKY1%l5azLhvva5?d9#9_g+iEk&)6g-vq4&rpdQ;6>*4hfz} zd>3)YXEOf8jl^w&M-ksm+#>i8;(Le_f`<{`OWY`U2=RTy^@0Zx$B1hM??ik*ah2eK z#19ac3GPqaL|iPmH}PMH3j}{P7I-;vuHa9IA0!S7evkOC#F>KMAdVBK3tmn9H{y`s zXNeyo?)X&3pEyC>CU^z$!^ACumlLlbP6)n-_z~hp!M74WN?b4a2I9wvYXvVOUP)Xf zcnR?;;xfS(6E_nV3qGItapD5OXAwU^oGZAT_(|fh;Mv4a5oZdXO8j@?biq@IpC%3o zo=E%;;*L*b{E1tL+XRmyeulV3@FB#{5+?)?BYuv!QScDre-hUV9z^^+ajoE;h+iPC z58-P2xtuw-UcaTrc%LHFc>=PFYKA*UqxIpk(#P1R33N9yppExXdHt`35PwY^7W^LZH^iBO-yr^$I9>2+ z;_rwjICfi#CFDK@!((MVs_Ym{d!uCeNw-WOe==OTS zHxTnxoAz44%ZT}kaeI~ECB%FMy1h*B#l(CyyuDcP`NVv+p}j!xS;Tx5p*>e{IWccx zw}%DKCgv;Q?U{n767x|@d%EB$#C(OiJtTM{F<)_N@Ayc@pO~-gwzml$Ma)Nc?Ja^2 zA?B+D?Fqrdi1`Sqy;1NG;_Zp+1rH+Lfw)%l4@(Q3TDxY?A(9@KU-Nc;^w3=)%8zEZ zHf#}E-Wy}#SK!(tKXT}|hYJ7Q5lnV?4T*m%R;`mC8L&IISfP+PzptMEr{ClJK0JSf zo*&oq-_i50xttGX%U^uxKqy1#l!~p;{EzZr@H4ng;ZKKkEBk&3+>4D**3a|XX}_^Y`eX42 z>G?J1bmrGA?8uKGjpTJi($KwMT(Skav9FJ0@t2|e0b@G+lh7OaHLH-hM|6vjKis`4OZMq|xy==huvH z!|83%bmm9TY4FEm%f(n0f?ZWZKhKXI*WmZVHe5L>jzUn%kLKajJRc(8ABSv|QJsI@ zqg6N&Lsau{4Qd)+SCe-|`wlG2A*7ZqQf06MI{eM0jC1Pzt>G4@;&VX2e>T27=b*om z?fDy=9Q}(Xjl|A6)uc+qnLv}yMD_+YX+)|FZPIWl15G*vSFv5%v-pE>VEm)my&@P~ z?k`YnN3v^o$7ldxh|tf2SVK)-D|)akKf18he+Ke~UIV9H;$y_tF-e?DQrj`@W*6xoJSwbUAK;fU~X7n0x!S);xJG;aF zBXqf|gmXrCf49fD{s%^Q0!&Eu*l+9zFG4>CMmS$QgFW_bHO$y2*$~`EUzzFe$c9LV z-oWhs%w~sPhW5)nZ#zK{02+vF@VR454?)%o_j*F08m{jjb_1J(q>@UJHsqI@q^^m0cYr>ra>HlZ^pjcofj-n&q>XjQJ5dv4PRV{s(z8QO}$_{l%m{oo&~p(itXx4f~J=IPEHV$7xqGer?GW&5d8< zl7_$Op^~Fm2@Rh}!|zJPuV&`%A21y2uvrg7g?-T7@v3FtqHrvUUbP&>b8cd3@y0*1 z(s-?s4MfrGfo#(pMoEkn)(uZpUMsU#d2L8^L5W^1r$=*HSj3a0hA}24(#TRuQHzg6 z>^B9*LsEN8_yq`ihR;3^O@Tf`vX@fjPfjjmQ8~?DAOomn9!VdMdTNH(a6iq6Gx2w2 z=OryKWBV2-ve5oY9!BDlEMA4pLA(@<|1CW+5*1;@Bb9$}vyl(*o@8%Fy$ortSBTt| z-rsIOH$aiDZEOZaVZ}VNCY~UQX8-d7^yDBcJSNg;_Tp7ABwi3u-Vf#SEjW?3LzuF1 z(WpE>AitDy?8id>Tl5AQr$}5hD$fnbZ>F5fr5|(TqEUHHKz<0#K8;b*6fD`Q3Hcvr7^QFfoxvmQsq@(uTzUFg1(fox;b2-vRT$_DLb_jb!pDRk{!WS)V&Ypo$9iA%D073OK& z2jds|JU1%Bh(}5%F?DtlOYisxFhHBG>&+!P>S=F#O&Ua)_^oIHa?Aj=vb?@&7(ZCh zMi7ZhqG6;3jDJ7I9~Ou-;*nAdsIwM$Int3{0^CaP)ax{igh@u@Wq@c-GtWe5B8p}| zR%KoMbJ%K!Q#9&dO#%6Jko&h|L9j~6R%K&AIfBab9i?QevLT>6hRQ-mDcP#54=9Jw z*q<@hjCG6^jmql+@`051r+gmtd_NYP?-VTAsw@jAPfQkkuv4&TR9+g8&#QwS5+nLMa?z-~ zI3VxG()-cuevH}*QNhySkfI+3KKQpB{G;@{B%jcJm|byG~Fk)@Pk8iX(#{2iT0ks;F~Cj8-V zq{cHrd!yOY&XJf#m0xa0MJE?ynwfEBEM%2eiNwUT8EQ_I#xzN4JcfJ3G*L&EQVol$ zSoFKE*qWp9I^ko&7a>rohZ*6yukj>Li}z|ZrZMsFds%XfMY%LzV_H5Bv4#sHF)as& z{snK+n5YON9x06|)Y*s<&!BNr&|S9c4$$q7_O{ooF^!48*{f2&8K5kd*SAVzT9_ab zmqcS)CK&$>j6W<8X~ZL?7Eos`@Y=402%8~rE4^d>s4=aTWHep~h+vk%GqLX>ie^{* z7Ou5L(q$r=t*(_8P@X{LE4Y@kb6B!f844(eQF*VUlx$UY*15H(Ew!`kPtF1<8kKhh z99E3kw~J(!QRQ!Chfar^v#gD0*LWG6Q>(m8BxaV4S97X$mPvw*xXvThR!7|-mBMH#>78{$4QG?*xfqIT6q|WOQJi6W-$J4 zZO})eB8+&X)W@l_J}$lEe}?X|UDwRH8TGWcy;hxNO#Exn1mu_jYGQePbI}{vMlk+wd9xxC6=}pHr4~?UE%2JJfvCo-2e;Cjw@hbQf+Y4>fS6tlJhLWVMikAS zR0-F*KIt;JIAXTCR$V}u4W(XyEWv)vdZK7lUK@~aL%Hm_r#W)bsJuEL--~j&02$%P zMWgbnfc!6K!tD3nPT3*Zs;mqsFQ+o$C?#8!WdY?LQ0k<-8^dNBC>oWQ2IPma;F(Ur zlC8?(fHH#xOIH*+1&c=Ig#q~|XQ1G1oPs4=l?4Iid??l8HOV;|iHk<%`2qPgEI8(L zuVkyzxWl%!C{Z>ScO*-U;*wars)~NJ%Bx0VE

    MzmPNh$M1@A|}$vQcB@@wMhIq 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

    h2c$I8NYJiKVnoMRa|!KD*NML* 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

    bFvv$u&uM$rJSq=7|*+}mX}Pi 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 literal 0 HcmV?d00001 diff --git a/converter/test-zlib/manifest.h b/converter/test-zlib/manifest.h new file mode 100644 index 0000000000..58db681a5f --- /dev/null +++ b/converter/test-zlib/manifest.h @@ -0,0 +1,234 @@ +#pragma once + +#include +#include +#include +#include + +namespace shadowdash { + +class Token { +public: + enum Type { LITERAL, VAR }; + + Token(Type type, std::string value) + : type_(type), value_(std::move(value)) { + //std::cout << "creating " << type << " : " << value_ << std::endl; + } + + Token(std::string value) : Token(Token::LITERAL, std::move(value)) { + //std::cout << "creating LITERAL: " << value_ << std::endl; + } + + Token(const char* value) : Token(Token::LITERAL, std::string(value)) { + //std::cout << "creating LITERAL: " << value << std::endl; + } + + Type type_; + std::string value_; +}; + +// Overload operator<< for Token +std::ostream& operator<<(std::ostream& os, const Token& token) { + os << (token.type_ == Token::LITERAL ? "LITERAL" : "VAR") << ": " << token.value_; + return os; +} + +Token operator"" _l(const char* value, std::size_t len) { + return Token(Token::Type::LITERAL, std::string(value, len)); +} + +Token operator"" _v(const char* value, std::size_t len) { + return Token(Token::Type::VAR, std::string(value, len)); +} + +class str { +public: + str(std::vector tokens) : tokens_(std::move(tokens)) { + //std::cout << "creating str: "; + for (const auto& token : tokens_) { + //std::cout << token << " "; + } + //std::cout << std::endl; + } + + std::vector tokens_; +}; + +// Overload operator<< for str +std::ostream& operator<<(std::ostream& os, const str& s) { + os << "str: ["; + for (const auto& token : s.tokens_) { + os << token << ", "; + } + os << "]"; + return os; +} + +using binding = std::pair; +using map = std::vector; + +class list { +public: + list(std::vector values) : values_(std::move(values)) { + //std::cout << "creating list: "; + for (const auto& value : values_) { + //std::cout << value << " "; + } + //std::cout << std::endl; + } + + std::vector values_; +}; + +// Overload operator<< for list +std::ostream& operator<<(std::ostream& os, const list& l) { + os << "list: ["; + for (const auto& value : l.values_) { + os << value << ", "; + } + os << "]"; + return os; +} + +class var { +public: + var(const char* name, str value) : name_(name), value_(std::move(value)) {} + + const char* name_; + str value_; +}; + +// Overload operator<< for var +std::ostream& operator<<(std::ostream& os, const var& v) { + os << "var: " << v.name_ << ", " << v.value_; + return os; +} + + +class rule { +public: + enum SPECIAL_RULE { + phony + }; + + union _rule { + _rule() : sp_rule(phony) {} + _rule(map bindings) : bindings_(std::move(bindings)) {} + _rule(SPECIAL_RULE sr) : sp_rule(sr) {} + ~_rule() {} + + map bindings_; + SPECIAL_RULE sp_rule; + } _rule_data; + bool is_special; + + rule(map bindings) : _rule_data(std::move(bindings)), is_special(false) {} + rule(SPECIAL_RULE sp_rule) : _rule_data(sp_rule), is_special(true) {} + + rule(const rule& other) : is_special(other.is_special) { + if (is_special) { + new (&_rule_data) _rule(other._rule_data.sp_rule); // Copy the special rule + } else { + new (&_rule_data) _rule(other._rule_data.bindings_); // Copy the bindings map + } + } +}; + +// Overload operator<< for rule +std::ostream& operator<<(std::ostream& os, const rule& r) { + os << "rule: ["; + if(r.is_special) + os << r._rule_data.sp_rule; + else { + for (const auto& binding : r._rule_data.bindings_) { + os << binding.first << ": " << binding.second << ", "; + } + } + os << "]"; + return os; +} + +class build { +public: + build( + list outputs, + list implicit_outputs, + rule rule, + list inputs, + list implicit_inputs, + list order_only_inputs, + map bindings) + : outputs_(std::move(outputs)), + implicit_outputs_(std::move(implicit_outputs)), + rule_(rule), + inputs_(std::move(inputs)), + implicit_inputs_(std::move(implicit_inputs)), + order_only_inputs_(std::move(order_only_inputs)), + bindings_(std::move(bindings)) { + //std::cout << "creating build: "; + //std::cout << "creating build outputs: "; + //std::cout << this->outputs_ << std::endl; + } + + list outputs_; + list implicit_outputs_; + rule rule_; + list inputs_; + list implicit_inputs_; + list order_only_inputs_; + map bindings_; +}; + +// Overload operator<< for build +std::ostream& operator<<(std::ostream& os, const build& b) { + os << "build: { " + << "outputs: " << b.outputs_ << ", " + << "implicit_outputs: " << b.implicit_outputs_ << ", " + << "rule: " << b.rule_ << ", " + << "inputs: " << b.inputs_ << ", " + << "implicit_inputs: " << b.implicit_inputs_ << ", " + << "order_only_inputs: " << b.order_only_inputs_ << ", " + << "bindings: ["; + for (const auto& binding : b.bindings_) { + os << binding.first << ": " << binding.second << ", "; + } + os << "] }"; + return os; +} + +class buildGroup { +public: + buildGroup(std::vector builds) : builds(std::move(builds)) {} + + std::vector builds; +}; + +// Overload operator<< for buildGroup +std::ostream& operator<<(std::ostream& os, const buildGroup& bg) { + os << "buildGroup: ["; + for (const auto& b : bg.builds) { + os << b << ", "; + } + os << "]"; + return os; +} + +static auto in = "in"_v; +static auto out = "out"_v; + +} // namespace shadowdash + +#define let(name, ...) \ + var name { \ + #name, str { \ + __VA_ARGS__ \ + } \ + } + +#define bind(name, ...) \ + { \ + #name, str { \ + __VA_ARGS__ \ + } \ + } diff --git a/converter/test-zlib/output.cc b/converter/test-zlib/output.cc new file mode 100644 index 0000000000..adf7a13c02 --- /dev/null +++ b/converter/test-zlib/output.cc @@ -0,0 +1,865 @@ +#include "manifest.h" + +using namespace shadowdash; + +extern "C" { + buildGroup manifest() { + + let(ninja_required_version, {"1.5"}); + + auto C_COMPILER__zlib_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_SHARED_LIBRARY_LINKER__zlib_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","-fPIC","LANGUAGE_COMPILE_FLAGS"_v,"ARCH_FLAGS"_v,"LINK_FLAGS"_v,"-shared","SONAME_FLAG"_v,"-o","TARGET_FILE"_v,"in"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) + }}; + + auto CMAKE_SYMLINK_LIBRARY = rule{{ + bind(command, {"/usr/bin/cmake","-E","cmake_symlink_library","in"_v,"SONAME"_v,"out"_v,"&&","POST_BUILD"_v}) + }}; + + auto C_COMPILER__zlibstatic_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_STATIC_LIBRARY_LINKER__zlibstatic_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cmake","-E","rm","-f","TARGET_FILE"_v,"&&","/usr/bin/ar","qc","TARGET_FILE"_v,"LINK_FLAGS"_v,"in"_v,"&&","/usr/bin/ranlib","TARGET_FILE"_v,"&&","POST_BUILD"_v}) + }}; + + auto C_COMPILER__example_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_EXECUTABLE_LINKER__example_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) + }}; + + auto C_COMPILER__minigzip_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_EXECUTABLE_LINKER__minigzip_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) + }}; + + auto C_COMPILER__example64_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_EXECUTABLE_LINKER__example64_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) + }}; + + auto C_COMPILER__minigzip64_ = rule{{ + bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) + }}; + + auto C_EXECUTABLE_LINKER__minigzip64_ = rule{{ + bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) + }}; + + auto CUSTOM_COMMAND = rule{{ + bind(command, {"COMMAND"_v}) + }}; + + auto RERUN_CMAKE = rule{{ + bind(command, {"/usr/bin/cmake","--regenerate-during-build","-S/home/opensource/zlib","-B/home/opensource/zlib"}) + }}; + + auto CLEAN = rule{{ + bind(command, {"/usr/bin/ninja","FILE_ARG"_v,"-t","clean","TARGETS"_v}) + }}; + + auto HELP = rule{{ + bind(command, {"/usr/bin/ninja","-t","targets"}) + }}; + + let(cmake_ninja_workdir, {"/home/opensource/zlib/"}); + + auto build1 = build(list{{str{{"cmake_object_order_depends_target_zlib"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/zlib.dir"}} } }, + list{{}}, + list{{}}, + {}); + + auto build2 = build(list{{str{{"CMakeFiles/zlib.dir/adler32.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/adler32.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/adler32.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build3 = build(list{{str{{"CMakeFiles/zlib.dir/compress.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/compress.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/compress.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build4 = build(list{{str{{"CMakeFiles/zlib.dir/crc32.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/crc32.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/crc32.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build5 = build(list{{str{{"CMakeFiles/zlib.dir/deflate.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/deflate.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/deflate.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build6 = build(list{{str{{"CMakeFiles/zlib.dir/gzclose.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/gzclose.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzclose.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build7 = build(list{{str{{"CMakeFiles/zlib.dir/gzlib.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/gzlib.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzlib.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build8 = build(list{{str{{"CMakeFiles/zlib.dir/gzread.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/gzread.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzread.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build9 = build(list{{str{{"CMakeFiles/zlib.dir/gzwrite.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/gzwrite.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzwrite.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build10 = build(list{{str{{"CMakeFiles/zlib.dir/inflate.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/inflate.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/inflate.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build11 = build(list{{str{{"CMakeFiles/zlib.dir/infback.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/infback.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/infback.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build12 = build(list{{str{{"CMakeFiles/zlib.dir/inftrees.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/inftrees.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/inftrees.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build13 = build(list{{str{{"CMakeFiles/zlib.dir/inffast.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/inffast.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/inffast.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build14 = build(list{{str{{"CMakeFiles/zlib.dir/trees.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/trees.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/trees.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build15 = build(list{{str{{"CMakeFiles/zlib.dir/uncompr.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/uncompr.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/uncompr.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build16 = build(list{{str{{"CMakeFiles/zlib.dir/zutil.c.o"}}}}, + list{{}}, + C_COMPILER__zlib_, + list{{ str{{"/home/opensource/zlib/zutil.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlib.dir/zutil.c.o.d"}), + bind(FLAGS, {"-fPIC"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) + }); + + auto build17 = build(list{{str{{"libz.so.1.3.1.1-motley"}}}}, + list{{}}, + C_SHARED_LIBRARY_LINKER__zlib_, + list{{ str{{"CMakeFiles/zlib.dir/adler32.c.o"}}, str{{"CMakeFiles/zlib.dir/compress.c.o"}}, str{{"CMakeFiles/zlib.dir/crc32.c.o"}}, str{{"CMakeFiles/zlib.dir/deflate.c.o"}}, str{{"CMakeFiles/zlib.dir/gzclose.c.o"}}, str{{"CMakeFiles/zlib.dir/gzlib.c.o"}}, str{{"CMakeFiles/zlib.dir/gzread.c.o"}}, str{{"CMakeFiles/zlib.dir/gzwrite.c.o"}}, str{{"CMakeFiles/zlib.dir/inflate.c.o"}}, str{{"CMakeFiles/zlib.dir/infback.c.o"}}, str{{"CMakeFiles/zlib.dir/inftrees.c.o"}}, str{{"CMakeFiles/zlib.dir/inffast.c.o"}}, str{{"CMakeFiles/zlib.dir/trees.c.o"}}, str{{"CMakeFiles/zlib.dir/uncompr.c.o"}}, str{{"CMakeFiles/zlib.dir/zutil.c.o"}} } }, + list{{}}, + list{{}}, + { bind(LINK_FLAGS, {"-Wl,--version-script,\"/home/opensource/zlib/zlib.map\""}), + bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(SONAME, {"libz.so.1"}), + bind(SONAME_FLAG, {"-Wl,-soname,"}), + bind(TARGET_FILE, {"libz.so.1.3.1.1-motley"}), + bind(TARGET_PDB, {"z.so.dbg"}) + }); + + auto build18 = build(list{{str{{"libz.so.1"}}, str{{"libz.so"}}}}, + list{{}}, + CMAKE_SYMLINK_LIBRARY, + list{{ str{{"libz.so.1.3.1.1-motley"}} } }, + list{{}}, + list{{}}, + { bind(POST_BUILD, {":"}) + }); + + auto build19 = build(list{{str{{"cmake_object_order_depends_target_zlibstatic"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/zlibstatic.dir"}} } }, + list{{}}, + list{{}}, + {}); + + auto build20 = build(list{{str{{"CMakeFiles/zlibstatic.dir/adler32.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/adler32.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/adler32.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build21 = build(list{{str{{"CMakeFiles/zlibstatic.dir/compress.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/compress.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/compress.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build22 = build(list{{str{{"CMakeFiles/zlibstatic.dir/crc32.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/crc32.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/crc32.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build23 = build(list{{str{{"CMakeFiles/zlibstatic.dir/deflate.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/deflate.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/deflate.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build24 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzclose.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/gzclose.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzclose.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build25 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzlib.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/gzlib.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzlib.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build26 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzread.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/gzread.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzread.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build27 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzwrite.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/gzwrite.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzwrite.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build28 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inflate.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/inflate.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inflate.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build29 = build(list{{str{{"CMakeFiles/zlibstatic.dir/infback.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/infback.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/infback.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build30 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inftrees.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/inftrees.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inftrees.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build31 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inffast.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/inffast.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inffast.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build32 = build(list{{str{{"CMakeFiles/zlibstatic.dir/trees.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/trees.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/trees.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build33 = build(list{{str{{"CMakeFiles/zlibstatic.dir/uncompr.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/uncompr.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/uncompr.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build34 = build(list{{str{{"CMakeFiles/zlibstatic.dir/zutil.c.o"}}}}, + list{{}}, + C_COMPILER__zlibstatic_, + list{{ str{{"/home/opensource/zlib/zutil.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/zutil.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) + }); + + auto build35 = build(list{{str{{"libz.a"}}}}, + list{{}}, + C_STATIC_LIBRARY_LINKER__zlibstatic_, + list{{ str{{"CMakeFiles/zlibstatic.dir/adler32.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/compress.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/crc32.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/deflate.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzclose.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzlib.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzread.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzwrite.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inflate.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/infback.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inftrees.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inffast.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/trees.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/uncompr.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/zutil.c.o"}} } }, + list{{}}, + list{{}}, + { bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(TARGET_FILE, {"libz.a"}), + bind(TARGET_PDB, {"z.a.dbg"}) + }); + + auto build36 = build(list{{str{{"cmake_object_order_depends_target_example"}}}}, + list{{}}, + rule::phony, + list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + {}); + + auto build37 = build(list{{str{{"CMakeFiles/example.dir/test/example.c.o"}}}}, + list{{}}, + C_COMPILER__example_, + list{{ str{{"/home/opensource/zlib/test/example.c"}}, str{{"cmake_object_order_depends_target_example"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/example.dir/test/example.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/example.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/example.dir/test"}) + }); + + auto build38 = build(list{{str{{"example"}}}}, + list{{}}, + C_EXECUTABLE_LINKER__example_, + list{{ str{{"CMakeFiles/example.dir/test/example.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, + list{{}}, + list{{}}, + { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), + bind(OBJECT_DIR, {"CMakeFiles/example.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(TARGET_FILE, {"example"}), + bind(TARGET_PDB, {"example.dbg"}) + }); + + auto build39 = build(list{{str{{"cmake_object_order_depends_target_minigzip"}}}}, + list{{}}, + rule::phony, + list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + {}); + + auto build40 = build(list{{str{{"CMakeFiles/minigzip.dir/test/minigzip.c.o"}}}}, + list{{}}, + C_COMPILER__minigzip_, + list{{ str{{"/home/opensource/zlib/test/minigzip.c"}}, str{{"cmake_object_order_depends_target_minigzip"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/minigzip.dir/test/minigzip.c.o.d"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/minigzip.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/minigzip.dir/test"}) + }); + + auto build41 = build(list{{str{{"minigzip"}}}}, + list{{}}, + C_EXECUTABLE_LINKER__minigzip_, + list{{ str{{"CMakeFiles/minigzip.dir/test/minigzip.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, + list{{}}, + list{{}}, + { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), + bind(OBJECT_DIR, {"CMakeFiles/minigzip.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(TARGET_FILE, {"minigzip"}), + bind(TARGET_PDB, {"minigzip.dbg"}) + }); + + auto build42 = build(list{{str{{"cmake_object_order_depends_target_example64"}}}}, + list{{}}, + rule::phony, + list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + {}); + + auto build43 = build(list{{str{{"CMakeFiles/example64.dir/test/example.c.o"}}}}, + list{{}}, + C_COMPILER__example64_, + list{{ str{{"/home/opensource/zlib/test/example.c"}}, str{{"cmake_object_order_depends_target_example64"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/example64.dir/test/example.c.o.d"}), + bind(FLAGS, {"-D_FILE_OFFSET_BITS=64"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/example64.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/example64.dir/test"}) + }); + + auto build44 = build(list{{str{{"example64"}}}}, + list{{}}, + C_EXECUTABLE_LINKER__example64_, + list{{ str{{"CMakeFiles/example64.dir/test/example.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, + list{{}}, + list{{}}, + { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), + bind(OBJECT_DIR, {"CMakeFiles/example64.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(TARGET_FILE, {"example64"}), + bind(TARGET_PDB, {"example64.dbg"}) + }); + + auto build45 = build(list{{str{{"cmake_object_order_depends_target_minigzip64"}}}}, + list{{}}, + rule::phony, + list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, + list{{}}, + list{{}}, + {}); + + auto build46 = build(list{{str{{"CMakeFiles/minigzip64.dir/test/minigzip.c.o"}}}}, + list{{}}, + C_COMPILER__minigzip64_, + list{{ str{{"/home/opensource/zlib/test/minigzip.c"}}, str{{"cmake_object_order_depends_target_minigzip64"}} } }, + list{{}}, + list{{}}, + { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), + bind(DEP_FILE, {"CMakeFiles/minigzip64.dir/test/minigzip.c.o.d"}), + bind(FLAGS, {"-D_FILE_OFFSET_BITS=64"}), + bind(INCLUDES, {"-I/home/opensource/zlib"}), + bind(OBJECT_DIR, {"CMakeFiles/minigzip64.dir"}), + bind(OBJECT_FILE_DIR, {"CMakeFiles/minigzip64.dir/test"}) + }); + + auto build47 = build(list{{str{{"minigzip64"}}}}, + list{{}}, + C_EXECUTABLE_LINKER__minigzip64_, + list{{ str{{"CMakeFiles/minigzip64.dir/test/minigzip.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, + list{{}}, + list{{}}, + { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), + bind(OBJECT_DIR, {"CMakeFiles/minigzip64.dir"}), + bind(POST_BUILD, {":"}), + bind(PRE_LINK, {":"}), + bind(TARGET_FILE, {"minigzip64"}), + bind(TARGET_PDB, {"minigzip64.dbg"}) + }); + + auto build48 = build(list{{str{{"CMakeFiles/test.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/ctest --force-new-ctest-process"}), + bind(DESC, {"Running tests..."}), + bind(pool, {"console"}), + bind(restat, {"1"}) + }); + + auto build49 = build(list{{str{{"test"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/test.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build50 = build(list{{str{{"CMakeFiles/edit_cache.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available."}), + bind(DESC, {"No interactive CMake dialog available..."}), + bind(restat, {"1"}) + }); + + auto build51 = build(list{{str{{"edit_cache"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/edit_cache.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build52 = build(list{{str{{"CMakeFiles/rebuild_cache.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake --regenerate-during-build -S/home/opensource/zlib -B/home/opensource/zlib"}), + bind(DESC, {"Running CMake to regenerate build system..."}), + bind(pool, {"console"}), + bind(restat, {"1"}) + }); + + auto build53 = build(list{{str{{"rebuild_cache"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/rebuild_cache.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build54 = build(list{{str{{"list_install_components"}}}}, + list{{}}, + rule::phony, + list{{ } }, + list{{}}, + list{{}}, + {}); + + auto build55 = build(list{{str{{"CMakeFiles/install.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ str{{"all"}} } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -P cmake_install.cmake"}), + bind(DESC, {"Install the project..."}), + bind(pool, {"console"}), + bind(restat, {"1"}) + }); + + auto build56 = build(list{{str{{"install"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/install.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build57 = build(list{{str{{"CMakeFiles/install/local.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ str{{"all"}} } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake"}), + bind(DESC, {"Installing only the local directory..."}), + bind(pool, {"console"}), + bind(restat, {"1"}) + }); + + auto build58 = build(list{{str{{"install/local"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/install/local.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build59 = build(list{{str{{"CMakeFiles/install/strip.util"}}}}, + list{{}}, + CUSTOM_COMMAND, + list{{ str{{"all"}} } }, + list{{}}, + list{{}}, + { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake"}), + bind(DESC, {"Installing the project stripped..."}), + bind(pool, {"console"}), + bind(restat, {"1"}) + }); + + auto build60 = build(list{{str{{"install/strip"}}}}, + list{{}}, + rule::phony, + list{{ str{{"CMakeFiles/install/strip.util"}} } }, + list{{}}, + list{{}}, + {}); + + auto build61 = build(list{{str{{"zlib"}}}}, + list{{}}, + rule::phony, + list{{ str{{"libz.so"}} } }, + list{{}}, + list{{}}, + {}); + + auto build62 = build(list{{str{{"zlibstatic"}}}}, + list{{}}, + rule::phony, + list{{ str{{"libz.a"}} } }, + list{{}}, + list{{}}, + {}); + + auto build63 = build(list{{str{{"all"}}}}, + list{{}}, + rule::phony, + list{{ str{{"libz.so"}}, str{{"libz.a"}}, str{{"example"}}, str{{"minigzip"}}, str{{"example64"}}, str{{"minigzip64"}} } }, + list{{}}, + list{{}}, + {}); + + auto build64 = build(list{{str{{"build.ninja"}}}}, + list{{}}, + RERUN_CMAKE, + list{{ str{{"/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckTypeSize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake"}}, str{{"CMakeCache.txt"}}, str{{"CMakeFiles/3.22.1/CMakeCCompiler.cmake"}}, str{{"CMakeFiles/3.22.1/CMakeSystem.cmake"}}, str{{"CMakeLists.txt"}}, str{{"zconf.h.cmakein"}}, str{{"zlib.pc.cmakein"}} } }, + list{{}}, + list{{}}, + { bind(pool, {"console"}) + }); + + auto build65 = build(list{{str{{"/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckTypeSize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake"}}, str{{"CMakeCache.txt"}}, str{{"CMakeFiles/3.22.1/CMakeCCompiler.cmake"}}, str{{"CMakeFiles/3.22.1/CMakeSystem.cmake"}}, str{{"CMakeLists.txt"}}, str{{"zconf.h.cmakein"}}, str{{"zlib.pc.cmakein"}}}}, + list{{}}, + rule::phony, + list{{ } }, + list{{}}, + list{{}}, + {}); + + auto build66 = build(list{{str{{"clean"}}}}, + list{{}}, + CLEAN, + list{{ } }, + list{{}}, + list{{}}, + {}); + + auto build67 = build(list{{str{{"help"}}}}, + list{{}}, + HELP, + list{{ } }, + list{{}}, + list{{}}, + {}); + return buildGroup({build1, build2, build3, build4, build5, build6, build7, build8, build9, build10, build11, build12, build13, build14, build15, build16, build17, build18, build19, build20, build21, build22, build23, build24, build25, build26, build27, build28, build29, build30, build31, build32, build33, build34, build35, build36, build37, build38, build39, build40, build41, build42, build43, build44, build45, build46, build47, build48, build49, build50, build51, build52, build53, build54, build55, build56, build57, build58, build59, build60, build61, build62, build63, build64, build65, build66, build67}); + }} From 84934800634eb4b2d57f46a9e3ddd81b261192ba Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 27 Nov 2024 04:07:26 +0000 Subject: [PATCH 15/17] Remove unnecessary files, move others --- build.sh | 1 + converter/archive/convert.py | 98 -- converter/{test-zlib => include}/manifest.h | 0 converter/src/hooks.cpp | 21 - converter/src/main.cpp | 55 -- converter/src/manifest.h | 86 -- converter/test-zlib/compile.sh | 2 - converter/test-zlib/libmanifest.so | Bin 618896 -> 0 bytes converter/test-zlib/output.cc | 865 ------------------ converter/testing/build.ninja.cc | 36 - converter/testing/build.sh | 1 - .../{build.ninja => example.build.ninja} | 0 converter/testing/hello.cpp | 6 - converter/testing/manifest_example.cc | 46 - .../build.ninja => testing/zlib.build.ninja} | 0 15 files changed, 1 insertion(+), 1216 deletions(-) delete mode 100644 converter/archive/convert.py rename converter/{test-zlib => include}/manifest.h (100%) delete mode 100644 converter/src/hooks.cpp delete mode 100644 converter/src/main.cpp delete mode 100644 converter/src/manifest.h delete mode 100755 converter/test-zlib/compile.sh delete mode 100755 converter/test-zlib/libmanifest.so delete mode 100644 converter/test-zlib/output.cc delete mode 100644 converter/testing/build.ninja.cc delete mode 100755 converter/testing/build.sh rename converter/testing/{build.ninja => example.build.ninja} (100%) delete mode 100644 converter/testing/hello.cpp delete mode 100644 converter/testing/manifest_example.cc rename converter/{test-zlib/build.ninja => testing/zlib.build.ninja} (100%) diff --git a/build.sh b/build.sh index b09867ae76..4844434397 100755 --- a/build.sh +++ b/build.sh @@ -1,2 +1,3 @@ cmake -DCMAKE_BUILD_TYPE=Debug -B debug-build cmake --build debug-build --parallel --config Debug --target ninja +mv debug-build/ninja debug-build/shadowdash diff --git a/converter/archive/convert.py b/converter/archive/convert.py deleted file mode 100644 index 0dbbc98e27..0000000000 --- a/converter/archive/convert.py +++ /dev/null @@ -1,98 +0,0 @@ -import argparse - -def parse_ninja_file(ninja_file_content): - rules = {} - builds = [] - current_rule = None - default_target = None - - lines = ninja_file_content.splitlines() - - for line in lines: - line = line.strip() - if line.startswith("rule"): - current_rule = line.split()[1] - rules[current_rule] = {"command": None, "flags": "-O3"} - elif line.startswith("command ="): - if current_rule: - rules[current_rule]["command"] = line.split("=", 1)[1].strip() - elif line.startswith("flags ="): - if current_rule: - rules[current_rule]["flags"] = line.split("=", 1)[1].strip() - elif line.startswith("build"): - parts = line.split() - output, rule, inputs = parts[1], parts[2], parts[3:] - builds.append((output, rule, inputs)) - elif line.startswith("default"): - default_target = line.split()[1] - - return rules, builds, default_target - -def generate_manifest_cc(rules, builds, default_target): - cc_code = '#include "../manifest.h"\n\nusing namespace shadowdash;\n\nvoid manifest() {\n' - cc_code += f' let(flags, "{rules["compile"]["flags"]}");\n\n' - - for rule, details in rules.items(): - cc_code += f' auto {rule} = rule{{ {{\n' - command = details["command"].replace("$flags", '"flags"_v').replace("$in", "in").replace("$out", "out") - cc_code += f' bind(command, {command}), //\n' - cc_code += f' }} }};\n\n' - - for build in builds: - output, rule, inputs = build - inputs_str = ", ".join([f'str{{ "{inp}" }}' for inp in inputs]) - if rule == "compile" and "flags" in rules["compile"] and rules["compile"]["flags"] != "-O3": - cc_code += f' build(list{{ str{{ "{output}" }} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {rule}, //\n' - cc_code += f' list{{ {inputs_str} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{ bind(flags, "{rules["compile"]["flags"]}") }} //\n' - cc_code += f' );\n\n' - else: - cc_code += f' build(list{{ str{{ "{output}" }} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {rule}, //\n' - cc_code += f' list{{ {inputs_str} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{}} //\n' - cc_code += f' );\n\n' - - cc_code += f' build(list{{ str{{ "{default_target}" }} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' link, //\n' - cc_code += f' list{{ str{{ "{default_target}.o" }} }}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{}}, //\n' - cc_code += f' {{}} //\n' - cc_code += f' );\n' - - cc_code += '}\n' - return cc_code - -def main(): - # argument parser for input and output file names - parser = argparse.ArgumentParser(description="Convert a build.ninja file to a build.ninja.cc file.") - parser.add_argument('input_file', help="Path to the input build.ninja file") - parser.add_argument('output_file', help="Path to the output build.ninja.cc file") - - args = parser.parse_args() - - # read input file - with open(args.input_file, 'r') as f: - ninja_file_content = f.read() - - # parse the ninja file - rules, builds, default_target = parse_ninja_file(ninja_file_content) - - # generate the manifest.cc content - manifest_cc_content = generate_manifest_cc(rules, builds, default_target) - - # write the output to the file - with open(args.output_file, 'w') as f: - f.write(manifest_cc_content) - -if __name__ == "__main__": - main() diff --git a/converter/test-zlib/manifest.h b/converter/include/manifest.h similarity index 100% rename from converter/test-zlib/manifest.h rename to converter/include/manifest.h diff --git a/converter/src/hooks.cpp b/converter/src/hooks.cpp deleted file mode 100644 index 741b1a4a01..0000000000 --- a/converter/src/hooks.cpp +++ /dev/null @@ -1,21 +0,0 @@ - -void HandleRule(Rule* rule) -{ - // output string - std::string output = "auto " + rule.name_ + " = rule{{bind(command, \"g++\", \"flags\"_v, \"-c\", "; - - // Iterate over the parsed_ vector in the "command" binding - for (const auto& entry : rule.bindings_["command"].parsed_) { - if (entry.second == RAW) { - output += "\"" + entry.first + "\", "; // Add quotes for raw strings - } else if (entry.second == SPECIAL) { - output += entry.first + ", "; // No quotes for special variables - } - } - - // Finish the string - output += ")}};"; - - // Print the result - std::cout << output << std::endl; -} diff --git a/converter/src/main.cpp b/converter/src/main.cpp deleted file mode 100644 index be5f3603d4..0000000000 --- a/converter/src/main.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#include -#include -#include -#include - -// Assuming you have these constants -enum EvalStringType { RAW, SPECIAL }; - -// Example structures based on your description -struct EvalString { - std::string first; - EvalStringType second; -}; - -struct Binding { - std::vector parsed_; -}; - -struct Rule { - std::string name_; - std::map bindings_; -}; - -int main() { - // Simulate your object - Rule rule; - rule.name_ = "compile"; - rule.bindings_["command"].parsed_ = { - {"g++ -c ", RAW}, - {"in", SPECIAL}, - {" -o ", RAW}, - {"out", SPECIAL}, - {" ", RAW} - }; - - // Begin the output string - std::string output = "auto " + rule.name_ + " = rule{{bind(command, \"g++\", \"flags\"_v, \"-c\", "; - - // Iterate over the parsed_ vector in the "command" binding - for (const auto& entry : rule.bindings_["command"].parsed_) { - if (entry.second == RAW) { - output += "\"" + entry.first + "\", "; // Add quotes for raw strings - } else if (entry.second == SPECIAL) { - output += entry.first + ", "; // No quotes for special variables - } - } - - // Finish the string - output += ")}};"; - - // Print the result - std::cout << output << std::endl; - - return 0; -} diff --git a/converter/src/manifest.h b/converter/src/manifest.h deleted file mode 100644 index 81765814da..0000000000 --- a/converter/src/manifest.h +++ /dev/null @@ -1,86 +0,0 @@ -#pragma once - -#include -#include - -namespace shadowdash { - -class Token { - public: - enum Type { LITERAL, VAR }; - - constexpr Token(Type type, std::string_view value) - : type_(type), value_(value) {} - - constexpr Token(std::string_view value) : Token(Token::LITERAL, value) {} - - constexpr Token(const char* value) : Token(Token::LITERAL, value) {} - - Type type_; - std::string_view value_; -}; - -constexpr Token operator"" _l(const char* value, std::size_t len) { - return Token(Token::Type::LITERAL, { value, len }); -} - -constexpr Token operator"" _v(const char* value, std::size_t len) { - return Token(Token::Type::VAR, { value, len }); -} - -class str { - public: - str(std::initializer_list tokens) : tokens_(tokens) {} - std::initializer_list tokens_; -}; - -using binding = std::pair; -using map = std::initializer_list; - -class list { - public: - list(std::initializer_list values) : values_(values) {} - std::initializer_list values_; -}; - -class var { - public: - var(const char* name, str value) {} -}; - -class rule { - public: - rule(map bindings) {} -}; - -class build { - public: - build( // - list outputs, // - list implicit_outputs, // - rule& rule, // - list inputs, // - list implicit_inputs, // - list order_only_inputs, // - map bindings) // - {} -}; - -static constexpr auto in = "in"_v; -static constexpr auto out = "out"_v; - -} // namespace shadowdash - -#define let(name, ...) \ - var name { \ - #name, str { \ - __VA_ARGS__ \ - } \ - } - -#define bind(name, ...) \ - { \ - #name, str { \ - __VA_ARGS__ \ - } \ - } diff --git a/converter/test-zlib/compile.sh b/converter/test-zlib/compile.sh deleted file mode 100755 index b291e1b429..0000000000 --- a/converter/test-zlib/compile.sh +++ /dev/null @@ -1,2 +0,0 @@ -/root/opensource/ninja/debug-build/ninja >/dev/null -clang++ -shared -fPIC -o libmanifest.so output.cc 2>&1 diff --git a/converter/test-zlib/libmanifest.so b/converter/test-zlib/libmanifest.so deleted file mode 100755 index 0dac102fae055812364447080882670f95ef8778..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 618896 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

    el+b7F=g3F0{YrQ=zcsB7?#F>Jp5^qhME_e#@ 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

      MzmPNh$M1@A|}$vQcB@@wMhIq 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

      h2c$I8NYJiKVnoMRa|!KD*NML* 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

      bFvv$u&uM$rJSq=7|*+}mX}Pi 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 diff --git a/converter/test-zlib/output.cc b/converter/test-zlib/output.cc deleted file mode 100644 index adf7a13c02..0000000000 --- a/converter/test-zlib/output.cc +++ /dev/null @@ -1,865 +0,0 @@ -#include "manifest.h" - -using namespace shadowdash; - -extern "C" { - buildGroup manifest() { - - let(ninja_required_version, {"1.5"}); - - auto C_COMPILER__zlib_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_SHARED_LIBRARY_LINKER__zlib_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","-fPIC","LANGUAGE_COMPILE_FLAGS"_v,"ARCH_FLAGS"_v,"LINK_FLAGS"_v,"-shared","SONAME_FLAG"_v,"-o","TARGET_FILE"_v,"in"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) - }}; - - auto CMAKE_SYMLINK_LIBRARY = rule{{ - bind(command, {"/usr/bin/cmake","-E","cmake_symlink_library","in"_v,"SONAME"_v,"out"_v,"&&","POST_BUILD"_v}) - }}; - - auto C_COMPILER__zlibstatic_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_STATIC_LIBRARY_LINKER__zlibstatic_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cmake","-E","rm","-f","TARGET_FILE"_v,"&&","/usr/bin/ar","qc","TARGET_FILE"_v,"LINK_FLAGS"_v,"in"_v,"&&","/usr/bin/ranlib","TARGET_FILE"_v,"&&","POST_BUILD"_v}) - }}; - - auto C_COMPILER__example_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_EXECUTABLE_LINKER__example_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) - }}; - - auto C_COMPILER__minigzip_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_EXECUTABLE_LINKER__minigzip_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) - }}; - - auto C_COMPILER__example64_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_EXECUTABLE_LINKER__example64_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) - }}; - - auto C_COMPILER__minigzip64_ = rule{{ - bind(command, {"/usr/bin/cc","DEFINES"_v,"INCLUDES"_v,"FLAGS"_v,"-MD","-MT","out"_v,"-MF","DEP_FILE"_v,"-o","out"_v,"-c","in"_v}) - }}; - - auto C_EXECUTABLE_LINKER__minigzip64_ = rule{{ - bind(command, {"PRE_LINK"_v,"&&","/usr/bin/cc","FLAGS"_v,"LINK_FLAGS"_v,"in"_v,"-o","TARGET_FILE"_v,"LINK_PATH"_v,"LINK_LIBRARIES"_v,"&&","POST_BUILD"_v}) - }}; - - auto CUSTOM_COMMAND = rule{{ - bind(command, {"COMMAND"_v}) - }}; - - auto RERUN_CMAKE = rule{{ - bind(command, {"/usr/bin/cmake","--regenerate-during-build","-S/home/opensource/zlib","-B/home/opensource/zlib"}) - }}; - - auto CLEAN = rule{{ - bind(command, {"/usr/bin/ninja","FILE_ARG"_v,"-t","clean","TARGETS"_v}) - }}; - - auto HELP = rule{{ - bind(command, {"/usr/bin/ninja","-t","targets"}) - }}; - - let(cmake_ninja_workdir, {"/home/opensource/zlib/"}); - - auto build1 = build(list{{str{{"cmake_object_order_depends_target_zlib"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/zlib.dir"}} } }, - list{{}}, - list{{}}, - {}); - - auto build2 = build(list{{str{{"CMakeFiles/zlib.dir/adler32.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/adler32.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/adler32.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build3 = build(list{{str{{"CMakeFiles/zlib.dir/compress.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/compress.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/compress.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build4 = build(list{{str{{"CMakeFiles/zlib.dir/crc32.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/crc32.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/crc32.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build5 = build(list{{str{{"CMakeFiles/zlib.dir/deflate.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/deflate.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/deflate.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build6 = build(list{{str{{"CMakeFiles/zlib.dir/gzclose.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/gzclose.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzclose.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build7 = build(list{{str{{"CMakeFiles/zlib.dir/gzlib.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/gzlib.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzlib.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build8 = build(list{{str{{"CMakeFiles/zlib.dir/gzread.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/gzread.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzread.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build9 = build(list{{str{{"CMakeFiles/zlib.dir/gzwrite.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/gzwrite.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/gzwrite.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build10 = build(list{{str{{"CMakeFiles/zlib.dir/inflate.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/inflate.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/inflate.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build11 = build(list{{str{{"CMakeFiles/zlib.dir/infback.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/infback.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/infback.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build12 = build(list{{str{{"CMakeFiles/zlib.dir/inftrees.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/inftrees.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/inftrees.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build13 = build(list{{str{{"CMakeFiles/zlib.dir/inffast.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/inffast.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/inffast.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build14 = build(list{{str{{"CMakeFiles/zlib.dir/trees.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/trees.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/trees.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build15 = build(list{{str{{"CMakeFiles/zlib.dir/uncompr.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/uncompr.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/uncompr.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build16 = build(list{{str{{"CMakeFiles/zlib.dir/zutil.c.o"}}}}, - list{{}}, - C_COMPILER__zlib_, - list{{ str{{"/home/opensource/zlib/zutil.c"}}, str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-DZLIB_DLL -D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlib.dir/zutil.c.o.d"}), - bind(FLAGS, {"-fPIC"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlib.dir"}) - }); - - auto build17 = build(list{{str{{"libz.so.1.3.1.1-motley"}}}}, - list{{}}, - C_SHARED_LIBRARY_LINKER__zlib_, - list{{ str{{"CMakeFiles/zlib.dir/adler32.c.o"}}, str{{"CMakeFiles/zlib.dir/compress.c.o"}}, str{{"CMakeFiles/zlib.dir/crc32.c.o"}}, str{{"CMakeFiles/zlib.dir/deflate.c.o"}}, str{{"CMakeFiles/zlib.dir/gzclose.c.o"}}, str{{"CMakeFiles/zlib.dir/gzlib.c.o"}}, str{{"CMakeFiles/zlib.dir/gzread.c.o"}}, str{{"CMakeFiles/zlib.dir/gzwrite.c.o"}}, str{{"CMakeFiles/zlib.dir/inflate.c.o"}}, str{{"CMakeFiles/zlib.dir/infback.c.o"}}, str{{"CMakeFiles/zlib.dir/inftrees.c.o"}}, str{{"CMakeFiles/zlib.dir/inffast.c.o"}}, str{{"CMakeFiles/zlib.dir/trees.c.o"}}, str{{"CMakeFiles/zlib.dir/uncompr.c.o"}}, str{{"CMakeFiles/zlib.dir/zutil.c.o"}} } }, - list{{}}, - list{{}}, - { bind(LINK_FLAGS, {"-Wl,--version-script,\"/home/opensource/zlib/zlib.map\""}), - bind(OBJECT_DIR, {"CMakeFiles/zlib.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(SONAME, {"libz.so.1"}), - bind(SONAME_FLAG, {"-Wl,-soname,"}), - bind(TARGET_FILE, {"libz.so.1.3.1.1-motley"}), - bind(TARGET_PDB, {"z.so.dbg"}) - }); - - auto build18 = build(list{{str{{"libz.so.1"}}, str{{"libz.so"}}}}, - list{{}}, - CMAKE_SYMLINK_LIBRARY, - list{{ str{{"libz.so.1.3.1.1-motley"}} } }, - list{{}}, - list{{}}, - { bind(POST_BUILD, {":"}) - }); - - auto build19 = build(list{{str{{"cmake_object_order_depends_target_zlibstatic"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/zlibstatic.dir"}} } }, - list{{}}, - list{{}}, - {}); - - auto build20 = build(list{{str{{"CMakeFiles/zlibstatic.dir/adler32.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/adler32.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/adler32.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build21 = build(list{{str{{"CMakeFiles/zlibstatic.dir/compress.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/compress.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/compress.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build22 = build(list{{str{{"CMakeFiles/zlibstatic.dir/crc32.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/crc32.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/crc32.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build23 = build(list{{str{{"CMakeFiles/zlibstatic.dir/deflate.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/deflate.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/deflate.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build24 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzclose.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/gzclose.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzclose.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build25 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzlib.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/gzlib.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzlib.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build26 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzread.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/gzread.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzread.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build27 = build(list{{str{{"CMakeFiles/zlibstatic.dir/gzwrite.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/gzwrite.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/gzwrite.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build28 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inflate.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/inflate.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inflate.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build29 = build(list{{str{{"CMakeFiles/zlibstatic.dir/infback.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/infback.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/infback.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build30 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inftrees.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/inftrees.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inftrees.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build31 = build(list{{str{{"CMakeFiles/zlibstatic.dir/inffast.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/inffast.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/inffast.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build32 = build(list{{str{{"CMakeFiles/zlibstatic.dir/trees.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/trees.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/trees.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build33 = build(list{{str{{"CMakeFiles/zlibstatic.dir/uncompr.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/uncompr.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/uncompr.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build34 = build(list{{str{{"CMakeFiles/zlibstatic.dir/zutil.c.o"}}}}, - list{{}}, - C_COMPILER__zlibstatic_, - list{{ str{{"/home/opensource/zlib/zutil.c"}}, str{{"cmake_object_order_depends_target_zlibstatic"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/zlibstatic.dir/zutil.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/zlibstatic.dir"}) - }); - - auto build35 = build(list{{str{{"libz.a"}}}}, - list{{}}, - C_STATIC_LIBRARY_LINKER__zlibstatic_, - list{{ str{{"CMakeFiles/zlibstatic.dir/adler32.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/compress.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/crc32.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/deflate.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzclose.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzlib.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzread.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/gzwrite.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inflate.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/infback.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inftrees.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/inffast.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/trees.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/uncompr.c.o"}}, str{{"CMakeFiles/zlibstatic.dir/zutil.c.o"}} } }, - list{{}}, - list{{}}, - { bind(OBJECT_DIR, {"CMakeFiles/zlibstatic.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(TARGET_FILE, {"libz.a"}), - bind(TARGET_PDB, {"z.a.dbg"}) - }); - - auto build36 = build(list{{str{{"cmake_object_order_depends_target_example"}}}}, - list{{}}, - rule::phony, - list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - {}); - - auto build37 = build(list{{str{{"CMakeFiles/example.dir/test/example.c.o"}}}}, - list{{}}, - C_COMPILER__example_, - list{{ str{{"/home/opensource/zlib/test/example.c"}}, str{{"cmake_object_order_depends_target_example"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/example.dir/test/example.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/example.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/example.dir/test"}) - }); - - auto build38 = build(list{{str{{"example"}}}}, - list{{}}, - C_EXECUTABLE_LINKER__example_, - list{{ str{{"CMakeFiles/example.dir/test/example.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, - list{{}}, - list{{}}, - { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), - bind(OBJECT_DIR, {"CMakeFiles/example.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(TARGET_FILE, {"example"}), - bind(TARGET_PDB, {"example.dbg"}) - }); - - auto build39 = build(list{{str{{"cmake_object_order_depends_target_minigzip"}}}}, - list{{}}, - rule::phony, - list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - {}); - - auto build40 = build(list{{str{{"CMakeFiles/minigzip.dir/test/minigzip.c.o"}}}}, - list{{}}, - C_COMPILER__minigzip_, - list{{ str{{"/home/opensource/zlib/test/minigzip.c"}}, str{{"cmake_object_order_depends_target_minigzip"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/minigzip.dir/test/minigzip.c.o.d"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/minigzip.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/minigzip.dir/test"}) - }); - - auto build41 = build(list{{str{{"minigzip"}}}}, - list{{}}, - C_EXECUTABLE_LINKER__minigzip_, - list{{ str{{"CMakeFiles/minigzip.dir/test/minigzip.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, - list{{}}, - list{{}}, - { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), - bind(OBJECT_DIR, {"CMakeFiles/minigzip.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(TARGET_FILE, {"minigzip"}), - bind(TARGET_PDB, {"minigzip.dbg"}) - }); - - auto build42 = build(list{{str{{"cmake_object_order_depends_target_example64"}}}}, - list{{}}, - rule::phony, - list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - {}); - - auto build43 = build(list{{str{{"CMakeFiles/example64.dir/test/example.c.o"}}}}, - list{{}}, - C_COMPILER__example64_, - list{{ str{{"/home/opensource/zlib/test/example.c"}}, str{{"cmake_object_order_depends_target_example64"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/example64.dir/test/example.c.o.d"}), - bind(FLAGS, {"-D_FILE_OFFSET_BITS=64"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/example64.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/example64.dir/test"}) - }); - - auto build44 = build(list{{str{{"example64"}}}}, - list{{}}, - C_EXECUTABLE_LINKER__example64_, - list{{ str{{"CMakeFiles/example64.dir/test/example.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, - list{{}}, - list{{}}, - { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), - bind(OBJECT_DIR, {"CMakeFiles/example64.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(TARGET_FILE, {"example64"}), - bind(TARGET_PDB, {"example64.dbg"}) - }); - - auto build45 = build(list{{str{{"cmake_object_order_depends_target_minigzip64"}}}}, - list{{}}, - rule::phony, - list{{ str{{"cmake_object_order_depends_target_zlib"}} } }, - list{{}}, - list{{}}, - {}); - - auto build46 = build(list{{str{{"CMakeFiles/minigzip64.dir/test/minigzip.c.o"}}}}, - list{{}}, - C_COMPILER__minigzip64_, - list{{ str{{"/home/opensource/zlib/test/minigzip.c"}}, str{{"cmake_object_order_depends_target_minigzip64"}} } }, - list{{}}, - list{{}}, - { bind(DEFINES, {"-D_LARGEFILE64_SOURCE=1"}), - bind(DEP_FILE, {"CMakeFiles/minigzip64.dir/test/minigzip.c.o.d"}), - bind(FLAGS, {"-D_FILE_OFFSET_BITS=64"}), - bind(INCLUDES, {"-I/home/opensource/zlib"}), - bind(OBJECT_DIR, {"CMakeFiles/minigzip64.dir"}), - bind(OBJECT_FILE_DIR, {"CMakeFiles/minigzip64.dir/test"}) - }); - - auto build47 = build(list{{str{{"minigzip64"}}}}, - list{{}}, - C_EXECUTABLE_LINKER__minigzip64_, - list{{ str{{"CMakeFiles/minigzip64.dir/test/minigzip.c.o"}}, str{{"libz.so.1.3.1.1-motley"}}, str{{"libz.so"}}, str{{"libz.so"}} } }, - list{{}}, - list{{}}, - { bind(LINK_LIBRARIES, {"-Wl,-rpath,/home/opensource/zlib libz.so.1.3.1.1-motley"}), - bind(OBJECT_DIR, {"CMakeFiles/minigzip64.dir"}), - bind(POST_BUILD, {":"}), - bind(PRE_LINK, {":"}), - bind(TARGET_FILE, {"minigzip64"}), - bind(TARGET_PDB, {"minigzip64.dbg"}) - }); - - auto build48 = build(list{{str{{"CMakeFiles/test.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/ctest --force-new-ctest-process"}), - bind(DESC, {"Running tests..."}), - bind(pool, {"console"}), - bind(restat, {"1"}) - }); - - auto build49 = build(list{{str{{"test"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/test.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build50 = build(list{{str{{"CMakeFiles/edit_cache.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available."}), - bind(DESC, {"No interactive CMake dialog available..."}), - bind(restat, {"1"}) - }); - - auto build51 = build(list{{str{{"edit_cache"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/edit_cache.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build52 = build(list{{str{{"CMakeFiles/rebuild_cache.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake --regenerate-during-build -S/home/opensource/zlib -B/home/opensource/zlib"}), - bind(DESC, {"Running CMake to regenerate build system..."}), - bind(pool, {"console"}), - bind(restat, {"1"}) - }); - - auto build53 = build(list{{str{{"rebuild_cache"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/rebuild_cache.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build54 = build(list{{str{{"list_install_components"}}}}, - list{{}}, - rule::phony, - list{{ } }, - list{{}}, - list{{}}, - {}); - - auto build55 = build(list{{str{{"CMakeFiles/install.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ str{{"all"}} } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -P cmake_install.cmake"}), - bind(DESC, {"Install the project..."}), - bind(pool, {"console"}), - bind(restat, {"1"}) - }); - - auto build56 = build(list{{str{{"install"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/install.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build57 = build(list{{str{{"CMakeFiles/install/local.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ str{{"all"}} } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake"}), - bind(DESC, {"Installing only the local directory..."}), - bind(pool, {"console"}), - bind(restat, {"1"}) - }); - - auto build58 = build(list{{str{{"install/local"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/install/local.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build59 = build(list{{str{{"CMakeFiles/install/strip.util"}}}}, - list{{}}, - CUSTOM_COMMAND, - list{{ str{{"all"}} } }, - list{{}}, - list{{}}, - { bind(COMMAND, {"cd /home/opensource/zlib && /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake"}), - bind(DESC, {"Installing the project stripped..."}), - bind(pool, {"console"}), - bind(restat, {"1"}) - }); - - auto build60 = build(list{{str{{"install/strip"}}}}, - list{{}}, - rule::phony, - list{{ str{{"CMakeFiles/install/strip.util"}} } }, - list{{}}, - list{{}}, - {}); - - auto build61 = build(list{{str{{"zlib"}}}}, - list{{}}, - rule::phony, - list{{ str{{"libz.so"}} } }, - list{{}}, - list{{}}, - {}); - - auto build62 = build(list{{str{{"zlibstatic"}}}}, - list{{}}, - rule::phony, - list{{ str{{"libz.a"}} } }, - list{{}}, - list{{}}, - {}); - - auto build63 = build(list{{str{{"all"}}}}, - list{{}}, - rule::phony, - list{{ str{{"libz.so"}}, str{{"libz.a"}}, str{{"example"}}, str{{"minigzip"}}, str{{"example64"}}, str{{"minigzip64"}} } }, - list{{}}, - list{{}}, - {}); - - auto build64 = build(list{{str{{"build.ninja"}}}}, - list{{}}, - RERUN_CMAKE, - list{{ str{{"/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckTypeSize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake"}}, str{{"CMakeCache.txt"}}, str{{"CMakeFiles/3.22.1/CMakeCCompiler.cmake"}}, str{{"CMakeFiles/3.22.1/CMakeSystem.cmake"}}, str{{"CMakeLists.txt"}}, str{{"zconf.h.cmakein"}}, str{{"zlib.pc.cmakein"}} } }, - list{{}}, - list{{}}, - { bind(pool, {"console"}) - }); - - auto build65 = build(list{{str{{"/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckCSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckFunctionExists.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFile.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/CheckTypeSize.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/Linux.cmake"}}, str{{"/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake"}}, str{{"CMakeCache.txt"}}, str{{"CMakeFiles/3.22.1/CMakeCCompiler.cmake"}}, str{{"CMakeFiles/3.22.1/CMakeSystem.cmake"}}, str{{"CMakeLists.txt"}}, str{{"zconf.h.cmakein"}}, str{{"zlib.pc.cmakein"}}}}, - list{{}}, - rule::phony, - list{{ } }, - list{{}}, - list{{}}, - {}); - - auto build66 = build(list{{str{{"clean"}}}}, - list{{}}, - CLEAN, - list{{ } }, - list{{}}, - list{{}}, - {}); - - auto build67 = build(list{{str{{"help"}}}}, - list{{}}, - HELP, - list{{ } }, - list{{}}, - list{{}}, - {}); - return buildGroup({build1, build2, build3, build4, build5, build6, build7, build8, build9, build10, build11, build12, build13, build14, build15, build16, build17, build18, build19, build20, build21, build22, build23, build24, build25, build26, build27, build28, build29, build30, build31, build32, build33, build34, build35, build36, build37, build38, build39, build40, build41, build42, build43, build44, build45, build46, build47, build48, build49, build50, build51, build52, build53, build54, build55, build56, build57, build58, build59, build60, build61, build62, build63, build64, build65, build66, build67}); - }} diff --git a/converter/testing/build.ninja.cc b/converter/testing/build.ninja.cc deleted file mode 100644 index 5ba0658574..0000000000 --- a/converter/testing/build.ninja.cc +++ /dev/null @@ -1,36 +0,0 @@ -#include "../manifest.h" - -using namespace shadowdash; - -void manifest() { - - let(flags, "-O3"); - - auto compile = rule{ { - bind(command, "g++", "flags"_v, "-c", "in"_v, "-o", "out"_v), // - } }; - - auto link = rule{ { - bind(command, "g++", "in"_v, "-o", "out"_v), // - } }; - - build(list{ str{ "hello.o" } }, // - {}, // - compile, // - list{ str{ "hello.cc" } }, // - {}, // - {}, // - { bind(flags, "-O2") } // - ); - - build(list{ str{ "hello" } }, // - {}, // - link, // - list{ str{ "hello.o" } }, // - {}, // - {}, // - {} // - ); - - default(str("hello")); -} diff --git a/converter/testing/build.sh b/converter/testing/build.sh deleted file mode 100755 index 9f8a962ab7..0000000000 --- a/converter/testing/build.sh +++ /dev/null @@ -1 +0,0 @@ -g++ -fPIC -shared -o libmanifest.so build.ninja.cc diff --git a/converter/testing/build.ninja b/converter/testing/example.build.ninja similarity index 100% rename from converter/testing/build.ninja rename to converter/testing/example.build.ninja diff --git a/converter/testing/hello.cpp b/converter/testing/hello.cpp deleted file mode 100644 index e9753d4812..0000000000 --- a/converter/testing/hello.cpp +++ /dev/null @@ -1,6 +0,0 @@ -#include - -auto main() -> int{ - std::cout << "Hell, Ninja!" << '\n'; - return 0; -} diff --git a/converter/testing/manifest_example.cc b/converter/testing/manifest_example.cc deleted file mode 100644 index 4fdb41cbc9..0000000000 --- a/converter/testing/manifest_example.cc +++ /dev/null @@ -1,46 +0,0 @@ -#include "manifest.h" - -manifest() { - rule( - compile, - bind(command, {"g++", "-c", "in"_v, "-o", "out"_v, "-MD", "-MF", "depfile"_v}), - bind(depfile, {"out"_v, ".d"}), - bind(deps, {"gcc"}), - ); - - rule( - link, - bind(command, {"g++", "in"_v, "-o", "out"_v}), - ); - - auto build1 = build(list(str("hello.o"), str("hello2.o")), - list(), - compile, - list(str("hello.c")), - list(), - list(), - { bind(test, {"123"}) } - ); - - auto build2 = build(list(str("hello")), - list(), - link, - list(str("hello.o")), - list(), - list(), - { } - ); - - auto build3 = build(list(str("hello.d")), - list(), - phony, - list(), - list(), - list(), - { } - ); - - default(str("test")); - - ShadowDash({ build1, build2, build3 }, {pool1, pool2, pool3}, default_target); -} diff --git a/converter/test-zlib/build.ninja b/converter/testing/zlib.build.ninja similarity index 100% rename from converter/test-zlib/build.ninja rename to converter/testing/zlib.build.ninja From 3804bacd99d3b094893f64cc1b6db3561a7f63bd Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 27 Nov 2024 04:52:29 +0000 Subject: [PATCH 16/17] Create test suite --- converter/run-tests.sh | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 converter/run-tests.sh diff --git a/converter/run-tests.sh b/converter/run-tests.sh new file mode 100755 index 0000000000..daa69d5fc4 --- /dev/null +++ b/converter/run-tests.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +CONVERTER=../debug-build/shadowdash +TEST_DIR=testing/ + +# Build converter +cd .. +/bin/bash build.sh +cd converter + +# Run tests +# loop through each test build.ninja file +for input_file in "$TEST_DIR"/*; do + # extract the base filename (e.g., "test1" from "test_inputs/test1.txt") + base_name=$(basename "$input_file") + + # run the binary, passing the input file and directing output to the output directory + $CONVERTER -f "$input_file" > output.cc + + # check if the binary exited successfully + if [ $? -ne 0 ]; then + echo "test failed for $base_name: non-zero exit code" + continue + fi + + # check if compilation works of the converter generated output.cc + clang++ -shared -fPIC -o libmanifest.so -I include/ output.cc + # check if the binary exited successfully + if [ $? -ne 0 ]; then + echo "test failed for $base_name: unable to compile it" + continue + fi + echo "test passed for $base_name" + + # cleanup + rm -f output.cc libmanifest.so +done From 559c9a4fdddebbc64959d666d30eb141a5490e4b Mon Sep 17 00:00:00 2001 From: mayank-ramnani Date: Wed, 27 Nov 2024 05:01:42 +0000 Subject: [PATCH 17/17] Update readme --- README.md | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index d9f883a5a8..b4869211b0 100644 --- a/README.md +++ b/README.md @@ -3,17 +3,35 @@ ```sh ./build.sh ``` -This will create the converter in the `debug-build` directory with debug symbols. +This will create the converter in the `debug-build` directory with debug symbols with the name 'shadowdash'. ## Run ```sh -./debug-build/ninja +./debug-build/shadowdash -f ``` -Run the above in a directory where a `build.ninja` file is present +If `-f` argument is not given, it will use the `build.ninja` file in the current working directory. +Output file is named `output.cc`. Output is also printed on stdout. -## Testing +## Test Suite ```sh -cd converter/testing/ -../../debug-build/ninja +cd converter +./run-tests.sh ``` -This will run the converter on the hello world example `build.ninja` file and produce `output.cc` as a result. +This will run the converter with input `build.ninja` files from the `converter/testing/` directory. + +## Directory Structure +```sh +- README.md # readme for the converter +- build.sh # builds the converter binary in debug-build/ folder with the name shadowdash +- src/ # contains the converter source code, previously contained ninja source code +- converter/ + - include/ + - manifest.h # contains definitions for shadowdash namespace that are required to compile the output of the converter into a library + - testing/ + - example.build.ninja + - example.zlib.ninja + - run-tests.sh +``` + +## Converter Implementation +- The converter converts any given `build.ninja` to Team 5's single file language spec.