Пример #1
0
N_NIMCALL(void, Commandscan_191658)(NimStringDesc* Filename_191660) {
NimStringDesc* F_191661;
TY75204* Stream_191662;
TY77267 L_191674;
TY77263* Tok_191675;
F_191661 = 0;
F_191661 = nosaddFileExt(Filename_191660, ((NimStringDesc*) &TMP195865));
Stream_191662 = 0;
Stream_191662 = Llstreamopen_75224(F_191661, ((NU8) 0));
if (!!((Stream_191662 == NIM_NIL))) goto LA2;
memset((void*)&L_191674, 0, sizeof(L_191674));
L_191674.Sup.Sup.m_type = NTI77267;
Tok_191675 = 0;
Tok_191675 = (TY77263*) newObj(NTI77261, sizeof(TY77263));
(*Tok_191675).m_type = NTI77263;
Openlexer_77298(&L_191674, F_191661, Stream_191662);
while (1) {
Rawgettok_77304(&L_191674, Tok_191675);
Printtok_77320(Tok_191675);
if (!((*Tok_191675).Toktype == ((NU8) 1))) goto LA6;
goto LA4;
LA6: ;
} LA4: ;
Closelexer_77316(&L_191674);
goto LA1;
LA2: ;
Rawmessage_48045(((NU8) 2), F_191661);
LA1: ;
}
Пример #2
0
N_NIMCALL(NimStringDesc*, findmodule_137312)(NimStringDesc* modulename, NimStringDesc* currentmodule) {
	NimStringDesc* result;
	NimStringDesc* m;
	NimStringDesc* currentpath;
	TY108700 LOC1;
	nimfr("findModule", "options.nim")
	result = 0;
	nimln(338, "options.nim");
	m = nosaddFileExt(modulename, ((NimStringDesc*) &TMP434));
	nimln(339, "options.nim");
	nimln(339, "options.nim");
	memset((void*)&LOC1, 0, sizeof(LOC1));
	nossplitFile(currentmodule, &LOC1);
	currentpath = LOC1.Field0;
	nimln(340, "options.nim");
	result = HEX2F_108477(currentpath, m);
	nimln(341, "options.nim");
	{
		NIM_BOOL LOC4;
		nimln(341, "options.nim");
		nimln(341, "options.nim");
		LOC4 = 0;
		LOC4 = nosexistsFile(result);
		if (!!(LOC4)) goto LA5;
		nimln(342, "options.nim");
		result = findfile_137306(m);
	}
	LA5: ;
	popFrame();
	return result;
}
Пример #3
0
N_NIMCALL(NimStringDesc*, findmodule_114591)(NimStringDesc* modulename, NimStringDesc* currentmodule) {
	NimStringDesc* result;
	NimStringDesc* m;
	NimStringDesc* currentpath;
	TY102259 LOC1;
	nimfr("findModule", "options.nim")
	result = 0;
	nimln(292, "options.nim");
	m = nosaddFileExt(modulename, ((NimStringDesc*) &TMP352));
	nimln(293, "options.nim");
	nimln(293, "options.nim");
	memset((void*)&LOC1, 0, sizeof(LOC1));
	nossplitFile(currentmodule, &LOC1);	currentpath = LOC1.Field0;
	nimln(294, "options.nim");
	result = HEX2F_102067(currentpath, m);
	nimln(295, "options.nim");
	{
		NIM_BOOL LOC4;
		nimln(295, "options.nim");
		nimln(295, "options.nim");
		LOC4 = 0;
		LOC4 = nosexistsFile(result);
		if (!!(LOC4)) goto LA5;
		nimln(296, "options.nim");
		result = findfile_114585(m);
	}	LA5: ;
	popFrame();
	return result;
}
Пример #4
0
N_NIMCALL(TY55548*, Compilemodule_191320)(NimStringDesc* Filename_191322, NIM_BOOL Ismainfile_191323, NIM_BOOL Issystemfile_191324) {
TY55548* Result_191356;
TY93031* Rd_191357;
NimStringDesc* F_191358;
NIM_BOOL LOC8;
Result_191356 = 0;
Rd_191357 = 0;
Rd_191357 = NIM_NIL;
F_191358 = 0;
F_191358 = nosaddFileExt(Filename_191322, ((NimStringDesc*) &TMP195865));
Result_191356 = Newmodule_191287(Filename_191322);
if (!Ismainfile_191323) goto LA2;
(*Result_191356).Flags |=(1<<((NI32)(((NU8) 15))%(sizeof(NI32)*8)));
LA2: ;
if (!Issystemfile_191324) goto LA5;
(*Result_191356).Flags |=(1<<((NI32)(((NU8) 16))%(sizeof(NI32)*8)));
LA5: ;
LOC8 = (Gcmd_46084 == ((NU8) 1));
if (LOC8) goto LA9;
LOC8 = (Gcmd_46084 == ((NU8) 2));
LA9: ;
if (!LOC8) goto LA10;
Rd_191357 = Handlesymbolfile_93060(Result_191356, F_191358);
if (!((*Result_191356).Sup.Id < 0)) goto LA13;
Internalerror_48163(((NimStringDesc*) &TMP195918));
LA13: ;
goto LA7;
LA10: ;
(*Result_191356).Sup.Id = Getid_55694();
LA7: ;
Processmodule_105035(Result_191356, F_191358, NIM_NIL, Rd_191357);
return Result_191356;
}
Пример #5
0
N_NIMCALL(void, Generatescript_70590)(NimStringDesc* Projectfile_70592, TY52008* Script_70593) {
TY38661 LOC1;
NimStringDesc* Dir_70594;
NimStringDesc* Name_70595;
NimStringDesc* Ext_70596;
NimStringDesc* LOC2;
NimStringDesc* LOC3;
NimStringDesc* LOC4;
memset((void*)&LOC1, 0, sizeof(LOC1));
nossplitFile(Projectfile_70592, &LOC1);
Dir_70594 = 0;
Dir_70594 = copyString(LOC1.Dir);
Name_70595 = 0;
Name_70595 = copyString(LOC1.Name);
Ext_70596 = 0;
Ext_70596 = copyString(LOC1.Ext);
LOC2 = 0;
LOC2 = rawNewString(Name_70595->Sup.len + 8);
appendString(LOC2, ((NimStringDesc*) &TMP196877));
appendString(LOC2, Name_70595);
LOC3 = 0;
LOC3 = nosaddFileExt(LOC2, Os_51053[(Targetos_51570)-1].Scriptext);
LOC4 = 0;
LOC4 = HEX2F_38480(Dir_70594, LOC3);
Writerope_52055(Script_70593, LOC4);
}
Пример #6
0
N_NIMCALL(void, Compileproject_191405)(NimStringDesc* Filename_191407) {
NimStringDesc* LOC1;
NimStringDesc* LOC2;
TY55548* LOC3;
NimStringDesc* LOC4;
TY55548* LOC5;
LOC1 = 0;
LOC1 = nosaddFileExt(((NimStringDesc*) &TMP196861), ((NimStringDesc*) &TMP195865));
LOC2 = 0;
LOC2 = nosJoinPath(Libpath_46112, LOC1);
LOC3 = 0;
LOC3 = Compilemodule_191320(LOC2, NIM_FALSE, NIM_TRUE);
LOC4 = 0;
LOC4 = nosaddFileExt(Filename_191407, ((NimStringDesc*) &TMP195865));
LOC5 = 0;
LOC5 = Compilemodule_191320(LOC4, NIM_TRUE, NIM_FALSE);
}
Пример #7
0
N_NIMCALL(NimStringDesc*, Findmodule_106016)(TY42538 Info_106018, NimStringDesc* Modulename_106019) {
NimStringDesc* Result_106020;
NimStringDesc* LOC1;
Result_106020 = 0;
LOC1 = 0;
LOC1 = nosaddFileExt(Modulename_106019, ((NimStringDesc*) &TMP192193));
Result_106020 = Findfile_41090(LOC1);
if (!((Result_106020) && (Result_106020)->Sup.len == 0)) goto LA3;
Fatal_43134(Info_106018, ((NU8) 2), Modulename_106019);
LA3: ;
return Result_106020;
}
Пример #8
0
N_NIMCALL(void, Commandpretty_191643)(NimStringDesc* Filename_191645) {
TY55526* Module_191646;
NimStringDesc* LOC1;
NimStringDesc* LOC5;
Module_191646 = 0;
LOC1 = 0;
LOC1 = nosaddFileExt(Filename_191645, ((NimStringDesc*) &TMP195865));
Module_191646 = Parsefile_92031(LOC1);
if (!!((Module_191646 == NIM_NIL))) goto LA3;
LOC5 = 0;
LOC5 = Getoutfile_46145(Filename_191645, ((NimStringDesc*) &TMP197083));
Rendermodule_85035(Module_191646, LOC5, 0);
LA3: ;
}
Пример #9
0
N_NIMCALL(TY52008*, Genmappingfiles_71053)(TY43019* List_71055) {
TY52008* Result_71056;
TY43015* It_71057;
TY52407 LOC2;
NimStringDesc* LOC3;
Result_71056 = 0;
It_71057 = 0;
It_71057 = ((TY43015*) ((*List_71055).Head));
while (1) {
if (!!((It_71057 == NIM_NIL))) goto LA1;
memset((void*)&LOC2, 0, sizeof(LOC2));
LOC3 = 0;
LOC3 = nosaddFileExt((*It_71057).Data, Cext_70342);
LOC2[0] = Torope_52046(LOC3);
Appf_52071(&Result_71056, ((NimStringDesc*) &TMP196809), LOC2, 1);
It_71057 = ((TY43015*) ((*It_71057).Sup.Next));
} LA1: ;
return Result_71056;
}
Пример #10
0
N_NIMCALL(NimStringDesc*, findmodule_154351)(NimStringDesc* modulename, NimStringDesc* currentmodule) {
	NimStringDesc* result;
	NimStringDesc* m;
	NimStringDesc* currentpath;
	TY118589 LOC1;
	result = 0;
	m = nosaddFileExt(modulename, ((NimStringDesc*) &TMP1485));
	memset((void*)(&LOC1), 0, sizeof(LOC1));
	nossplitFile(currentmodule, (&LOC1));
	currentpath = LOC1.Field0;
	result = HEX2F_118292(currentpath, m);
	{
		NIM_BOOL LOC4;
		LOC4 = 0;
		LOC4 = nosexistsFile(result);
		if (!!(LOC4)) goto LA5;
		result = findfile_154341(m);
	}
	LA5: ;
	return result;
}
Пример #11
0
N_NIMCALL(void, Commandinteractive_191616)(void) {
TY105006 LOC1;
TY105006 LOC2;
TY105006 LOC3;
TY105006 LOC4;
NimStringDesc* LOC5;
NimStringDesc* LOC6;
TY55548* LOC7;
TY55548* M_191630;
TY75204* LOC8;
Gerrormax_47568 = IL64(9223372036854775807);
Gglobaloptions_46079 |=(1<<((NI32)(((NU8) 8))%(sizeof(NI32)*8)));
Settarget_51582(((NU8) 21), ((NU8) 13));
Initdefines_64049();
LOC1 = Verbosepass_186033();
Registerpass_105028(&LOC1);
LOC2 = Sempass_126001();
Registerpass_105028(&LOC2);
LOC3 = Transfpass_188005();
Registerpass_105028(&LOC3);
LOC4 = Evalpass_115046();
Registerpass_105028(&LOC4);
LOC5 = 0;
LOC5 = nosaddFileExt(((NimStringDesc*) &TMP196861), ((NimStringDesc*) &TMP195865));
LOC6 = 0;
LOC6 = nosJoinPath(Libpath_46112, LOC5);
LOC7 = 0;
LOC7 = Compilemodule_191320(LOC6, NIM_FALSE, NIM_TRUE);
M_191630 = 0;
M_191630 = Newmodule_191287(((NimStringDesc*) &TMP197500));
(*M_191630).Sup.Id = Getid_55694();
(*M_191630).Flags |=(1<<((NI32)(((NU8) 15))%(sizeof(NI32)*8)));
LOC8 = 0;
LOC8 = Llstreamopenstdin_75230();
Processmodule_105035(M_191630, ((NimStringDesc*) &TMP197500), LOC8, NIM_NIL);
}
Пример #12
0
N_NIMCALL(NimStringDesc*, findexe_126616)(NimStringDesc* exe) {
	NimStringDesc* result;
	NimStringDesc* path;
{	result = 0;
	result = nosaddFileExt(exe, ((NimStringDesc*) &TMP136));
	{
		NIM_BOOL LOC3;
		LOC3 = 0;
		LOC3 = nosexistsFile(result);
		if (!LOC3) goto LA4;
		goto BeforeRet;
	}
	LA4: ;
	path = getenv_121644(((NimStringDesc*) &TMP1147));
	{
		NimStringDesc* candidate_126621;
		NI last_126807;
		candidate_126621 = 0;
		last_126807 = ((NI) 0);
		{
			if (!(((NI) 0) < (path ? path->Sup.len : 0))) goto LA9;
			{
				while (1) {
					NI first_126809;
					NimStringDesc* x;
					NimStringDesc* LOC17;
					if (!(last_126807 <= (path ? path->Sup.len : 0))) goto LA12;
					first_126809 = last_126807;
					{
						while (1) {
							NIM_BOOL LOC15;
							LOC15 = 0;
							LOC15 = (last_126807 < (path ? path->Sup.len : 0));
							if (!(LOC15)) goto LA16;
							LOC15 = !(((NU8)(path->data[last_126807]) == (NU8)(58)));
							LA16: ;
							if (!LOC15) goto LA14;
							last_126807 += ((NI) 1);
						} LA14: ;
					}
					candidate_126621 = copyStrLast(path, first_126809, (NI)(last_126807 - ((NI) 1)));
					LOC17 = 0;
					LOC17 = expandtilde_126610(candidate_126621);
					x = HEX2F_118292(LOC17, result);
					{
						NIM_BOOL LOC20;
						LOC20 = 0;
						LOC20 = nosexistsFile(x);
						if (!LOC20) goto LA21;
						result = copyString(x);
						goto BeforeRet;
					}
					LA21: ;
					last_126807 += ((NI) 1);
				} LA12: ;
			}
		}
		LA9: ;
	}
	result = copyString(((NimStringDesc*) &TMP136));
	}BeforeRet: ;
	return result;
}
Пример #13
0
N_NIMCALL(void, Maincommand_191201)(NimStringDesc* Cmd_191203, NimStringDesc* Filename_191204) {
TY38661 LOC4;
NU8 LOC5;
NimStringDesc* LOC6;
TY55526* LOC7;
Appendstr_43061(&Searchpaths_46081, Libpath_46112);
if (!!(((Filename_191204) && (Filename_191204)->Sup.len == 0))) goto LA2;
memset((void*)&LOC4, 0, sizeof(LOC4));
nossplitFile(Filename_191204, &LOC4);
Prependstr_43071(&Searchpaths_46081, LOC4.Dir);
LA2: ;
Setid_55696(100);
Gincludefile_105048 = Parsefile_92031;
Gimportmodule_105044 = Importmodule_191325;
LOC5 = Whichkeyword_72482(Cmd_191203);
switch (LOC5) {
case ((NU8) 107):
case ((NU8) 200):
case ((NU8) 176):
case ((NU8) 192):
Gcmd_46084 = ((NU8) 1);
Wantfile_191707(Filename_191204);
Commandcompiletoc_191416(Filename_191204);
break;
case ((NU8) 201):
asgnRefNoCycle((void**) &Cext_70342, copyString(((NimStringDesc*) &TMP196879)));
Gcmd_46084 = ((NU8) 2);
Wantfile_191707(Filename_191204);
Commandcompiletoc_191416(Filename_191204);
break;
case ((NU8) 204):
case ((NU8) 213):
asgnRefNoCycle((void**) &Cext_70342, copyString(((NimStringDesc*) &TMP196880)));
Gcmd_46084 = ((NU8) 3);
Wantfile_191707(Filename_191204);
Commandcompiletoc_191416(Filename_191204);
break;
case ((NU8) 179):
Gcmd_46084 = ((NU8) 18);
Wantfile_191707(Filename_191204);
Rawmessage_48045(((NU8) 176), Cmd_191203);
break;
case ((NU8) 202):
case ((NU8) 212):
Gcmd_46084 = ((NU8) 4);
Wantfile_191707(Filename_191204);
Commandcompiletoecmascript_191601(Filename_191204);
break;
case ((NU8) 203):
Gcmd_46084 = ((NU8) 5);
Wantfile_191707(Filename_191204);
Rawmessage_48045(((NU8) 176), Cmd_191203);
break;
case ((NU8) 205):
Gcmd_46084 = ((NU8) 7);
Wantfile_191707(Filename_191204);
Commandpretty_191643(Filename_191204);
break;
case ((NU8) 206):
Gcmd_46084 = ((NU8) 8);
Loadspecialconfig_80007(((NimStringDesc*) &TMP197084));
Wantfile_191707(Filename_191204);
Commanddoc_156001(Filename_191204);
break;
case ((NU8) 214):
Gcmd_46084 = ((NU8) 15);
Loadspecialconfig_80007(((NimStringDesc*) &TMP197084));
Wantfile_191707(Filename_191204);
Commandrst2html_156004(Filename_191204);
break;
case ((NU8) 215):
Gcmd_46084 = ((NU8) 16);
Loadspecialconfig_80007(((NimStringDesc*) &TMP197487));
Wantfile_191707(Filename_191204);
Commandrst2tex_156007(Filename_191204);
break;
case ((NU8) 207):
Gcmd_46084 = ((NU8) 9);
Wantfile_191707(Filename_191204);
Commandgendepend_191410(Filename_191204);
break;
case ((NU8) 208):
Gcmd_46084 = ((NU8) 10);
Listsymbols_64062();
break;
case ((NU8) 209):
Gcmd_46084 = ((NU8) 11);
Wantfile_191707(Filename_191204);
Commandcheck_191413(Filename_191204);
break;
case ((NU8) 210):
Gcmd_46084 = ((NU8) 12);
Wantfile_191707(Filename_191204);
LOC6 = 0;
LOC6 = nosaddFileExt(Filename_191204, ((NimStringDesc*) &TMP195865));
LOC7 = 0;
LOC7 = Parsefile_92031(LOC6);
break;
case ((NU8) 211):
Gcmd_46084 = ((NU8) 13);
Wantfile_191707(Filename_191204);
Commandscan_191658(Filename_191204);
Messageout_47775(((NimStringDesc*) &TMP197499));
break;
case ((NU8) 216):
Gcmd_46084 = ((NU8) 17);
Commandinteractive_191616();
break;
case ((NU8) 225):
Gcmd_46084 = ((NU8) 14);
Wantfile_191707(Filename_191204);
Commandsuggest_191704(Filename_191204);
break;
default:
Rawmessage_48045(((NU8) 176), Cmd_191203);
break;
}
}
Пример #14
0
N_NIMCALL(NimStringDesc*, Getcompilecfilecmd_70612)(NimStringDesc* Cfilename_70614, NIM_BOOL Isexternal_70615) {
NimStringDesc* Result_70616;
NimStringDesc* Cfile_70617;
NimStringDesc* Objfile_70618;
NimStringDesc* Options_70619;
NimStringDesc* Includecmd_70620;
NimStringDesc* Compilepattern_70621;
NimStringDesc* Key_70622;
NimStringDesc* Trunk_70623;
NimStringDesc* Exe_70624;
NU8 C_70625;
TY38661 LOC1;
NimStringDesc* LOC5;
NIM_BOOL LOC7;
NimStringDesc* LOC10;
NimStringDesc* LOC11;
NimStringDesc* LOC15;
NIM_BOOL LOC17;
NimStringDesc* LOC20;
NimStringDesc* LOC21;
NimStringDesc* LOC24;
NIM_BOOL LOC26;
NimStringDesc* LOC29;
NimStringDesc* LOC30;
NimStringDesc* LOC31;
NIM_BOOL LOC33;
NimStringDesc* LOC36;
NimStringDesc* LOC37;
NIM_BOOL LOC39;
NIM_BOOL LOC46;
NimStringDesc* LOC50;
NimStringDesc* LOC54;
NIM_BOOL LOC59;
NimStringDesc* LOC63;
NimStringDesc* LOC64;
TY70726 LOC65;
NimStringDesc* LOC66;
TY70726 LOC67;
NimStringDesc* LOC68;
Result_70616 = 0;
Cfile_70617 = 0;
Objfile_70618 = 0;
Options_70619 = 0;
Includecmd_70620 = 0;
Compilepattern_70621 = 0;
Key_70622 = 0;
Trunk_70623 = 0;
Exe_70624 = 0;
C_70625 = 0;
C_70625 = Ccompiler_70340;
Options_70619 = copyString(Compileoptions_70348);
memset((void*)&LOC1, 0, sizeof(LOC1));
nossplitFile(Cfilename_70614, &LOC1);
Trunk_70623 = copyString(LOC1.Name);
if (!((Gglobaloptions_46079 &(1<<((((NU8) 9))&31)))!=0)) goto LA3;
LOC5 = 0;
LOC5 = rawNewString(Trunk_70623->Sup.len + 6);
appendString(LOC5, Trunk_70623);
appendString(LOC5, ((NimStringDesc*) &TMP196784));
Key_70622 = LOC5;
LOC7 = Existsconfigvar_46132(Key_70622);
if (!LOC7) goto LA8;
LOC10 = 0;
LOC10 = Getconfigvar_46135(Key_70622);
Addopt_70443(&Options_70619, LOC10);
goto LA6;
LA8: ;
LOC11 = 0;
LOC11 = Getdebug_70601(C_70625);
Addopt_70443(&Options_70619, LOC11);
LA6: ;
LA3: ;
if (!((Goptions_46077 &(1<<((((NU8) 13))&31)))!=0)) goto LA13;
LOC15 = 0;
LOC15 = rawNewString(Trunk_70623->Sup.len + 6);
appendString(LOC15, Trunk_70623);
appendString(LOC15, ((NimStringDesc*) &TMP196786));
Key_70622 = LOC15;
LOC17 = Existsconfigvar_46132(Key_70622);
if (!LOC17) goto LA18;
LOC20 = 0;
LOC20 = Getconfigvar_46135(Key_70622);
Addopt_70443(&Options_70619, LOC20);
goto LA16;
LA18: ;
LOC21 = 0;
LOC21 = Getoptspeed_70597(C_70625);
Addopt_70443(&Options_70619, LOC21);
LA16: ;
goto LA12;
LA13: ;
if (!((Goptions_46077 &(1<<((((NU8) 14))&31)))!=0)) goto LA22;
LOC24 = 0;
LOC24 = rawNewString(Trunk_70623->Sup.len + 5);
appendString(LOC24, Trunk_70623);
appendString(LOC24, ((NimStringDesc*) &TMP196788));
Key_70622 = LOC24;
LOC26 = Existsconfigvar_46132(Key_70622);
if (!LOC26) goto LA27;
LOC29 = 0;
LOC29 = Getconfigvar_46135(Key_70622);
Addopt_70443(&Options_70619, LOC29);
goto LA25;
LA27: ;
LOC30 = 0;
LOC30 = Getoptsize_70605(C_70625);
Addopt_70443(&Options_70619, LOC30);
LA25: ;
goto LA12;
LA22: ;
LA12: ;
LOC31 = 0;
LOC31 = rawNewString(Trunk_70623->Sup.len + 7);
appendString(LOC31, Trunk_70623);
appendString(LOC31, ((NimStringDesc*) &TMP196790));
Key_70622 = LOC31;
LOC33 = Existsconfigvar_46132(Key_70622);
if (!LOC33) goto LA34;
LOC36 = 0;
LOC36 = Getconfigvar_46135(Key_70622);
Addopt_70443(&Options_70619, LOC36);
LA34: ;
Exe_70624 = copyString(Cc_70041[(C_70625)-1].Compilerexe);
LOC37 = 0;
LOC37 = rawNewString(Cc_70041[(C_70625)-1].Name->Sup.len + 4);
appendString(LOC37, Cc_70041[(C_70625)-1].Name);
appendString(LOC37, ((NimStringDesc*) &TMP196791));
Key_70622 = LOC37;
LOC39 = Existsconfigvar_46132(Key_70622);
if (!LOC39) goto LA40;
Exe_70624 = Getconfigvar_46135(Key_70622);
LA40: ;
if (!(Targetos_51570 == ((NU8) 2))) goto LA43;
Exe_70624 = nosaddFileExt(Exe_70624, ((NimStringDesc*) &TMP196792));
LA43: ;
LOC46 = ((Gglobaloptions_46079 &(1<<((((NU8) 10))&31)))!=0);
if (!(LOC46)) goto LA47;
LOC46 = ((Os_51053[(Targetos_51570)-1].Props &(1<<((((NU8) 0))&7)))!=0);
LA47: ;
if (!LOC46) goto LA48;
LOC50 = 0;
LOC50 = rawNewString(Cc_70041[(C_70625)-1].Pic->Sup.len + 1);
appendChar(LOC50, 32);
appendString(LOC50, Cc_70041[(C_70625)-1].Pic);
Options_70619 = resizeString(Options_70619, LOC50->Sup.len + 0);
appendString(Options_70619, LOC50);
LA48: ;
if (!(Targetos_51570 == Hostos_51571)) goto LA52;
Includecmd_70620 = copyString(Cc_70041[(C_70625)-1].Includecmd);
LOC54 = 0;
LOC54 = Quoteifcontainswhite_26268(Libpath_46112);
Includecmd_70620 = resizeString(Includecmd_70620, LOC54->Sup.len + 0);
appendString(Includecmd_70620, LOC54);
Compilepattern_70621 = nosJoinPath(Ccompilerpath_70349, Exe_70624);
goto LA51;
LA52: ;
Includecmd_70620 = copyString(((NimStringDesc*) &TMP70271));
Compilepattern_70621 = copyString(Cc_70041[(C_70625)-1].Compilerexe);
LA51: ;
if (!(Targetos_51570 == Hostos_51571)) goto LA56;
Cfile_70617 = copyString(Cfilename_70614);
goto LA55;
LA56: ;
Cfile_70617 = nosextractFilename(Cfilename_70614);
LA55: ;
LOC59 = !(Isexternal_70615);
if (LOC59) goto LA60;
LOC59 = !((Targetos_51570 == Hostos_51571));
LA60: ;
if (!LOC59) goto LA61;
Objfile_70618 = Toobjfile_70512(Cfile_70617);
goto LA58;
LA61: ;
LOC63 = 0;
LOC63 = Toobjfile_70512(Cfile_70617);
Objfile_70618 = Completecfilepath_70507(LOC63, NIM_TRUE);
LA58: ;
LOC64 = 0;
LOC64 = nosaddFileExt(Cfile_70617, Cext_70342);
Cfile_70617 = Quoteifcontainswhite_26268(LOC64);
Objfile_70618 = Quoteifcontainswhite_26268(Objfile_70618);
memset((void*)&LOC65, 0, sizeof(LOC65));
LOC65[0] = copyString(((NimStringDesc*) &TMP196793));
LOC65[1] = copyString(Cfile_70617);
LOC65[2] = copyString(((NimStringDesc*) &TMP196794));
LOC65[3] = copyString(Objfile_70618);
LOC65[4] = copyString(((NimStringDesc*) &TMP196795));
LOC65[5] = copyString(Options_70619);
LOC65[6] = copyString(((NimStringDesc*) &TMP196796));
LOC65[7] = copyString(Includecmd_70620);
LOC65[8] = copyString(((NimStringDesc*) &TMP196797));
LOC65[9] = Getprefixdir_46109();
LOC65[10] = copyString(((NimStringDesc*) &TMP196798));
LOC65[11] = copyString(Libpath_46112);
LOC66 = 0;
LOC66 = nsuFormatOpenArray(Compilepattern_70621, LOC65, 12);
Result_70616 = Quoteifcontainswhite_26268(LOC66);
Result_70616 = addChar(Result_70616, 32);
memset((void*)&LOC67, 0, sizeof(LOC67));
LOC67[0] = copyString(((NimStringDesc*) &TMP196793));
LOC67[1] = copyString(Cfile_70617);
LOC67[2] = copyString(((NimStringDesc*) &TMP196794));
LOC67[3] = copyString(Objfile_70618);
LOC67[4] = copyString(((NimStringDesc*) &TMP196795));
LOC67[5] = copyString(Options_70619);
LOC67[6] = copyString(((NimStringDesc*) &TMP196796));
LOC67[7] = copyString(Includecmd_70620);
LOC67[8] = copyString(((NimStringDesc*) &TMP196797));
LOC68 = 0;
LOC68 = Getprefixdir_46109();
LOC67[9] = Quoteifcontainswhite_26268(LOC68);
LOC67[10] = copyString(((NimStringDesc*) &TMP196798));
LOC67[11] = Quoteifcontainswhite_26268(Libpath_46112);
nsuAddf(&Result_70616, Cc_70041[(C_70625)-1].Compiletmpl, LOC67, 12);
return Result_70616;
}
Пример #15
0
N_NIMCALL(void, Callccompiler_70806)(NimStringDesc* Projectfile_70808) {
NimStringDesc* Linkcmd_70809;
NimStringDesc* Buildgui_70810;
NimStringDesc* Builddll_70811;
NU8 C_70833;
TY52008* Script_70834;
TY39221* Cmds_70851;
NI Res_70869;
NI I_70895;
NI HEX3Atmp_71050;
NI Res_71052;
NI LOC14;
NIM_BOOL LOC15;
TY46331 LOC22;
NimStringDesc* Linkerexe_70936;
NimStringDesc* LOC26;
NimStringDesc* LOC36;
NimStringDesc* Exefile_70970;
TY47805 LOC43;
TY38661 LOC44;
NimStringDesc* LOC45;
TY38661 LOC46;
TY38661 LOC50;
TY43015* It_70995;
NimStringDesc* Objfiles_70996;
NimStringDesc* LOC55;
NimStringDesc* LOC56;
NimStringDesc* LOC57;
NimStringDesc* LOC58;
TY71019 LOC59;
NimStringDesc* LOC60;
TY71019 LOC61;
NimStringDesc* LOC62;
Linkcmd_70809 = 0;
Buildgui_70810 = 0;
Builddll_70811 = 0;
if (!((Gglobaloptions_46079 & 4160) == 64)) goto LA2;
goto BeforeRet;
LA2: ;
Filecounter_70611 = 0;
C_70833 = 0;
C_70833 = Ccompiler_70340;
Script_70834 = 0;
Script_70834 = NIM_NIL;
Cmds_70851 = 0;
Cmds_70851 = (TY39221*) newSeq(NTI39221, 0);
Compilecfile_70733(&Tocompile_70345, &Script_70834, &Cmds_70851, NIM_FALSE);
Compilecfile_70733(&Externaltocompile_70346, &Script_70834, &Cmds_70851, NIM_TRUE);
if (!!(((Gglobaloptions_46079 &(1<<((((NU8) 6))&31)))!=0))) goto LA5;
if (!(Gnumberofprocessors_46086 == 0)) goto LA8;
Gnumberofprocessors_46086 = nospcountProcessors();
LA8: ;
Res_70869 = 0;
Res_70869 = 0;
if (!(Gnumberofprocessors_46086 <= 1)) goto LA11;
I_70895 = 0;
HEX3Atmp_71050 = 0;
HEX3Atmp_71050 = (Cmds_70851->Sup.len-1);
Res_71052 = 0;
Res_71052 = 0;
while (1) {
if (!(Res_71052 <= HEX3Atmp_71050)) goto LA13;
I_70895 = Res_71052;
LOC14 = nospexecCmd(Cmds_70851->data[I_70895]);
Res_70869 = ((LOC14 >= Res_70869) ? LOC14 : Res_70869);
Res_71052 += 1;
} LA13: ;
goto LA10;
LA11: ;
LOC15 = ((Gglobaloptions_46079 &(1<<((((NU8) 5))&31)))!=0);
if (LOC15) goto LA16;
LOC15 = (0 < Gverbosity_46085);
LA16: ;
if (!LOC15) goto LA17;
Res_70869 = nospexecProcesses(Cmds_70851->data, Cmds_70851->Sup.len, 11, Gnumberofprocessors_46086);
goto LA10;
LA17: ;
Res_70869 = nospexecProcesses(Cmds_70851->data, Cmds_70851->Sup.len, 10, Gnumberofprocessors_46086);
LA10: ;
if (!!((Res_70869 == 0))) goto LA20;
memset((void*)&LOC22, 0, sizeof(LOC22));
Rawmessage_47971(((NU8) 62), LOC22, 0);
LA20: ;
LA5: ;
if (!!(((Gglobaloptions_46079 &(1<<((((NU8) 7))&31)))!=0))) goto LA24;
Linkerexe_70936 = 0;
LOC26 = 0;
LOC26 = rawNewString(Cc_70041[(C_70833)-1].Name->Sup.len + 10);
appendString(LOC26, Cc_70041[(C_70833)-1].Name);
appendString(LOC26, ((NimStringDesc*) &TMP196872));
Linkerexe_70936 = Getconfigvar_46135(LOC26);
if (!(Linkerexe_70936->Sup.len == 0)) goto LA28;
Linkerexe_70936 = copyString(Cc_70041[(C_70833)-1].Linkerexe);
LA28: ;
if (!(Targetos_51570 == ((NU8) 2))) goto LA31;
Linkerexe_70936 = nosaddFileExt(Linkerexe_70936, ((NimStringDesc*) &TMP196792));
LA31: ;
if (!!((Hostos_51571 == Targetos_51570))) goto LA34;
Linkcmd_70809 = Quoteifcontainswhite_26268(Linkerexe_70936);
goto LA33;
LA34: ;
LOC36 = 0;
LOC36 = nosJoinPath(Ccompilerpath_70349, Linkerexe_70936);
Linkcmd_70809 = Quoteifcontainswhite_26268(LOC36);
LA33: ;
if (!((Gglobaloptions_46079 &(1<<((((NU8) 11))&31)))!=0)) goto LA38;
Buildgui_70810 = copyString(Cc_70041[(C_70833)-1].Buildgui);
goto LA37;
LA38: ;
Buildgui_70810 = copyString(((NimStringDesc*) &TMP70271));
LA37: ;
Exefile_70970 = 0;
if (!((Gglobaloptions_46079 &(1<<((((NU8) 10))&31)))!=0)) goto LA41;
memset((void*)&LOC43, 0, sizeof(LOC43));
memset((void*)&LOC44, 0, sizeof(LOC44));
nossplitFile(Projectfile_70808, &LOC44);
LOC43[0] = copyString(LOC44.Name);
Exefile_70970 = nsuFormatOpenArray(Os_51053[(Targetos_51570)-1].Dllfrmt, LOC43, 1);
Builddll_70811 = copyString(Cc_70041[(C_70833)-1].Builddll);
goto LA40;
LA41: ;
LOC45 = 0;
memset((void*)&LOC46, 0, sizeof(LOC46));
nossplitFile(Projectfile_70808, &LOC46);
LOC45 = rawNewString(LOC46.Name->Sup.len + Os_51053[(Targetos_51570)-1].Exeext->Sup.len + 0);
appendString(LOC45, LOC46.Name);
appendString(LOC45, Os_51053[(Targetos_51570)-1].Exeext);
Exefile_70970 = LOC45;
Builddll_70811 = copyString(((NimStringDesc*) &TMP70271));
LA40: ;
if (!(Targetos_51570 == Hostos_51571)) goto LA48;
memset((void*)&LOC50, 0, sizeof(LOC50));
nossplitFile(Projectfile_70808, &LOC50);
Exefile_70970 = nosJoinPath(LOC50.Dir, Exefile_70970);
LA48: ;
Exefile_70970 = Quoteifcontainswhite_26268(Exefile_70970);
It_70995 = 0;
It_70995 = ((TY43015*) (Tolink_70344.Head));
Objfiles_70996 = 0;
Objfiles_70996 = copyString(((NimStringDesc*) &TMP70271));
while (1) {
if (!!((It_70995 == NIM_NIL))) goto LA51;
Objfiles_70996 = addChar(Objfiles_70996, 32);
if (!(Targetos_51570 == Hostos_51571)) goto LA53;
LOC55 = 0;
LOC55 = nosaddFileExt((*It_70995).Data, Cc_70041[(Ccompiler_70340)-1].Objext);
LOC56 = 0;
LOC56 = Quoteifcontainswhite_26268(LOC55);
Objfiles_70996 = resizeString(Objfiles_70996, LOC56->Sup.len + 0);
appendString(Objfiles_70996, LOC56);
goto LA52;
LA53: ;
LOC57 = 0;
LOC57 = nosaddFileExt((*It_70995).Data, Cc_70041[(Ccompiler_70340)-1].Objext);
LOC58 = 0;
LOC58 = Quoteifcontainswhite_26268(LOC57);
Objfiles_70996 = resizeString(Objfiles_70996, LOC58->Sup.len + 0);
appendString(Objfiles_70996, LOC58);
LA52: ;
It_70995 = ((TY43015*) ((*It_70995).Sup.Next));
} LA51: ;
memset((void*)&LOC59, 0, sizeof(LOC59));
LOC59[0] = copyString(((NimStringDesc*) &TMP196873));
LOC59[1] = copyString(Builddll_70811);
LOC59[2] = copyString(((NimStringDesc*) &TMP196874));
LOC59[3] = copyString(Buildgui_70810);
LOC59[4] = copyString(((NimStringDesc*) &TMP196795));
LOC59[5] = copyString(Linkoptions_70347);
LOC59[6] = copyString(((NimStringDesc*) &TMP196875));
LOC59[7] = copyString(Objfiles_70996);
LOC59[8] = copyString(((NimStringDesc*) &TMP196876));
LOC59[9] = copyString(Exefile_70970);
LOC59[10] = copyString(((NimStringDesc*) &TMP196797));
LOC59[11] = Getprefixdir_46109();
LOC59[12] = copyString(((NimStringDesc*) &TMP196798));
LOC59[13] = copyString(Libpath_46112);
LOC60 = 0;
LOC60 = nsuFormatOpenArray(Linkcmd_70809, LOC59, 14);
Linkcmd_70809 = Quoteifcontainswhite_26268(LOC60);
Linkcmd_70809 = addChar(Linkcmd_70809, 32);
memset((void*)&LOC61, 0, sizeof(LOC61));
LOC61[0] = copyString(((NimStringDesc*) &TMP196873));
LOC61[1] = copyString(Builddll_70811);
LOC61[2] = copyString(((NimStringDesc*) &TMP196874));
LOC61[3] = copyString(Buildgui_70810);
LOC61[4] = copyString(((NimStringDesc*) &TMP196795));
LOC61[5] = copyString(Linkoptions_70347);
LOC61[6] = copyString(((NimStringDesc*) &TMP196875));
LOC61[7] = copyString(Objfiles_70996);
LOC61[8] = copyString(((NimStringDesc*) &TMP196876));
LOC61[9] = copyString(Exefile_70970);
LOC61[10] = copyString(((NimStringDesc*) &TMP196797));
LOC62 = 0;
LOC62 = Getprefixdir_46109();
LOC61[11] = Quoteifcontainswhite_26268(LOC62);
LOC61[12] = copyString(((NimStringDesc*) &TMP196798));
LOC61[13] = Quoteifcontainswhite_26268(Libpath_46112);
nsuAddf(&Linkcmd_70809, Cc_70041[(C_70833)-1].Linktmpl, LOC61, 14);
if (!!(((Gglobaloptions_46079 &(1<<((((NU8) 6))&31)))!=0))) goto LA64;
Execexternalprogram_70570(Linkcmd_70809);
LA64: ;
goto LA23;
LA24: ;
Linkcmd_70809 = copyString(((NimStringDesc*) &TMP70271));
LA23: ;
if (!((Gglobaloptions_46079 &(1<<((((NU8) 12))&31)))!=0)) goto LA67;
App_52036(&Script_70834, Linkcmd_70809);
App_52036(&Script_70834, Tnl_51581);
Generatescript_70590(Projectfile_70808, Script_70834);
LA67: ;
BeforeRet: ;
}