| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| | import os, sys
|
| | import MakeAppTools
|
| | import re
|
| |
|
| | FilFilter = [
|
| | "^.*\\.o$",
|
| | "^.*Makefile$",
|
| | "^.*\\.la$",
|
| | "^.*\\.lo$",
|
| | "^.*\\.positions$",
|
| | "^.*\\.aux$",
|
| | "^.*\\.bsc$",
|
| | "^.*\\.exp$",
|
| | "^.*\\.ilg$",
|
| | "^.*\\.ilk$",
|
| | "^.*\\.in$",
|
| | "^.*\\.mak$",
|
| | "^.*\\.ncb$",
|
| | "^.*\\.opt$",
|
| | "^.*\\.pyc$",
|
| | "^.*\\.pyd$",
|
| | "^.*\\.pdb$",
|
| | "^.*\\.plg$",
|
| | ]
|
| |
|
| | DirFilter = [
|
| | "^.*\\.o$",
|
| | "^Debug$",
|
| | "^DebugCmd$",
|
| | "^DebugPy$",
|
| | "^Release$",
|
| | "^ReleaseCmd$",
|
| | "^ReleasePy$",
|
| | "^Attic$",
|
| | "^CVS$",
|
| | "^\\.svn$",
|
| | "^\\.deps$",
|
| | "^\\.libs$",
|
| | ]
|
| |
|
| |
|
| | def SetupFilter(MatchList):
|
| | RegList = []
|
| | for regexp in MatchList:
|
| | a = re.compile(regexp)
|
| | RegList.append(a)
|
| | return RegList
|
| |
|
| |
|
| | def createApp(Application):
|
| | """
|
| | Create a new application by copying the template
|
| | """
|
| |
|
| | if not os.path.isdir("../Mod/" + Application):
|
| | os.mkdir("../Mod/" + Application)
|
| | else:
|
| | sys.stdout.write(Application + " already exists. Please enter another name.\n")
|
| | sys.exit()
|
| |
|
| |
|
| | sys.stdout.write("Copying files...")
|
| | MakeAppTools.copyTemplate(
|
| | "_TEMPLATE_",
|
| | "../Mod/" + Application,
|
| | "_TEMPLATE_",
|
| | Application,
|
| | SetupFilter(FilFilter),
|
| | SetupFilter(DirFilter),
|
| | )
|
| | sys.stdout.write("Ok\n")
|
| |
|
| |
|
| | sys.stdout.write("Modifying files...\n")
|
| | MakeAppTools.replaceTemplate("../Mod/" + Application, "_TEMPLATE_", Application)
|
| | MakeAppTools.replaceTemplate(
|
| | "../Mod/" + Application,
|
| | "${CMAKE_SOURCE_DIR}/src/Tools/",
|
| | "${CMAKE_SOURCE_DIR}/src/Mod/",
|
| | )
|
| |
|
| |
|
| | sys.stdout.write("Modifying files done.\n")
|
| |
|
| | sys.stdout.write(Application + " module created successfully.\n")
|
| |
|
| |
|
| | def validateApp(AppName):
|
| | """
|
| | Validates the class name
|
| | """
|
| | if len(AppName) < 2:
|
| | sys.stdout.write("Too short name: '" + AppName + "'\n")
|
| | sys.exit()
|
| |
|
| | clName = "class " + AppName + ": self=0"
|
| | try:
|
| | exec(clName)
|
| | except Exception:
|
| |
|
| | sys.stdout.write("Invalid name: '" + AppName + "'\n")
|
| | sys.exit()
|
| |
|
| |
|
| | sys.stdout.write("Please enter a name for your application:")
|
| | sys.stdout.flush()
|
| | AppName = sys.stdin.readline()[:-1]
|
| | validateApp(AppName)
|
| | createApp(AppName)
|
| |
|