This adds -I include path flags and -D define flags for sublimeclang.
The current problem with this is that these flags cannot be set per
target (build_system in sublime text), it can only be set project
wide. Currently all of the include paths and compiler definitions from
ALL of the targets are used (with duplicates removed). This could be
problematic in some cases (conflicting compiler definitions among targets).
The generator adds all list and source files for each defined
project. The generated project files also include build_system
entries that run the platform-specific make on the generated
Makefiles. A build_system entry is created for each target
that was defined in the CMakeLists.txt files.
At the moment this has only been tested with C/C++ projects.
7aa9927 GenEx: Don't use std::vector::at(int).
78e54b9 GenEx: Add tests for "0" and "1" expressions with literal commas.
d729e8b GenEx: Add test for $<BOOL:> with empty parameter.
354face GenEx: Ensure that the empty CONFIGURATION can be used conditionally.
8b3b88a GenEx: Validate target and property names.
b3d8f5d GenEx: Parse comma after colon tokens specially
a4985a9 GenEx: Report actual target name not found, not "0" each time.
d70650d GenEx: Return after error reported.
4801eb6 GenEx: It is not an error to specify an empty parameter
0594bee FindGTK2: Update local changelog
8093f6c FindGTK2: #12596 Missing paths for FindGTK2 on NetBSD
0663803 FindGTK2: #12049 fix detection of header files on multiarch systems
b742677 FindGTK2: Rollback lib64 changes which broke header file finding
Otherwise the comma is treated as plain text by ParseContent.
$<STREQUAL:,> should be valid and true.
$<STREQUAL:,something> should be valid and false.
$<STREQUAL:,,> should be non-valid as it is 3 parameters.
$<STREQUAL:something,,> should be non-valid as it is 3 parameters.
Additionally, this allows reporting the correct error for other
expressions. For example $<TARGET_PROPERTY:,> should be invalid
because it has an empty target and empty property. It shouldn't
attempt to read the property ',' on the 'implicit this' target.
Hack access to cmCTestVC::Revision on this compiler to avoid errors like
Source/CTest/cmCTestSVN.cxx, line 23: Error: cmCTestSVN::SVNInfo is not accessible from cmCTestSVN::Revision.
Source/CTest/cmCTestSVN.cxx, line 22: Error: cmCTestVC::Revision is not accessible from file level.
The changes in "use PATH_SUFFIXES to simplify find_* calls" on 8/14
regressed important functionality in FindGTK for using find_path to
locate header files in <prefix>/lib/<gtk_package>/include.
The find_path function doesn't search <prefix>/lib only <prefix>/include.
1e47ccb Ninja: add option to enforce usage of response files
e31df03 Ninja: move <OBJECTS> in front of the first linker option
8d674e7 Ninja: move -LIBPATH behind -link option
In the response file also linker options could be passed,
and because <OBJECTS> is replaced by a response file, it
is necessary that no compiler option follows <OBJECTS>.
This reverts commit 5598d9b2a0.
Since commit f1670ab1 (Ninja: don't confuse ninja's rsp files with
nmake's, 2012-09-26) Ninja generator response files are placed in
CMakeFiles/ so the previously existing check already avoids expanding
them.