[syslinux] PATH directive

Matt Fleming matt at console-pimps.org
Fri Dec 19 09:34:51 PST 2014


On Thu, 18 Dec, at 07:47:18PM, Ady wrote:
> I have a question about the PATH directive. In fact, the question is 
> not about how it is currently working, but about its intention or goal, 
> or how it was supposed to work (or how it was thought about for the 
> 5.00 release).
> 
> Previous discussions about the PATH directive in the Syslinux Mailing 
> List, and its documentation (e.g. "PATH rules") left on me the 
> impression that it was intended for the Library Modules (only?).
 
Yes, the original intention was to make it possible to load module
dependencies where the module and its dependency didn't live in the
same directory.

> While testing the PATH directive with Syslinux 6.03, I can see it is 
> not only working for Library Modules, but also for other c32 files too. 
> If a c32 file is not found according to the relative path used for it 
> in the configuration file, then the referenced c32 file is searched-for 
> according to the PATH directive.
> 
> So, was the PATH directive supposed to search for Library Modules 
> (dependencies) only? Or for any c32 file? Or for any file whatsoever 
> (e.g. kernel, initrd, memdisk,...)?
 
It only works for .c32 files, but no distinction is made between a
module and its dependencies. All .c32 are "ELF modules".

> And, for files referenced in the configuration files (i.e. 
> non-dependencies files) using absolute notation paths, was the PATH 
> directive supposed to search for them too? (If this last question is 
> not clear enough, I'll post an example; please let me know.)

Yes, the PATH directive is used as a fallback if the file denoted by an
absolute path doesn't exist.

If the file *does* exist at the absolute path, the directories in PATH
are not searched - absolute paths take priority.

-- 
Matt Fleming, Intel Open Source Technology Center


More information about the Syslinux mailing list