+std::string const replaceEnvironmentPath(std::string const & path);
+
+/**
+ Return a string to be used as a prefix to a command for setting the
+ environment of the TeX engine with respect to the paths \p path and \p lpath.
+ */
+std::string latexEnvCmdPrefix(std::string const &path, std::string const & lpath);
+
+/** Replace all references to a current directory (a lonely '.' or
+ the prefix "./") in \c pathlist with \c path. Also prefixes
+ all non-absolute paths with \c path.
+*/
+std::string const replaceCurdirPath(std::string const & path, std::string const & pathlist);
+
+/** Set \c link to the path \c file points to as a symbolic link.
+ \return true if successful.
+ */
+bool readLink(FileName const & file, FileName & link);
+
+/**
+ * Search a TeX file in all locations the latex compiler would search it,
+ * with the help of kpsewhich.
+ * The current working directory must be set correctly, so that relative
+ * names work.
+ * \param fil The filename to search
+ * \param format The file format as used by kpsewhich, e.g. "bib", "bst" etc.
+ */
+FileName const findtexfile(std::string const & fil,
+ std::string const & format);
+
+/** \param file1, file2 the two files to be compared. Must have absolute paths.
+ * \returns 1 if \c file1 has a more recent timestamp than \c file2,
+ * 0 if their timestamps are the same,
+ * -1 if \c file2 has a more recent timestamp than \c file1.
+ * If one of the files does not exist, the return value indicates the file
+ * which does exist. Eg, if \c file1 exists but \c file2 does not, return 1.
+ */
+int compare_timestamps(FileName const & file1, FileName const & file2);
+
+/// \param lfuns: true if we're converting lfuns, false if prefs
+bool prefs2prefs(FileName const & filename, FileName const & tempfile,
+ bool lfuns);
+
+/// Does file \p file need to be updated by configure.py?
+bool configFileNeedsUpdate(std::string const & file);
+
+typedef std::pair<int, std::string> cmd_ret;
+
+cmd_ret const runCommand(std::string const & cmd);
+
+int fileLock(const char * lock_file);
+void fileUnlock(int fd, const char * lock_file);
+
+} // namespace support
+} // namespace lyx
+