Hi, For some time, I have been working on integration of systemd with Buildroot [1] which is a set of cross tools to help build bootable Linux root filesystems aimed at mobile and small portable Linux applications.
Buildroot's toolchain by default provides runtime environment based on uclibc [2] which lacks certain functionality systemd depends upon, so I had to develop some workarounds. In particular, functions like execvpe, posix_fallocate, mkostemp, and %ms format are not implemented. I have reached some success: systemd works as the init program, PAM logins are functional, and journal works. The proposed patches (as Buildroot would use them, not sure what are the requirements for patches contribution to systemd) are located under this repo directory: https://gitorious.org/lfa/myroot/trees/master/systemd-pam They may be not 100% final*, but I would like to announce them here for early review. In particular: https://gitorious.org/lfa/myroot/blobs/master/systemd-pam/systemd-pam-configure-check-uclibc.patch - adds extra checks to configure.ac to detect features missing in uclibc https://gitorious.org/lfa/myroot/blobs/master/systemd-pam/systemd-pam-fix-execvpe.patch - execvpe is missing in uclibc, approximate it with explicit environ setting + execvp https://gitorious.org/lfa/myroot/blobs/master/systemd-pam/systemd-pam-fix-fallocate.patch - posix_fallocate and fallocate are missing in uclibc, replace them by writing some amount of zero bytes in the journal file, it works https://gitorious.org/lfa/myroot/blobs/master/systemd-pam/systemd-pam-fix-mkostemp.patch - replace mkostemp with mkstemp + fcntl with case-by-case selected flags - was mkostemp ever expected to be atomic? https://gitorious.org/lfa/myroot/blobs/master/systemd-pam/systemd-pam-fix-msformat.patch - replace %ms format with %s format and argument buffer preallocation Other patches/files in this directory are buildroot-specific. These patches are applicable against the v186 snapshot. I would like to hear from the systemd dev team whether there is an interest in uclibc integration; we can work together on finalizing these patches. If there is no such interest, patches will remain with Buildroot as they currently are. Thanks. ------------------------------ [1] http://buildroot.net/ [2] http://uclibc.org/ * I have noticed few typos, will fix them ASAP. -- Dmitry Golubovsky Anywhere on the Web _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
