blob: 54a6b6503c1d330ee515c5a6cda9451e8ea48a6d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# Jacopo Grandi, 15/08/2020
# Link - Compile - Build
# mingw command creation and execution
try:
import os
import sys
if len(sys.argv) > 1:
os.chdir(sys.argv[1])
if not("main.c" in os.listdir(".")):
# try searching father folder
os.chdir("../")
if not("main.c" in os.listdir(".")):
print("no main.c found, press any key to abort...")
import msvcrt as m
m.getch()
quit()
dirs = "-I. "
fs = ""
for d in os.listdir("."):
if d.find(".") == -1:
flag = False
for f in os.listdir("./"+d+"/"):
if f.endswith(".c"):
fs += d+"/"+f+" "
flag = True
if flag: dirs += "-I" + d + " "
cons = ""
f = open("main.c", "r");
mainraw = f.read(); f.close();
if "#define LCB_NO_CONSOLE" in mainraw.splitlines():
cons = "-Wl,-subsystem,windows"
os.system("mkdir build")
cmd = "g++ "+\
"main.c "+\
fs+\
dirs+\
"-IC:\MinGW_libs\include\SDL2 "+\
"-IC:\MinGW_libs\include\plibsys "+\
"-LC:\MinGW_libs\lib "+\
"-w "+\
"-lmingw32 -lSDL2main -lSDL2 -lSDL2_mixer -lplibsys "+\
"-o build/test "+\
cons
print(cmd)
r = os.system(cmd)
if r == 0:
print("build successfull")
os.chdir("build")
os.system("test.exe")
else:
os.system("pause")
except e:
import traceback;
open("error.txt", "w").write(''.join(tb.format_exception(None, e, e.__traceback__)))
|