| 1 |
# |
| 2 |
# input |
| 3 |
# CMAKE_C_COMPILER |
| 4 |
# CMAKE_CXX_COMPILER |
| 5 |
# CMAKE_RC_COMPILER |
| 6 |
# filenames |
| 7 |
# GENERATE_OPTIONS |
| 8 |
# cmake の generate 時の引数 |
| 9 |
# BUILD_TOOL_OPTIONS |
| 10 |
# cmake --build の最後に追加される |
| 11 |
# BUILD_DIR |
| 12 |
# build directry |
| 13 |
# COMPILER_FRIENDLY |
| 14 |
# インストーラ、zipファイル名の最後に追加される |
| 15 |
|
| 16 |
option(REMOVE_BUILD_DIR "for clean bulid" OFF) |
| 17 |
|
| 18 |
# create build dir |
| 19 |
message(STATUS "BUILD_DIR=${BUILD_DIR}") |
| 20 |
if(EXISTS "${BUILD_DIR}") |
| 21 |
if(REMOVE_BUILD_DIR) |
| 22 |
file(REMOVE_RECURSE ${BUILD_DIR}) |
| 23 |
else() |
| 24 |
file(REMOVE ${BUILD_DIR}/CMakeCache.txt) |
| 25 |
endif() |
| 26 |
endif() |
| 27 |
if(NOT EXISTS "${BUILD_DIR}") |
| 28 |
file(MAKE_DIRECTORY ${BUILD_DIR}) |
| 29 |
endif() |
| 30 |
|
| 31 |
|
| 32 |
# svn revision |
| 33 |
file(MAKE_DIRECTORY ${BUILD_DIR}/teraterm/common) |
| 34 |
execute_process( |
| 35 |
COMMAND perl ${CMAKE_CURRENT_LIST_DIR}/../buildtools/svnrev/svnrev.pl -v --root "${CMAKE_CURRENT_LIST_DIR}/.." --header ${BUILD_DIR}/teraterm/common/svnversion.h --cmake ${BUILD_DIR}/build_config.cmake |
| 36 |
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../buildtools/svnrev |
| 37 |
) |
| 38 |
|
| 39 |
|
| 40 |
# variables |
| 41 |
include(${BUILD_DIR}/build_config.cmake) |
| 42 |
if(NOT DEFINED SVNVERSION) |
| 43 |
set(SVNVERSION "0000") |
| 44 |
endif() |
| 45 |
|
| 46 |
set(ZIP_FILE "snapshot-${VERSION}-r${SVNVERSION}-${DATE}_${TIME}-appveyor-${COMPILER_FRIENDLY}.zip") |
| 47 |
set(SETUP_FILE "snapshot-${VERSION}-r${SVNVERSION}-${DATE}_${TIME}-appveyor-${COMPILER_FRIENDLY}") |
| 48 |
set(SNAPSHOT_DIR "snapshot-${VERSION}-r${SVNVERSION}-${DATE}_${TIME}-appveyor-${COMPILER_FRIENDLY}") |
| 49 |
|
| 50 |
list(APPEND BUILD_OPTIONS "--config" "Release") |
| 51 |
list(APPEND GENERATE_OPTIONS "-DSNAPSHOT_DIR=${SNAPSHOT_DIR}" "-DSETUP_ZIP=${ZIP_FILE}" "-DSETUP_EXE=${SETUP_FILE}" "-DSETUP_RELEASE=${RELEASE}") |
| 52 |
list(APPEND GENERATE_OPTIONS "-DCMAKE_INSTALL_PREFIX=${SNAPSHOT_DIR}") |
| 53 |
if(DEFINED CMAKE_C_COMPILER) |
| 54 |
message("CMAKE_C_COMPILER=${CMAKE_C_COMPILER}") |
| 55 |
list(APPEND GENERATE_OPTIONS "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}") |
| 56 |
endif() |
| 57 |
if(DEFINED CMAKE_CXX_COMPILER) |
| 58 |
message("CMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}") |
| 59 |
list(APPEND GENERATE_OPTIONS "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}") |
| 60 |
endif() |
| 61 |
if(DEFINED CMAKE_RC_COMPILER) |
| 62 |
message("CMAKE_RC_COMPILER=${CMAKE_RC_COMPILER}") |
| 63 |
list(APPEND GENERATE_OPTIONS "-DCMAKE_RC_COMPILER=${CMAKE_RC_COMPILER}") |
| 64 |
endif() |
| 65 |
|
| 66 |
|
| 67 |
# libs/ |
| 68 |
if(NOT EXISTS "${CMAKE_CURRENT_LIST_DIR}/../libs/openssl11_mingw") |
| 69 |
execute_process( |
| 70 |
COMMAND ${CMAKE_COMMAND} "-DCMAKE_GENERATOR=Unix Makefiles" -P ${CMAKE_CURRENT_LIST_DIR}/../libs/buildall.cmake |
| 71 |
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../libs |
| 72 |
) |
| 73 |
endif() |
| 74 |
|
| 75 |
|
| 76 |
# teraterm |
| 77 |
execute_process( |
| 78 |
COMMAND ${CMAKE_COMMAND} "${CMAKE_CURRENT_LIST_DIR}/.." ${GENERATE_OPTIONS} |
| 79 |
WORKING_DIRECTORY ${BUILD_DIR} |
| 80 |
) |
| 81 |
execute_process( |
| 82 |
COMMAND ${CMAKE_COMMAND} --build . --target install ${BUILD_OPTIONS} ${BUILD_TOOL_OPTIONS} |
| 83 |
WORKING_DIRECTORY ${BUILD_DIR} |
| 84 |
) |
| 85 |
execute_process( |
| 86 |
COMMAND ${CMAKE_COMMAND} --build . --target zip |
| 87 |
WORKING_DIRECTORY ${BUILD_DIR} |
| 88 |
) |
| 89 |
execute_process( |
| 90 |
COMMAND ${CMAKE_COMMAND} --build . --target inno_setup |
| 91 |
WORKING_DIRECTORY ${BUILD_DIR} |
| 92 |
) |