Details
-
Suggestion
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
None
-
None
Description
Not all products produce native runnable executables directly executable by QProcess. For source code run by an interpreter or formats executed by a virtual machine, qbs must provide some sort of functionality to specify the wrapper executable and arguments used to execute a given file.
After the infrastructure for this feature is in place, runners should be provided for:
Native executables (PE/Mach-O/ELF)- Foreign native executables (i.e. PE on OS X and Linux using WINE, Mono or the new cross-platform .NET facilities)
- Batch scripts using cmd
- PowerShell scripts
Android APKs (adb shell am start)iOS/tvOS applications (iossim, etc.)- Apple simulator applications (simctl)
- WinRT applications (how?)
MSI using msiexec- Java class files using java
- JAR files using java/jar
JavaScript using node.js- Common scripting languages (AppleScript, Lua, Perl, PHP, Python, Ruby, Swift) using the corresponding interpreters
Shell scripts are already directly executable (sh, Python, etc.) on Unix, but the interpreter executable must be specified for Windows. The suggested logic is that the file should be executed directly if the host OS is a Unix-like system and the file has a shebang, otherwise it should be run using the configured interpreter.