From b57b1c563d7d92f1a2d480c496d6eb18e505ad49 Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Tue, 18 Dec 2007 09:57:41 -0500 Subject: [PATCH] BUG: fix for bug 6172 add get source file prop LANGUAGE --- Source/cmGetSourceFilePropertyCommand.cxx | 5 +++++ Tests/COnly/CMakeLists.txt | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/Source/cmGetSourceFilePropertyCommand.cxx b/Source/cmGetSourceFilePropertyCommand.cxx index 0cc9090ba..366ff165a 100644 --- a/Source/cmGetSourceFilePropertyCommand.cxx +++ b/Source/cmGetSourceFilePropertyCommand.cxx @@ -49,6 +49,11 @@ bool cmGetSourceFilePropertyCommand::InitialPass( // needs to be changed to be mutable etc. for computed properties to // work properly. sf->GetFullPath(); + } + else if(args[2] == "LANGUAGE") + { + this->Makefile->AddDefinition(var, sf->GetLanguage()); + return true; } const char *prop = sf->GetProperty(args[2].c_str()); if (prop) diff --git a/Tests/COnly/CMakeLists.txt b/Tests/COnly/CMakeLists.txt index de277feba..c4d76e015 100644 --- a/Tests/COnly/CMakeLists.txt +++ b/Tests/COnly/CMakeLists.txt @@ -12,3 +12,9 @@ if(MSVC_VERSION) endif(MSVC_VERSION) string(ASCII 35 32 67 77 97 107 101 ASCII_STRING) message(STATUS "String: ${ASCII_STRING}") +get_source_file_property(LANG conly.c LANGUAGE) +if("${LANG}" STREQUAL "C") + message("Language is C") +else("${LANG}" STREQUAL "C") + message(FATAL_ERROR "Bad language for file conly.c") +endif("${LANG}" STREQUAL "C")