This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Steven Clugston wrote: > Sergei Gavrikov wrote: > > If you just want to edit config files, it's better to implement own > > editor, call it `femto' then :-) > > http://en.wikipedia.org/wiki/SI_prefix > > It seems for me that nano is enough bloat stuff for eCos targets. > > Nano does far more than I realised and I agree that most of it is > bloat for what I need like calls to external programs for spell checking > and wide character and NLS support etc, but it's a choice between writing > an editor from scratch or hacking nano to work by disabling the bloat > using its existing config mechanism. I think the latter should take less > time/effort. It's a shame there's not a #define NANO_FEMTO mode to strip > off even more than NANY_TINY does. [snip] > Sergei Gavrikov wrote: [snip] > > When I will get a far progress with Nano/PDCurses I wil let you know. Hello Steven, Let moderators excuse this post. At first, I thought to write you personally, but, then I thought, Why not here? More that one guy did share own eCos shell here: http://sourceware.org/ml/ecos-discuss/2006-10/msg00141.html And it seemed for me that our thread is a shell-related thread. You told about your needs to edit config files and yesterday I thought, Why do not write and send e-mails using SMTP with nano like pine does it using pico :-) A hundred of kb is not issue for PC target, for example. What curses program does at all? The curses program the mostly sleeps. IMHO, curses is not bad thing for eCos. So, why do not benefit our experience with other eCosers? IMHO, TCL shell or PDCurses shell is more powerful thing than just "while(1) cyg_io_read(...);" It is a portable way to get the shells. I have got some results on "femto". Today I put nano-2.0.9 under local mercurial repository and cleaned up all my tweks. (1) My "femto" config.h version and my tweaks let me build the nano without eCos POSIX package. Instead I add CYGPKG_LINUX_COMPAT (just to get headers). AFAIK, some eCos FS packages depend on it (e.g, it's possible to add FS_FAT, FS_JFFS2 without bloat CYGPKG_POSIX). My config.h let me build nano without Unix stuff at all arm-eabi-nm src/nano | grep -E "T (wait|fork|exec)" (no output) For my config I have got only 5 stubs: getpwuid(), getpwent(), endpwent(), umask() and mkstemp(). (2) About POSIX signals. There were exactly two functions in nano.c: signal_init() and do_suspend() for my config. Both of the functions depend on TOGGLE_SUSPEND_KEY and NANO_SUSPEND_KEY. But what is "^Z" for the eCos World? We can quite ignore those handlers. (3) My eCos config was Template: default Added: CYGPKG_IO_FILEIO CYGPKG_FS_RAM CYGPKG_LINUX_COMPAT CYGPKG_PDCURSES Removed: CYGPKG_LIBM and it did let me get "The GNU nano" for ARM target as text data bss dec hex filename 123384 1408 24256 149048 24638 src/nano (4) I add getopt.[ch] under compat directory. And the nano the above contains it. I think you are right: it would not bad to prepare something like CYGPKG_SERVICES_GNU_GETOPT. It seems for me that today's eCos license let us do it. And, perhaps, you are right when said about CDL against getopt. (5) My tweaks of nano/src seem itself the very minimal (only nano.h, and nano.c were tweaked), look at an attached nano.diff. It was surprise for me. But, now I do not know what will happen if someone will turn on an external spell checkeri, for example, in my config.h I attach all stuff (including used getopt) to get "femto" under eCos. I will put all on bitbucked then. If anyone is interested in any CLI under eCos, he/she can use our experience. Regards, Sergei
Attachment:
nano-ecos-hack.tar.gz
Description: Binary data
-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |