* limitations under the License.
*/
-#include "log.h"
#include "utils.h"
-#include "db_manager.h"
#include "ni_common.h"
#include "tac_common.h"
#include <algorithm>
#include <cstdio>
#include <cstring>
-#include <fstream>
#include <vector>
-#include <pkgmgr-info.h>
-#include <pkgmgr_installer_info.h>
-
-#ifdef LOG_TAG
-#undef LOG_TAG
-#endif
-#define LOG_TAG "DOTNET_INSTALLER_PLUGIN"
-
std::vector<std::string> getCmdArgs(char** begin, char** end)
{
std::vector<std::string> list;
" --ni-dir - Create NI for directory\n"
" --ni-reset-system - Remove System NI files\n"
" --ni-reset-pkg - Remove App NI files\n"
+ " --ni-reset-dir - Remove NI for directory\n"
" --ni-regen-all-app - Re-generate All App NI files\n"
" --tac-regen-all - Re-generate All TAC files\n"
" --tac-restore-db - Restore TAC Database\n"
bool dllMode = false;
bool dirMode = false;
bool rmPkgMode = false;
+ bool rmDirMode = false;
bool pkgDllMode = false;
bool disableTacMode = false;
bool enableTacMode = false;
return 0;
} else if (cmdOptionExists(argv, argv+argc, "--ni-reset-pkg")) {
rmPkgMode = true;
+ } else if (cmdOptionExists(argv, argv+argc, "--ni-reset-dir")) {
+ rmDirMode = true;
} else if (cmdOptionExists(argv, argv+argc, "--ni-pkg-dll")) {
pkgDllMode = true;
} else if (cmdOptionExists(argv, argv+argc, "--ni-regen-all-app")) {
fprintf(stderr, "Package name is missed\n");
} else if (dllMode) {
fprintf(stderr, "DLL path is missing.\n");
+ } else if (rmDirMode) {
+ fprintf(stderr, "Directory path is missing.\n");
}
help(argv[0]);
return -1;
return -1;
}
}
+ } else if (rmDirMode) {
+ removeNiUnderDirs(args.data(), args.size());
} else if (dllMode) {
// donot return error code for generation failure.
// we have to run crossgen for all input dlls.