fix for windows path

This commit is contained in:
gmanricks 2024-04-20 14:51:21 +03:00 committed by myrtle
parent 0dc4bcb203
commit f99346ba61
3 changed files with 20 additions and 3 deletions

View File

@ -197,7 +197,7 @@ void init_share_dirname()
npnr_share_dirname = proc_share_path; npnr_share_dirname = proc_share_path;
return; return;
} }
proc_share_path = proc_self_path + "..\\share\\"; proc_share_path = proc_self_path + "..\\share\\" + "nextpnr\\";
if (check_file_exists(proc_share_path, true)) { if (check_file_exists(proc_share_path, true)) {
npnr_share_dirname = proc_share_path; npnr_share_dirname = proc_share_path;
return; return;

View File

@ -61,8 +61,15 @@ void Arch::load_chipdb(const std::string &path)
if (!args.chipdb_override.empty()) { if (!args.chipdb_override.empty()) {
db_path = args.chipdb_override; db_path = args.chipdb_override;
} else { } else {
std::string separator;
#if defined(_WIN32)
separator = "\\";
#else
separator = "/";
#endif
db_path = proc_share_dirname(); db_path = proc_share_dirname();
db_path += "/himbaechel/"; db_path += "himbaechel";
db_path += separator;
db_path += path; db_path += path;
} }
try { try {

View File

@ -128,7 +128,17 @@ void GowinImpl::init_database(Arch *arch)
} }
} }
arch->load_chipdb(stringf("gowin/chipdb-%s.bin", family.c_str())); char separator;
#if defined(_WIN32)
separator = '\\';
#else
separator = '/';
#endif
arch->load_chipdb(stringf(
"gowin%cchipdb-%s.bin",
separator,
family.c_str()
));
// These fields go in the header of the output JSON file and can help // These fields go in the header of the output JSON file and can help
// gowin_pack support different architectures // gowin_pack support different architectures