Initialize

This commit is contained in:
zaCade 2018-12-07 16:49:40 +01:00
commit 4d699fe780
4 changed files with 95 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
/include
/spcomp
/spcomp.exe
*.secret

47
compile-all.py Normal file
View File

@ -0,0 +1,47 @@
#!/usr/bin/python3
import os
import sys
import subprocess
c_null = "\x1b[00;00m"
c_red = "\x1b[31;01m"
c_blue = "\x1b[34;01m"
c_green = "\x1b[32;01m"
SM_INCLUDES = "includes"
SPCOMP = "./spcomp"
if __name__ == "__main__":
Plugins = []
Path, Directories, Files = next(os.walk("."))
for Directory in Directories:
if not Directory.startswith(".") and not Directory.startswith("_") and Directory != "include" and Directory != "includes" and Directory != "plugins":
Plugins.append(Directory)
for Plugin in Plugins:
print(c_red + "### Compiling {0}".format(Plugin) + c_null)
SourcePath = os.path.join(Plugin, "scripting")
Path, Directories, Files = next(os.walk(SourcePath))
for File in Files:
if File.endswith(".sp"):
print(c_green + "# Compiling {0} ({1})".format(os.path.basename(File), Plugin) + c_null)
SourcePath = os.path.join(Path, File)
IncludePath = os.path.join(Path, "include")
OutDir = "plugins"
OutPath = os.path.join(OutDir, os.path.splitext(os.path.basename(SourcePath))[0] + ".smx")
Compiler = [SPCOMP, "-i" + SM_INCLUDES]
if os.path.isdir(IncludePath):
Compiler.append("-i" + IncludePath)
Compiler.append(SourcePath)
Compiler.append("-o" + OutPath)
try:
err = subprocess.call(Compiler)
if err:
raise Exception()
except Exception:
sys.exit(1)
print("")

42
compile.py Normal file
View File

@ -0,0 +1,42 @@
#!/usr/bin/python3
import os
import sys
import subprocess
c_null = "\x1b[00;00m"
c_red = "\x1b[31;01m"
c_blue = "\x1b[34;01m"
c_green = "\x1b[32;01m"
SM_INCLUDES = "includes"
SPCOMP = "./spcomp"
if __name__ == "__main__":
Plugins = []
for Directory in sys.argv[1:]:
if Directory != ".git" and Directory != "include" and Directory != "includes" and Directory != "plugins":
Plugins.append(Directory)
for Plugin in Plugins:
SourcePath = os.path.join(Plugin, "scripting")
Path, Directories, Files = next(os.walk(SourcePath))
for File in Files:
if File.endswith(".sp"):
print(c_green + "# Compiling {0} ({1})".format(os.path.basename(File), Plugin) + c_null)
SourcePath = os.path.join(Path, File)
IncludePath = os.path.join(Path, "include")
OutDir = "plugins"
OutPath = os.path.join(OutDir, os.path.splitext(os.path.basename(SourcePath))[0] + ".smx")
Compiler = [SPCOMP, "-i" + SM_INCLUDES]
if os.path.isdir(IncludePath):
Compiler.append("-i" + IncludePath)
Compiler.append(SourcePath)
Compiler.append("-o" + OutPath)
try:
subprocess.call(Compiler)
except Exception:
sys.exit(1)
print("")

2
plugins/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*
!.gitignore