2001-01-11 14:55:47 -05:00
/*=========================================================================
Program : Insight Segmentation & Registration Toolkit
Module : $ RCSfile $
Language : C + +
Date : $ Date $
Version : $ Revision $
2002-01-21 15:30:43 -05: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 14:55:47 -05:00
2002-01-21 15:30:43 -05: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 14:55:47 -05:00
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
2001-01-18 11:20:24 -05:00
# include "cmAbstractFilesCommand.h"
2002-09-27 16:24:10 -04:00
# include "cmMakefile.h"
# include "cmSourceFile.h"
2001-01-05 11:41:20 -05:00
2001-01-18 11:20:24 -05:00
// cmAbstractFilesCommand
2002-03-29 14:20:32 -05:00
bool cmAbstractFilesCommand : : InitialPass ( std : : vector < std : : string > const & argsIn )
2001-01-05 11:41:20 -05:00
{
2002-04-19 14: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 14:20:32 -05:00
if ( argsIn . size ( ) < 1 )
2001-01-05 11:41:20 -05:00
{
this - > SetError ( " called with incorrect number of arguments " ) ;
return false ;
}
2002-03-29 14:20:32 -05:00
std : : vector < std : : string > args ;
cmSystemTools : : ExpandListArguments ( argsIn , args ) ;
2002-03-29 10:06:30 -05:00
bool ret = true ;
std : : string m = " could not find source file(s): \n " ;
2001-09-20 15:08:30 -04:00
for ( std : : vector < std : : string > : : const_iterator j = args . begin ( ) ;
2001-01-05 11:41:20 -05:00
j ! = args . end ( ) ; + + j )
2002-03-29 10:06:30 -05:00
{
cmSourceFile * sf = m_Makefile - > GetSource ( j - > c_str ( ) ) ;
if ( sf )
2001-01-05 11:41:20 -05:00
{
2002-08-16 11:20:18 -04:00
sf - > SetProperty ( " ABSTRACT " , " 1 " ) ;
2001-01-05 11:41:20 -05:00
}
2002-03-29 10:06:30 -05:00
else
{
2002-04-17 16: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 10:06:30 -05:00
}
if ( ! ret )
{
this - > SetError ( m . c_str ( ) ) ;
2001-01-05 11:41:20 -05:00
}
2002-03-29 10:06:30 -05:00
return ret ;
2001-01-05 11:41:20 -05:00
}