summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio7Generator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* VS: Map /ENTRY linker option to EntryPointSymbolPatrick Gansterer2010-08-261-0/+2
|
* VS: Add more TargetMachine option valuesPatrick Gansterer2010-08-241-0/+15
|
* For VS10: Really use full path file names.David Cole2010-06-231-1/+3
| | | | | | | | | | | I naively assumed in my previous commit that the Convert call would correctly convert a relative path file name correctly relative to the makefile's current output directory. It actually converts it relative to the process's current working directory. So it would be different depending on how you launched cmake-gui. This commit ensures that the generated files are always the same by starting with a full path to begin with, based on the makefile GetCurrentOutputDirectory method.
* Use full path file names to express dependencies.David Cole2010-06-211-3/+5
| | | | | | | | | This is especially important for the Visual Studio 10 generator and its quirky current working directory behavior. Also, emit more information about exactly what files are out of date when cmakeCheckStampFile returns false.
* Add STATIC_LIBRARY_FLAGS_<CONFIG> property (#10768)Brad King2010-05-281-1/+14
| | | | This is a per-configuration version of STATIC_LIBRARY_FLAGS.
* Fix .pdb name attribute in VS project filesBrad King2010-04-281-2/+2
| | | | | | | The PDB file name for VCLinkerTool is specified by the xml attribute "ProgramDatabaseFile", not "ProgramDataBaseFile" (note the lower-case character 'b'). VS seems to cope with the incorrect capitalization but the combination of VS 7.1 and Incredibuild does not. See issue #10614.
* Partial fix from bug #10503, use full paths to fix custom commands.Bill Hoffman2010-04-021-2/+4
| | | | This fixes tests ExternalProject and LinkDirectory for VS 2010.
* Fix issue #9042 - correctly this time. Fix failing tests on VS 7, 8 and 9 ↵David Cole2009-12-241-2/+2
| | | | dashboards. Use ConvertToXMLOutputPathSingle instead of ConvertToOptionallyRelativeOutputPath to handle spaces in the path and double quoting properly. Related to commit trying to fix issue #9042 from yesterday.
* Fix issue #9042 - use relative path for pdb file name when ↵David Cole2009-12-231-2/+6
| | | | CMAKE_USE_RELATIVE_PATHS is on.
* Fix .vfproj files with per-source settingsBrad King2009-12-021-0/+4
| | | | | | | The Intel Fortran plugin to VS defines VFFortranCompilerTool as the compiler tool. This commit fixes generated projects to use that tool for per-source settings instead of VCCLCompilerTool. We were already using it for target-wide compiler settings.
* Do not link library dependencies in VS solutionsBrad King2009-10-201-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | In VS 8 and greater this commit implements add_dependencies(myexe mylib) # depend without linking by adding the LinkLibraryDependencies="false" option to project files. Previously the above code would cause myexe to link to mylib in VS 8 and greater. This option prevents dependencies specified only in the solution from being linked. We already specify the real link library dependencies in the project files, and any project depending on this to link would not have worked in Makefile generators. We were already avoiding this problem in VS 7.1 and below by inserting intermediate mylib_UTILITY targets. It was more important for those versions because if a static library depended on another library the librarian would copy the dependees into the depender! This is no longer the case with VS 8 and above so we do not need that workaround. See issue #9732.
* Avoid C++ linker language in VS Fortran projectBrad King2009-10-191-1/+2
| | | | | | | | | | | | | | | In Visual Studio project files we pass compiler flags to the whole target based on the linker language, which works for MS tools and combinations of C and C++. For the Intel Fortran plugin though the generated .vfproj files should never contain C or C++ options. We generate .vfproj files only for targets consisting only of Fortran code. Now that the linker language is computed transitively through linking it is possible that the linker language is C++ for an otherwise Fortran-only project. This commit forces Fortran as the linker language for the purpose of specifying target-wide flags in .vfproj files. See issue #9719.
* Fix use of module .def files for MS toolsBrad King2009-09-291-21/+7
| | | | | | | We recognize .def source files and map them to the /DEF:<file> option in the MSVC tools. Previously this worked only for shared libraries. This commit cleans up the implementation and makes it work for executables too. See issue #9613.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* Fix .vfproj file version for Intel Fortran 10.1Brad King2009-09-281-0/+6
| | | | | | | The commit "Generate proper Intel Fortran project version" replaced the hard-coded 9.10 value with a runtime registry lookup of the real version. Version 10.1 actually uses project file format 9.10, so this commit switches it back for that version. See issue #9169.
* Bug #9430, recognize the FR flagBill Hoffman2009-09-171-0/+1
|
* Generate proper Intel Fortran project versionBrad King2009-09-161-1/+13
| | | | | | | The Intel Visual Fortran compiler plugin for MS Visual Studio may be one of several versions of the Intel compiler. This commit teaches CMake to detect the plugin version and set the version number in .vfproj files. See issue #9169.
* Silence VS generator for missing CMakeLists.txtBrad King2009-09-021-0/+4
| | | | | | | | CMake Makefile generators silently ignore missing CMakeLists.txt files and just treat the source directory as if it had an empty input file. This will be addressed with a new CMake Policy, but for now we make the VS generator consistent with the Makefile generator behavior. The VS generator will need to handle the OLD behavior of the policy anyway.
* ENH: remove code duplication and use cmVisualStudioGeneratorOptions for all ↵Bill Hoffman2009-07-281-378/+8
| | | | versions of vs 7 and greater.
* ENH: remove INCLUDE_EXTERNAL_MSPROJECT name hack, and use target properties ↵Bill Hoffman2009-07-141-7/+5
| | | | instead, fix VXExternalInclude test for VS10
* ENH: only 5 failing tests for VS 10Bill Hoffman2009-07-101-17/+33
|
* ENH: Pass config to cmTarget::GetLinkerLanguageBrad King2009-07-081-2/+2
| | | | | | This passes the build configuration to most GetLinkerLanguage calls. In the future the linker language will account for targets linked in each configuration.
* ENH: Simpler cmTarget::GetLinkerLanguage signatureBrad King2009-07-071-4/+2
| | | | | | | This method previously required the global generator to be passed, but that was left from before cmTarget had its Makefile member. Now the global generator can be retrieved automatically, so we can drop the method argument.
* BUG: Avoid cmTarget::GetDirectory for utilitiesBrad King2009-07-031-1/+1
| | | | | | | Since utility targets have no main output files like executables or libraries, they do not define an output directory. This removes a call to cmTarget::GetDirectory from cmLocalVisualStudio{6,7}Generator for such targets.
* STYLE: Replace large if() with named booleanBrad King2009-07-031-4/+3
| | | | | In cmLocalVisualStudio{6,7}Generator this replaces a large if() test with a re-usable result stored in a boolean variable named accordingly.
* ENH: Create exe implib dir in VS pre-link ruleBrad King2009-06-161-6/+6
| | | | | | This moves creation of an executable's import library directory in VS projects from the pre-build step to the pre-link step. It makes sense to create the directory at the last moment.
* ENH: Generalize exe implib dir creation for VSBrad King2009-06-161-28/+6
| | | | | | | | In VS 7,8,9 executable targets we generate a build event to create the output directory for the import library in case the executable marks symbols with dllexport (VS forgets to create this directory). This generalizes computation of the custom command line to support future use with other VS versions.
* BUG: Create an exe's implib output dir for VSBrad King2009-06-151-0/+28
| | | | | | | | If an executable marks symbols with __declspec(dllexport) then VS creates an import library for it. However, it forgets to create the directory that will contain the import library if it is different from the location of the executable. We work around this VS bug by creating a pre-build event on the executable target to make the directory.
* ENH: Refactor VS 7,8,9 build event generationBrad King2009-06-121-122/+78
| | | | | | | In cmLocalVisualStudio7Generator we generate pre-build, pre-link, and post-build events into project files. This refactors the generation code for the three event types into a private EventWriter class to avoid duplicate code.
* STYLE: fix line lenghtBill Hoffman2009-03-281-2/+4
|
* BUG: fix for #8686 add some more compiler flagsBill Hoffman2009-03-271-0/+11
|
* BUG: fix for 7845, idl files compile even with headerfile only onBill Hoffman2009-01-271-2/+1
|
* ENH: Refactor passing of max length object dirBrad King2008-12-161-16/+16
| | | | | | When computing the maximum length full path to the build directory under which object files will be placed, pass the actual path instead of just its length. This will be useful for error message generation.
* ENH: make the scc optionalBill Hoffman2008-10-271-12/+0
|
* BUG: fix for 7839 and 4524Bill Hoffman2008-10-271-7/+2
|
* BUG: fix for 4524, add support for target properties to set vs source code ↵Bill Hoffman2008-10-071-3/+29
| | | | control information
* STYLE: fix line length stuff for KWStyleBill Hoffman2008-10-011-1/+2
|
* BUG: fix for 7624, vs7 flag table missing /MAPBill Hoffman2008-09-081-1/+2
|
* BUG: fix for 7519 extra closing > in fortran projectsBill Hoffman2008-09-031-1/+1
|
* BUG: Fix issue #5773 - add table entry to map /W0 to WarningLevel="0"David Cole2008-07-311-0/+1
|
* BUG: Do not escape make variable references in VS additional options.Brad King2008-06-301-2/+4
|
* BUG: fix for bug 6619Bill Hoffman2008-06-171-1/+1
|
* COMP: Fix build with concept checking of STL.Brad King2008-05-161-1/+1
| | | | - Fix cmSourceGroup to not use std::vector with an incomplete type.
* ENH: add support for Intel Fortran Visual studio IDEBill Hoffman2008-04-301-29/+273
|
* BUG: Fix for issue #6440. Use 0 instead of FALSE for ExceptionHandling with ↵David Cole2008-04-171-5/+18
| | | | Visual Studio 2005 and later.
* BUG: Correct Mac OS X framework behaviorBrad King2008-04-081-1/+1
| | | | | | | | | | | | - Place the built library in foo.framework/Versions/A/foo - Do not create unused content symlinks (like PrivateHeaders) - Do not use VERSION/SOVERSION properties for frameworks - Make cmTarget::GetDirectory return by value - Remove the foo.framework part from cmTarget::GetDirectory - Correct install_name construction and conversion on install - Fix MACOSX_PACKAGE_LOCATION under Xcode to use the Versions/<version> directory for frameworks - Update the Framework test to try these things
* ENH: Improve speed of manifest tool on VS8 and VS9.Brad King2008-03-311-8/+33
| | | | | - Detect filesystem type where target will be linked - Use FAT32 workaround only when fs is FAT or FAT32
* BUG: fix for 6619Bill Hoffman2008-03-281-1/+2
|
* BUG: fix for bug 6660Bill Hoffman2008-03-281-0/+2
|
* BUG: fix for bug 6661Bill Hoffman2008-03-281-0/+3
|