Revision: 10580 https://osdn.net/projects/ttssh2/scm/svn/commits/10580 Author: zmatsuo Date: 2023-02-06 00:34:47 +0900 (Mon, 06 Feb 2023) Log Message: ----------- ビルド時 tt-version.h のバージョン情報を元とするよう修正 - teraterm.iss, svnrev.pl 内にバージョン情報があった - tt-version.h を元とするようにした - svnrev.pl - tt-version.h からバージョン番号を取得するようにした - issversion.pl を削除 - teraterm.iss からバージョン番号を取得するために使用していた - tt-version.h のバージョン番号を元とするようにしたため不要となった - makearchive.bat - issversion.pl の使用をやめた - svnrev.pl の sourcetree_info.bat を元に出力フォルダを決めるようにした - release.bat - issversion.pl の使用をやめた - iscc.bat, teraterm.iss - インストーラ,zipの作成部分を release.bat から切り出した - インストーラ(iscc.exe)に引数でバージョン番号を渡せるようにした Modified Paths: -------------- trunk/buildtools/svnrev/svnrev.pl trunk/installer/makearchive.bat trunk/installer/release.bat trunk/installer/teraterm.iss Added Paths: ----------- trunk/installer/iscc.bat Removed Paths: ------------- trunk/installer/issversion.pl -------------- next part -------------- Modified: trunk/buildtools/svnrev/svnrev.pl =================================================================== --- trunk/buildtools/svnrev/svnrev.pl 2023-02-04 15:42:44 UTC (rev 10579) +++ trunk/buildtools/svnrev/svnrev.pl 2023-02-05 15:34:47 UTC (rev 10580) @@ -6,10 +6,11 @@ binmode STDOUT, ':encoding(utf8)'; -my $tt_version_major = 5; -my $tt_version_mainor = 0; -my $tt_version_substr = "beta1"; -my $version = "$tt_version_major.$tt_version_mainor$tt_version_substr"; +my $tt_version_major = 0; +my $tt_version_minor = 0; +my $tt_version_substr = ""; +my $tt_version_h = "../../teraterm/common/tt-version.h"; +my $version; my $svn = "svn"; my $git = "git"; my $out_header = "svnversion.h"; @@ -111,11 +112,9 @@ sub compare_file { my ($f1, $f2) = @_; if (! -f $f1) { - print "$f1 not exsit\n"; return 1; } if (! -f $f2) { - print "$f2 not exsit\n"; return 1; } my $t1 = read_whole_file($f1); @@ -122,10 +121,8 @@ my $t2 = read_whole_file($f2); if ($t1 eq $t2) { # return same - print "$f1=$f2\n"; return 0; } - print "$f1 not equal $f2\n"; return 1; } @@ -186,6 +183,33 @@ close($FD); } +sub read_tt_version_h() +{ + # ヘッダーファイルがない場合 + if (! -f $tt_version_h) { + printf("no header\n"); + $tt_version_major = 0; + $tt_version_minor = 0; + $tt_version_substr = "no_header"; + return; + } + + open(my $FH, '<', $tt_version_h) or die "error open $tt_version_h"; + while (<$FH>) { + if (/#define\s+TT_VERSION_MAJOR\s+(\d+)/) { + $tt_version_major = $1; + } + elsif (/#define\s+TT_VERSION_MINOR\s+(\d+)/) { + $tt_version_minor = $1; + } + elsif (/#define\s+TT_VERSION_SUBSTR\s+\"(.+)\"/) { + $tt_version_substr = $1; + } + } + close $FH; +} + +&read_tt_version_h(); &search_svn(); &search_git(); &read_toolinfo(); @@ -206,8 +230,17 @@ $svn =~ s/"//g; $svn =~ s/\\/\//g; +if ($tt_version_substr eq "") { + $version = "$tt_version_major.$tt_version_minor"; +} else { + $version = "$tt_version_major.$tt_version_minor-$tt_version_substr"; +} + if ($verbose != 0) { print "root=$source_root\n"; + print "tt_version_major=$tt_version_major\n"; + print "tt_version_minor=$tt_version_minor\n"; + print "tt_version_substr=$tt_version_substr\n"; print "svn=\"$svn\"\n"; print "git=\"$git\"\n"; print "header=\"$out_header\"\n"; Added: trunk/installer/iscc.bat =================================================================== --- trunk/installer/iscc.bat (rev 0) +++ trunk/installer/iscc.bat 2023-02-05 15:34:47 UTC (rev 10580) @@ -0,0 +1,30 @@ + @ rem \x83C\x83\x93\x83X\x83g\x81[\x83\x89,zip\x82\xF0\x8D쐬 + @ rem test + @ rem release.bat\x82\xF0\x8E\xC0\x8Ds\x81A + @ rem 7. exec cmd.exe \x82\xF0\x91I\x82\xF1\x82ł\xA9\x82\xE7\x8Eg\x97p\x82\xB7\x82\xE9\x82ƁA\x82\xB1\x82\xCCbat\x82\xBE\x82\xAF\x83e\x83X\x83g\x82\xAA\x82ł\xAB\x82܂\xB7 +setlocal +cd /d %~dp0 + +if not exist Output mkdir Output +set TT_VERSION=%VERSION% +set SNAPSHOT_PORTABLE_OUTPUT="teraterm-%TT_VERSION%-r%SVNVERSION%-%DATE%_%TIME%-%USERNAME%-snapshot" +if "%RELEASE%" == "1" ( + pushd Output + %CMAKE% -E tar cf teraterm-%TT_VERSION%.zip --format=zip teraterm-%TT_VERSION%/ + %CMAKE% -E tar cf teraterm-%TT_VERSION%_pdb.zip --format=zip teraterm-%TT_VERSION%_pdb/ + popd + set INNO_SETUP_OPT_VERSION= + set INNO_SETUP_OPT_OUTPUT= +) else ( + %CMAKE% -E rename snapshot-%DATE%_%TIME% %SNAPSHOT_PORTABLE_OUTPUT% + %CMAKE% -E rename snapshot-%DATE%_%TIME%_pdb %SNAPSHOT_PORTABLE_OUTPUT%_pdb + %CMAKE% -E tar cf Output/%SNAPSHOT_PORTABLE_OUTPUT%.zip --format=zip %SNAPSHOT_PORTABLE_OUTPUT% + %CMAKE% -E tar cf Output/%SNAPSHOT_PORTABLE_OUTPUT%_pdb.zip --format=zip %SNAPSHOT_PORTABLE_OUTPUT%_pdb + %CMAKE% -E rename %SNAPSHOT_PORTABLE_OUTPUT% snapshot-%DATE%_%TIME% + %CMAKE% -E rename %SNAPSHOT_PORTABLE_OUTPUT%_pdb snapshot-%DATE%_%TIME%_pdb + set INNO_SETUP_OPT_VERSION="/DVerSubStr=r%SVNVERSION%-%DATE%_%TIME%" + set INNO_SETUP_OPT_OUTPUT="/DOutputSubStr=r%SVNVERSION%-%DATE%_%TIME%-%USERNAME%-snapshot" +) +%INNO_SETUP% %INNO_SETUP_OPT_VERSION% /DAppVer=%VERSION% %INNO_SETUP_OPT_OUTPUT% teraterm.iss + +endlocal Deleted: trunk/installer/issversion.pl =================================================================== --- trunk/installer/issversion.pl 2023-02-04 15:42:44 UTC (rev 10579) +++ trunk/installer/issversion.pl 2023-02-05 15:34:47 UTC (rev 10580) @@ -1,14 +0,0 @@ -#!/usr/bin/perl - -use strict; -use warnings; -use utf8; - -open(ISS, '<:crlf:encoding(UTF-8)', 'teraterm.iss'); -while(<ISS>){ - if (/^#define AppVer "(.+)"$/) { - print $1; - last; - } -} -close ISS; Modified: trunk/installer/makearchive.bat =================================================================== --- trunk/installer/makearchive.bat 2023-02-04 15:42:44 UTC (rev 10579) +++ trunk/installer/makearchive.bat 2023-02-05 15:34:47 UTC (rev 10580) @@ -19,9 +19,7 @@ rem change folder name if not "%release%"=="yes" goto snapshot -set ver= -for /f "delims=" %%i in ('perl issversion.pl') do @set ver=%%i -set dst=Output\teraterm-%ver% +set dst=Output\teraterm-%VERSION% goto create :snapshot Modified: trunk/installer/release.bat =================================================================== --- trunk/installer/release.bat 2023-02-04 15:42:44 UTC (rev 10579) +++ trunk/installer/release.bat 2023-02-05 15:34:47 UTC (rev 10580) @@ -99,8 +99,8 @@ setlocal cd /d %CUR% -set TT_VERSION= -for /f "delims=" %%i in ('perl issversion.pl') do @set TT_VERSION=%%i +call ..\buildtools\svnrev\svnrev.bat +call ..\buildtools\svnrev\sourcetree_info.bat if "%RELEASE%" == "1" ( call build.bat rebuild @@ -111,26 +111,7 @@ ) else ( call makearchive.bat ) -if not exist Output mkdir Output -set SNAPSHOT_PORTABLE_OUTPUT="teraterm-%TT_VERSION%-r%SVNVERSION%-%DATE%_%TIME%-%USERNAME%-snapshot" -if "%RELEASE%" == "1" ( - pushd Output - %CMAKE% -E tar cf teraterm-%TT_VERSION%.zip --format=zip teraterm-%TT_VERSION%/ - %CMAKE% -E tar cf teraterm-%TT_VERSION%_pdb.zip --format=zip teraterm-%TT_VERSION%_pdb/ - popd - set INNO_SETUP_OPT_VERSION= - set INNO_SETUP_OPT_OUTPUT= -) else ( - %CMAKE% -E rename snapshot-%DATE%_%TIME% %SNAPSHOT_PORTABLE_OUTPUT% - %CMAKE% -E rename snapshot-%DATE%_%TIME%_pdb %SNAPSHOT_PORTABLE_OUTPUT%_pdb - %CMAKE% -E tar cf Output/%SNAPSHOT_PORTABLE_OUTPUT%.zip --format=zip %SNAPSHOT_PORTABLE_OUTPUT% - %CMAKE% -E tar cf Output/%SNAPSHOT_PORTABLE_OUTPUT%_pdb.zip --format=zip %SNAPSHOT_PORTABLE_OUTPUT%_pdb - %CMAKE% -E rename %SNAPSHOT_PORTABLE_OUTPUT% snapshot-%DATE%_%TIME% - %CMAKE% -E rename %SNAPSHOT_PORTABLE_OUTPUT%_pdb snapshot-%DATE%_%TIME%_pdb - set INNO_SETUP_OPT_VERSION="/DVerSubStr=r%SVNVERSION%-%DATE%_%TIME%" - set INNO_SETUP_OPT_OUTPUT="/DOutputSubStr=r%SVNVERSION%-%DATE%_%TIME%-%USERNAME%-snapshot" -) -%INNO_SETUP% %INNO_SETUP_OPT_VERSION% %INNO_SETUP_OPT_OUTPUT% teraterm.iss +call iscc.bat endlocal exit /b 0 Modified: trunk/installer/teraterm.iss =================================================================== --- trunk/installer/teraterm.iss 2023-02-04 15:42:44 UTC (rev 10579) +++ trunk/installer/teraterm.iss 2023-02-05 15:34:47 UTC (rev 10580) @@ -1,5 +1,10 @@ -#define AppName "Tera Term" + +#define AppName "Tera Term" +#ifndef AppVer #define AppVer "5.0-alpha1" +#endif +;#define VerSubStr +;#define OutputSubStr [InnoIDE_PreCompile] Name: makechm.bat