return false;
}
+bool
+hard_link (const std::string& existing_file, const std::string& new_path)
+{
+#ifdef PLATFORM_WINDOWS
+ /* see also ntfs_link -- msvc only pbd extension */
+ return CreateHardLinkA (new_path.c_str(), existing_file.c_str(), NULL);
+#else
+ return 0 == link (existing_file.c_str(), new_path.c_str());
+#endif
+}
+
std::string
get_absolute_path (const std::string & p)
{
*/
LIBPBD_API bool touch_file (const std::string& path);
+/** try hard-link a file
+ * @return true if file was successfully linked
+ */
+LIBPBD_API bool hard_link (const std::string& existing_file, const std::string& new_path);
+
/**
* Take a (possibly) relative path and make it absolute
* @return An absolute path