This commit is contained in:
Mirek Fidler 2023-09-28 11:28:41 +02:00
commit 8811b7e4d5
7 changed files with 17551 additions and 9668 deletions

11393
Makefile

File diff suppressed because it is too large Load diff

11393
Makefile.in

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -727,62 +727,62 @@ IMAGE_DATA(117,211,159,149,190,207,93,159,189,203,151,63,13,107,248,243,193,159,
IMAGE_END_DATA(1472, 8)
IMAGE_BEGIN_DATA
IMAGE_DATA(120,156,237,90,127,104,83,87,20,126,212,253,225,16,156,214,90,215,165,78,65,55,80,198,144,41,178,49,6,69,24,216)
IMAGE_DATA(34,226,112,89,233,246,135,12,68,157,206,128,29,110,176,161,6,109,97,214,130,211,26,93,165,83,91,27,87,83,86,173)
IMAGE_DATA(169,125,254,232,180,109,140,213,24,107,171,253,105,106,154,216,73,213,106,148,201,156,115,221,61,123,231,218,27,95,95,222)
IMAGE_DATA(75,94,146,103,26,53,31,28,94,238,189,231,124,231,187,231,222,119,155,190,151,164,113,220,56,78,43,228,228,228,64,180)
IMAGE_DATA(22,41,180,142,47,46,46,6,97,74,212,166,77,155,70,148,226,112,12,125,196,241,24,43,142,49,24,12,100,254,252,249)
IMAGE_DATA(180,109,183,219,105,155,125,102,253,226,120,185,124,216,135,254,76,19,198,177,207,152,79,77,60,94,49,14,121,152,46,246)
IMAGE_DATA(89,28,207,52,137,107,193,250,196,99,226,60,210,252,140,23,129,26,89,91,77,60,139,97,38,229,98,115,16,115,201,173)
IMAGE_DATA(63,234,102,181,150,2,199,208,130,197,51,141,98,63,6,113,237,130,197,171,133,22,247,78,180,247,111,214,84,110,106,180)
IMAGE_DATA(28,9,36,144,192,11,130,221,117,125,48,18,38,206,31,107,200,229,207,205,205,165,22,139,207,241,152,63,150,136,199,249)
IMAGE_DATA(143,116,254,103,13,181,243,127,150,115,143,231,252,177,132,154,249,107,61,239,112,235,31,235,252,177,68,36,247,127,164,38)
IMAGE_DATA(229,136,215,252,177,132,52,255,72,126,255,72,32,129,151,21,73,90,62,25,212,10,217,217,217,203,157,78,231,195,198,198)
IMAGE_DATA(198,123,86,171,245,70,89,89,89,87,97,97,161,109,233,210,165,69,139,22,45,90,55,111,222,60,195,140,25,51,50,147)
IMAGE_DATA(146,146,94,145,139,119,56,28,143,108,54,219,163,133,11,23,46,143,36,191,144,247,191,188,188,188,154,49,99,198,132,85)
IMAGE_DATA(156,74,187,167,175,193,61,8,181,199,79,66,85,181,21,78,185,30,195,201,174,71,192,183,63,4,235,229,7,80,213,124)
IMAGE_DATA(31,44,231,239,66,185,253,54,236,173,239,167,135,144,137,247,192,214,35,215,224,251,221,13,52,182,235,250,61,191,117,122)
IMAGE_DATA(125,208,225,241,65,91,175,15,46,95,187,11,173,61,119,160,249,234,0,56,187,110,131,163,243,54,52,181,223,4,251,149)
IMAGE_DATA(126,104,108,237,135,77,21,237,192,226,7,7,7,161,206,249,7,189,242,231,189,244,122,216,214,75,175,7,79,245,208,107)
IMAGE_DATA(233,177,110,122,189,255,224,111,56,213,124,3,214,149,181,194,233,158,199,52,223,137,11,125,112,236,252,117,168,57,235,129)
IMAGE_DATA(234,51,189,240,91,163,27,44,167,123,224,64,221,85,40,59,222,13,123,106,59,97,183,181,3,28,29,183,40,7,250,127)
IMAGE_DATA(247,75,51,157,107,155,251,46,237,67,171,18,226,240,122,160,206,69,175,123,106,187,232,117,215,225,118,191,15,90,237,57)
IMAGE_DATA(47,228,22,59,160,182,237,47,104,17,230,120,200,230,134,202,211,215,224,215,223,93,176,255,68,55,236,229,187,160,164,166)
IMAGE_DATA(3,118,85,183,195,142,170,43,176,181,178,21,10,43,90,224,199,3,151,32,127,255,69,176,218,61,96,48,53,65,117,203)
IMAGE_DATA(159,180,54,200,89,126,226,234,176,28,114,182,177,212,233,175,205,202,237,118,168,188,224,131,115,88,211,182,155,96,187,220)
IMAGE_DATA(15,13,45,55,104,109,234,156,125,112,220,209,39,212,242,58,28,109,242,210,124,88,151,195,130,29,18,230,136,243,92,241)
IMAGE_DATA(211,25,216,117,180,115,64,186,174,5,85,221,144,127,176,3,54,152,175,192,15,251,90,224,219,146,139,116,174,134,157,231)
IMAGE_DATA(96,85,209,89,248,74,136,195,216,37,121,53,3,145,236,85,77,17,143,135,129,8,96,52,26,33,72,59,94,227,253,143)
IMAGE_DATA(184,135,252,149,218,178,64,31,53,246,12,245,71,27,255,178,207,95,171,248,152,34,105,124,124,31,6,90,66,31,226,125)
IMAGE_DATA(139,62,84,108,70,70,6,152,205,102,168,175,175,15,48,236,199,113,5,46,125,176,88,37,46,17,15,141,199,141,36,245)
IMAGE_DATA(21,110,29,197,54,250,51,30,212,37,151,223,108,230,97,238,220,237,138,109,166,135,213,73,26,111,52,90,96,246,236,109)
IMAGE_DATA(244,42,215,22,27,227,144,234,192,124,152,87,169,45,213,33,87,143,96,117,144,171,135,70,235,162,213,254,208,106,159,142)
IMAGE_DATA(40,18,135,73,24,47,116,177,207,229,226,0,32,180,241,60,39,199,161,215,235,135,251,225,166,87,226,64,95,78,178,121)
IMAGE_DATA(228,52,40,113,160,159,26,13,104,163,71,175,37,209,104,64,155,53,235,147,0,142,112,52,68,91,7,165,122,68,162,65)
IMAGE_DATA(202,161,164,1,215,89,205,28,20,52,132,253,163,29,169,134,120,194,11,123,152,104,177,72,180,159,231,213,109,121,151,75)
IMAGE_DATA(233,23,37,122,97,219,6,250,235,45,116,195,114,227,215,19,174,160,92,212,175,87,214,34,228,8,224,33,4,56,251,5)
IMAGE_DATA(224,94,19,120,34,213,210,227,6,110,230,70,194,241,118,137,198,48,180,188,179,137,112,77,151,162,171,203,167,7,73,64)
IMAGE_DATA(124,164,117,137,102,141,112,93,130,241,104,161,69,216,87,74,90,98,253,43,38,173,240,194,30,38,50,136,246,235,163,240)
IMAGE_DATA(151,76,47,252,133,113,129,28,176,95,175,176,201,196,241,22,139,133,250,115,220,134,39,155,86,100,8,28,87,224,25,22)
IMAGE_DATA(15,67,155,94,9,50,60,1,241,161,56,164,60,79,254,18,243,1,62,114,243,144,130,127,122,243,68,173,67,163,122,104)
IMAGE_DATA(181,46,90,237,15,63,79,226,155,73,156,65,139,223,173,162,69,3,173,57,164,155,28,109,241,226,66,178,102,205,207,100)
IMAGE_DATA(245,234,157,68,110,92,73,135,248,198,27,24,24,128,73,147,214,19,157,206,72,124,62,95,192,184,26,14,196,178,101,59)
IMAGE_DATA(72,110,110,49,81,26,15,197,209,35,124,67,74,78,94,79,208,60,30,111,68,28,153,153,155,201,150,45,102,200,207,47)
IMAGE_DATA(131,5,11,10,136,90,142,112,161,37,71,180,54,210,247,26,67,226,48,9,181,80,160,246,63,251,64,147,229,16,223,236)
IMAGE_DATA(42,250,21,57,130,229,78,112,68,198,17,237,186,68,184,63,18,135,201,243,7,77,30,192,54,52,52,128,199,227,9,48)
IMAGE_DATA(175,215,59,204,74,75,75,229,56,244,89,89,89,212,159,123,250,122,147,164,167,167,19,147,201,4,189,189,189,126,62,252)
IMAGE_DATA(140,190,156,204,67,63,212,128,57,48,30,227,220,110,55,148,151,151,195,216,177,99,9,246,51,14,244,83,210,128,252,140)
IMAGE_DATA(3,125,25,199,148,41,83,252,28,161,52,176,121,139,230,2,163,70,141,34,37,37,37,192,56,66,105,16,115,176,156,21)
IMAGE_DATA(21,21,48,121,242,100,170,67,141,6,49,7,171,35,114,176,122,168,209,192,114,139,215,37,45,45,141,20,21,21,209,49)
IMAGE_DATA(37,13,184,206,210,181,151,219,31,10,26,18,15,96,159,83,104,114,152,188,238,50,66,58,152,4,219,41,99,38,191,165)
IMAGE_DATA(240,171,100,55,240,171,250,247,64,39,248,162,77,216,150,13,201,95,126,68,210,238,20,64,106,250,27,68,247,207,118,63)
IMAGE_DATA(23,142,163,47,39,179,129,153,6,244,73,254,252,3,146,82,252,5,76,180,174,132,9,31,191,75,88,172,78,24,71,63)
IMAGE_DATA(37,13,232,55,145,255,26,132,27,38,208,114,62,84,165,65,55,164,53,245,204,55,144,50,231,45,154,59,101,206,219,36)
IMAGE_DATA(245,236,90,127,124,48,13,44,30,243,201,233,64,125,233,33,53,152,252,60,19,50,103,145,137,135,150,67,202,190,37,144)
IMAGE_DATA(156,243,62,209,13,173,137,26,13,84,239,191,69,144,250,166,142,164,221,218,12,201,43,50,72,202,214,207,252,107,165,164)
IMAGE_DATA(1,215,89,188,238,74,251,66,65,67,226,48,121,78,17,151,175,134,131,89,184,175,68,165,22,234,149,168,197,50,19,166)
IMAGE_DATA(79,55,208,7,131,114,109,53,26,208,23,99,48,86,174,61,18,175,134,195,173,67,52,26,18,175,134,159,226,127,197,246)
IMAGE_DATA(8,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
IMAGE_DATA(120,156,237,90,127,76,83,87,20,126,193,253,225,98,226,20,17,199,138,211,68,183,68,179,44,102,26,179,101,89,66,76)
IMAGE_DATA(150,8,49,198,197,117,132,237,15,179,196,168,211,217,68,22,183,100,139,218,40,36,19,73,156,98,117,24,166,130,212,97)
IMAGE_DATA(201,80,44,242,252,193,20,168,21,173,136,128,252,180,88,90,153,65,69,171,153,153,115,142,221,179,119,174,220,250,120,125)
IMAGE_DATA(175,125,109,159,165,104,191,228,228,245,222,123,206,119,190,123,238,125,151,242,94,19,38,112,19,56,173,144,149,149,5,145)
IMAGE_DATA(90,184,208,58,190,176,176,16,132,41,81,155,49,99,6,81,138,195,49,244,17,199,99,172,56,198,96,48,144,133,11,23)
IMAGE_DATA(210,182,221,110,167,109,246,153,245,139,227,229,242,97,31,250,51,77,24,199,62,99,62,53,241,120,197,56,228,97,186,216)
IMAGE_DATA(103,113,60,211,36,174,5,235,19,143,137,243,72,243,51,94,4,106,100,109,53,241,44,134,153,148,139,205,65,204,37,183)
IMAGE_DATA(254,168,155,213,90,10,28,67,11,20,207,52,138,253,24,196,181,11,20,175,22,90,220,59,145,222,191,25,211,185,233,145)
IMAGE_DATA(114,140,26,172,47,110,5,180,120,254,120,254,120,126,121,236,173,233,131,145,48,113,254,104,67,46,127,118,118,54,181,104)
IMAGE_DATA(124,142,197,252,209,68,44,206,127,164,243,63,111,168,157,255,243,156,123,44,231,143,38,212,204,95,235,121,135,90,255,104)
IMAGE_DATA(231,143,38,194,185,255,195,53,41,71,172,230,143,38,164,249,71,242,251,71,28,113,188,172,72,208,242,201,160,86,200,204)
IMAGE_DATA(204,92,217,216,216,248,168,190,190,254,190,213,106,189,89,82,82,210,149,159,159,111,91,190,124,121,193,146,37,75,54,44)
IMAGE_DATA(88,176,192,48,107,214,172,244,132,132,132,87,228,226,29,14,199,99,155,205,246,120,241,226,197,43,195,201,47,228,253,47)
IMAGE_DATA(39,39,167,106,220,184,113,33,21,167,220,238,238,171,115,13,66,245,201,211,80,81,105,133,51,206,39,112,186,235,49,240)
IMAGE_DATA(237,143,192,218,250,16,42,154,30,128,229,226,61,40,181,223,129,253,181,253,244,16,50,241,110,216,126,236,58,124,191,183)
IMAGE_DATA(142,198,118,221,184,239,179,78,143,23,58,220,94,104,235,245,66,235,245,123,208,210,115,23,154,174,13,64,99,215,29,112)
IMAGE_DATA(116,222,129,134,246,91,96,191,218,15,245,45,253,176,165,172,29,88,252,224,224,32,212,52,254,65,175,252,69,15,189,30)
IMAGE_DATA(181,245,210,235,225,51,61,244,90,124,162,155,94,31,60,252,27,206,52,221,132,13,37,45,112,182,231,9,205,119,234,82)
IMAGE_DATA(31,156,184,120,3,170,206,187,161,242,92,47,252,86,239,2,203,217,30,56,84,115,13,74,78,118,195,190,234,78,216,107)
IMAGE_DATA(237,0,71,199,109,202,129,254,223,253,210,68,231,218,230,186,71,251,208,42,132,56,188,30,170,113,210,235,190,234,46,122)
IMAGE_DATA(221,115,180,221,231,131,86,125,193,3,217,133,14,168,110,251,11,154,133,57,30,177,185,160,252,236,117,248,245,119,39,28)
IMAGE_DATA(60,213,13,251,249,46,40,170,234,128,61,149,237,176,171,226,42,108,47,111,129,252,178,102,248,241,208,21,200,61,120,25)
IMAGE_DATA(172,118,55,24,76,13,80,217,252,39,173,13,114,150,158,186,54,44,135,156,109,46,110,244,213,102,245,78,59,148,95,242)
IMAGE_DATA(194,5,172,105,219,45,176,181,246,67,93,243,77,90,155,154,198,62,56,233,232,19,106,121,3,142,55,120,104,62,172,203)
IMAGE_DATA(81,193,142,8,115,196,121,174,250,233,28,236,57,222,57,32,93,215,188,138,110,200,61,220,1,155,204,87,225,135,3,205)
IMAGE_DATA(240,109,209,101,58,87,195,238,11,176,166,224,60,124,37,196,97,236,178,156,170,129,112,246,170,166,136,197,195,64,4,48)
IMAGE_DATA(26,141,16,160,29,171,241,190,71,220,67,254,74,109,89,160,143,26,123,142,250,35,141,127,217,231,175,85,124,84,145,48)
IMAGE_DATA(49,182,15,3,45,161,15,242,190,69,31,44,54,45,45,13,204,102,51,212,214,214,250,25,246,227,184,2,151,62,80,172)
IMAGE_DATA(18,151,136,135,198,227,70,146,250,10,183,142,98,27,253,25,15,234,146,203,111,54,243,48,127,254,78,197,54,211,195,234)
IMAGE_DATA(36,141,55,26,45,48,119,238,14,122,149,107,139,141,113,72,117,96,62,204,171,212,150,234,144,171,71,160,58,200,213,67)
IMAGE_DATA(163,117,209,106,127,104,181,79,71,20,241,195,36,132,23,186,216,231,116,114,0,16,220,120,158,147,227,208,235,245,195,253)
IMAGE_DATA(112,211,43,113,160,47,39,217,60,114,26,148,56,208,79,141,6,180,177,99,215,147,72,52,160,205,153,243,137,31,71,40)
IMAGE_DATA(26,34,173,131,82,61,194,209,32,229,80,210,128,235,172,102,14,10,26,66,254,209,142,84,67,44,225,133,61,76,180,88)
IMAGE_DATA(36,218,207,243,234,182,188,211,169,244,139,18,189,176,109,253,253,245,22,186,97,185,137,27,9,151,87,42,234,215,43,107)
IMAGE_DATA(17,114,248,241,16,2,156,253,18,112,175,9,60,225,106,233,113,1,55,123,51,225,120,187,68,99,8,90,222,217,66,184)
IMAGE_DATA(134,43,145,213,229,211,195,196,47,62,220,186,68,178,70,184,46,129,120,180,208,34,236,43,37,45,209,254,21,147,86,120)
IMAGE_DATA(97,15,19,25,68,250,245,81,248,75,166,23,254,194,56,65,14,216,175,87,216,100,226,120,139,197,66,253,57,110,211,211)
IMAGE_DATA(77,43,50,4,142,43,240,12,139,135,161,77,175,4,25,30,191,248,96,28,82,158,167,127,137,121,63,31,185,121,72,193)
IMAGE_DATA(63,187,121,34,214,161,81,61,180,90,23,173,246,135,143,39,254,205,36,198,160,197,239,86,209,34,129,214,28,210,77,142)
IMAGE_DATA(182,116,105,62,89,183,238,103,178,118,237,110,34,55,174,164,67,124,227,13,12,12,192,148,41,27,137,78,103,36,94,175)
IMAGE_DATA(215,111,92,13,7,98,197,138,93,36,59,187,144,40,141,7,227,232,17,190,33,37,38,110,36,104,110,183,39,44,142,244)
IMAGE_DATA(244,173,100,219,54,51,228,230,150,192,162,69,121,68,45,71,168,208,146,35,82,27,233,123,141,33,126,152,4,91,40,80)
IMAGE_DATA(251,159,189,191,201,114,136,111,118,21,253,138,28,129,114,199,57,194,227,136,116,93,194,220,31,241,195,100,244,65,147,7)
IMAGE_DATA(176,117,117,117,224,118,187,253,204,227,241,12,179,226,226,98,57,14,125,70,70,6,245,231,158,189,222,36,169,169,169,196)
IMAGE_DATA(100,50,65,111,111,175,143,15,63,163,47,39,243,208,15,53,96,14,140,199,56,151,203,5,165,165,165,48,126,252,120,130)
IMAGE_DATA(253,140,3,253,148,52,32,63,227,64,95,198,49,109,218,52,31,71,48,13,108,222,162,185,192,152,49,99,72,81,81,17)
IMAGE_DATA(48,142,96,26,196,28,44,103,89,89,25,76,157,58,149,234,80,163,65,204,193,234,136,28,172,30,106,52,176,220,226,117)
IMAGE_DATA(73,73,73,33,5,5,5,116,76,73,3,174,179,116,237,229,246,135,130,134,248,3,216,81,10,77,14,147,215,157,70,72)
IMAGE_DATA(5,147,96,187,101,204,228,179,36,126,141,236,6,126,85,255,30,232,4,95,180,73,59,50,33,241,203,143,72,202,221,60)
IMAGE_DATA(72,78,125,131,232,254,217,233,227,194,113,244,229,100,54,48,211,128,62,137,159,127,64,146,10,191,128,201,214,213,48,233)
IMAGE_DATA(227,119,9,139,213,9,227,232,167,164,1,253,38,243,95,131,112,195,248,91,214,135,170,52,232,134,180,38,159,251,6,146)
IMAGE_DATA(230,189,69,115,39,205,123,155,36,159,95,239,139,15,164,129,197,99,62,57,29,168,47,53,168,6,147,143,103,82,250,28)
IMAGE_DATA(50,249,200,74,72,58,176,12,18,179,222,39,186,161,53,81,163,129,234,253,183,0,146,223,212,145,148,219,91,33,113,85)
IMAGE_DATA(26,73,218,254,153,111,173,148,52,224,58,139,215,93,105,95,40,104,136,31,38,163,20,49,249,106,56,144,133,250,74,84)
IMAGE_DATA(106,193,94,137,90,44,179,97,230,76,3,125,48,40,215,86,163,1,125,49,6,99,229,218,35,241,106,56,212,58,68,162)
IMAGE_DATA(33,254,106,248,25,254,7,81,60,48,165,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
IMAGE_END_DATA(1792, 13)
IMAGE_BEGIN_DATA

View file

@ -1,5 +1,27 @@
#include "ide.h"
static double sTimeElapsed() {
static int tm0;
ONCELOCK { tm0 = msecs(); };
int tm = msecs();
double r = (tm - tm0) / 1000;
tm0 = tm;
return r;
}
static String sCmdLine(const char *cmdline)
{
Vector<String> h = Split(cmdline, '\n');
String s = h.GetCount() ? h.Top() : "?";
int q = s.ReverseFind('/');
if(q >= 0)
return s.Mid(q);
q = s.GetCount() - 64;
return q >= 0 ? s.Mid(q) : s;
}
#define LLOG(x) // DLOG(sTimeElapsed() << " s " << x);
class TopTextFrame : public CtrlFrame {
virtual void FrameLayout(Rect& r) { r.top++; }
virtual void FramePaint(Draw& w, const Rect& r) {
@ -168,6 +190,7 @@ int Console::Flush()
};
Read();
if(!slot.process->IsRunning()) {
LLOG("Waiting for finish " << sCmdLine(slot.cmdline));
while(Read());
Kill(i);
if(slot.exitcode != 0 && verbosebuild)
@ -226,9 +249,11 @@ int Console::AllocSlot()
bool Console::Run(const char *cmdline, Stream *out, const char *envptr, bool quiet, int slot, String key, int blitz_count)
{
LLOG("About to run " << sCmdLine(cmdline) << " in slot " << slot);
try {
Wait(slot);
One<AProcess> sproc;
LLOG("Run " << sCmdLine(cmdline) << " in slot " << slot);
return sproc.Create<LocalProcess>().Start(cmdline, envptr) &&
Run(pick(sproc), cmdline, out, quiet, slot, key, blitz_count);
}
@ -313,6 +338,7 @@ bool Console::IsRunning(int slot)
void Console::Wait(int slot)
{
LLOG("Waiting for slot " << slot << " to finish");
int ms0 = msecs();
while(processes[slot].process) {
if(ms0 != msecs()) {