added watches for access of bw compat vars

This commit is contained in:
Ken Martin 2003-01-09 08:47:17 -05:00
parent 4f42971be8
commit 26bc729933
1 changed files with 20 additions and 0 deletions

View File

@ -42,6 +42,19 @@
#include <sys/resource.h>
#endif
void cmNeedBackwardsCompatibility(const std::string& variable,
int access_type, void* client_data)
{
if (access_type == cmVariableWatch::UNKNOWN_VARIABLE_READ_ACCESS)
{
std::string message = "Error: An atttempt was made to access a variable: ";
message += variable;
message += " that has not been defined. Some variables were always defined by CMake in versions prior to 1.6. To fix this you might need to set the cache value of CMAKE_BACKWARDS_COMPATIBILITY to 1.4 or less. If you are writing a CMakeList file, (or have already set CMAKE_BACKWARDS_COMPATABILITY to 1.4 or less) then you probably need to include a CMake module to test for the feature this variable defines.";
cmSystemTools::Error(message.c_str());
}
}
cmake::cmake()
{
#ifdef __APPLE__
@ -66,6 +79,13 @@ cmake::cmake()
m_VariableWatch = new cmVariableWatch;
this->AddDefaultCommands();
m_VariableWatch->AddWatch("CMAKE_WORDS_BIGENDIAN",
cmNeedBackwardsCompatibility);
m_VariableWatch->AddWatch("CMAKE_SIZEOF_INT",
cmNeedBackwardsCompatibility);
m_VariableWatch->AddWatch("CMAKE_X_LIBS",
cmNeedBackwardsCompatibility);
}
cmake::~cmake()