• R/O
  • SSH
  • HTTPS

ttssh2: Commit


Commit MetaInfo

Revision9439 (tree)
Time2021-09-22 01:07:00
Authorzmatsuo

Log Message

ツール(svn, git)をデフォルトのインストールパスからも探すようにした

- 指定がない時、探したツールを使用する
- 環境変数PATHに設定していなくても実行できるようにした

Change Summary

Incremental Difference

--- trunk/svnrev_perl/readme.md (revision 9438)
+++ trunk/svnrev_perl/readme.md (revision 9439)
@@ -14,9 +14,16 @@
1414 strawberry perl が buildtools/perl に展開される
1515 - または、いくつかのメジャーなperlを探して見つければ使用する
1616 - perl が見つからない場合は svnversion.default.h が使用される
17-- svn(又は git)を実行できるようにする
18- - svn が実行できるよう環境変数 PATH を設定する
19- - または、toolinfo.txt にツールのパスを書いておく
17+- svn(又は git)をインストールしておく
18+ - Windows用svnの例
19+ - TortoiseSVN の command line client tools
20+ - https://tortoisesvn.net/
21+ - Windows用gitの例
22+ - git
23+ - https://git-scm.com/
24+ - 標準的なインストールフォルダから自動的に実行ファイルを探す
25+ - 見つからない場合は環境変数 PATH にあるプログラムを実行する
26+ - toolinfo.txt にツールのパスを書いておくと優先して使用される
2027 - ツールが実行できない場合もヘッダファイルは作成される
2128
2229 # ヘッダの作成方法
--- trunk/svnrev_perl/svnrev.pl (revision 9438)
+++ trunk/svnrev_perl/svnrev.pl (revision 9439)
@@ -37,6 +37,40 @@
3737 close($FD);
3838 }
3939
40+sub search_svn {
41+ my @test_list = (
42+ "C:/Program Files/TortoiseSVN/bin/svn.exe",
43+ "C:/cygwin64/bin/svn.exe",
44+ "C:/cygwin/bin/svn.exe",
45+ "/usr/bin/svn.exe" # msys, cygwin
46+ );
47+ for (my $i = 0; $i < @test_list; $i++) {
48+ my $test = $test_list[$i];
49+ if (-e $test) {
50+ $svn = $test;
51+ return;
52+ }
53+ }
54+}
55+
56+sub search_git {
57+ my @test_list = (
58+ "C:/Program Files/Git/bin/git.exe",
59+ "C:/cygwin64/bin/git.exe",
60+ "C:/cygwin/bin/git.exe",
61+ "/usr/bin/git.exe" # msys, cygwin
62+ );
63+ for (my $i = 0; $i < @test_list; $i++) {
64+ my $test = $test_list[$i];
65+ if (-e $test) {
66+ $git = $test;
67+ return;
68+ }
69+ }
70+}
71+
72+&search_svn();
73+&search_git();
4074 &read_toolinfo();
4175
4276 GetOptions(
@@ -138,7 +172,16 @@
138172 }
139173 local $revision = $svninfo{'Revision'};
140174
175+if ($verbose != 0) {
176+ print "SVNREVISION $revision\n";
177+ print "RELEASE $svninfo{'release'}\n";
178+ print "BRANCH_NAME $svninfo{'name'}\n";
179+}
180+
141181 # output for source(C,C++) header
182+if ($verbose != 0) {
183+ print "write '$out_header'\n";
184+}
142185 open(my $FD, ">$out_header") || die "error $out_header";
143186 print $FD "/* $header */\n";
144187 print $FD "/* #define TT_VERSION_STR \"$version\" check teraterm/common/tt-version.h */\n";
@@ -156,6 +199,9 @@
156199 close($FD);
157200
158201 # output for bat file
202+if ($verbose != 0) {
203+ print "write '$out_bat'\n";
204+}
159205 open(my $FD, ">$out_bat") || die "error $out_bat";
160206 print $FD "\@rem $header\n";
161207 print $FD "set VERSION=$version\n";
@@ -171,6 +217,9 @@
171217
172218 # output for cmake
173219 if ($out_cmake ne "") {
220+ if ($verbose != 0) {
221+ print "write '$out_cmake'\n";
222+ }
174223 open(my $FD, ">$out_cmake") || die "error $out_cmake";
175224 print $FD "# $header\n";
176225 print $FD "set(VERSION \"$version\")\n";
Show on old repository browser