##================================================================= # Copyright (C) 2012 2013 BizStation Corp All rights reserved. # # 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, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA # 02111-1307, USA. ##================================================================= ## GENERATE SWIG WRAPPER if(WIN32) execute_process( ERROR_VARIABLE TRANSACTD_GENERATE_ERROR_VAR COMMAND "@SWIG_GEN_CMD_WIN@" ) else() get_filename_component(TRANSACTD_PHP_PATH "@SWIG_NATIVE_OUTFILE@" PATH) file(TO_CMAKE_PATH "${TRANSACTD_PHP_PATH}/transactd.php" TRANSACTD_PHP_PATH) ## generate correct transactd.php if(NOT EXISTS "${TRANSACTD_PHP_PATH}.correct") MESSAGE("Generating ${TRANSACTD_PHP_PATH}.correct ...") execute_process( COMMAND ${CMAKE_COMMAND} -E copy_if_different "@SWIG_INTERFACE_FILE@" "@SWIG_INTERFACE_FILE@.org") execute_process( COMMAND grep -v "^%newobj" "@SWIG_INTERFACE_FILE@.org" OUTPUT_FILE "@SWIG_INTERFACE_FILE@") execute_process( ERROR_VARIABLE TRANSACTD_GENERATE_ERROR_VAR COMMAND swig -c++ -php5 -I@SWIG_INC_PATH1@ -I@SWIG_INC_PATH2@ -o @SWIG_NATIVE_OUTFILE@ @SWIG_INTERFACE_FILE@) execute_process( COMMAND ${CMAKE_COMMAND} -E copy_if_different "${TRANSACTD_PHP_PATH}" "${TRANSACTD_PHP_PATH}.correct") execute_process( COMMAND ${CMAKE_COMMAND} -E copy_if_different "@SWIG_INTERFACE_FILE@.org" "@SWIG_INTERFACE_FILE@") execute_process( COMMAND ${CMAKE_COMMAND} -E remove "@SWIG_INTERFACE_FILE@.org") endif() ## generate wrapper cpp execute_process( ERROR_VARIABLE TRANSACTD_GENERATE_ERROR_VAR COMMAND swig -c++ -php5 -I@SWIG_INC_PATH1@ -I@SWIG_INC_PATH2@ -o @SWIG_NATIVE_OUTFILE@ @SWIG_INTERFACE_FILE@) ## overwrite with correct transactd.php execute_process( COMMAND ${CMAKE_COMMAND} -E copy_if_different "${TRANSACTD_PHP_PATH}.correct" "${TRANSACTD_PHP_PATH}") endif() if("${TRANSACTD_GENERATE_ERROR_VAR}" STREQUAL "") else() message(STATUS ${TRANSACTD_GENERATE_ERROR_VAR}) endif()