summaryrefslogtreecommitdiffstats
path: root/Source/cmNinjaNormalTargetGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'module-no-soname'David Cole2012-05-011-11/+15
|\ | | | | | | | | | | fdb3f87 Test NO_SONAME property (#13155) e1409ac Support building shared libraries or modules without soname (#13155)
| * Support building shared libraries or modules without soname (#13155)Modestas Vainius2012-04-301-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a boolean target property NO_SONAME which may be used to disable soname for the specified shared library or module even if the platform supports it. This property should be useful for private shared libraries or various plugins which live in private directories and have not been designed to be found or loaded globally. Replace references to <CMAKE_SHARED_LIBRARY_SONAME_${LANG}_FLAG> and hard-coded -install_name flags with a conditional <SONAME_FLAG> which is expanded to the value of the CMAKE_SHARED_LIBRARY_SONAME_${LANG}_FLAG definition as long as soname supports is enabled for the target in question. Keep expanding CMAKE_SHARED_LIBRARY_SONAME_${LANG}_FLAG in rules in case third party projects still use it. Such projects would not yet use NO_SONAME so the adjacent <TARGET_SONAME> will always be expanded. Make <TARGET_INSTALLNAME_DIR> NO_SONAME aware as well. Since -install_name is soname on OS X, this should not be a problem if this variable is expanded only if soname is enabled. The Ninja generator performs rule variable substitution only once globally per rule to put its own placeholders. Final substitution is performed by ninja at build time. Therefore we cannot conditionally replace the soname placeholders on a per-target basis. Rather than omitting $SONAME from rules.ninja, simply do not write its contents for targets which have NO_SONAME. Since 3 variables are affected by NO_SONAME ($SONAME, $SONAME_FLAG, $INSTALLNAME_DIR), set them only if soname is enabled.
* | Ninja: remove GCC -Wshadow warningPeter Kuemmel2012-04-071-1/+1
| |
* | Ninja: no 16:9 screens for the cmake team ;)Peter Kuemmel2012-04-061-3/+6
| |
* | Ninja: ensure output directories existPeter Kuemmel2012-04-061-6/+22
|/
* Merge topic 'ninja-generator'David Cole2012-03-201-1/+4
|\ | | | | | | | | c337c7e Ninja: Fix <OBJECT_DIR> substitution
| * Ninja: Fix <OBJECT_DIR> substitutionPeter Kuemmel2012-03-191-1/+4
| | | | | | | | Don't forget the subdirectories.
* | Build object library targets in NinjaBrad King2012-03-161-6/+34
|/ | | | | | Treat OBJECT libraries as STATIC libraries but leave out the archive step. The object files will be left behind for reference by other targets later.
* Ninja: Avoid using 'this' in member initializersBrad King2012-03-161-1/+1
| | | | | | | | VS complains warning C4355: 'this' : used in base member initializer list so initialize the member in the constructor body instead.
* Ninja: Fix for PDB files with spaces in the path.Bill Hoffman2012-03-161-1/+2
| | | | | This calls ConvertToOutputFormat on the PDB paths for pdb file paths used in both library creation and the building of object files.
* Ninja: add /DEF: flag to linker callPeter Kuemmel2012-03-131-0/+2
|
* Ninja: add .def file supportPeter Kuemmel2012-03-071-0/+1
|
* Ninja: ensure the output dir exists at compile timePeter Kuemmel2012-03-071-0/+5
|
* Ninja: Remove an unnecessary variablePeter Collingbourne2012-02-281-1/+0
|
* Ninja: Use cmSystemTools::ExpandListArgument to split compile/link commandsPeter Collingbourne2012-02-271-4/+7
|
* Ninja: windows msvc: create for each target a .pdb filePeter Kuemmel2012-02-211-0/+3
|
* Ninja: Import library support for WindowsPeter Collingbourne2012-02-191-4/+17
|
* Ninja: mark the Windows specific hacks with a comment onlyPeter Kuemmel2012-02-191-1/+2
|
* Ninja: add some hacks for WindowsPeter Kuemmel2012-02-191-2/+1
|
* Ninja: Shell encode various CMake invocationsPeter Collingbourne2012-02-191-2/+6
|
* Ninja: Shell encode paths used in "cd" commandsPeter Collingbourne2012-02-191-3/+6
|
* Ninja: win fixes: escape back slash/colon, use cd. as cmd.exe nopPeter Kuemmel2012-02-181-0/+4
|
* Ninja: Appease various compilersPeter Collingbourne2012-02-051-0/+1
|
* Ninja: Add the Ninja generatorPeter Collingbourne2012-02-021-0/+430