X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=nucleus%2Ftools%2Fclam_tools%2Fwrite_build_config.cpp;h=6713ed637077cd82b0a1745f55dd1bc94dcd5ca0;hb=0d8e705a6a2a756c52cf8ad1d9c4d2b77d182d8b;hp=b8bfd80c1ee8c8d647c0a3ffb16067fdf741bbca;hpb=8b34a57d8ece6752ba5deb3e365369bbb3ba44b9;p=feisty_meow.git diff --git a/nucleus/tools/clam_tools/write_build_config.cpp b/nucleus/tools/clam_tools/write_build_config.cpp index b8bfd80c..6713ed63 100644 --- a/nucleus/tools/clam_tools/write_build_config.cpp +++ b/nucleus/tools/clam_tools/write_build_config.cpp @@ -206,12 +206,15 @@ if (read < 1) LOG("why is existing header contentless?"); if (write_header) { // we actually want to blast out a new file. byte_filer build_header(filename, "wb"); - if (!build_header.good()) - non_continuable_error(static_class_name(), func, astring("failed to create " + if (!build_header.good()) { + continuable_error(static_class_name(), func, astring("could not create " "build header file in ") + build_header.name()); - build_header.write(new_contents); - LOG(astring(static_class_name()) + ": wrote config to " - + build_header.name()); + return false; + } else { + build_header.write(new_contents); + LOG(astring(static_class_name()) + ": wrote config to " + + build_header.name()); + } } else { // nothing has changed. // LOG(astring(static_class_name()) + ": config already up to date in " @@ -245,8 +248,10 @@ int write_build_config::execute() // find our storage area for the build headers. we know a couple build // configurations by now, but this should really be coming out of a config // file instead. - astring genstore_directory = environment::get("FEISTY_MEOW_GENERATED_STORE"); - if (!filename(genstore_directory).good()) { + astring versions_directory = environment::get("FEISTY_MEOW_GENERATED_STORE"); + // we keep our version files one level below the top of the generated store. + versions_directory += "/versions"; + if (!filename(versions_directory).good()) { non_continuable_error(static_class_name(), func, astring("failed to locate the library folder storing the generated files.")); } @@ -254,8 +259,8 @@ int write_build_config::execute() // these are very specific paths, but they really are where we expect to // see the headers. - astring cfg_header_filename = genstore_directory + "/__build_configuration.h"; - astring ver_header_filename = genstore_directory + "/__build_version.h"; + astring cfg_header_filename = versions_directory + "/__build_configuration.h"; + astring ver_header_filename = versions_directory + "/__build_version.h"; // open the ini file for reading. byte_filer ini(fname, "r"); @@ -378,17 +383,6 @@ int write_build_config::execute() LOG(astring("failed writing output file ") + ver_header_filename); } - // now make a copy into the library folder, for when we release a production version. - astring library_directory = repodir + "/nucleus/library"; - astring cfg_header_copy = library_directory + "/__build_configuration.h"; - astring ver_header_copy = library_directory + "/__build_version.h"; - if (!write_output_file(cfg_header_copy, cfg_accumulator)) { - LOG(astring("skipping copy due to read-only issue on output file: ") + cfg_header_copy); - } - if (!write_output_file(ver_header_copy, ver_accumulator)) { - LOG(astring("skipping copy due to read-only issue on output file: ") + ver_header_copy); - } - return 0; }