Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVojtech Kral <vojtech@kral.hk>2019-08-19 11:35:18 +0300
committerVojtech Kral <vojtech@kral.hk>2019-08-19 18:04:14 +0300
commitbaaf66d138f3be357bbc4beb12c804c84b743c48 (patch)
treeba71e9ba4bd4a3f5c8febbdb42de379ae2c81979 /src/avrdude
parent745182988d5edc06ef3d9c0ea1a2265a04d79a88 (diff)
avrdude: conf-generate: Fix line endings - always generate LF endings
avrdude configuration embedding tool was generating platform specific line endings in avrdude-slic3r.conf.h
Diffstat (limited to 'src/avrdude')
-rw-r--r--src/avrdude/CMakeLists.txt2
-rw-r--r--src/avrdude/conf-generate.cpp36
2 files changed, 22 insertions, 16 deletions
diff --git a/src/avrdude/CMakeLists.txt b/src/avrdude/CMakeLists.txt
index a1930ad5f..f2204db0c 100644
--- a/src/avrdude/CMakeLists.txt
+++ b/src/avrdude/CMakeLists.txt
@@ -86,7 +86,7 @@ add_executable(avrdude-conf-gen conf-generate.cpp)
add_custom_command(
DEPENDS avrdude-conf-gen ${CMAKE_CURRENT_SOURCE_DIR}/avrdude-slic3r.conf
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/avrdude-slic3r.conf.h
- COMMAND $<TARGET_FILE:avrdude-conf-gen> avrdude-slic3r.conf avrdude_slic3r_conf > avrdude-slic3r.conf.h
+ COMMAND $<TARGET_FILE:avrdude-conf-gen> avrdude-slic3r.conf avrdude_slic3r_conf avrdude-slic3r.conf.h
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
diff --git a/src/avrdude/conf-generate.cpp b/src/avrdude/conf-generate.cpp
index 4aa80ae0a..1e05db5ce 100644
--- a/src/avrdude/conf-generate.cpp
+++ b/src/avrdude/conf-generate.cpp
@@ -6,36 +6,42 @@
int main(int argc, char const *argv[])
{
- if (argc != 3) {
- std::cerr << "Usage: " << argv[0] << " <file> <symbol name>" << std::endl;
+ if (argc != 4) {
+ std::cerr << "Usage: " << argv[0] << " <file> <symbol name> <output file>" << std::endl;
return -1;
}
- const char* filename = argv[1];
+ const char* filename_in = argv[1];
const char* symbol = argv[2];
+ const char* filename_out = argv[3];
size_t size = 0;
- std::fstream file(filename);
+ std::fstream file(filename_in, std::ios::in | std::ios::binary);
if (!file.good()) {
- std::cerr << "Cannot read file: " << filename << std::endl;
+ std::cerr << "Cannot read file: " << filename_in << std::endl;
}
- std::cout << "/* WARN: This file is auto-generated from `" << filename << "` */" << std::endl;
- std::cout << "const unsigned char " << symbol << "[] = {";
+ std::fstream output(filename_out, std::ios::out | std::ios::trunc | std::ios::binary);
+ if (!output.good()) {
+ std::cerr << "Cannot open output file: " << filename_out << std::endl;
+ }
+
+ output << "/* WARN: This file is auto-generated from `" << filename_in << "` */" << std::endl;
+ output << "const unsigned char " << symbol << "[] = {";
char c;
- std::cout << std::hex;
- std::cout.fill('0');
+ output << std::hex;
+ output.fill('0');
for (file.get(c); !file.eof(); size++, file.get(c)) {
- if (size % 12 == 0) { std::cout << "\n "; }
- std::cout << "0x" << std::setw(2) << (unsigned)c << ", ";
+ if (size % 12 == 0) { output << "\n "; }
+ output << "0x" << std::setw(2) << (unsigned)c << ", ";
}
- std::cout << "\n 0, 0\n};\n";
+ output << "\n 0, 0\n};\n";
- std::cout << std::dec;
- std::cout << "const size_t " << symbol << "_size = " << size << ";" << std::endl;
- std::cout << "const size_t " << symbol << "_size_yy = " << size + 2 << ";" << std::endl;
+ output << std::dec;
+ output << "const size_t " << symbol << "_size = " << size << ";" << std::endl;
+ output << "const size_t " << symbol << "_size_yy = " << size + 2 << ";" << std::endl;
return 0;
}