Difference between revisions of "Project Settings"
m (→Project Settings Description) |
|||
(25 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
=Project Configuration Example= | =Project Configuration Example= | ||
+ | [[File:"Project Settings" Example.png|thumb|Project Settings]] | ||
<pre> | <pre> | ||
{ | { | ||
Line 14: | Line 15: | ||
"root": "project", | "root": "project", | ||
"source": "*.{cpp,c}", | "source": "*.{cpp,c}", | ||
+ | "addCompQual": "/FLOAT=G_FLOAT", | ||
+ | "addCompDef": "MAXFPS=10,NO_SCREEN,IMAGE_NAME=\"\"\"DEF\"\"\"", | ||
"addLibraries": "sys$library:IMAGELIB.OLB,sys$library:RDBMSGS.OLB", | "addLibraries": "sys$library:IMAGELIB.OLB,sys$library:RDBMSGS.OLB", | ||
"addIncludes": "sys$library" | "addIncludes": "sys$library" | ||
Line 21: | Line 24: | ||
=Project Settings Description= | =Project Settings Description= | ||
− | * <code>''' | + | * <code>'''break'''</code> - Keyboard key to pause debugging in VMS IDE debugger. The extension uses combination <code>CTRL+Key</code> to pause debugging when user press '''Pause''' or <code>F6</code>. |
− | * <code>''' | + | * <code>'''builders'''</code> - Mask for files used for building the project. Default is "*.{mms,com}". |
− | * <code>''' | + | * <code>'''exclude'''</code> - Folders excluded from synchronization with OpenVMS system. |
− | * <code>''' | + | * <code>'''headers'''</code> - Header files. Default is "*.{h,hpp}". |
− | * <code>''' | + | * <code>'''listing'''</code> - Listing files that will be downloaded after the project is built for debugging purpose. |
− | * <code>''' | + | * <code>'''outdir'''</code> - Output directory where object, listing and executable files will be stored when built. Is also used for temporary files. '''NOTE''': Should be only the name of the folder, not a full or relative path. |
− | * <code>''' | + | * <code>'''projectName'''</code> - Name for the executable file, auto-generated '''MMS''' file for builder, OPT file for linker, and COM file for defining logical names. '''NOTE''': Use one word only; do not use spaces or special characters. |
− | * <code>''' | + | * <code>'''projectType'''</code> - Type of the project. '''Note:''' the building method depends on the type of the project and its dependencies. Available types: |
− | * <code>''' | + | ** '''executable''', '''library''' or '''shareable''' for classic languages; |
− | * <code>''' | + | ** '''java''', '''kotlin''' or '''scala''' for JVM based projects. |
− | * <code>''' | + | * <code>'''resource'''</code> - Files required for the project, but are not involved in the build process. |
− | * <code>''' | + | * <code>'''root'''</code> - Directory of the project on the remote OpenVMS machine in UNIX format relative to the home folder. Also it may be absolute path if it starts with "/". In this case first word in path is a disk (or logical name). Only default system logical names may be used in '''root''', because login.com is not executed in SFTP session. |
− | * <code>''' | + | * <code>'''source'''</code> - Mask for the source files, e.g. "*.{c,cpp}". |
+ | * <code>'''addCompQual'''</code> - additional qualifiers for compiler, as is. | ||
+ | * <code>'''addCompDef'''</code> - additional defines for compiler, strings should be enclosed in triple escaped quotes. | ||
+ | * <code>'''addLibraries'''</code> - list of libraries in ODS-5 format, separated by commas. | ||
+ | * <code>'''addIncludes'''</code> - list of folders in ODS-5 format, separated by commas.<br> | ||
+ | |||
+ | '''Note: <code>'''root'''</code> must not have trailing "/" | ||
=Adjusting Project Settings= | =Adjusting Project Settings= | ||
− | # Set the <code>''' | + | # Set the <code>'''root'''</code> directory. For example, if the project is located in '''WORK:[USER.DEMOS.SIMPLE]''' and the home directory is '''WORK:[USER]''', set the parameter value to '''demos/simple''' or '''/work/user/demos/simple'''. |
− | # Select the <code>''' | + | # Select the <code>'''projectType'''</code> that you need. |
− | # Specify the <code>''' | + | # Specify the <code>'''projectName'''</code>. '''NOTE''': do not use spaces or special characters. |
− | # Check <code>''' | + | # Check <code>'''builders'''</code>. These files will be synchronized. |
− | # Check <code>''' | + | # Check <code>'''headers'''</code>. These files will be synchronized and included into the [[Auto-generating MMS|auto-generated MMS]] file as header files. Changing any of them will result in full project rebuild. |
− | # Check <code>''' | + | # Check <code>'''source'''</code>. These files will be synchronized and included into the [[Auto-generating MMS|auto-generated MMS]] file as source files. |
− | # Check <code>''' | + | # Check <code>'''resource'''</code>. These files will be synchronized but not included into the [[Auto-generating MMS|auto-generated MMS]] file. |
− | # Adjust the <code>''' | + | # Adjust the <code>'''exclude'''</code> field value to list the files similar to the described above but not to be synchronized and compiled. |
− | # Check <code>''' | + | # Check <code>'''listing'''</code>. These files will be downloaded after building the project. Files "*.lis,*.map" are required for debugger. |
− | # If the project depends on already installed libraries, specify | + | # If the project depends on already installed libraries, specify them in the <code>'''addLibraries'''</code> and <code>'''addIncludes'''</code> |
+ | # Do not forget about "VMS-IDE: Create/Update MMS" after changing project settings | ||
+ | |||
+ | [https://www.youtube.com/watch?v=Ib1Fo6cG1Vs&list=PLewDXk9a8laO3cAZFPyZ4bbgcKsJ1qgPo Video tutorial: VMS IDE 1 Starting a Project]. In video "Project Settings" shown at 2:40 - 3:37 time period. | ||
[[Category:VMS IDE]] | [[Category:VMS IDE]] |
Latest revision as of 19:33, 24 June 2022
Project Configuration Example
{ "project": { "break": "C", "builders": "*.{mms,com}", "exclude": "**/{node_modules,.vscode}/**", "headers": "*.h", "listing": "*.lis", "outdir": "out", "projectName": "project", "projectType": "executable", "resource": "**/resource/**", "root": "project", "source": "*.{cpp,c}", "addCompQual": "/FLOAT=G_FLOAT", "addCompDef": "MAXFPS=10,NO_SCREEN,IMAGE_NAME=\"\"\"DEF\"\"\"", "addLibraries": "sys$library:IMAGELIB.OLB,sys$library:RDBMSGS.OLB", "addIncludes": "sys$library" } }
Project Settings Description
break
- Keyboard key to pause debugging in VMS IDE debugger. The extension uses combinationCTRL+Key
to pause debugging when user press Pause orF6
.builders
- Mask for files used for building the project. Default is "*.{mms,com}".exclude
- Folders excluded from synchronization with OpenVMS system.headers
- Header files. Default is "*.{h,hpp}".listing
- Listing files that will be downloaded after the project is built for debugging purpose.outdir
- Output directory where object, listing and executable files will be stored when built. Is also used for temporary files. NOTE: Should be only the name of the folder, not a full or relative path.projectName
- Name for the executable file, auto-generated MMS file for builder, OPT file for linker, and COM file for defining logical names. NOTE: Use one word only; do not use spaces or special characters.projectType
- Type of the project. Note: the building method depends on the type of the project and its dependencies. Available types:- executable, library or shareable for classic languages;
- java, kotlin or scala for JVM based projects.
resource
- Files required for the project, but are not involved in the build process.root
- Directory of the project on the remote OpenVMS machine in UNIX format relative to the home folder. Also it may be absolute path if it starts with "/". In this case first word in path is a disk (or logical name). Only default system logical names may be used in root, because login.com is not executed in SFTP session.source
- Mask for the source files, e.g. "*.{c,cpp}".addCompQual
- additional qualifiers for compiler, as is.addCompDef
- additional defines for compiler, strings should be enclosed in triple escaped quotes.addLibraries
- list of libraries in ODS-5 format, separated by commas.addIncludes
- list of folders in ODS-5 format, separated by commas.
Note: root
must not have trailing "/"
Adjusting Project Settings
- Set the
root
directory. For example, if the project is located in WORK:[USER.DEMOS.SIMPLE] and the home directory is WORK:[USER], set the parameter value to demos/simple or /work/user/demos/simple. - Select the
projectType
that you need. - Specify the
projectName
. NOTE: do not use spaces or special characters. - Check
builders
. These files will be synchronized. - Check
headers
. These files will be synchronized and included into the auto-generated MMS file as header files. Changing any of them will result in full project rebuild. - Check
source
. These files will be synchronized and included into the auto-generated MMS file as source files. - Check
resource
. These files will be synchronized but not included into the auto-generated MMS file. - Adjust the
exclude
field value to list the files similar to the described above but not to be synchronized and compiled. - Check
listing
. These files will be downloaded after building the project. Files "*.lis,*.map" are required for debugger. - If the project depends on already installed libraries, specify them in the
addLibraries
andaddIncludes
- Do not forget about "VMS-IDE: Create/Update MMS" after changing project settings
Video tutorial: VMS IDE 1 Starting a Project. In video "Project Settings" shown at 2:40 - 3:37 time period.