Skip to content

Commit 164ed31

Browse files
authored
Merge pull request MicrosoftDocs#402 from MicrosoftDocs/mb-props
New property pages for Linux projects
2 parents b3c40eb + 01b4fe1 commit 164ed31

12 files changed

Lines changed: 612 additions & 1 deletion

docs/linux/TOC.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,14 @@
22
# [Create a New Linux Project](create-a-new-linux-project.md)
33
# [Configure a Linux Project](configure-a-linux-project.md)
44
# [Connect to Your Remote Linux Computer](connect-to-your-remote-linux-computer.md)
5-
# [Deploy, Run, and Debug Your Linux Project](deploy-run-and-debug-your-linux-project.md)
5+
# [Deploy, Run, and Debug Your Linux Project](deploy-run-and-debug-your-linux-project.md)
6+
# [Linux Project Property Page Reference](prop-pages-linux.md)
7+
## [General Properties (Linux)](prop-pages/general-linux.md)
8+
## [Debugging Properties (Linux)](prop-pages/debugging-linux.md)
9+
## [VC++ Directories Properties (Linux)](prop-pages/directories-linux.md)
10+
## [Copy Sources Properties (Linux)](prop-pages/copy-sources-project.md)
11+
## [C/C++ Properties (Linux)](prop-pages/c-cpp-linux.md)
12+
## [Linker Properties (Linux)](prop-pages/linker-linux.md)
13+
## [Build Event Properties (Linux)](prop-pages/build-events-linux.md)
14+
## [Custom Build Step Properties (Linux)](prop-pages/custom-build-step-linux.md)
15+
## [Makefile Project Properties (Linux)](prop-pages/makefile-linux.md)

docs/linux/prop-pages-linux.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
title: "Linux Project Property Pages| Microsoft Docs"
3+
ms.custom: ""
4+
ms.date: "10/10/2016"
5+
ms.reviewer: ""
6+
ms.suite: ""
7+
ms.technology: ["cpp-linux"]
8+
ms.tgt_pltfrm: ""
9+
ms.topic: "article"
10+
ms.assetid: 33d8c1f4-13f1-4f61-b407-30715b28142f
11+
author: "mblome"
12+
ms.author: "mblome"
13+
manager: "ghogen"
14+
---
15+
16+
# Linux Project Property Page Reference
17+
This section contains reference content for property pages in a Visual C++ Linux project.
18+
19+
- [General Properties (Linux)](prop-pages/general-linux.md)
20+
- [Debugging Properties (Linux)](prop-pages/debugging-linux.md)
21+
- [VC++ Directories Properties (Linux)](prop-pages/directories-linux.md)
22+
- [Copy Sources Properties (Linux)](prop-pages/copy-sources-project.md)
23+
- [C/C++ Properties (Linux)](prop-pages/c-cpp-linux.md)
24+
- [Linker Properties (Linux)](prop-pages/linker-linux.md)
25+
- [Build Event Properties (Linux)](prop-pages/build-events-linux.md)
26+
- [Custom Build Step Properties (Linux)](prop-pages/custom-build-step-linux.md)-
27+
- [Makefile Project Properties (Linux)](prop-pages/makefile-linux.md)
28+
29+
30+
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
title: "Remote Build Events (Linux C++) | Microsoft Docs"
3+
ms.custom: ""
4+
ms.date: "9/26/2017"
5+
ms.reviewer: ""
6+
ms.suite: ""
7+
ms.technology:
8+
- "vs-ide-general"
9+
ms.tgt_pltfrm: ""
10+
ms.topic: "article"
11+
ms.assetid: 165d3690-5bd8-4b0b-bc66-8b699d85a61b
12+
author: "mikeblome"
13+
ms.author: "mblome"
14+
manager: "ghogen"
15+
f1_keywords:
16+
- VC.Project.IVCEventTool.CommandLine
17+
- VC.Project.IVCEventTool.Description
18+
- VC.Project.IVCEventTool.ExcludedFromBuild
19+
- VC.Project.VCConfiguration.BuildLogFile
20+
---
21+
22+
# Build Event Properties (Linux C++)
23+
24+
25+
## Pre-Build Event
26+
Property | Description
27+
--- | ---
28+
Command Line | Specifies a command line for the pre-build event tool to run.
29+
Description | Specifies a description for the pre-build event tool to display.
30+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
31+
Additional files to copy | Specifies additional files to copy to the remote system. Optionally the list can be provided as a local to remote mapping pairs using a syntax like this: fulllocalpath1:=fullremotepath1;fulllocalpath2:=fullremotepath2, where a local file can be copied to the specified remote location on the remote system.
32+
33+
## Pre-Link Event
34+
Property | Description
35+
--- | ---
36+
Command Line | Specifies a command line for the pre-link event tool to run.
37+
Description | Specifies a description for the pre-link event tool to display.
38+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
39+
Additional files to copy | Specifies additional files to copy to the remote system. Optionally the list can be provided as a local to remote mapping pairs using a syntax like this: fulllocalpath1:=fullremotepath1;fulllocalpath2:=fullremotepath2, where a local file can be copied to the specified remote location on the remote system.
40+
41+
## Post-Build Event
42+
Property | Description
43+
--- | ---
44+
Command Line | Specifies a command line for the post-build event tool to run.
45+
Description | Specifies a description for the post-build event tool to display.
46+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
47+
Additional files to copy | Specifies additional files to copy to the remote system. Optionally the list can be provided as a local to remote mapping pairs using a syntax like this: fulllocalpath1:=fullremotepath1;fulllocalpath2:=fullremotepath2, where a local file can be copied to the specified remote location on the remote system.
48+
49+
## Remote Pre-Build Event
50+
Property | Description
51+
--- | ---
52+
Command Line | Specifies a command line for the pre-build event tool to run on the remote system.
53+
Description | Specifies a description for the pre-build event tool to display.
54+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
55+
Additional files to copy | Specifies additional files to copy from the remote system. Optionally the list can be provided as a remote to local mapping pairs using a syntax like this: fullremotepath1:=fulllocalpath1;fullremotepath2:=fulllocalpath2, where a remote file can be copied to the specified location on the local machine.
56+
57+
## Remote Pre-Link Event
58+
Property | Description
59+
--- | ---
60+
Command Line | Specifies a command line for the pre-link event tool to run on the remote system.
61+
Description | Specifies a description for the pre-link event tool to display.
62+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
63+
Additional files to copy | Specifies additional files to copy from the remote system. Optionally the list can be provided as a remote to local mapping pairs using a syntax like this: fullremotepath1:=fulllocalpath1;fullremotepath2:=fulllocalpath2, where a remote file can be copied to the specified location on the local machine.
64+
65+
## Remote Post-Build Event
66+
Property | Description
67+
--- | ---
68+
Command Line | Specifies a command line for the post-build event tool to run on the remote system.
69+
Description | Specifies a description for the post-build event tool to display.
70+
Use In Build | Specifies whether this build event is excluded from the build for the current configuration.
71+
Additional files to copy | Specifies additional files to copy from the remote system. Optionally the list can be provided as a remote to local mapping pairs using a syntax like this: fullremotepath1:=fulllocalpath1;fullremotepath2:=fulllocalpath2, where a remote file can be copied to the specified location on the local machine.
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
---
2+
title: "C/C++ Properties (Linux C++) | Microsoft Docs"
3+
ms.custom: ""
4+
ms.date: "9/26/2017"
5+
ms.reviewer: ""
6+
ms.suite: ""
7+
ms.technology:
8+
- "vs-ide-general"
9+
ms.tgt_pltfrm: ""
10+
ms.topic: "article"
11+
ms.assetid: 4bb8894b-c874-4a68-935e-b127d54e484f
12+
author: "mikeblome"
13+
ms.author: "mblome"
14+
manager: "ghogen"
15+
f1_keywords:
16+
- VC.Project.VCClangCompilerTool.AdditionalIncludeDirectories
17+
- VC.Project.VCClangCompilerTool.DebugInformationFormat
18+
- VC.Project.VCClangCompilerTool.ObjectFile
19+
- VC.Project.VCClangCompilerTool.WarningLevel
20+
- VC.Project.VCClangCompilerTool.WarnAsError
21+
- VC.Project.VCClangCompilerTool.AdditionalWarning
22+
- VC.Project.VCClangCompilerTool.Verbose
23+
- VC.Project.VCConfiguration.BuildLogFile
24+
- VC.Project.VCClangCompilerTool.Optimization
25+
- VC.Project.VCClangCompilerTool.StrictAliasing
26+
- VC.Project.VCClangCompilerTool.UnrollLoops
27+
- VC.Project.VCClangCompilerTool.LinkTimeOptimization
28+
- VC.Project.VCClangCompilerTool.OmitFramePointers
29+
- VC.Project.VCClangCompilerTool.NoCommonBlocks
30+
- VC.Project.VCClangCompilerTool.PIC
31+
- VC.Project.VCClangCompilerTool.ThreadSafeStatics
32+
- VC.Project.VCClangCompilerTool.RelaxIEEE
33+
- VC.Project.VCClangCompilerTool.HideInlineMethods
34+
- VC.Project.VCClangCompilerTool.SymbolsHiddenByDefault
35+
- VC.Project.VCClangCompilerTool.ExceptionHandling
36+
- VC.Project.VCClangCompilerTool.RuntimeTypeInfo
37+
- VC.Project.VCClangCompilerTool.CLanguageStandard
38+
- VC.Project.VCClangCompilerTool.CppLanguageStandard
39+
- VC.Project.VCClangCompilerTool.PreprocessorDefinitions
40+
- VC.Project.VCClangCompilerTool.UndefinePreprocessorDefinitions
41+
- VC.Project.VCClangCompilerTool.UndefineAllPreprocessorDefinitions
42+
- VC.Project.VCClangCompilerTool.ShowIncludes
43+
- VC.Project.VCClangCompilerTool.CompileAs
44+
- VC.Project.VCClangCompilerTool.ForcedIncludeFiles
45+
- vc.project.AdditionalOptionsPage
46+
---
47+
48+
# C/C++ Properties (Linux C++)
49+
50+
## General
51+
Property | Description | Choices
52+
--- | ---| ---
53+
Additional Include Directories | Specifies one or more directories to add to the include path; separate with semi-colons if more than one. (-I[path]).
54+
Debug Information Format | Specifies the type of debugging information generated by the compiler. | **None** - Produces no debugging information, so compilation may be faster.<br>**Minimal Debug Information** - Generate minimal debug information.<br>**Full Debug Information (DWARF2)** - Generate DWARF2 debug information.<br>
55+
Object File Name | Specifies a name to override the default object file name; can be file or directory name. (-o [name]).
56+
Warning Level | Select how strict you want the compiler to be about code errors. Other flags should be added directly to Additional Options. (/w, /Weverything). | **Turn Off All Warnings** - Disables all compiler warnings.<br>**EnableAllWarnings** - Enables all warnings, including those disabled by default.<br>
57+
Treat Warnings As Errors | Treats all compiler warnings as errors. For a new project, it may be best to use /Werror in all compilations; resolving all warnings will ensure the fewest possible hard-to-find code defects.
58+
C Additional Warnings | Defines a set of additional warning messages.
59+
C++ Additional Warnings | Defines a set of additional warning messages.
60+
Enable Verbose mode | When Verbose mode is enabled, this tool would print out more information that for diagnosing the build.
61+
C Compiler | Specifies the program to invoke during compilation of C source files, or the path to the C compiler on the remote system.
62+
C++ Compiler | Specifies the program to invoke during compilation of C++ source files, or the path to the C++ compiler on the remote system.
63+
Compile Timeout | Remote compilation timeout, in milliseconds.
64+
Copy Object Files | Specifies whether to copy the compiled object files from the remote system to the local machine.
65+
66+
## Optimization
67+
Property | Description | Choices
68+
--- | ---| ---
69+
Optimization | Specifies the optimization level for the application. | **Custom** - Custom optimization.<br>**Disabled** - Disable optimization.<br>**Minimize Size** - Optimize for size.<br>**Maximize Speed** - Optimize for speed.<br>**Full Optimization** - Expensive optimizations.<br>
70+
Strict Aliasing | Assume the strictest aliasing rules. An object of one type will never be assumed to reside at the same address as an object of a different type.
71+
Unroll Loops | Unroll loops to make application faster by reducing number of branches executed at the cost of larger code size.
72+
Link Time Optimization | Enable Inter-Procedural optimizations by allowing the optimizer to look across object files in your application.
73+
Omit Frame Pointer | Suppresses creation of frame pointers on the call stack.
74+
No Common Blocks | Allocate even unintialized global variables in the data section of the object file, rather then generating them as common blocks
75+
76+
## Preprocessor
77+
Property | Description | Choices
78+
--- | ---| ---
79+
Preprocessor Definitions | Defines a preprocessing symbols for your source file. (-D)
80+
Undefine Preprocessor Definitions | Specifies one or more preprocessor undefines. (-U [macro])
81+
Undefine All Preprocessor Definitions | Undefine all previously defined preprocessor values. (-undef)
82+
Show Includes | Generates a list of include files with compiler output. (-H)
83+
84+
## Code Generation
85+
Property | Description | Choices
86+
--- | ---| ---
87+
Position Independent Code | Generate Position Independent Code (PIC) for use in a shared library.
88+
Statics are thread safe | Emit Extra code to use routines specified in C++ ABI for thread safe initilization of local statics. | **No** - Disable thread safe statics.<br>**Yes** - Enable thread safe statics.<br>
89+
Floating Point Optimization | Enables floating point optimizations by relaxing IEEE-754 compliance.
90+
Inline Methods Hidden | When enabled, out-of-line copies of inline methods are declared 'private extern'.
91+
Symbol Hiddens By Default | All symbols are declared 'private extern' unless explicitly marked to be exported using the '__attribute' macro.
92+
Enable C++ Exceptions | Specifies the model of exception handling to be used by the compiler. | **No** - Disable exception handling.<br>**Yes** - Enable exception handling.<br>
93+
94+
## Language
95+
Property | Description | Choices
96+
--- | ---| ---
97+
Enable Run-Time Type Information | Adds code for checking C++ object types at run time (runtime type information). (frtti, fno-rtti)
98+
C Language Standard | Determines the C language standard. | **Default**<br>**C89** - C89 Language Standard.<br>**C99** - C99 Language Standard.<br>**C11** - C11 Language Standard.<br>**C99 (GNU Dialect)** - C99 (GNU Dialect) Language Standard.<br>**C11 (GNU Dialect)** - C11 (GNU Dialect) Language Standard.<br>
99+
C++ Language Standard | Determines the C++ language standard. | **Default**<br>**C++03** - C++03 Language Standard.<br>**C++11** - C++11 Language Standard.<br>**C++14** - C++14 Language Standard.<br>**C++03 (GNU Dialect)** - C++03 (GNU Dialect) Language Standard.<br>**C++11 (GNU Dialect)** - C++11 (GNU Dialect) Language Standard.<br>**C++14 (GNU Dialect)** - C++14 (GNU Dialect) Language Standard.<br>
100+
101+
## Advanced
102+
Property | Description | Choices
103+
--- | ---| ---
104+
Compile As | Select compile language option for .c and .cpp files. 'Default' will detect based on .c or .cpp extention. (-x c, -x c++) | **Default** - Default.<br>**Compile as C Code** - Compile as C Code.<br>**Compile as C++ Code** - Compile as C++ Code.<br>
105+
Forced Include Files | One or more forced include files (-include [name])
106+
107+
## Additional Options
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
title: "Copy Sources Project Properties (Linux C++) | Microsoft Docs"
3+
ms.custom: ""
4+
ms.date: "9/26/2017"
5+
ms.reviewer: ""
6+
ms.suite: ""
7+
ms.technology:
8+
- "vs-ide-general"
9+
ms.tgt_pltfrm: ""
10+
ms.topic: "article"
11+
ms.assetid: 1a44230d-5dd8-4d33-93b4-e77e03e00150
12+
author: "mikeblome"
13+
ms.author: "mblome"
14+
manager: "ghogen"
15+
f1_keywords:
16+
- VC.Project.VCConfiguration.BuildLogFile
17+
---
18+
19+
# Copy Sources Project Properties (Linux C++)
20+
The properties set on this property page apply to all files in the project except whose file-level properties are set.
21+
22+
Property | Description
23+
--- | ---
24+
Sources To Copy | Specifies the sources to copy to the remote system. Changing this list might shift or otherwise affect the directory structure where files are copied to on the remote system.
25+
Copy Sources | Specifies whether to copy the sources to the remote system.
26+
Additional Sources To Copy | Specifies additional sources to copy to the remote system. Optionally the list can be provided as a local to remote mapping pairs using a syntax like this: fulllocalpath1:=fullremotepath1;fulllocalpath2:=fullremotepath2, where a local file can be copied to the specified remote location on the remote system.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
title: "Custom Build Step Properties (Linux C++) | Microsoft Docs"
3+
ms.custom: ""
4+
ms.date: "10/17/2017"
5+
ms.reviewer: ""
6+
ms.suite: ""
7+
ms.technology:
8+
- "vs-ide-general"
9+
ms.tgt_pltfrm: ""
10+
ms.topic: "article"
11+
ms.assetid: 77a9c1fb-7c41-4a9b-9418-18ac17ce4e74
12+
author: "mikeblome"
13+
ms.author: "mblome"
14+
manager: "ghogen"
15+
f1_keywords:
16+
- VC.Project.IVCEventTool.CommandLine
17+
- VC.Project.IVCEventTool.Description
18+
- VC.Project.IVCEventTool.ExcludedFromBuild
19+
- VC.Project.VCConfiguration.BuildLogFile
20+
---
21+
22+
# Custom Build Step Properties (Linux C++)
23+
24+
25+
Property | Description
26+
--- | ---
27+
Command Line | The command to be executed by the custom build step.
28+
Description | A message that's displayed when the custom build step runs.
29+
Outputs | The output file that the custom build step generates. This setting is required so that incremental builds work correctly.
30+
Additional Dependencies | A semicolon-delimited list of any additional input files to use for the custom build step.
31+
Execute After and Execute Before | These options define when the custom build step is run in the build process, relative to the listed targets. The most commonly listed targets are BuildGenerateSources, BuildCompile, and BuildLink, because they represent the major steps in the build process. Other often-listed targets are Midl, CLCompile, and Link.
32+
Treat Output As Content | This option is only meaningful for Windows Store or Windows Phone apps, which include all content files in the .appx package.

0 commit comments

Comments
 (0)