diff --git a/uppsrc/ide/Builders/CppBuilder.cpp b/uppsrc/ide/Builders/CppBuilder.cpp index 2b3cd58bd..7bf658f3c 100644 --- a/uppsrc/ide/Builders/CppBuilder.cpp +++ b/uppsrc/ide/Builders/CppBuilder.cpp @@ -242,6 +242,7 @@ Vector CppBuilder::CustomStep(const String& pf, const String& package_, AddPath(mac, "PATH", file); AddPath(mac, "RELPATH", pf); AddPath(mac, "DIR", GetFileFolder(PackagePath(package))); + AddPath(mac, "FILEDIR", GetFileFolder(file)); AddPath(mac, "PACKAGE", package); mac.Add("FILE", GetFileName(file)); mac.Add("TITLE", GetFileTitle(file)); diff --git a/uppsrc/ide/Custom.cpp b/uppsrc/ide/Custom.cpp index acde1dedd..97f733b15 100644 --- a/uppsrc/ide/Custom.cpp +++ b/uppsrc/ide/Custom.cpp @@ -44,6 +44,7 @@ void Custom::DoMenu(Button& b, Callback1 cb, bool cmd) { String sample = SourcePath(pk, samplefile); menu.Add("Input file path (like '" + UnixPath(sample) + "')", callback1(cb, "$(PATH)")); menu.Add("Input file package-relative path (like '" + samplefile + "')", callback1(cb, "$(RELPATH)")); + menu.Add("Input file directory (like '" + samplefile + "')", callback1(cb, "$(FILEDIR)")); menu.Add("Package directory (like '" + UnixPath(GetFileFolder(sample)) + "')", callback1(cb, "$(DIR)")); menu.Add("Input file name (like '" + GetFileName(sample) + "')", callback1(cb, "$(FILE)")); menu.Add("Input file title (like '" + GetFileTitle(sample) + "')", callback1(cb, "$(TITLE)"));