Changeset 429 for EcnlProtoTool/trunk/asp3_dcre/configure.rb
- Timestamp:
- Jul 3, 2020, 7:19:17 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/asp3_dcre/configure.rb
r331 r429 7 7 # Copyright (C) 2001-2003 by Embedded and Real-Time Systems Laboratory 8 8 # Toyohashi Univ. of Technology, JAPAN 9 # Copyright (C) 2006-201 6by Embedded and Real-Time Systems Laboratory9 # Copyright (C) 2006-2019 by Embedded and Real-Time Systems Laboratory 10 10 # Graduate School of Information Science, Nagoya Univ., JAPAN 11 11 # … … 42 42 # 43 43 44 Encoding.default_external = 'utf-8' 44 45 require "optparse" 45 46 require "fileutils" … … 56 57 # ル名)名 57 58 # -C <cdlflle> コンポーネント記述ファイル(.cdlファイル)名 58 # -U <applobjs> 他のアプリケーションプログラムファイル59 # -U <applobjs> アプリケーションの追加のオブジェクトファイル 59 60 # (.oファイル名で指定.複数指定可) 60 # -S <syssvcobjs> システムサービスの プログラムファイル61 # -S <syssvcobjs> システムサービスのオブジェクトファイル 61 62 # (.oファイル名で指定.複数指定可) 63 # -B <bannerobj> バナー表示のオブジェクトファイル(.oファイル名で指定) 62 64 # -L <kernel_lib> カーネルライブラリ(libkernel.a)のディレクトリ名 63 65 # (省略した場合,カーネルライブラリもmakeする) … … 67 69 # -m <tempmakefile> Makefileのテンプレートのファイル名の指定(デフォル 68 70 # トはsampleディレクトリのMakefile) 69 # -d <depdir> 依存関係ファイルのディレクトリ名(デフォルトはdeps) 71 # -d <objdir> 中間オブジェクトファイルと依存関係ファイルを置く 72 # ディレクトリ名(デフォルトはobjs) 70 73 # -w TECSを使用しない 74 # -W <tecsdir> TECS関係ファイルのディレクトリ名(デフォルトはソー 75 # スファイルのディレクトリの下のtecsgen) 71 76 # -r トレースログ記録のサンプルコードを使用するかどうか 72 77 # の指定 … … 77 82 # -o <options> コンパイルオプション(COPTSに追加) 78 83 # -O <options> シンボル定義オプション(CDEFSに追加) 79 # -k <options> リンカオプション(LDFLAGS等に追加) 84 # -k <options> リンカオプション(LDFLAGSに追加) 85 # -b <options> リンカオプション(LIBSに追加) 80 86 # -e <tinetdir> TINET のソースの置かれているディレクトリ 81 87 # -i <net_if> ネットワークインタフェース(TINETが有効の場合は必須) … … 111 117 # 112 118 # % ../configure.rb -T gr_sakura_gcc -A sample1n \ 113 # -e tinet -i ether -v if_ rx62n-n inet4 -s tcp -U sample1.o119 # -e tinet -i ether -v if_mbed -n inet4 -s tcp -U sample1.o 114 120 # TINETを有効にする. 115 121 … … 119 125 $target = nil 120 126 $appldirs = [] 127 $applname = nil 128 $option_t = false 129 $cfgfile = nil 130 $cdlfile = nil 121 131 $applobjs = [] 122 132 $syssvcobjs = [] 133 $bannerobj = nil 123 134 $kernel_lib = "" 124 135 $kernel_funcobjs = "" 136 $srcdir = nil 125 137 $srclang = "c" 126 $depdir = "deps" 138 $tempmakefile = nil 139 $objdir = "objs" 127 140 $omit_tecs = "" 141 $tecsdir = nil 128 142 $enable_trace = "" 129 143 $devtooldir = "" 130 144 $ruby = "ruby" 145 $cfg = nil 146 $tecsgen = nil 131 147 $copts = [] 132 148 $cdefs = [] 133 149 $ldflags = [] 150 $libs = [] 134 151 135 152 # … … 141 158 end 142 159 opt.on("-a appldirs", "application directories") do |val| 143 $appldirs += val.split( "\s+")160 $appldirs += val.split(/\s+/) 144 161 end 145 162 opt.on("-A applname", "application program name") do |val| … … 156 173 end 157 174 opt.on("-U applobjs", "additional application object files") do |val| 158 $applobjs += val.split( "\s+")175 $applobjs += val.split(/\s+/) 159 176 end 160 177 opt.on("-S syssvcobjs", "system service object files") do |val| 161 $syssvcobjs += val.split("\s+") 178 $syssvcobjs += val.split(/\s+/) 179 end 180 opt.on("-B bannerobj", "banner display object file") do |val| 181 $bannerobj = val 162 182 end 163 183 opt.on("-L kernel_lib", "directory of built kernel library") do |val| … … 165 185 end 166 186 opt.on("-f", "each function is complied separately in kernel") do |val| 167 $kernel_funcobjs = true187 $kernel_funcobjs = "true" 168 188 end 169 189 opt.on("-D srcdir", "path of source code directory") do |val| … … 176 196 $tempmakefile = val 177 197 end 178 opt.on("-d depdir", "dependency relationfile directory") do |val|179 $ depdir = val198 opt.on("-d objdir", "relocatable object file directory") do |val| 199 $objdir = val 180 200 end 181 201 opt.on("-w", "TECS is not used at all") do |val| 182 $omit_tecs = true 202 $omit_tecs = "true" 203 end 204 opt.on("-W tecsdir", "path of TECS file directory") do |val| 205 $tecsdir = val 183 206 end 184 207 opt.on("-r", "use the sample code for trace log") do |val| 185 $enable_trace = true208 $enable_trace = "true" 186 209 end 187 210 opt.on("-V devtooldir", "development tools directory") do |val| … … 198 221 end 199 222 opt.on("-o options", "compiler options") do |val| 200 $copts += val.split( "\s+")223 $copts += val.split(/\s+/) 201 224 end 202 225 opt.on("-O options", "symbol definition options") do |val| 203 $cdefs += val.split( "\s+")226 $cdefs += val.split(/\s+/) 204 227 end 205 228 opt.on("-k options", "linker options") do |val| 206 $ldflags += val.split("\s+") 229 $ldflags += val.split(/\s+/) 230 end 231 opt.on("-b options", "linker options for linking libraries") do |val| 232 $libs += val.split(/\s+/) 207 233 end 208 234 opt.on("-e options", "path of TINET directory") do |val| … … 236 262 237 263 # 238 # 変数のデフォルト値 264 # 変数のデフォルト値(文字列変数のデフォルト値は初期化で与える) 239 265 # 240 266 if $appldirs.empty? … … 242 268 end 243 269 $applname ||= "sample1" 244 if $option_t.nil?245 $applobjs.unshift($applname + ".o")246 end247 270 $cfgfile ||= $applname + ".cfg" 248 271 $cdlfile ||= $applname + ".cdl" 272 $applobjs.unshift($applname + ".o") if !$option_t 273 $bannerobj ||= ($omit_tecs == "") ? "tBannerMain.o" : "banner.o" 249 274 if $srcdir.nil? 250 275 # ソースディレクトリ名を取り出す … … 261 286 end 262 287 $tempmakefile ||= $srcdir + "/sample/Makefile" 288 $tecsdir ||= "\$(SRCDIR)/tecsgen" 263 289 $cfg ||= $ruby + " \$(SRCDIR)/cfg/cfg.rb" 264 $tecsgen ||= $ruby + " \$( SRCDIR)/tecsgen/tecsgen.rb"290 $tecsgen ||= $ruby + " \$(TECSDIR)/tecsgen.rb" 265 291 266 292 # … … 294 320 $vartable["APPLOBJS"] = $applobjs.join(" ") 295 321 $vartable["SYSSVCOBJS"] = $syssvcobjs.join(" ") 322 $vartable["BANNEROBJ"] = $bannerobj 296 323 $vartable["KERNEL_LIB"] = $kernel_lib 297 324 $vartable["KERNEL_FUNCOBJS"] = $kernel_funcobjs … … 299 326 $vartable["SRCABSDIR"] = $srcabsdir 300 327 $vartable["SRCLANG"] = $srclang 301 $vartable[" DEPDIR"] = $depdir328 $vartable["OBJDIR"] = $objdir 302 329 $vartable["OMIT_TECS"] = $omit_tecs 330 $vartable["TECSDIR"] = $tecsdir 303 331 $vartable["ENABLE_TRACE"] = $enable_trace 304 332 $vartable["DEVTOOLDIR"] = $devtooldir … … 309 337 $vartable["CDEFS"] = $cdefs.join(" ") 310 338 $vartable["LDFLAGS"] = $ldflags.join(" ") 339 $vartable["LIBS"] = $libs.join(" ") 311 340 $vartable["OBJEXT"] = GetObjectExtension() 312 341 $vartable["TINETDIR"] = $tinetdir … … 362 391 # 依存関係ファイルのディレクトリの作成 363 392 # 364 if !File.directory?($ depdir)365 Dir.mkdir($ depdir)366 end 393 if !File.directory?($objdir) 394 Dir.mkdir($objdir) 395 end
Note:
See TracChangeset
for help on using the changeset viewer.