|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCH 1/2] lib/nolibc/include: Add termios.h from musl
Hey Yuri,
Thank you for the review. The compile error was a mistake on my side.
This was caused by me testing the functionality with micropython which
uses newlib. I shall include the proposed changes in the v2 patch.
Regards,
Vlad
On 12/15/18 7:05 PM, Yuri Volchkov wrote:
> Hi Vlad-Andrei,
>
> please check next time that your patches are compileable and working.
>
> This file in musl is not intended to be included directly. It is missing
> some declarations and compile guards. So we can not use this file as it
> is (at very least this is the reason why your patches would not compile).
>
> In musl the actual include file is include/termios.h which does include
> one of architecture specific bits/termios.h. Fortunately we do not have
> to do the same, since it is only mips and powerpc variants have
> different termios.h files.
>
> So I would propose to add to the file you imported:
> 1) compile guards
> 2) missing declarations from include/termios.h
> 3) compile-time check of the architecture
>
> The last one can be achieved like this:
>
> #include <uk/config.h>
> #if ((!defined CONFIG_ARCH_X86_64) && (!defined CONFIG_ARCH_ARM_64) &&
> (!defined CONFIG_ARCH_ARM_32))
> #error Please make sure this termios.h declaration match your
> architecture
> #endif
>
> Normally I insist that imported files are introduced as one commit
> without a single modification, and do changes in the following
> commits. But in this case it is fine to do it at once, since changes are
> minimal and they are all in the single block at the top of the file
> (well, plus one single #endif at the end).
>
> However, please add to the commit message the hash code and tag of the
> original code, where you have imported this file. And briefly explain
> what you have added on top of the original.
>
> For example:
> tag: v1.1.20
> commit <0fa1e638e87cf257e9f96b4019b2076afd674a19>
>
> BR, Yuri.
>
> "Vlad-Andrei BĂDOIU (78692)" <vlad_andrei.badoiu@xxxxxxxxxxxxxxx>
> writes:
>
>> Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxxxxxxxxxxx>
>> ---
>> lib/nolibc/include/termios.h | 166 +++++++++++++++++++++++++++++++++++
>> 1 file changed, 166 insertions(+)
>> create mode 100644 lib/nolibc/include/termios.h
>>
>> diff --git a/lib/nolibc/include/termios.h b/lib/nolibc/include/termios.h
>> new file mode 100644
>> index 0000000..124f71d
>> --- /dev/null
>> +++ b/lib/nolibc/include/termios.h
>> @@ -0,0 +1,166 @@
>> +struct termios {
>> + tcflag_t c_iflag;
>> + tcflag_t c_oflag;
>> + tcflag_t c_cflag;
>> + tcflag_t c_lflag;
>> + cc_t c_line;
>> + cc_t c_cc[NCCS];
>> + speed_t __c_ispeed;
>> + speed_t __c_ospeed;
>> +};
>> +
>> +#define VINTR 0
>> +#define VQUIT 1
>> +#define VERASE 2
>> +#define VKILL 3
>> +#define VEOF 4
>> +#define VTIME 5
>> +#define VMIN 6
>> +#define VSWTC 7
>> +#define VSTART 8
>> +#define VSTOP 9
>> +#define VSUSP 10
>> +#define VEOL 11
>> +#define VREPRINT 12
>> +#define VDISCARD 13
>> +#define VWERASE 14
>> +#define VLNEXT 15
>> +#define VEOL2 16
>> +
>> +#define IGNBRK 0000001
>> +#define BRKINT 0000002
>> +#define IGNPAR 0000004
>> +#define PARMRK 0000010
>> +#define INPCK 0000020
>> +#define ISTRIP 0000040
>> +#define INLCR 0000100
>> +#define IGNCR 0000200
>> +#define ICRNL 0000400
>> +#define IUCLC 0001000
>> +#define IXON 0002000
>> +#define IXANY 0004000
>> +#define IXOFF 0010000
>> +#define IMAXBEL 0020000
>> +#define IUTF8 0040000
>> +
>> +#define OPOST 0000001
>> +#define OLCUC 0000002
>> +#define ONLCR 0000004
>> +#define OCRNL 0000010
>> +#define ONOCR 0000020
>> +#define ONLRET 0000040
>> +#define OFILL 0000100
>> +#define OFDEL 0000200
>> +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE)
>> +#define NLDLY 0000400
>> +#define NL0 0000000
>> +#define NL1 0000400
>> +#define CRDLY 0003000
>> +#define CR0 0000000
>> +#define CR1 0001000
>> +#define CR2 0002000
>> +#define CR3 0003000
>> +#define TABDLY 0014000
>> +#define TAB0 0000000
>> +#define TAB1 0004000
>> +#define TAB2 0010000
>> +#define TAB3 0014000
>> +#define BSDLY 0020000
>> +#define BS0 0000000
>> +#define BS1 0020000
>> +#define FFDLY 0100000
>> +#define FF0 0000000
>> +#define FF1 0100000
>> +#endif
>> +
>> +#define VTDLY 0040000
>> +#define VT0 0000000
>> +#define VT1 0040000
>> +
>> +#define B0 0000000
>> +#define B50 0000001
>> +#define B75 0000002
>> +#define B110 0000003
>> +#define B134 0000004
>> +#define B150 0000005
>> +#define B200 0000006
>> +#define B300 0000007
>> +#define B600 0000010
>> +#define B1200 0000011
>> +#define B1800 0000012
>> +#define B2400 0000013
>> +#define B4800 0000014
>> +#define B9600 0000015
>> +#define B19200 0000016
>> +#define B38400 0000017
>> +
>> +#define B57600 0010001
>> +#define B115200 0010002
>> +#define B230400 0010003
>> +#define B460800 0010004
>> +#define B500000 0010005
>> +#define B576000 0010006
>> +#define B921600 0010007
>> +#define B1000000 0010010
>> +#define B1152000 0010011
>> +#define B1500000 0010012
>> +#define B2000000 0010013
>> +#define B2500000 0010014
>> +#define B3000000 0010015
>> +#define B3500000 0010016
>> +#define B4000000 0010017
>> +
>> +#define CSIZE 0000060
>> +#define CS5 0000000
>> +#define CS6 0000020
>> +#define CS7 0000040
>> +#define CS8 0000060
>> +#define CSTOPB 0000100
>> +#define CREAD 0000200
>> +#define PARENB 0000400
>> +#define PARODD 0001000
>> +#define HUPCL 0002000
>> +#define CLOCAL 0004000
>> +
>> +#define ISIG 0000001
>> +#define ICANON 0000002
>> +#define ECHO 0000010
>> +#define ECHOE 0000020
>> +#define ECHOK 0000040
>> +#define ECHONL 0000100
>> +#define NOFLSH 0000200
>> +#define TOSTOP 0000400
>> +#define IEXTEN 0100000
>> +
>> +#define TCOOFF 0
>> +#define TCOON 1
>> +#define TCIOFF 2
>> +#define TCION 3
>> +
>> +#define TCIFLUSH 0
>> +#define TCOFLUSH 1
>> +#define TCIOFLUSH 2
>> +
>> +#define TCSANOW 0
>> +#define TCSADRAIN 1
>> +#define TCSAFLUSH 2
>> +
>> +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
>> +#define EXTA 0000016
>> +#define EXTB 0000017
>> +#define CBAUD 0010017
>> +#define CBAUDEX 0010000
>> +#define CIBAUD 002003600000
>> +#define CMSPAR 010000000000
>> +#define CRTSCTS 020000000000
>> +
>> +#define XCASE 0000004
>> +#define ECHOCTL 0001000
>> +#define ECHOPRT 0002000
>> +#define ECHOKE 0004000
>> +#define FLUSHO 0010000
>> +#define PENDIN 0040000
>> +#define EXTPROC 0200000
>> +
>> +#define XTABS 0014000
>> +#endif
>> --
>> 2.19.2
>>
_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |