1
/*=========================================================================
3
Program: CMake - Cross-Platform Makefile Generator
4
Module: $RCSfile: cmComputeTargetDepends.cxx,v $
6
Date: $Date: 2008-09-03 13:43:17 $
7
Version: $Revision: 1.2.2.1 $
9
Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
10
See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12
This software is distributed WITHOUT ANY WARRANTY; without even
13
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14
PURPOSE. See the above copyright notices for more information.
16
=========================================================================*/
1
/*============================================================================
2
CMake - Cross Platform Makefile Generator
3
Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
5
Distributed under the OSI-approved BSD License (the "License");
6
see accompanying file Copyright.txt for details.
8
This software is distributed WITHOUT ANY WARRANTY; without even the
9
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10
See the License for more information.
11
============================================================================*/
17
12
#include "cmComputeTargetDepends.h"
19
14
#include "cmComputeComponentGraph.h"
103
98
this->GlobalGenerator = gg;
104
99
cmake* cm = this->GlobalGenerator->GetCMakeInstance();
105
100
this->DebugMode = cm->GetPropertyAsBool("GLOBAL_DEPENDS_DEBUG_MODE");
101
this->NoCycles = cm->GetPropertyAsBool("GLOBAL_DEPENDS_NO_CYCLES");
108
104
//----------------------------------------------------------------------------
343
// Immediately complain if no cycles are allowed at all.
346
this->ComplainAboutBadComponent(ccg, c);
347
350
// Make sure the component is all STATIC_LIBRARY targets.
348
351
for(NodeList::const_iterator ni = nl.begin(); ni != nl.end(); ++ni)
394
e << "At least one of these targets is not a STATIC_LIBRARY. "
395
<< "Cyclic dependencies are allowed only among static libraries.";
399
e << "The GLOBAL_DEPENDS_NO_CYCLES global property is enabled, so "
400
<< "cyclic dependencies are not allowed even among static libraries.";
404
e << "At least one of these targets is not a STATIC_LIBRARY. "
405
<< "Cyclic dependencies are allowed only among static libraries.";
396
407
cmSystemTools::Error(e.str().c_str());