[OpenWrt-Devel] correct place for target-dependent host tools
Hi, I am working on adding support for our upcoming 'XBurst' board into OpenWrt [1]. Sources are here [2]. In addition to all the stuff that targets the device, I have a reflashing tool running on the host. This tool can boot the device over USB and reflash it. It's called 'usbboot' and part of a package called 'xburst-tools' (the CPU is an XBurst (MIPS-compatible) CPU). Sources for that package are here [3]. Now, in the OpenWrt there is a directory 'tools' at the root level. Should I create a subfolder (+Makefile etc) for xburst-tools inside there? However, the tool depends on my target. Is the 'tools' directory only for target-independent host tools? Another possible place would be in target/linux/xburst. But I see no host tools in any of the other targets, so I'm not sure it's a good place. Any help appreciated, thanks! Wolfgang [1] http://www.qi-hardware.com/products/ben-nanonote/ [2] http://github.com/lindnermarek/openwrt-x-burst [3] http://github.com/xiangfu/xburst-tools ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] correct place for target-dependent host tools
Mirko, thanks for your answers. The splitting has pros and cons. Actually the cross-compilation problem is one of the reasons that stops inclusion of xburst-tools into Debian. See http://mentors.debian.net/cgi-bin/sponsor-pkglist?action=details;package=xburst-tools Problem is that the parts running on the target are really only the other side of the commands that come in from the host. NAND read/write, SD read/write, memory read/write, etc. If we would split it the 2 parts could always and only be used together. Also the staging binaries need to be loaded into the device from the host, so they have to be installed there first. Sounds like I put it into target/linux/xburst for now. It's not a build dependency so why make it look like one. If you think another place is more appropriate it's easy to move. Wolfgang On Sat, Jul 25, 2009 at 11:33:13AM +0200, Mirko Vogt wrote: Hey Wolfgang, On Sat, 2009-07-25 at 14:01 +0800, Wolfgang Spraul wrote: Hi, I am working on adding support for our upcoming 'XBurst' board into OpenWrt [1]. Sources are here [2]. In addition to all the stuff that targets the device, I have a reflashing tool running on the host. This tool can boot the device over USB and reflash it. It's called 'usbboot' and part of a package called 'xburst-tools' (the CPU is an XBurst (MIPS-compatible) CPU). Sources for that package are here [3]. Now, in the OpenWrt there is a directory 'tools' at the root level. Should I create a subfolder (+Makefile etc) for xburst-tools inside there? However, the tool depends on my target. Is the 'tools' directory only for target-independent host tools? The tools/-directory contains OpenWrt-Makefiles for essential tools which are needed on the host system to get an OpenWrt build done, so - yes - they're target-independent. In my view tools/ would not be the appropriate location to store the xburst tools. This could be either done within the target-directory (as it is done for e.g. u-boot) or the usual way of building specific host-tools in OpenWrt (like it's done for e.g. bjam). The latter way is usually used for building host-tools that are needed by other packages as dependencies (e.g. bjam is needed as host-tool for getting boost compiled) so it's just used within the OpenWrt build process - however the host-tools remains in staging_dir/host/bin/ and can still be used afterwards. Another possible place would be in target/linux/xburst. But I see no host tools in any of the other targets, so I'm not sure it's a good place. Maybe xburst tools can be splitted in: - xburst-staging-binaries (compiled for the target) - usbboot (compiled for the host) Any help appreciated, thanks! Wolfgang mirko :) [1] http://www.qi-hardware.com/products/ben-nanonote/ [2] http://github.com/lindnermarek/openwrt-x-burst [3] http://github.com/xiangfu/xburst-tools ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] correct place for target-dependent host tools
Why - btw - do you want to have the xburst-tools packaged in OpenWrt? Looking at the Openmoko Neo - OpenWrt target, there's also no dfu-util packaged (ok, there is - but because some people wanted use their routers to flash their Openmoko Neo - it's not compiled for the host system). The way I see it (maybe it's only me :)), these are two different things: OpenWrt is for... ...building software for the target (including host tools which are needed to get other software compiled for the target), which finally results in a target-spedific (bootloader/)kernel/rootfs OpenWrt is not for... ...building software for the host which is then not used by OpenWrt but used manually (e.g. usbboot of xburst-tools to flash the device). But maybe this general question was already raised / answered - I'm not sure how this is handled for other targets which need to be flashed/programmed in a special way. Greets, mirko On Sat, 2009-07-25 at 11:33 +0200, Mirko Vogt wrote: Hey Wolfgang, On Sat, 2009-07-25 at 14:01 +0800, Wolfgang Spraul wrote: Hi, I am working on adding support for our upcoming 'XBurst' board into OpenWrt [1]. Sources are here [2]. In addition to all the stuff that targets the device, I have a reflashing tool running on the host. This tool can boot the device over USB and reflash it. It's called 'usbboot' and part of a package called 'xburst-tools' (the CPU is an XBurst (MIPS-compatible) CPU). Sources for that package are here [3]. Now, in the OpenWrt there is a directory 'tools' at the root level. Should I create a subfolder (+Makefile etc) for xburst-tools inside there? However, the tool depends on my target. Is the 'tools' directory only for target-independent host tools? The tools/-directory contains OpenWrt-Makefiles for essential tools which are needed on the host system to get an OpenWrt build done, so - yes - they're target-independent. In my view tools/ would not be the appropriate location to store the xburst tools. This could be either done within the target-directory (as it is done for e.g. u-boot) or the usual way of building specific host-tools in OpenWrt (like it's done for e.g. bjam). The latter way is usually used for building host-tools that are needed by other packages as dependencies (e.g. bjam is needed as host-tool for getting boost compiled) so it's just used within the OpenWrt build process - however the host-tools remains in staging_dir/host/bin/ and can still be used afterwards. Another possible place would be in target/linux/xburst. But I see no host tools in any of the other targets, so I'm not sure it's a good place. Maybe xburst tools can be splitted in: - xburst-staging-binaries (compiled for the target) - usbboot (compiled for the host) Any help appreciated, thanks! Wolfgang mirko :) [1] http://www.qi-hardware.com/products/ben-nanonote/ [2] http://github.com/lindnermarek/openwrt-x-burst [3] http://github.com/xiangfu/xburst-tools ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] correct place for target-dependent host tools
Mirko, OpenWrt is for... OpenWrt is not for... OK perfect answer, thanks a lot. The reason I wanted to have it built was that I thought it's a natural place. I build the image, then I do what? I flash it... So I thought it would be cool if the flashing software would somehow fall out as well. But the way you describe the OpenWrt mission to me as just building the image makes perfect sense to me. Let's leave the flashing tools out, xburst-tools must come from elsewhere. Thanks, Wolfgang On Sat, Jul 25, 2009 at 12:10:52PM +0200, Mirko Vogt wrote: Why - btw - do you want to have the xburst-tools packaged in OpenWrt? Looking at the Openmoko Neo - OpenWrt target, there's also no dfu-util packaged (ok, there is - but because some people wanted use their routers to flash their Openmoko Neo - it's not compiled for the host system). The way I see it (maybe it's only me :)), these are two different things: OpenWrt is for... ...building software for the target (including host tools which are needed to get other software compiled for the target), which finally results in a target-spedific (bootloader/)kernel/rootfs OpenWrt is not for... ...building software for the host which is then not used by OpenWrt but used manually (e.g. usbboot of xburst-tools to flash the device). But maybe this general question was already raised / answered - I'm not sure how this is handled for other targets which need to be flashed/programmed in a special way. Greets, mirko On Sat, 2009-07-25 at 11:33 +0200, Mirko Vogt wrote: Hey Wolfgang, On Sat, 2009-07-25 at 14:01 +0800, Wolfgang Spraul wrote: Hi, I am working on adding support for our upcoming 'XBurst' board into OpenWrt [1]. Sources are here [2]. In addition to all the stuff that targets the device, I have a reflashing tool running on the host. This tool can boot the device over USB and reflash it. It's called 'usbboot' and part of a package called 'xburst-tools' (the CPU is an XBurst (MIPS-compatible) CPU). Sources for that package are here [3]. Now, in the OpenWrt there is a directory 'tools' at the root level. Should I create a subfolder (+Makefile etc) for xburst-tools inside there? However, the tool depends on my target. Is the 'tools' directory only for target-independent host tools? The tools/-directory contains OpenWrt-Makefiles for essential tools which are needed on the host system to get an OpenWrt build done, so - yes - they're target-independent. In my view tools/ would not be the appropriate location to store the xburst tools. This could be either done within the target-directory (as it is done for e.g. u-boot) or the usual way of building specific host-tools in OpenWrt (like it's done for e.g. bjam). The latter way is usually used for building host-tools that are needed by other packages as dependencies (e.g. bjam is needed as host-tool for getting boost compiled) so it's just used within the OpenWrt build process - however the host-tools remains in staging_dir/host/bin/ and can still be used afterwards. Another possible place would be in target/linux/xburst. But I see no host tools in any of the other targets, so I'm not sure it's a good place. Maybe xburst tools can be splitted in: - xburst-staging-binaries (compiled for the target) - usbboot (compiled for the host) Any help appreciated, thanks! Wolfgang mirko :) [1] http://www.qi-hardware.com/products/ben-nanonote/ [2] http://github.com/lindnermarek/openwrt-x-burst [3] http://github.com/xiangfu/xburst-tools ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel