make O_PATH optional-ish
on ancient linuxes we don't have access to it. more importantly freebsd has nothing like it at all. use readonly in these cases
on ancient linuxes we don't have access to it. more importantly freebsd has nothing like it at all. use readonly in these cases