|
|
@@ -23,8 +23,6 @@
|
|
|
|
|
|
// Suffix used to tell libpkg what compression to use
|
|
|
static const char FreeBSDPackageCompression[] = "txz";
|
|
|
-// Resulting package file-suffix, for < 1.17 and >= 1.17 versions of libpkg
|
|
|
-static const char FreeBSDPackageSuffix_10[] = ".txz";
|
|
|
static const char FreeBSDPackageSuffix_17[] = ".pkg";
|
|
|
|
|
|
cmCPackFreeBSDGenerator::cmCPackFreeBSDGenerator()
|
|
|
@@ -416,42 +414,17 @@ int cmCPackFreeBSDGenerator::PackageFiles()
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
- // Specifically looking for packages suffixed with the TAG, either extension
|
|
|
- std::string broken_suffix_10 =
|
|
|
- cmStrCat('-', var_lookup("CPACK_TOPLEVEL_TAG"), FreeBSDPackageSuffix_10);
|
|
|
+ // Specifically looking for packages suffixed with the TAG
|
|
|
std::string broken_suffix_17 =
|
|
|
cmStrCat('-', var_lookup("CPACK_TOPLEVEL_TAG"), FreeBSDPackageSuffix_17);
|
|
|
for (std::string& name : packageFileNames) {
|
|
|
cmCPackLogger(cmCPackLog::LOG_DEBUG, "Packagefile " << name << std::endl);
|
|
|
- if (cmHasSuffix(name, broken_suffix_10)) {
|
|
|
- name.replace(name.size() - broken_suffix_10.size(), std::string::npos,
|
|
|
- FreeBSDPackageSuffix_10);
|
|
|
- break;
|
|
|
- }
|
|
|
if (cmHasSuffix(name, broken_suffix_17)) {
|
|
|
name.replace(name.size() - broken_suffix_17.size(), std::string::npos,
|
|
|
FreeBSDPackageSuffix_17);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
- // If the name uses a *new* style name, which doesn't exist, but there
|
|
|
- // is an *old* style name, then use that instead. This indicates we used
|
|
|
- // an older libpkg, which still creates .txz instead of .pkg files.
|
|
|
- for (std::string& name : packageFileNames) {
|
|
|
- if (cmHasSuffix(name, FreeBSDPackageSuffix_17) &&
|
|
|
- !cmSystemTools::FileExists(name)) {
|
|
|
- const std::string badSuffix(FreeBSDPackageSuffix_17);
|
|
|
- const std::string goodSuffix(FreeBSDPackageSuffix_10);
|
|
|
- std::string repairedName(name);
|
|
|
- repairedName.replace(repairedName.size() - badSuffix.size(),
|
|
|
- std::string::npos, goodSuffix);
|
|
|
- if (cmSystemTools::FileExists(repairedName)) {
|
|
|
- name = repairedName;
|
|
|
- cmCPackLogger(cmCPackLog::LOG_DEBUG,
|
|
|
- "Repaired packagefile " << name << std::endl);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
return 1;
|
|
|
}
|