MKLIB.PI 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855
  1. #pragma save
  2. #if "%model"="" #then
  3. #error "model must be set before including MKLIB.PI"
  4. #endif
  5. #pragma check(index=>off,range=>off,overflow=>off,stack=>off,nil_ptr=>off)
  6. #pragma optimize(speed=>off)
  7. #pragma option(ansi=>off)
  8. #pragma define(_ENV=>off,_WINDOWS=>off,_DLL=>off,_OVL=>off,_OS2=>off,_WINDLL=>off)
  9. #pragma define(_SMALL_INLINE=>on,_XTD=>off)
  10. #set usestdmem="off"
  11. #if %system = os2 #then
  12. #pragma define(_OS2=>on)
  13. #set usestdmem="on"
  14. #endif
  15. #if %system = win #then
  16. #pragma define(_WINDOWS=>on)
  17. #endif
  18. #if %model = overlay #then
  19. #pragma define(_OVL=>on)
  20. #endif
  21. #if %model = dynalink #then
  22. #pragma define(_DLL=>on)
  23. #endif
  24. #if (%model=extended) #or (%model=extendmt) #then
  25. #pragma define(_OS2=>on,_XTD=>on)
  26. #set usestdmem="on"
  27. #endif
  28. #if %model = dynalink #then
  29. #pragma define(_MULTI=>on,_PMD=>off,_GRAPHICS=>on,_TEXTWIND=>on)
  30. -- If a non multi thread DLL is made turn _MTHREAD off.
  31. -- If a DLL with Post Mortem is made turn _PMD on.
  32. -- If a DLL without Graphics is made turn _GRAPHICS off.
  33. -- If a DLL without Text Windows is made turn _TEXTWIND off.
  34. #endif
  35. -- macro for performing implib
  36. #set implib = "#implib %%lname.lib %%O%%%%M%%_%%lext.exp"
  37. -- macro for doing link
  38. #set dolink = '
  39. #if %%model = dynalink #then
  40. %%implib
  41. #pragma link_option(oldexe=>off,map=>on)
  42. #if %system = dos #then
  43. #pragma link_option(pack=>off,overlay=>on)
  44. #endif
  45. #if #not "%%extra" = "" #then
  46. #pragma link(%%extra)
  47. #endif
  48. #if %%system = os2 #then
  49. #pragma link(os2jpi.lib)
  50. #endif
  51. #dolink %%lname.dll
  52. #if %system = dos #then
  53. #if %%make #then
  54. #exemod %%lname.dll %%lname.exp %%lname.map
  55. #endif
  56. #endif
  57. #else
  58. #dolink %%lname.lib
  59. #endif
  60. #pragma restore
  61. '
  62. #if "%makestandard" #then
  63. #message "remaking standard object files"
  64. #pragma save
  65. #if (%system = win) #then
  66. #compile initwin.a
  67. #compile initwdll.a
  68. #compile winfloat.a
  69. #else
  70. #compile initexe.a
  71. #compile initdll.a
  72. #if "%tsm2" #then
  73. #compile initnew.a
  74. #endif
  75. #if (%system = os2) #and #exists initpm.a #then
  76. #compile initpm.a
  77. #endif
  78. #compile noemul.a
  79. #compile nofloat.a
  80. #if %model=extended #then
  81. #pragma save
  82. #if x_emul.obj #older x_emul.a, tsxemul.exp #then
  83. #implib tsxemul.lib tsxemul.exp
  84. #compile x_emul.a #to xx_emul.obj
  85. #message "Building X_EMUL.OBJ"
  86. #run "objmerge x_emul.obj xx_emul.obj tsxemul.lib >nul" no_window
  87. #dolink dummy.lib
  88. #file delete dummy.lib
  89. #endif
  90. #pragma restore
  91. #else
  92. #compile %O%_emul.a
  93. #endif
  94. #if ((%model = dynalink) #or (%model = overlay)) #and (%system = dos) #then
  95. #implib loader.lib loader.exp
  96. #endif
  97. #endif
  98. #dolink dummy.lib
  99. #file delete dummy.lib
  100. #pragma restore
  101. #endif
  102. #message "making core library COM, model = %model"
  103. #pragma save
  104. #if %model = dynalink #then
  105. #pragma linkfirst(initdll.obj)
  106. #endif
  107. #compile coremain.a
  108. #compile coresig.a
  109. #compile coremath.a
  110. #compile 3rdparty.a
  111. #compile corefile.a
  112. #compile corertl.a
  113. #compile coreio.a
  114. #compile corepmd.a
  115. #if (%model=extended) #or (%model=extendmt) #then
  116. #compile xos2lib.a
  117. #compile xinterc.a
  118. #if (%model=extendmt) #then
  119. #compile xthread.mod
  120. #endif
  121. #implib tsxlib.lib tsxapi.exp
  122. #pragma link(tsxlib.lib)
  123. #endif
  124. #if (#not (%system = win)) #then
  125. #compile corewind.a
  126. #if "%usestdmem"=on #then
  127. #compile stdmem.a
  128. #else
  129. #compile coremem.a
  130. #endif
  131. #compile coreemul.a
  132. #if define(_mthread) #then
  133. #compile coreproc.a
  134. #endif
  135. #endif
  136. #if %model = dynalink #and #not %system = win #then
  137. #compile %O%_emul.a #to l%O%_emul.obj
  138. #endif
  139. #set lname = %O%%M%%C%com
  140. #if %system = dos #then
  141. #if (%model=extended) #or (%model=extendmt) #then
  142. #set lname = X%M%%C%com
  143. #endif
  144. #compile coregrap.a
  145. #endif
  146. #set lext = com
  147. #if %system = dos #then
  148. #set extra = "loader.lib"
  149. #else
  150. #set extra = ""
  151. #endif
  152. %dolink
  153. #set extra = %O%%M%%C%com.lib
  154. #if "%windll" = on #then
  155. #pragma define(_WINDLL=>on)
  156. #message "making core library COMD, model = %model"
  157. #pragma save
  158. #compile coremain.a #to dcoremai.obj
  159. #compile coresig.a #to dcoresig.obj
  160. #compile coremath.a #to dcoremat.obj
  161. #compile 3rdparty.a #to d3rdpart.obj
  162. #compile corefile.a #to dcorefil.obj
  163. #compile corertl.a #to dcorertl.obj
  164. #compile coreio.a #to dcoreio.obj
  165. #set lname = W%M%%C%comd
  166. #set lext = comd
  167. %dolink
  168. #endif
  169. -- make C library
  170. #if ("%tsc"=on) #then
  171. #message "making C library CLIB, model = %model"
  172. #pragma save
  173. #if %model = dynalink #then
  174. #compile initcdll.a
  175. #endif
  176. #compile cdata.c
  177. #compile clib1.a
  178. #compile clib2.c
  179. #compile printf.c
  180. #compile scanf.c
  181. #compile cstr.a
  182. #compile cfstr.a
  183. #compile cio1.a
  184. #compile cio2.c
  185. #compile csys.c
  186. #if %system = dos #then
  187. #compile msdos.a
  188. #compile cmouse.c
  189. #endif
  190. #if define(_mthread) #then
  191. #compile cproc.c
  192. #endif
  193. #if %system = win #then
  194. #compile msdos.a
  195. #compile cwinmem.c
  196. #endif
  197. #set lname = %O%%M%%C%clib
  198. #set lext = clib
  199. %dolink
  200. #endif
  201. -- make Modula library
  202. #if ("%tsm2"=on) #then
  203. #pragma save
  204. #message "making modula library MLIB, model = %model"
  205. #if %model = dynalink #then
  206. #pragma linkfirst(initdll.obj)
  207. #compile fio.mod
  208. #compile asmlib.a
  209. #compile mathlib.mod
  210. #compile system.mod
  211. #compile str.mod
  212. #compile lib.mod
  213. #compile io.mod
  214. #compile floatexc.mod
  215. #compile process.mod
  216. #endif
  217. #compile modcore.a
  218. #compile spawn.a
  219. #if %system = dos #then
  220. #if (%model = overlay) #or (%model = dynalink) #then
  221. #compile mstorage.mod
  222. #else
  223. #compile storage.mod
  224. #endif
  225. #elsif %system = win #then
  226. #compile wstorage.mod
  227. #elsif %system = os2 #then
  228. #compile storage.mod
  229. #endif
  230. #set lname = %O%%M%%C%mlib
  231. #set lext = mlib
  232. %dolink
  233. #message "making modula library M2, model = %model"
  234. #pragma save
  235. #if %model = dynalink #then
  236. #compile initmdll.a
  237. #endif
  238. #compile fior.mod
  239. #compile shtheap.mod
  240. #compile formio.mod
  241. #if #not %system = win #then
  242. #compile window.mod
  243. #endif
  244. #if (#not ( %model = dynalink )) #then
  245. #compile fio.mod
  246. #compile asmlib.a
  247. #compile mathlib.mod
  248. #compile system.mod
  249. #compile str.mod
  250. #compile lib.mod
  251. #if #not %system = win #then
  252. #compile io.mod
  253. #endif
  254. #compile floatexc.mod
  255. #if define(_mthread) #then
  256. #compile process.mod
  257. #endif
  258. #endif
  259. #if %system = win #then
  260. #compile winfio.mod
  261. #compile winstr.mod
  262. #elsif %system = dos #then
  263. #compile biosio.mod
  264. #compile lim.mod
  265. #compile msmouse.mod
  266. #compile graph.mod
  267. #else -- system = os2
  268. #if #not((%model = small) #or (%model = compact)) #then
  269. -- graphics impossible, because IO privilege functions must be far calls
  270. #compile graph.mod
  271. #compile graphi.mod
  272. #endif
  273. #endif
  274. #set lname = %O%%M%%C%m2
  275. #set lext = m2
  276. #if %model = dynalink #then
  277. #pragma link (%O%%M%%C%mlib.lib)
  278. #endif
  279. %dolink
  280. #if ("%tsc"=on) #then
  281. #pragma save
  282. #message "making modula library MLIBC, model = %model"
  283. #if %model = dynalink #then
  284. #pragma linkfirst(initdll.obj)
  285. #compile fio.mod
  286. #compile asmlib.a
  287. #compile mathlib.mod
  288. #compile system.mod
  289. #compile str.mod
  290. #compile lib.mod
  291. #compile io.mod
  292. #compile floatexc.mod
  293. #compile process.mod
  294. #endif
  295. #if %system = dos #then
  296. #compile mstorage.mod
  297. #elsif %system = win #then
  298. #compile wstorage.mod
  299. #elsif %system = os2 #then
  300. #compile storage.mod
  301. #endif
  302. #if %model = dynalink #then
  303. #pragma link (%O%%M%%C%clib.lib)
  304. #endif
  305. #set lname = %O%%M%%C%mlibc
  306. #set lext = mlibc
  307. %dolink
  308. #if %model = dynalink #then
  309. #message "making modula library M2C, model = %model"
  310. #pragma save
  311. #pragma linkfirst(initdll.obj)
  312. #compile fior.mod
  313. #compile shtheap.mod
  314. #compile formio.mod
  315. #if #not %system = win #then
  316. #compile window.mod
  317. #endif
  318. #if %system = dos #then
  319. #compile biosio.mod
  320. #compile lim.mod
  321. #compile msmouse.mod
  322. #compile graph.mod
  323. #elsif %system = os2 #then
  324. #compile graph.mod
  325. #compile graphi.mod
  326. #endif
  327. #set lname = %O%%M%%C%m2c
  328. #set lext = m2c
  329. #pragma link (%O%%M%%C%mlibc.lib)
  330. %dolink
  331. #endif
  332. #endif
  333. #endif
  334. #if (("%tsc" = on) #or ("%tspas" = on)) #and (#not %system = win) #then
  335. -- C/Pascal Borland windows
  336. #message "making library BORW, model = %model"
  337. #pragma save
  338. #if %model = dynalink #then
  339. #pragma linkfirst(initdll.obj)
  340. #endif
  341. #compile coreclip.a
  342. #set lname = %O%%M%%C%borw
  343. #set lext = borw
  344. %dolink
  345. #endif
  346. -- Make Pascal libraries
  347. #if "%tspas"=on #then
  348. #message "making pascal library PLIB, model = %model"
  349. #pragma save
  350. #if %model = dynalink #then
  351. #pragma linkfirst(initdll.obj)
  352. #endif
  353. #compile modcore.a
  354. #compile pspawn.a
  355. #pragma link_option(case => off)
  356. #set lname = %O%%M%%C%plib
  357. #set lext = plib
  358. %dolink
  359. #message "making pascal library PAS, model = %model"
  360. #pragma save
  361. #if %model = dynalink #then
  362. #compile initmdll.a
  363. #endif
  364. #pragma expr(promote=>off)
  365. #compile paslib.pas
  366. #compile pascore.pas
  367. #compile pasdos.pas
  368. #compile pasred.pas
  369. #compile paslow.a
  370. #compile turbodos.pas
  371. #compile turbosys.pas
  372. #if #not %system = win #then
  373. #compile paswin.pas
  374. #compile turbocrt.pas
  375. #compile turboprn.pas
  376. #endif
  377. #if define(_mthread) #then
  378. #compile pasproc.pas
  379. #endif
  380. #pragma link_option(case => off)
  381. #if %model = dynalink #then
  382. #pragma link ( %O%%M%%C%plib.lib )
  383. #pragma link ( %O%%M%%C%borw.lib )
  384. #endif
  385. #set lname = %O%%M%%C%pas
  386. #set lext = pas
  387. %dolink
  388. #if ("%tsc"=on) #and (%model = dynalink) #then
  389. #message "making pascal library PASC, model = %model"
  390. #pragma save
  391. #pragma linkfirst(initdll.obj)
  392. #pragma expr(promote=>off)
  393. #compile paslib.pas
  394. #compile pascore.pas
  395. #compile pasdos.pas
  396. #compile pasred.pas
  397. #compile paswin.pas
  398. #compile paslow.a
  399. #compile turbodos.pas
  400. #compile turbosys.pas
  401. #compile turbocrt.pas
  402. #compile turboprn.pas
  403. #compile pasproc.pas
  404. #pragma link_option(case => off)
  405. #pragma link ( %O%%M%%C%clib.lib )
  406. #pragma link ( %O%%M%%C%borw.lib )
  407. #set lname = %O%%M%%C%pasc
  408. #set lext = pasc
  409. %dolink
  410. #endif
  411. #if ("%tsm2"=on) #and (%model = dynalink) #then
  412. #message "making pascal library PASM, model = %model"
  413. #pragma save
  414. #compile initmdll.a
  415. #pragma expr(promote=>off)
  416. #compile paslib.pas
  417. #compile pascore.pas
  418. #compile pasdos.pas
  419. #compile pasred.pas
  420. #compile paswin.pas
  421. #compile paslow.a
  422. #compile turbodos.pas
  423. #compile turbosys.pas
  424. #compile turbocrt.pas
  425. #compile turboprn.pas
  426. #compile pasproc.pas
  427. #pragma link_option(case => off)
  428. #pragma link ( %O%%M%%C%mlib.lib )
  429. #pragma link ( %O%%M%%C%borw.lib )
  430. #set lname = %O%%M%%C%pasm
  431. #set lext = pasm
  432. %dolink
  433. #endif
  434. #endif
  435. #if ("%tsc" = on) #and (%system = dos) #then
  436. -- C graphics
  437. #message "making C library GRAPH, model = %model"
  438. #pragma save
  439. #if %model = dynalink #then
  440. #compile initgdll.a
  441. #endif
  442. #compile cgraph.c
  443. #set lname = %O%%M%%C%graph
  444. #set lext = graph
  445. #if %model = dynalink #then
  446. #pragma link(%O%%M%%C%clib.lib)
  447. #endif
  448. %dolink
  449. #endif
  450. #if ("%tsc" = on) #and (#not %system = win) #then
  451. -- C text windows
  452. #message "making C library WIND, model = %model"
  453. #pragma save
  454. #if %model = dynalink #then
  455. #compile inittdll.a
  456. #endif
  457. #compile cwindow.c
  458. #compile cwin.a
  459. #set lname = %O%%M%%C%wind
  460. #set lext = wind
  461. #if %model = dynalink #then
  462. #pragma link(%O%%M%%C%clib.lib)
  463. #endif
  464. %dolink
  465. #endif
  466. #if #not ((%model=extended) #or (%model=extendmt)) #then
  467. -- make CPP library
  468. #if "%tscpp"=on #then
  469. #message "making CPP library SLIB, model = %model"
  470. #pragma save
  471. #if %model = dynalink #then
  472. #pragma linkfirst(initdll.obj)
  473. #endif
  474. #if define(_mthread) #then
  475. #compile task.cpp
  476. #endif
  477. #compile bcd.cpp
  478. #compile complex.cpp
  479. #compile fstream.cpp
  480. #compile new.cpp
  481. #compile iostream.cpp
  482. #compile ioinline.cpp
  483. #compile stdiostr.cpp
  484. #compile strstrea.cpp
  485. #compile stream.cpp
  486. #if #not %system = win #then
  487. #compile textwin.cpp
  488. #compile coniostr.cpp
  489. #endif
  490. #compile cpplow.a
  491. #if %model = dynalink #then
  492. #pragma link( %O%%M%%C%clib.lib, %O%%M%%C%wind.lib)
  493. #set lname = %O%%M%%C%slib
  494. #else
  495. #if %system = win #then
  496. #set lname = W%M%%C%slib
  497. #else
  498. #set lname = C%M%%C%slib
  499. #endif
  500. #endif
  501. #set lext = slib
  502. %dolink
  503. #if "%makertool" = on #then
  504. #message "making CPP Tools library RTOOL, model=%model"
  505. #pragma save
  506. #if %model = dynalink #then
  507. #pragma linkfirst(initdll.obj)
  508. #endif
  509. #compile FACTORY.cpp
  510. #compile BINTREE.cpp
  511. #compile BTRDICT.cpp
  512. #compile BTREE.cpp
  513. #compile COLCLASS.cpp
  514. #compile COLLASS.cpp
  515. #compile COLLSTR.cpp
  516. #compile COLLDATE.cpp
  517. #compile COLLECT.cpp
  518. #compile COLLINT.cpp
  519. #compile COLLTIME.cpp
  520. #compile DISKTREE.cpp
  521. #compile DLIST.cpp
  522. #compile DLISTCOL.cpp
  523. #compile FILEMGR.cpp
  524. #compile HASHDICT.cpp
  525. #compile IDENDICT.cpp
  526. #compile IDENSET.cpp
  527. #compile ORDCLTN.cpp
  528. #compile PSTREAM.cpp
  529. #compile QUEUECOL.cpp
  530. #compile RWBAG.cpp
  531. #compile RWDATE.cpp
  532. #compile RWFILE.cpp
  533. #compile RWSET.cpp
  534. #compile RWTIME.cpp
  535. #compile SLIST.cpp
  536. #compile SLISTCOL.cpp
  537. #compile STACKCOL.cpp
  538. #compile STRINGIO.cpp
  539. #compile STRINGS.cpp
  540. #compile UTILITY.cpp
  541. #if %model = dynalink #then
  542. #pragma link( %O%%M%%C%clib.lib, %O%%M%%C%slib.lib)
  543. #set lname = %O%%M%%C%rtool
  544. #else
  545. #if %system = win #then
  546. #set lname = W%M%%C%rtool
  547. #else
  548. #set lname = C%M%%C%rtool
  549. #endif
  550. #endif
  551. #set lext = rtool
  552. %dolink
  553. #endif
  554. #if "%makermath" = on #then
  555. #message "making CPP Tools library RMATH, model=%model"
  556. #pragma save
  557. #if %model = dynalink #then
  558. #pragma linkfirst(initdll.obj)
  559. #endif
  560. #if "%makersrc" = on #then
  561. #set doexpand = '
  562. #expand %%srcfile #set srcfile=%%opath
  563. #expand %%outfile #set outfile=%%cpath
  564. #if %%outfile #older %%srcfile #then
  565. #run "maketype %%mtype %%srcfile %%outfile" no_window rte_abort
  566. #endif
  567. '
  568. #set mtype = "DComplex" #set srcfile = "xcmath.cpp" #set outfile = "ccmath.cpp"
  569. %doexpand
  570. #set mtype = "DComplex" #set srcfile = "xgemat.cpp" #set outfile = "cgemat.cpp"
  571. %doexpand
  572. #set mtype = "DComplex" #set srcfile = "xgematio.cpp" #set outfile = "cgematio.cpp"
  573. %doexpand
  574. #set mtype = "DComplex" #set srcfile = "xgematm1.cpp" #set outfile = "cgematm1.cpp"
  575. %doexpand
  576. #set mtype = "DComplex" #set srcfile = "xgematm2.cpp" #set outfile = "cgematm2.cpp"
  577. %doexpand
  578. #set mtype = "DComplex" #set srcfile = "xgematop.cpp" #set outfile = "cgematop.cpp"
  579. %doexpand
  580. #set mtype = "DComplex" #set srcfile = "xgepick.cpp" #set outfile = "cgepick.cpp"
  581. %doexpand
  582. #set mtype = "DComplex" #set srcfile = "xludecmp.cpp" #set outfile = "cludecmp.cpp"
  583. %doexpand
  584. #set mtype = "DComplex" #set srcfile = "xpick.cpp" #set outfile = "cpick.cpp"
  585. %doexpand
  586. #set mtype = "DComplex" #set srcfile = "xvec.cpp" #set outfile = "cvec.cpp"
  587. %doexpand
  588. #set mtype = "DComplex" #set srcfile = "xvecio.cpp" #set outfile = "cvecio.cpp"
  589. %doexpand
  590. #set mtype = "DComplex" #set srcfile = "xvecmath.cpp" #set outfile = "cvecmath.cpp"
  591. %doexpand
  592. #set mtype = "DComplex" #set srcfile = "xvecop.cpp" #set outfile = "cvecop.cpp"
  593. %doexpand
  594. #set mtype = "Double" #set srcfile = "xgemat.cpp" #set outfile = "dgemat.cpp"
  595. %doexpand
  596. #set mtype = "Double" #set srcfile = "xgematio.cpp" #set outfile = "dgematio.cpp"
  597. %doexpand
  598. #set mtype = "Double" #set srcfile = "xgematm1.cpp" #set outfile = "dgematm1.cpp"
  599. %doexpand
  600. #set mtype = "Double" #set srcfile = "xgematm2.cpp" #set outfile = "dgematm2.cpp"
  601. %doexpand
  602. #set mtype = "Double" #set srcfile = "xgematop.cpp" #set outfile = "dgematop.cpp"
  603. %doexpand
  604. #set mtype = "Double" #set srcfile = "xgepick.cpp" #set outfile = "dgepick.cpp"
  605. %doexpand
  606. #set mtype = "Double" #set srcfile = "xludecmp.cpp" #set outfile = "dludecmp.cpp"
  607. %doexpand
  608. #set mtype = "Double" #set srcfile = "xpick.cpp" #set outfile = "dpick.cpp"
  609. %doexpand
  610. #set mtype = "Double" #set srcfile = "xrmath.cpp" #set outfile = "drmath.cpp"
  611. %doexpand
  612. #set mtype = "Double" #set srcfile = "xvec.cpp" #set outfile = "dvec.cpp"
  613. %doexpand
  614. #set mtype = "Double" #set srcfile = "xvecio.cpp" #set outfile = "dvecio.cpp"
  615. %doexpand
  616. #set mtype = "Double" #set srcfile = "xvecmath.cpp" #set outfile = "dvecmath.cpp"
  617. %doexpand
  618. #set mtype = "Double" #set srcfile = "xvecop.cpp" #set outfile = "dvecop.cpp"
  619. %doexpand
  620. #set mtype = "Float" #set srcfile = "xgemat.cpp" #set outfile = "fgemat.cpp"
  621. %doexpand
  622. #set mtype = "Float" #set srcfile = "xgematio.cpp" #set outfile = "fgematio.cpp"
  623. %doexpand
  624. #set mtype = "Float" #set srcfile = "xgematm1.cpp" #set outfile = "fgematm1.cpp"
  625. %doexpand
  626. #set mtype = "Float" #set srcfile = "xgematm2.cpp" #set outfile = "fgematm2.cpp"
  627. %doexpand
  628. #set mtype = "Float" #set srcfile = "xgematop.cpp" #set outfile = "fgematop.cpp"
  629. %doexpand
  630. #set mtype = "Float" #set srcfile = "xgepick.cpp" #set outfile = "fgepick.cpp"
  631. %doexpand
  632. #set mtype = "Float" #set srcfile = "xludecmp.cpp" #set outfile = "fludecmp.cpp"
  633. %doexpand
  634. #set mtype = "Float" #set srcfile = "xpick.cpp" #set outfile = "fpick.cpp"
  635. %doexpand
  636. #set mtype = "Float" #set srcfile = "xrmath.cpp" #set outfile = "frmath.cpp"
  637. %doexpand
  638. #set mtype = "Float" #set srcfile = "xvec.cpp" #set outfile = "fvec.cpp"
  639. %doexpand
  640. #set mtype = "Float" #set srcfile = "xvecio.cpp" #set outfile = "fvecio.cpp"
  641. %doexpand
  642. #set mtype = "Float" #set srcfile = "xvecmath.cpp" #set outfile = "fvecmath.cpp"
  643. %doexpand
  644. #set mtype = "Float" #set srcfile = "xvecop.cpp" #set outfile = "fvecop.cpp"
  645. %doexpand
  646. #set mtype = "Int" #set srcfile = "xgemat.cpp" #set outfile = "igemat.cpp"
  647. %doexpand
  648. #set mtype = "Int" #set srcfile = "xgematio.cpp" #set outfile = "igematio.cpp"
  649. %doexpand
  650. #set mtype = "Int" #set srcfile = "xgematm1.cpp" #set outfile = "igematm1.cpp"
  651. %doexpand
  652. #set mtype = "Int" #set srcfile = "xgematop.cpp" #set outfile = "igematop.cpp"
  653. %doexpand
  654. #set mtype = "Int" #set srcfile = "xgepick.cpp" #set outfile = "igepick.cpp"
  655. %doexpand
  656. #set mtype = "Int" #set srcfile = "xpick.cpp" #set outfile = "ipick.cpp"
  657. %doexpand
  658. #set mtype = "Int" #set srcfile = "xvec.cpp" #set outfile = "ivec.cpp"
  659. %doexpand
  660. #set mtype = "Int" #set srcfile = "xvecio.cpp" #set outfile = "ivecio.cpp"
  661. %doexpand
  662. #set mtype = "Int" #set srcfile = "xvecmath.cpp" #set outfile = "ivecmath.cpp"
  663. %doexpand
  664. #set mtype = "Int" #set srcfile = "xvecop.cpp" #set outfile = "ivecop.cpp"
  665. %doexpand
  666. #set mtype = "SChar" #set srcfile = "xgemat.cpp" #set outfile = "sgemat.cpp"
  667. %doexpand
  668. #set mtype = "SChar" #set srcfile = "xgematio.cpp" #set outfile = "sgematio.cpp"
  669. %doexpand
  670. #set mtype = "SChar" #set srcfile = "xgematm1.cpp" #set outfile = "sgematm1.cpp"
  671. %doexpand
  672. #set mtype = "SChar" #set srcfile = "xgematop.cpp" #set outfile = "sgematop.cpp"
  673. %doexpand
  674. #set mtype = "SChar" #set srcfile = "xgepick.cpp" #set outfile = "sgepick.cpp"
  675. %doexpand
  676. #set mtype = "SChar" #set srcfile = "xpick.cpp" #set outfile = "spick.cpp"
  677. %doexpand
  678. #set mtype = "SChar" #set srcfile = "xvec.cpp" #set outfile = "svec.cpp"
  679. %doexpand
  680. #set mtype = "SChar" #set srcfile = "xvecio.cpp" #set outfile = "svecio.cpp"
  681. %doexpand
  682. #set mtype = "SChar" #set srcfile = "xvecmath.cpp" #set outfile = "svecmath.cpp"
  683. %doexpand
  684. #set mtype = "SChar" #set srcfile = "xvecop.cpp" #set outfile = "svecop.cpp"
  685. %doexpand
  686. #set mtype = "UChar" #set srcfile = "xgemat.cpp" #set outfile = "ugemat.cpp"
  687. %doexpand
  688. #set mtype = "UChar" #set srcfile = "xgematio.cpp" #set outfile = "ugematio.cpp"
  689. %doexpand
  690. #set mtype = "UChar" #set srcfile = "xgematm1.cpp" #set outfile = "ugematm1.cpp"
  691. %doexpand
  692. #set mtype = "UChar" #set srcfile = "xgematop.cpp" #set outfile = "ugematop.cpp"
  693. %doexpand
  694. #set mtype = "UChar" #set srcfile = "xgepick.cpp" #set outfile = "ugepick.cpp"
  695. %doexpand
  696. #set mtype = "UChar" #set srcfile = "xpick.cpp" #set outfile = "upick.cpp"
  697. %doexpand
  698. #set mtype = "UChar" #set srcfile = "xvec.cpp" #set outfile = "uvec.cpp"
  699. %doexpand
  700. #set mtype = "UChar" #set srcfile = "xvecio.cpp" #set outfile = "uvecio.cpp"
  701. %doexpand
  702. #set mtype = "UChar" #set srcfile = "xvecmath.cpp" #set outfile = "uvecmath.cpp"
  703. %doexpand
  704. #set mtype = "UChar" #set srcfile = "xvecop.cpp" #set outfile = "uvecop.cpp"
  705. %doexpand
  706. #endif
  707. #compile ccmath.cpp
  708. #compile cfft.cpp
  709. #compile cfft2d.cpp
  710. #compile cgemat.cpp
  711. #compile cgematio.cpp
  712. #compile cgematm1.cpp
  713. #compile cgematm2.cpp
  714. #compile cgematop.cpp
  715. #compile cgematx.cpp
  716. #compile cgepick.cpp
  717. #compile cludecmp.cpp
  718. #compile cpick.cpp
  719. #compile cvec.cpp
  720. #compile cvecio.cpp
  721. #compile cvecmath.cpp
  722. #compile cvecop.cpp
  723. #compile dcosfft.cpp
  724. #compile dfft.cpp
  725. #compile dgemat.cpp
  726. #compile dgematio.cpp
  727. #compile dgematm1.cpp
  728. #compile dgematm2.cpp
  729. #compile dgematop.cpp
  730. #compile dgepick.cpp
  731. #compile dludecmp.cpp
  732. #compile dpick.cpp
  733. #compile drmath.cpp
  734. #compile dvec.cpp
  735. #compile dvecio.cpp
  736. #compile dvecmath.cpp
  737. #compile dvecop.cpp
  738. #compile fgemat.cpp
  739. #compile fgematio.cpp
  740. #compile fgematm1.cpp
  741. #compile fgematm2.cpp
  742. #compile fgematop.cpp
  743. #compile fgematx.cpp
  744. #compile fgepick.cpp
  745. #compile fludecmp.cpp
  746. #compile fpick.cpp
  747. #compile frmath.cpp
  748. #compile fvec.cpp
  749. #compile fvecio.cpp
  750. #compile fvecmath.cpp
  751. #compile fvecop.cpp
  752. #compile fvecx.cpp
  753. #compile igemat.cpp
  754. #compile igematio.cpp
  755. #compile igematm1.cpp
  756. #compile igematop.cpp
  757. #compile igematx.cpp
  758. #compile igepick.cpp
  759. #compile ipick.cpp
  760. #compile ivec.cpp
  761. #compile ivecio.cpp
  762. #compile ivecmath.cpp
  763. #compile ivecop.cpp
  764. #compile ivecx.cpp
  765. #compile sgemat.cpp
  766. #compile sgematio.cpp
  767. #compile sgematm1.cpp
  768. #compile sgematop.cpp
  769. #compile sgematx.cpp
  770. #compile sgepick.cpp
  771. #compile spick.cpp
  772. #compile svec.cpp
  773. #compile svecio.cpp
  774. #compile svecmath.cpp
  775. #compile svecop.cpp
  776. #compile svecx.cpp
  777. #compile ugemat.cpp
  778. #compile ugematio.cpp
  779. #compile ugematm1.cpp
  780. #compile ugematop.cpp
  781. #compile ugematx.cpp
  782. #compile ugepick.cpp
  783. #compile upick.cpp
  784. #compile uvec.cpp
  785. #compile uvecio.cpp
  786. #compile uvecmath.cpp
  787. #compile uvecop.cpp
  788. #compile uvecx.cpp
  789. #compile dstats.cpp
  790. #compile histo.cpp
  791. #compile lsqfit.cpp
  792. #compile randbino.cpp
  793. #compile randexp.cpp
  794. #compile randfunc.cpp
  795. #compile randgama.cpp
  796. #compile randnorm.cpp
  797. #compile randpois.cpp
  798. #compile randunif.cpp
  799. #compile mathutil.cpp
  800. #compile rwblock.cpp
  801. #compile rwfile.cpp
  802. #compile utility.cpp
  803. #if %model = dynalink #then
  804. #pragma link( %O%%M%%C%clib.lib, %O%%M%%C%slib.lib)
  805. #set lname = %O%%M%%C%rmath
  806. #else
  807. #if %system = win #then
  808. #set lname = W%M%%C%rmath
  809. #else
  810. #set lname = C%M%%C%rmath
  811. #endif
  812. #endif
  813. #set lext = rmath
  814. %dolink
  815. #endif -- makermath
  816. #endif -- tscpp
  817. #endif -- not an extended model
  818. #pragma restore
  819.