Changeset 318 for asp3_gr_sakura/trunk/tecsgen/in_exerb.rb
- Timestamp:
- Aug 3, 2017, 10:46:41 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_gr_sakura/trunk/tecsgen/in_exerb.rb
-
Property svn:mime-type
changed from
text/x-ruby
totext/x-ruby; charset=UTF-8
r317 r318 6 6 # Copyright (C) 2008-2015 by TOPPERS Project 7 7 #-- 8 # ä¸è¨èä½æ¨©è 9 ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 10 # ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 11 # å¤ã»åé 12 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 13 # (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 14 # 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 15 # ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 16 # (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 17 # ç¨ã§ããå½¢ã§åé 18 å¸ããå ´åã«ã¯ï¼åé 19 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 20 # è 21 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 22 # ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 23 # (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 24 # ç¨ã§ããªãå½¢ã§åé 25 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 26 # ã¨ï¼ 27 # (a) åé 28 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 29 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 30 # ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 31 # (b) åé 32 å¸ã®å½¢æ 33 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 34 # å ±åãããã¨ï¼ 35 # (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 36 # 害ãããï¼ä¸è¨èä½æ¨©è 37 ããã³TOPPERSããã¸ã§ã¯ããå 38 責ãããã¨ï¼ 39 # ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 40 # ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 41 ããã³TOPPERSããã¸ã§ã¯ãã 42 # å 43 責ãããã¨ï¼ 8 # 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 9 # ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 10 # 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 11 # (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 12 # 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 13 # スコード中に含まれていること. 14 # (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 15 # 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 16 # 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 17 # の無保証規定を掲載すること. 18 # (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 19 # 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 20 # と. 21 # (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 22 # 作権表示,この利用条件および下記の無保証規定を掲載すること. 23 # (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 24 # 報告すること. 25 # (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 26 # 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 27 # また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 28 # 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 29 # 免責すること. 44 30 # 45 # æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 46 ã 47 # ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 48 # ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 49 # ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 50 # ã®è²¬ä»»ãè² ããªãï¼ 31 # 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 32 # よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 33 # に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 34 # アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 35 # の責任を負わない. 51 36 # 52 # $Id : in_exerb.rb 2509 2016-01-13 11:04:38Z okuma-top$37 # $Id$ 53 38 #++ 54 39 55 # exerb çã§æåã«èªã¿ãã¾ãããã¡ã¤ã«56 # ãã®ãã¡ã¤ã«ãã generate.rb ãèªã¿ãã¾ãã40 # exerb 版で最初に読みこまれるファイル 41 # このファイルから generate.rb が読みこまれる 57 42 58 43 $IN_EXERB=true 59 44 60 # ãã®å¤æ°ã¯ exerb çã®ã¿45 # この変数は exerb 版のみ 61 46 $path = ENV[ 'PATH' ] 62 47 63 #=== cygwin ã®ãã¹ã Windows ãã¹ã«å¤æ64 # cygpath ã³ãã³ããæ¢ãã¦ãè¦ã¤ããã°å¤æãã65 # å¤æã§ããªãã£ããã¾ãã¯å¤æå¾ã®ãã¹ãè¦ã¤ãããªãå ´åãdefault ãè¿ã48 #=== cygwin のパスを Windows パスに変換 49 # cygpath コマンドを探して、見つかれば変換する 50 # 変換できなかった、または変換後のパスが見つからない場合、default を返す 66 51 def cygpath( path, default = nil ) 67 52 if ! $IN_EXERB then … … 96 81 end 97 82 98 # gcc ã®ãã¹ãè¨å®ãã 99 # cygwin ã®ãããã¼ã¸ã§ã³ã§ã¯ gcc 㯠gcc-3.exe ã¾ã㯠gcc-4.exe ã¸ã®ã·ã³ããªãã¯ãªã³ã¯ã¨ãªã£ã¦ãã 100 # exerb çã§ã¯ã·ã³ããªãã¯ãªã³ã¯ã辿ããªããã gcc ã® exe ãæ¢ã 101 # cygwin ã®ãªã³ã¯ã¯ãã·ã¹ãã å±æ§ãä»ããããã³ãã³ãããã³ããä¸ã§ã¯ dir /A:S ãæå®ããªãã¨è¡¨ç¤ºãããªã 102 # (cygwin ã®ãã¼ã¸ã§ã³ã§å®è£ 103 ãç°ãªããããããªã) 104 # ãã¡ã¤ã«ã®å 105 é 2ãã¤ããèªåºã PE ãã©ã¼ãããã®ãã¸ãã¯ã«ä¸è´ããã調ã¹ã 83 # gcc のパスを設定する 84 # cygwin のあるバージョンでは gcc は gcc-3.exe または gcc-4.exe へのシンボリックリンクとなっている 85 # exerb 版ではシンボリックリンクを辿れないため gcc の exe を探す 86 # cygwin のリンクは、システム属性が付けられ、コマンドプロンプト上では dir /A:S を指定しないと表示されない 87 # (cygwin のバージョンで実装が異なるかもしれない) 88 # ファイルの先頭2バイトを読出し PE フォーマットのマジックに一致するか調べる 106 89 $gcc = "gcc" 107 90 $path.split( ";" ).each{ |path| … … 112 95 begin 113 96 magic = File.read( gcc_path, 2 ) 114 if magic == "MZ" # ãã¸ãã¯ããã§ãã¯97 if magic == "MZ" # マジックをチェック 115 98 $gcc = gcc 116 99 found = true … … 118 101 end 119 102 rescue 120 # magic ã®èªåºãã«å¤±æãç¡è¦103 # magic の読出しに失敗。無視 121 104 end 122 105 end … … 125 108 } 126 109 127 # cpp ã³ãã³ããè¨å®ãã110 # cpp コマンドを設定する 128 111 $cpp = "#{$gcc} -E -D TECSGEN" 129 112 130 # exerb ç TECS ã¸ã§ãã¬ã¼ã¿ã®å®è¡ãéå§113 # exerb 版 TECS ジェネレータの実行を開始 131 114 require "tecsgen.rb" -
Property svn:mime-type
changed from
Note:
See TracChangeset
for help on using the changeset viewer.