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 |
) |