if (!NILP (Vinvocation_directory))
{
- if (NILP (Vpurify_flag) && !NILP (Ffboundp (Qfile_truename)))
- Vinvocation_directory = call1 (Qfile_truename, Vinvocation_directory);
-
dir = Vinvocation_directory;
#ifdef WINDOWSNT
/* If we are running from the build directory, set DIR to the
if (SBYTES (dir) > sizeof ("/i386/") - 1
&& 0 == strcmp (SSDATA (dir) + SBYTES (dir) - sizeof ("/i386/") + 1,
"/i386/"))
- dir = Fexpand_file_name (build_string ("../.."), dir);
-#else /* !WINDOWSNT */
+ {
+ if (NILP (Vpurify_flag))
+ {
+ Lisp_Object file_truename = intern ("file-truename");
+ if (!NILP (Ffboundp (file_truename)))
+ dir = call1 (file_truename, dir);
+ }
+ dir = Fexpand_file_name (build_string ("../.."), dir);
+ }
#endif
name = Fexpand_file_name (Vinvocation_name, dir);
while (1)
(NILP (lex_bound) || EQ (lex_bound, Qunbound)
? Qnil : list1 (Qt)));
- /* Try to ensure sourcename is a truename, except whilst preloading. */
+ /* Ensure sourcename is absolute, except whilst preloading. */
if (!will_dump_p ()
- && !NILP (sourcename) && !NILP (Ffile_name_absolute_p (sourcename))
- && !NILP (Ffboundp (Qfile_truename)))
- sourcename = call1 (Qfile_truename, sourcename) ;
+ && !NILP (sourcename) && !NILP (Ffile_name_absolute_p (sourcename)))
+ sourcename = Fexpand_file_name (sourcename, Qnil);
LOADHIST_ATTACH (sourcename);
void
init_lread (void)
{
- if (NILP (Vpurify_flag) && !NILP (Ffboundp (Qfile_truename)))
- Vsource_directory = call1 (Qfile_truename, Vsource_directory);
-
/* First, set Vload_path. */
/* Ignore EMACSLOADPATH when dumping. */
DEFSYM (Qload, "load");
DEFSYM (Qload_file_name, "load-file-name");
DEFSYM (Qeval_buffer_list, "eval-buffer-list");
- DEFSYM (Qfile_truename, "file-truename");
DEFSYM (Qdir_ok, "dir-ok");
DEFSYM (Qdo_after_load_evaluation, "do-after-load-evaluation");