2001-01-11 22:55:47 +03:00
/*=========================================================================
Program : Insight Segmentation & Registration Toolkit
Module : $ RCSfile $
Language : C + +
Date : $ Date $
Version : $ Revision $
2002-01-21 23:30:43 +03:00
Copyright ( c ) 2002 Insight Consortium . All rights reserved .
See ITKCopyright . txt or http : //www.itk.org/HTML/Copyright.htm for details.
2001-01-11 22:55:47 +03:00
2002-01-21 23:30:43 +03:00
This software is distributed WITHOUT ANY WARRANTY ; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE . See the above copyright notices for more information .
2001-01-11 22:55:47 +03:00
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
2001-01-18 19:20:24 +03:00
# include "cmAbstractFilesCommand.h"
2002-09-28 00:24:10 +04:00
# include "cmMakefile.h"
# include "cmSourceFile.h"
2001-01-05 19:41:20 +03:00
2001-01-18 19:20:24 +03:00
// cmAbstractFilesCommand
2002-03-29 22:20:32 +03:00
bool cmAbstractFilesCommand : : InitialPass ( std : : vector < std : : string > const & argsIn )
2001-01-05 19:41:20 +03:00
{
2002-04-19 22:03:47 +04:00
const char * versionValue
= m_Makefile - > GetDefinition ( " CMAKE_MINIMUM_REQUIRED_VERSION " ) ;
if ( versionValue & & atof ( versionValue ) > 1.2 )
{
this - > SetError ( " The ABSTRACT_FILES command has been deprecated in CMake version 1.4. You should use the SET_SOURCE_FILES_PROPERTIES command instead. \n " ) ;
return false ;
}
2002-03-29 22:20:32 +03:00
if ( argsIn . size ( ) < 1 )
2001-01-05 19:41:20 +03:00
{
this - > SetError ( " called with incorrect number of arguments " ) ;
return false ;
}
2002-03-29 22:20:32 +03:00
std : : vector < std : : string > args ;
cmSystemTools : : ExpandListArguments ( argsIn , args ) ;
2002-03-29 18:06:30 +03:00
bool ret = true ;
std : : string m = " could not find source file(s): \n " ;
2001-09-20 23:08:30 +04:00
for ( std : : vector < std : : string > : : const_iterator j = args . begin ( ) ;
2001-01-05 19:41:20 +03:00
j ! = args . end ( ) ; + + j )
2002-03-29 18:06:30 +03:00
{
cmSourceFile * sf = m_Makefile - > GetSource ( j - > c_str ( ) ) ;
if ( sf )
2001-01-05 19:41:20 +03:00
{
2002-08-16 19:20:18 +04:00
sf - > SetProperty ( " ABSTRACT " , " 1 " ) ;
2001-01-05 19:41:20 +03:00
}
2002-03-29 18:06:30 +03:00
else
{
2002-04-18 00:16:06 +04:00
// for VTK 4.0 we have to support missing abstract sources
if ( m_Makefile - > GetDefinition ( " CMAKE_MINIMUM_REQUIRED_VERSION " ) )
{
m + = * j ;
m + = " \n " ;
ret = false ;
}
}
2002-03-29 18:06:30 +03:00
}
if ( ! ret )
{
this - > SetError ( m . c_str ( ) ) ;
2001-01-05 19:41:20 +03:00
}
2002-03-29 18:06:30 +03:00
return ret ;
2001-01-05 19:41:20 +03:00
}