Hi all, My proposal[1] to port Debian-Installer to Hurd as a "Google Summer of Code" project has been accepted. As one of the first steps I have been working on porting BusyBox.
I would like to suggest that we come up with a common set of changes for both FreeBSD and Hurd support and submit them upstream. With this in mind, I have been working against the upstream git repository, and have tried to incorporate both the previous Hurd patch[2] from Samuel Thibault and the Debian/kFreeBSD ones[3]. My changes are published on github[4]. I have backported them onto BusyBox 1.15.3 and successfully built a debian package including them on Hurd and Linux. Could you have a look and tell me what you think? In particular I have not been able to test my code on kFreeBSD yet, so any kind of report would be great. [1] http://wiki.debian.org/SummerOfCode2010/HurdDebianInstaller/JeremieKoenig [2] http://people.debian.org/~sthibault/hurd-i386/ [3] http://svn.debian.org/viewsvn/d-i/people/slackydeb/kfreebsd/busybox/1.14/debian/ [4] http://github.com/jeremie-koenig/busybox-osports Quick start ----------- $ git clone git://github.com/jeremie-koenig/busybox-osports.git $ cd busybox-osports $ make allyesconfig $ vi .config # disable PLATFORM_LINUX, STATIC and WERROR $ make or, alternatively, $ git clone git://github.com/jeremie-koenig/busybox-osports.git $ cd busybox-osports $ git checkout osports-debian $ fakeroot debian/rules binary Summary ------- I list my changes below. The related kFreeBSD patches are shown within square brackets. I took the approach of defining a new configuration option (PLATFORM_LINUX) that the Linux-specific applets can depend on. This way only a minimal amount of configuration overriding has to take place for Hurd and FreeBSD in the debian package. Some patches have been already included upstream: fbedacf Hurd compat fixes. Mostly dealing with absent PATH_MAX [libbb.xconnect.diff] 3d0e779 libbb: locate PAGE_SIZE on Hurd 1d448cf provide safe_gethostname() for non-linux systems [libbb.safe_gethostname.diff] The rest is in the 'osports' branch in the github repository: 9a47e16 update scripts/kconfig/*_shipped 81f0baa readlink: use xmalloc_realpath() 92fbcd8 mark Linux-specific configuration options 7a23db4 init,loginutils: termios portability fixes fa5c73c init,halt: portability improvements [init.init.diff] 250e48a init: make the initial $TERM value configurable b5065d9 libbb.h: add device names for Hurd and FreeBSD [include.libbb.diff] 3b6b59b mkdir: fix -p on FreeBSD [libbb.make_directory.diff] 7317803 klogd: support /dev/klog in addition to klogctl() [klogd.diff] 8749e88 libbb: conditionalize AF_* usage in error reporting 19efa4d stty: fix undefined IDX_* on missing termios constants c835163 cttyhack: serial console detection is Linux-specific [shell.cttyhack.diff] /!\ The serial console detection is just dropped 73a49cc bootchartd: mounting tmpfs is Linux-specific fd2a956 tcpsvd,udpsvd: conditionalize usage of SO_ORIGINAL_DST 2f6b52d vlock: disable linux console calls on other systems Stuff I will be working on soon: * mount/umount FreeBSD: [mount_with_hack_to_help_umount.diff] [util-linux.umount.diff] Hurd: issue a 'settrans' command * swapon/swapoff: FreeBSD: [util-linux.swaponoff.diff] Hurd: to be investigated Branches -------- * osports: the main branch, based on upstream's 'master' branch; * osports-1.15.3: the same changes, rebased onto BusyBox 1.15.3; * osports-debian: a preliminary debian package including them. (we still need to somehow set INIT_TERMINAL_TYPE) Thanks, -- Jérémie Koenig <j...@jk.fr.eu.org> http://jk.fr.eu.org/ -- To UNSUBSCRIBE, email to debian-hurd-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktiklxcddtab0vtn1xdwxz0c64gdxepdmtxqej...@mail.gmail.com