diff --git a/CMakeModules/Functions.cmake b/CMakeModules/Functions.cmake new file mode 100644 index 0000000000..ee5750651c --- /dev/null +++ b/CMakeModules/Functions.cmake @@ -0,0 +1,45 @@ +# This program source code file is part of KICAD, a free EDA CAD application. +# +# Copyright (C) 2010 SoftPLC Corporation, Dick Hollenbeck +# Copyright (C) 2010 Kicad Developers, see AUTHORS.txt for contributors. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, you may find one here: +# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +# or you may search the http://www.gnu.org website for the version 2 license, +# or you may write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA +# + + +# Function make_lexer +# is a standard way to invoke TokenList2DsnLexer.cmake +function( make_lexer inputFile outHeaderFile outCppFile enum ) + add_custom_command( + OUTPUT ${outHeaderFile} + ${outCppFile} + COMMAND ${CMAKE_COMMAND} + -Denum=${enum} + -DinputFile=${inputFile} + -DoutHeaderFile=${outHeaderFile} + -DoutCppFile=${outCppFile} + -P ${CMAKE_MODULE_PATH}/TokenList2DsnLexer.cmake + DEPENDS ${inputFile} + ${CMAKE_MODULE_PATH}/TokenList2DsnLexer.cmake + COMMENT "TokenList2DsnLexer.cmake creating: + ${outHeaderFile} and + ${outCppFile} from + ${inputFile}" + ) +endfunction() +