Multi-environ Manager v7.6 (PyMake)
-
PyMake 7.6
- If you'd like to make cross-platform project, but cmake can't build, it need to config running environment ?
- If you have issued want to depend some projects generated by cmake qmake autotools e.g but they all need to change not alike variable about environment across third platforms at least?
- Now pymake make beautiful, config once by use it in any platforms.
Repo
https://gitee.com/drabel/PyMake
https://github.com/AbelTian/PyMake.gitInstall
In PyMake source directory.
Windows: [admin authority]
install.bat %*Unix: [sudo]
install.shon console, use pymake cc cmd-name to execute command stream.
on console, use pymake ccvp cmd-name to execute command stream with params.Usage:
- firstly, config .json file using pymake source config --edit. (only once!)
- path-assemblage. (path assemblage for your pc.)
- environ. (separate environment.)
- command. (your custom command, step by step, it will be expand in .bat when executing. I will put in params to .bat .)
- use pymake system/local/custom/env xx -r, seeing your environment.
- use pymake ccvp xxx xxx-params to execute local or wild command with params, or use shortcut pyccvp. and other command is ok to use, too.
Environ config file
MyComputer-User.json in PyMake source root.
{ "path-assemblage": { "root": "R:/Develop", "root2": "V:/Develop", "root.src": "${root}/a0-develop", "root.prod": "${root2}/d0-product", "root.sdk": "${root2}/d1-sdk", "root.tool": "${root}/b0-toolkits", "root.tools": "${root}/e0-tools", "root.build": "${root2}/c0-buildstation", "root.test": "${root}/e3-test", "root.webrc": "${root}/e2-webrc", "cc": "${root.tool}/a0-Compiler", "wincc": "${root.tool}/winCompilers", "python-install": "C:/Users/Administrator/AppData/Local/Programs/Python", "py27": "${python-install}/Python27", "py36": "${python-install}/Python36", "py37": "${python-install}/Python37", "py": "${py27}", "py.bin": "${py};${py}/Scripts", "pymake": "${root.tool}/a0-compiler/PyMake", "pymake.env": "${pymake}/UserSource", "pymake.shell": "${pymake.env}/UserShell", "cmake": "${wincc}/cmake3.9.1_64", "cmake.bin": "${cmake}/bin", .................... [too long] "qt": "${root.tool}/winLibraries/Qt", "qt5.12.version": "5.12.2", "qt5.9.version": "5.9.2", "qt5.5.version": "5.5.1", "qt5.version": "5.9.2", "qt4.version": "4.8.6", "qt4.8.mingw32": "${qt}/${qt4.version}/mingw32", "qt4.8.mingw32.bin": "${qt4.8.mingw32}/bin", "qt5.armhf32": "${qt}/${qt5.version}/mingw53_armhf32", "qt5.armhf32.bin": "${qt5.armhf32}/bin", "qt5.5.armhf32": "${qt}/${qt5.5.version}/armhf32", "qt5.5.armhf32.bin": "${qt5.5.armhf32}/bin", "qt5.5.armhf32.sysroot": "${qt5.5.armhf32}/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi", "qt5.9.mingw32": "${qt}/${qt5.9.version}/mingw53_32", "qt5.9.mingw32.bin": "${qt5.9.mingw32}/bin", "qt5.12.mingw64": "${qt}/${qt5.12.version}/mingw73_64", "qt5.12.mingw64.bin": "${qt5.12.mingw64}/bin", "qt5.9.clang": "${qt}/${qt5.9.version}/clang_64", "qt5.9.clang.bin": "${qt5.9.clang}/bin", "qt5.9.gcc_64": "${qt}/${qt5.9.version}/gcc_64", "qt5.9.gcc_64.bin": "${qt5.9.gcc_64}/bin", "qt5.9.android_arm": "${qt}/${qt5.9.version}/android_armv7", "qt5.9.android_arm.bin": "${qt}/${qt5.9.version}/android_armv7/bin", "qt5.9.android_x86": "${qt}/${qt5.9.version}/android_x86", "qt5.9.android_x86.bin": "${qt}/${qt5.9.version}/android_x86/bin", "qt5.8.android_x86": "${qt}/5.8/android_x86", "sdk.tool": "${android.sdk}/tools", "java1.7.home": "${android.java}/jdk1.7.0_79.jdk/Contents/Home", "java1.8.home": "${android.java}/jdk1.8.0_131", "java1.9.home": "${android.java}/jdk9.jdk/Contents/Home", "java1.7.bin": "${java1.7.home}/bin", "java1.8.bin": "${java1.8.home}/bin", "java1.9.bin": "${java1.9.home}/bin", "java.home": "${java1.8.home}", "java.bin": "${java.home}/bin", "ant.bin": "${android.ant}/bin", "ndk.arm": "${android.ndk}/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64", "ndk.x86": "${android.ndk}/toolchains/x86-4.9/prebuilt/windows-x86_64", "ndk.x86_64": "${android.ndk}/toolchains/x86_64-4.9/prebuilt/windows-x86_64", "ndk.arm.bin": "${ndk.arm}/bin", "ndk.x86.bin": "${ndk.x86}/bin", "ndk.x86_64.bin": "${ndk.x86_64}/bin", "android.gradle": "${android}/gradle-all", ......................[too long] }, "environ": { "android.mobile": { "path+": [ "${cmake.bin}", "${qt5.9.android_arm.bin}", "${mingw32.bin}", "${java1.8.bin}", "${android.sdk}", "${sdk.plat.tool}", "${sdk.build.tool}", "${sdk.tool}", "${ant.bin}", "${ndk.arm.bin}" ], "make0": "mingw32-make", "ANDROID_API_VERSION": "android-23", "ANDROID_HOME": "${android.sdk}", "ANDROID_SDK_ROOT": "${android.sdk}", "ANDROID_NDK_ROOT": "${android.ndk}", "ANDROID_NDK_PLATFORM": "android-23", "ANDROID_NDK_HOST": "windows-x86_64", "ANDROID_NDK_TOOLCHAIN_PREFIX": "arm-linux-androideabi", "ANDROID_NDK_TOOLCHAIN_VERSION": "4.9", "ANDROID_NDK_TOOLS_PREFIX": "arm-linux-androideabi", "NDK_TOOLCHAIN_PATH": "${ndk.arm.bin}", "NDK_TOOLS_PREFIX": "arm-linux-androideabi", "QTDIR": "${qt5.9.android_arm}", "QTSPEC": "-spec android-g++", "QTCONFIG": "", "JAVA_HOME": "${java1.8.home}", "CLASSPATH": ".:${JAVA_HOME}/lib/dt/jar:${JAVA_HOME}/lib/tools.jar", "PYMAKE_MYNAME": "T.D.R", "a_special_var_const": "hello world", "QTVERSION": "${qt5.9.version}", "QKIT": "ANDROID", "QSYS": "Android" }, "qt5": { "path+": [ "${cmake.bin}", "${mingw32.bin}", "${qt5.9.mingw32.bin}" ], "CMAKEGENERATOR": "MinGW Makefiles", "make0": "mingw32-make", "QTVERSION": "${qt5.9.version}", "QTDIR": "${qt5.9.mingw32}", "QTSPEC": "-spec win32-g++", "QTCONFIG": "", "QKIT": "WIN32", "QSYS": "Windows" }, "qt5.x64": { "path+": [ "${cmake.bin}", "${mingw64.bin}", "${qt5.12.mingw64.bin}" ], "make0": "mingw32-make", "QTVERSION": "${qt5.12.version}", "QTDIR": "${qt5.12.mingw64}", "QTSPEC": "-spec win32-g++", "QTCONFIG": "", "QKIT": "WIN64", "QSYS": "Win64" }, "armhf32": { "path+": [ "${cmake.bin}", "${armhf32.bin}", "${qt5.armhf32.bin}", "${mingw32.bin}" ], "make0": "make", "QTVERSION": "${qt5.version}", "QTDIR": "${qt5.armhf32}", "QTSPEC": "-spec linux-arm-gnueabihf-g++", "QTCONFIG": "", "QKIT": "Armhf32", "QSYS": "Armhf32" }, "watcom": { "path+": [ "${watcom.bin}" ], "WATCOM": "${watcom}", "EDPATH": "${watcom.edpath}", "WHTMLHELP": "${watcom.help}", "WIPFC": "${watcom.wipfc}", "INCLUDE": "${watcom.include}" }, "other2": { "path+": [ "${doxygen.bin}", "${graphviz.bin}", "${perl.bin}", "${xmake}", "${ninja}", "${java1.8.bin}", "${py.bin}", "${lua}", "${php}", "${go.bin}", "${cmake.bin}", "${mingw32.bin}", "${qt5.9.mingw32.bin}" ], "CMAKEGENERATOR": "MinGW Makefiles", "make0": "mingw32-make", "QTVERSION": "${qt5.9.version}", "QTDIR": "${qt5.9.mingw32}", "QTSPEC": "-spec win32-g++", "QTCONFIG": "", "QKIT": "WIN32", "QSYS": "Windows" }, "current": "qt5" }, "variable-assemblage": { "MyName": "T.D.R.", "TIPS": "If you lost variable content or command content, please record to there, I wont delete them." }, "command": { "cc0": [], "cc1": [ "@echo off", "echo hello." ], "ccc": [ "echo %QTDIR%" ], "test": [ "echo %cd%" ], "test.2": [ "echo %*", "set param=%*", "echo %param%", "ping 127.0.0.1 %param%", "rem exit /b 0" ], "test.3": [ "rem echo %*", "ping %*" ], "test.4": [ "exit /b 0" ], "test.5": [ "echo 中文。" ], "test.6": [ "echo %Path%" ], "open.dir": [ "echo [%1]", "if not exist \"\"%1\"\" ( echo has no this dir. & exit /b 0)", "rem echo [%1]", "start %1" ], "open.tool": [ "start ${root.tools}/%1.exe.lnk" ], "qqtsh": [ "cd ${root.src}", "call %1" ], "android.sdk": [ "${android.sdk}/\"SDK Manager.exe\"" ], "qt.creator": [ "cd ${root.build}", "start ${qt}/Tools/QtCreator/bin/qtcreator.exe" ], "adb.d": [ "adb devices" ], "libtool": [ "cd /d ${root.prod}/AddLibraryTool/Windows", "start ${root.prod}/AddLibraryTool/Windows/AddLibraryTool.exe" ], "libtool2": [ "cd /d ${root.prod}/AddLibraryTool-Multiple/Windows", "start ${root.prod}/AddLibraryTool-Multiple/Windows/AddLibraryTool-Multiple.exe" ], "apptool": [ "cd /d ${root.prod}/ProductExecTool/Windows", "start ${root.prod}/ProductExecTool/Windows/ProductExecTool.exe" ], "open.pymake": [ "set sdk=%PYMAKEPROGRAMROOT%", "start %sdk%" ], "open.prod": [ "set prod=%1", "cd /d ${root.prod}/%prod%/Windows", "start ${root.prod}/%prod%/Windows/%prod%.exe" ], "open.prodd": [ "set prod=%1", "echo %prod%", "echo ${root.prod}/%prod%/Windows/%prod%d.exe", "cd /d ${root.prod}/%prod%/Windows", "start ${root.prod}/%prod%/Windows/%prod%d.exe" ], "open.src": [ "set src=%1", "start ${root.src}/%src%" ], "open.sdk": [ "set sdk=%1", "start ${root.sdk}/%sdk%" ], "open.env": [ "set env0=%PYMAKESOURCEROOT%", "start %env0%" ], "build.qmake": [ "if not exist \"*.pro\" ( echo has any .pro? please add here command to restrict. & exit /b 0 )", "set src_path=%CD%", "set profilename=%1", "set prod=${root.prod}/%profilename%/${QSYS}", "set sdk=${root.sdk}/%profilename%/${QSYS}", "set src=%src_path%/%profilename%.pro", "if not exist \"%src%\" ( echo %profilename%.pro is not exist. & exit /b 0)", "set build=${root.build}/%profilename%/${QSYS}/${QTVERSION}/Debug", "md %build:/=\\%", "cd /d %build%", "rem del /f /q demo examples src test", "echo src file: %src:\\=/%", "echo build at: %build:\\=/%", "echo sdk at : %sdk:\\=/%", "echo prod at : %prod:\\=/%", "echo ${QTSPEC} ${QTCONFIG}", "qmake %src% ${QTSPEC} CONFIG+=debug CONFIG+=qml_debug ${QTCONFIG} && mingw32-make qmake_all", "mingw32-make -j10", "echo build inf ${QTSPEC} ${QTCONFIG}", "echo src file: %src:\\=/%", "echo build at: %build:\\=/%", "echo sdk at : %sdk:\\=/%", "echo prod at : %prod:\\=/%", "cd /d %src_path%" ] ......................[too long] } }
Command-line
Version 7.4
- custom path and env variable, common to use.
- spread all over pc script.
- any work root.
- high-quality executing ability.
- appoint environ.
- abundant command in environ .json stored.
- all are in user environment source root.
Version 7.5
- add powershell command.
- all .json environ can be used in powershell environment.
- add custom environment.
- user can store temporary or common path and variable in custom.path+.ini or custom.var+.ini.
- these environment can be used in powershell environment.
- you can open custom mobule or close it.
Version 7.6
- update all command.
- support winxp/msys.
- add local command.
- add language command to support lua\php\perl e.g. script file and command.
- update all script .bat .sh shortcut.
- update get all settings command for seeing env.
- add pytype and pyclean shortcut script.
- add quotes to params with blank.
Microsoft Windows [版本 10.0.17134.765] (c) 2018 Microsoft Corporation。保留所有权利。 R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>pymake Usage: pymake7.py source pymake7.py source file [ <source-path-file> ] pymake7.py source root [ <source-root-path> ] pymake7.py source config [ --add ] [ <config-file-name> ] pymake7.py source config [ --del ] [ <config-file-name> ] pymake7.py source config [ --mod ] [ <config-file-name> ] [<new-config-file-name>] pymake7.py source config [ --switch ] [ <config-file-name> ] pymake7.py source config [ --edit ] [ <config-file-name> ] pymake7.py source config [ --restore ] pymake7.py source config [ --show ] pymake7.py ------------------------------------------------------------- pymake7.py set path ( --add | --del | --mod ) <name> [ <value> ] pymake7.py set env [ path ] ( --add | --del | --mod ) <group> <name> [ <value> ] pymake7.py set cmd (--add | --del | --mod ) <name> [ <values> ... ] pymake7.py set cur env <name> pymake7.py list [ path | env | cmd ] [<name>] [-r | --raw] [-a | --all] pymake7.py env [<name>] [-p | --path] [-v | --var] [-r | --raw] [-a | --all] pymake7.py ------------------------------------------------------------- pymake7.py here clean pymake7.py here export [ <env-name> ] [ to <file-name> ] pymake7.py here type [ <cmd-name> ] [ to <file-name> ] pymake7.py here use <env-name> exec [ <command-names> ... ] pymake7.py here exec [ <command-names> ... ] pymake7.py here use <env-name> cc [ <command-names> ... ] pymake7.py here cc [ <command-names> ... ] pymake7.py ------------------------------------------------------------- pymake7.py clean [ here | hh ] pymake7.py export [ here | hh ] [ <env-name> ] [ to <file-name> ] pymake7.py type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py exec [ here | hh ] [ <command-names> ... ] pymake7.py cc [ here | hh ] [ <command-names> ... ] pymake7.py use <env-name> type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py use <env-name> exec [ here | hh ] [ <command-names> ... ] pymake7.py use <env-name> cc [ here | hh ] [ <command-names> ... ] pymake7.py ------------------------------------------------------------- pymake7.py set current env <name> pymake7.py set default env <name> pymake7.py show [ path | env | cmd ] [<name>] [-r | --raw] [-a | --all] pymake7.py environ [<name>] [-p | --path] [-v | --var] [-r | --raw] [-a | --all] pymake7.py see [ <cmd-name> ] [ use <env-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py ss [ <cmd-name> ] [ use <env-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py cmd [ <cmd-name> ] [ use <env-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py use <env-name> see [ <cmd-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py use <env-name> ss [ <cmd-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py use <env-name> cmd [ <cmd-name> ] [-r | --raw] [-a | --all] [ -l | --linenumber ] pymake7.py ------------------------------------------------------------- .................. [too long] pymake7.py ------------------------------------------------------------- pymake7.py import cmd [ hh | here ] [ <script-file> ] [ to <command-name> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --filter=<name-filter> ... ] pymake7.py here import cmd [ <script-file> ] [ to <command-name> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --filter=<name-filter> ... ] pymake7.py hh import cmd [ <script-file> ] [ to <command-name> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --filter=<name-filter> ... ] pymake7.py ------------------------------------------------------------- pymake7.py outport cmd [ hh | here ] [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py here outport cmd [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py hh outport cmd [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py use <env-name> outport cmd [ hh | here ] [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py here use <env-name> outport cmd [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py hh use <env-name> outport cmd [ <command-name> ] [ to <script-file> ] [ -a | --all ] [ -f | --force ] [ --recursive ] [ --encoding=<encoding-name> ] [ --suffix=<.suffix-name> ] pymake7.py ------------------------------------------------------------- ............. [too long] pymake7.py ------------------------------------------------------------- pymeke7.py local pymake7.py local [ open | close ] pymake7.py local [ stat | status ] pymake7.py local [ info | information ] pymake7.py local path [ --add | --del ] [ <value> ] pymake7.py local var [ --add | --del ] [ <key> ] [ <value> ] pymake7.py local env [ -r | --raw ] pymake7.py local export [ here | hh ] [ to <file-name> ] pymake7.py local exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py local use <env-name> exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py local execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py local use <env-name> execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py local ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py local use <env-name> ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py ------------------------------------------------------------- pymeke7.py custom pymake7.py custom [ open | close ] pymake7.py custom [ stat | status ] pymake7.py custom [ info | information ] pymake7.py custom path [ --add | --del ] [ <value> ] pymake7.py custom var [ --add | --del ] [ <key> ] [ <value> ] pymake7.py custom env [ -r | --raw ] pymake7.py custom export [ here | hh ] [ to <file-name> ] pymake7.py custom exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py custom use <env-name> exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py custom execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py custom use <env-name> execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py custom ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py custom use <env-name> ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py export2 [ powershell ] [ here | hh ] [ <env-name> ] [ to <file-name> ] [ -c | --custom ] [ -l | --local ] [ -s | --system ] pymake7.py ------------------------------------------------------------- pymake7.py powershell pymake7.py powershell [ info | information ] pymake7.py powershell [ stat | status ] pymake7.py powershell clean [ here | hh ] pymake7.py powershell export [ here | hh ] [ <env-name> ] [ to <file-name> ] pymake7.py powershell type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py powershell use <env-name> type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py powershell exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py powershell use <env-name> exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py powershell execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py powershell use <env-name> execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py powershell ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py powershell use <env-name> ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py ------------------------------------------------------------- pymake7.py python pymake7.py python [ info | information ] pymake7.py python [ stat | status ] pymake7.py python clean [ here | hh ] pymake7.py python type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py python use <env-name> type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] pymake7.py python exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py python use <env-name> exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] pymake7.py python execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py python use <env-name> execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py python ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py python use <env-name> ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py ------------------------------------------------------------- pymake7.py language pymake7.py language [ info | information ] pymake7.py language [ stat | status ] pymake7.py language clean [ here | hh ] [ --suffix=<.suffix-name> ] pymake7.py language type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] [ --suffix=<.suffix-name> ] [ --encoding=<encoding-name> ] pymake7.py language use <env-name> type [ here | hh ] [ <cmd-name> ] [ to <file-name> ] [ --suffix=<.suffix-name> ] [ --encoding=<encoding-name> ] pymake7.py language exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] [ --suffix=<.suffix-name> ] [ --encoding=<encoding-name> ] pymake7.py language use <env-name> exec-with-params [ here | hh ] [ <command-name> ] [ --params=<command-params> ... ] [ --workroot=<work-root-path> ] [ --suffix=<.suffix-name> ] [ --encoding=<encoding-name> ] pymake7.py language execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py language use <env-name> execvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py language ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py language use <env-name> ccvp [ here | hh ] [ <command-name> ] [ <command-params> ... ] pymake7.py ------------------------------------------------------------- pymake7.py (-h | --help) pymake7.py --version R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>
Environment
Microsoft Windows [版本 10.0.17134.765] (c) 2018 Microsoft Corporation。保留所有权利。 R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>pymake local local env: opened. path+: R:\Develop\b0-toolkits\a0-compiler\PyMake R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\UserShell R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\UserShell variable: PYMAKEDEFAULTSOURCEROOT R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource PYMAKEDEFAULTSOURCECONFIG pymake.json PYMAKESOURCEFILE R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyComputer-User.json PYMAKESOURCEROOT R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource PYMAKESOURCECONFIG MyComputer-User.json PYMAKEDEFAULTWORKROOT R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\UserShell PYMAKEWORKROOT R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\UserShell PYMAKEPROGRAM R:\Develop\b0-toolkits\a0-compiler\PyMake\pymake7.py PYMAKEPROGRAMROOT R:\Develop\b0-toolkits\a0-compiler\PyMake PYMAKEPROGRAMFILE pymake7.py PYMAKEPROGRAMCONFIGURE C:\Users\Administrator\.pymake\pymake.ini PYMAKEPROGRAMCONFIGUREROOT C:\Users\Administrator\.pymake PYMAKEPROGRAMCONFIGUREFILE pymake.ini PYMAKEINSTALLROOT C:\WINDOWS R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>pymake custom custom env: opened. path+: R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\UserShell R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource C:\Users\Administrator\Desktop\ENVCONFIG\UserShell C:\Users\Administrator\Desktop\ENVCONFIG R:/Develop/a0-develop R:/Develop/e0-tools/doxygen/bin R:/Develop/e0-tools/doxygen/graphviz-2.38/bin R:/Develop/b0-toolkits/winCompilers/cmake3.9.1_64/bin R:/Develop/b0-toolkits/winCompilers/perl_5.26.0.1_64/perl/bin R:/Develop/b0-toolkits/winCompilers/xmake R:/Develop/b0-toolkits/winCompilers/ninja R:/Develop/b0-toolkits/winAndroidLibraries/Java/jdk1.8.0_131/bin R:/Develop/b0-toolkits/winAndroidLibraries/gradle-all/gradle-4.2.1/bin C:/Users/Administrator/AppData/Local/Programs/Python/Python27;C:/Users/Administrator/AppData/Local/Programs/Python/Python27/Scripts R:/Develop/b0-toolkits/winCompilers/lua53 R:/Develop/b0-toolkits/winCompilers/php-7.3.5-Win32-VC15-x64 R:/Develop/b0-toolkits/winCompilers/go1.12.5.windows-amd64/go/bin R:/Develop/b0-toolkits/winCompilers/ruby-1.8.4-i386-mingw32/usr/local/bin R:/Develop/b0-toolkits/a0-compiler/PyMake R:/Develop/b0-toolkits/a0-compiler/PyMake/demo R:/Develop/b0-toolkits/a0-compiler/PyMake/test R:/Develop/b0-toolkits/a0-compiler/PyMake/test/带 空格路径 R:/Develop/b0-toolkits/a0-compiler/PyMake/UserSource/带 空格路径 R:/Develop/b0-toolkits/a0-compiler/PyMake/UserSource/UserShell R:/Develop/b0-toolkits/a0-compiler/PyMake/UserSource/MyShell R:\一个中文路径 variable: PYMAKEAUTHOR T.D.R. PYMMXXX 一个中文变量 PYMMXYY R:/Develop R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>pymake env android.mobile -r env android.mobile path+: R:/Develop/b0-toolkits/winCompilers/cmake3.9.1_64/bin R:/Develop/b0-toolkits/winLibraries/Qt/5.9.2/android_armv7/bin R:/Develop/b0-toolkits/winLibraries/Qt/Tools/mingw530_32/bin R:/Develop/b0-toolkits/winAndroidLibraries/Java/jdk1.8.0_131/bin R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows/platform-tools R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows/build-tools R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows/tools R:/Develop/b0-toolkits/winAndroidLibraries/apache-ant-1.10.3/bin R:/Develop/b0-toolkits/winAndroidLibraries/android-ndk-r13b/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin variable: make0 mingw32-make ANDROID_API_VERSION android-23 ANDROID_HOME R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows ANDROID_SDK_ROOT R:/Develop/b0-toolkits/winAndroidLibraries/android-sdk-windows ANDROID_NDK_ROOT R:/Develop/b0-toolkits/winAndroidLibraries/android-ndk-r13b ANDROID_NDK_PLATFORM android-23 ANDROID_NDK_HOST windows-x86_64 ANDROID_NDK_TOOLCHAIN_PREFIX arm-linux-androideabi ANDROID_NDK_TOOLCHAIN_VERSION 4.9 ANDROID_NDK_TOOLS_PREFIX arm-linux-androideabi NDK_TOOLCHAIN_PATH R:/Develop/b0-toolkits/winAndroidLibraries/android-ndk-r13b/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin NDK_TOOLS_PREFIX arm-linux-androideabi QTDIR R:/Develop/b0-toolkits/winLibraries/Qt/5.9.2/android_armv7 QTSPEC -spec android-g++ QTCONFIG JAVA_HOME R:/Develop/b0-toolkits/winAndroidLibraries/Java/jdk1.8.0_131 CLASSPATH .:R:/Develop/b0-toolkits/winAndroidLibraries/Java/jdk1.8.0_131/lib/dt/jar:R:/Develop/b0-toolkits/winAndroidLibraries/Java/jdk1.8.0_131/lib/tools.jar PYMAKE_MYNAME T.D.R a_special_var_const hello world QTVERSION 5.9.2 QKIT ANDROID QSYS Android R:\Develop\b0-toolkits\a0-compiler\PyMake\UserSource\MyShell>
User Support
User support shell module, user can install them to share their functions.
Program Shortcut Shortcut(Level 2) pymake.py pymake mm, pymm pymake.py pyenv pyvc pymake.py pycmd pymake.py pyexecvp pyccvp pymake.py pytype pymake.py pyclean pymake.py pylanguage pymake.py pypowershell.bat pymake.py pyenv.ps1 pyinfo.py pyinfo pypaths.py pypaths pycodec.py ... install,uninstall Dependencies
This program edited by python, support python 2.7 -> 3.6 (tested).You need install python, only python in path, configured.
PyMake v7 uses file encoding params in open(), then it support python3 only, I suggest you install python 3.7.
At last, it will work itself, I wish you would like it.Topic Limits
The space limit is not exhaustive. Please check Repo for complate details.