[ttssh2-commit] [10437] ビルドスクリプトで使用する cygwin,perl を調整

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2022年 12月 27日 (火) 00:45:29 JST


Revision: 10437
          https://osdn.net/projects/ttssh2/scm/svn/commits/10437
Author:   zmatsuo
Date:     2022-12-27 00:45:29 +0900 (Tue, 27 Dec 2022)
Log Message:
-----------
ビルドスクリプトで使用する cygwin,perl を調整

- installer/release.bat
  - buildtools/cygwin64 がある場合使用するようにした
- installer/build.bat
  - i686-pc-cygwin-g++.exe が実行できるとき32bit版cygtermをビルドするようにした
- cmakeビルド時,buildtools/cygwin64 内の perl も利用候補にした
- getperl.bat 使用時 perlのダウンロード,展開に cmake も使用できるようにした
  - cmake のほうが powershell より高速に処理できる

Modified Paths:
--------------
    trunk/buildtools/checkperl.cmake
    trunk/buildtools/getperl.bat
    trunk/installer/build.bat
    trunk/installer/release.bat

-------------- next part --------------
Modified: trunk/buildtools/checkperl.cmake
===================================================================
--- trunk/buildtools/checkperl.cmake	2022-12-26 15:45:18 UTC (rev 10436)
+++ trunk/buildtools/checkperl.cmake	2022-12-26 15:45:29 UTC (rev 10437)
@@ -1,6 +1,7 @@
 if (MSVC OR (MINGW AND (CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")))
   find_program(
     PERL perl.exe
+    HINTS ${CMAKE_CURRENT_LIST_DIR}/cygwin64/bin
     HINTS ${CMAKE_CURRENT_LIST_DIR}/perl/perl/bin
     HINTS c:/Strawberry/perl/bin
     HINTS c:/Perl64/bin

Modified: trunk/buildtools/getperl.bat
===================================================================
--- trunk/buildtools/getperl.bat	2022-12-26 15:45:18 UTC (rev 10436)
+++ trunk/buildtools/getperl.bat	2022-12-26 15:45:29 UTC (rev 10437)
@@ -1,8 +1,19 @@
 @echo off
 setlocal
 cd /d %~dp0
-echo perl\x82\xF0\x83_\x83E\x83\x93\x83\x8D\x81[\x83h\x82\xB5\x82\xC4lib/perl\x82ɓW\x8AJ\x82\xB5\x82܂\xB7
+echo perl\x82\xF0\x83_\x83E\x83\x93\x83\x8D\x81[\x83h\x82\xB5\x82\xC4buildtools/perl\x82ɓW\x8AJ\x82\xB5\x82܂\xB7
 pause
+IF NOT EXIST "C:\Program Files\CMake\bin" goto by_powershell
+
+:by_cmake
+set PATH=C:\Program Files\CMake\bin;%PATH%
+cmake -P getperl.cmake
+goto finish
+
+:by_powershell
 powershell -NoProfile -ExecutionPolicy Unrestricted .\getperl.ps1
+goto finish
+
+:finish
 endlocal
 pause

Modified: trunk/installer/build.bat
===================================================================
--- trunk/installer/build.bat	2022-12-26 15:45:18 UTC (rev 10436)
+++ trunk/installer/build.bat	2022-12-26 15:45:29 UTC (rev 10437)
@@ -239,7 +239,8 @@
     make cygterm+-i686-clean
 )
 make cygterm+-x86_64 -j
-if not exist c:\cygwin64\bin\i686-pc-cygwin-g++.exe goto cygterm32_pass
+where i686-pc-cygwin-g++.exe
+if errorlevel 1 goto cygterm32_pass
 make cygterm+-i686 -j
 :cygterm32_pass
 make archive

Modified: trunk/installer/release.bat
===================================================================
--- trunk/installer/release.bat	2022-12-26 15:45:18 UTC (rev 10436)
+++ trunk/installer/release.bat	2022-12-26 15:45:29 UTC (rev 10437)
@@ -138,7 +138,14 @@
 rem ####################
 :setup_tools_env
 
+set CYGWIN_PATH=%CUR%..\buildtools\cygwin64\bin
+if exist "%CYGWIN_PATH%" goto cygwin_path_pass
 set CYGWIN_PATH=C:\cygwin64\bin
+if exist "%CYGWIN_PATH%" goto cygwin_path_pass
+echo cygwin not found
+if not "%NOPAUSE%" == "1" pause
+exit
+:cygwin_path_pass
 set VS_BASE=C:\Program Files\Microsoft Visual Studio\%VS_VERSION%
 if exist "%VS_BASE%" goto vs_base_pass
 set VS_BASE=C:\Program Files (x86)\Microsoft Visual Studio\%VS_VERSION%
@@ -153,17 +160,17 @@
     set PATH=
 )
 
+set PATH=%SystemRoot%;%PATH%
+set PATH=%SystemRoot%\system32;%PATH%
 call :search_perl
 call :search_svn
 call :search_iscc
-set PATH=%PATH%;%SVN_PATH%
-set PATH=%PATH%;%PERL_PATH%
-set PATH=%PATH%;%SystemRoot%
-set PATH=%PATH%;%SystemRoot%\system32
+set PATH=%SVN_PATH%;%PATH%
+set PATH=%PERL_PATH%;%PATH%
 call :set_vs_env
 call :search_cmake
-set PATH=%PATH%;%CYGWIN_PATH%
-set PATH=%PATH%;%CMAKE_PATH%
+set PATH=%CYGWIN_PATH%;%PATH%
+set PATH=%CMAKE_PATH%;%PATH%
 exit /b 0
 
 rem ####################
@@ -176,6 +183,8 @@
 set PERL=perl.exe
 where %PERL% > nul 2>&1
 if %errorlevel% == 0 exit /b 0
+set PERL=%CUR%..\buildtools\cygwin64\bin\perl.exe
+if exist %PERL% exit /b 0
 set PERL=%CUR%..\buildtools\perl\perl\bin\perl.exe
 if exist %PERL% exit /b 0
 set PERL=C:\Strawberry\perl\bin\perl.exe
@@ -299,7 +308,7 @@
 where perl
 echo PERL_PATH=%PERL_PATH%
 echo PERL=%PERL%
-perl --version
+%PERL% --version
 
 echo cmake
 where cmake


ttssh2-commit メーリングリストの案内
Back to archive index