[1] | 1 | |
---|
| 2 | @echo off |
---|
| 3 | |
---|
| 4 | rem |
---|
| 5 | rem Test de -no_auto_import |
---|
| 6 | rem |
---|
| 7 | |
---|
| 8 | rem |
---|
| 9 | rem 4 packages A, B, C, D |
---|
| 10 | rem |
---|
| 11 | |
---|
| 12 | set scroot=%CMTROOT%\demo\scenario1 |
---|
| 13 | |
---|
| 14 | set CMTPATH=%scroot% |
---|
| 15 | |
---|
| 16 | rmdir /Q /S %scroot% |
---|
| 17 | mkdir %scroot% |
---|
| 18 | cmt create A v1 %scroot% |
---|
| 19 | cmt create B v1 %scroot% |
---|
| 20 | cmt create C v1 %scroot% |
---|
| 21 | cmt create D v1 %scroot% |
---|
| 22 | |
---|
| 23 | cd %scroot% |
---|
| 24 | |
---|
| 25 | echo #ifndef __$(package)_h__ > template.h |
---|
| 26 | echo #define __$(package)_h__ >> template.h |
---|
| 27 | echo class $(package) >> template.h |
---|
| 28 | echo { >> template.h |
---|
| 29 | echo public: >> template.h |
---|
| 30 | echo $(package) (); >> template.h |
---|
| 31 | echo void f (); >> template.h |
---|
| 32 | echo }; >> template.h |
---|
| 33 | echo #endif >> template.h |
---|
| 34 | |
---|
| 35 | echo #include "$(package).h" > template.cxx |
---|
| 36 | echo #include "stdio.h" >> template.cxx |
---|
| 37 | echo $(package)::$(package) () >> template.cxx |
---|
| 38 | echo { >> template.cxx |
---|
| 39 | echo } >> template.cxx |
---|
| 40 | echo void $(package)::f () >> template.cxx |
---|
| 41 | echo { >> template.cxx |
---|
| 42 | echo printf ("$(package)::f\n"); >> template.cxx |
---|
| 43 | echo } >> template.cxx |
---|
| 44 | |
---|
| 45 | echo package $(package) >requirements |
---|
| 46 | echo macro $(package)_linkopts "%scroot%\$(package)\v1\%CMTCONFIG%\$(package).lib" >>requirements |
---|
| 47 | echo library $(package) $(package).cxx >>requirements |
---|
| 48 | echo path_append PATH "%scroot%\$(package)\v1\%CMTCONFIG%" >>requirements |
---|
| 49 | |
---|
| 50 | cd %scroot%\B\v1\cmt |
---|
| 51 | cmt filter %scroot%\template.h ..\src\B.h |
---|
| 52 | cmt filter %scroot%\template.cxx ..\src\B.cxx |
---|
| 53 | cmt filter %scroot%\requirements requirements |
---|
| 54 | nmake /f nmake |
---|
| 55 | |
---|
| 56 | cd %scroot%\C\v1\cmt |
---|
| 57 | cmt filter %scroot%\template.h ..\src\C.h |
---|
| 58 | cmt filter %scroot%\template.cxx ..\src\C.cxx |
---|
| 59 | cmt filter %scroot%\requirements requirements |
---|
| 60 | nmake /f nmake |
---|
| 61 | |
---|
| 62 | cd %scroot%\D\v1\cmt |
---|
| 63 | cmt filter %scroot%\template.h ..\src\D.h |
---|
| 64 | cmt filter %scroot%\template.cxx ..\src\D.cxx |
---|
| 65 | cmt filter %scroot%\requirements requirements |
---|
| 66 | nmake /f nmake |
---|
| 67 | |
---|
| 68 | cd %scroot%\A\v1\cmt |
---|
| 69 | |
---|
| 70 | echo package A > requirements |
---|
| 71 | echo use B v1 >> requirements |
---|
| 72 | echo use C v1 -no_auto_imports >> requirements |
---|
| 73 | echo use D v1 -no_auto_imports >> requirements |
---|
| 74 | echo application b -check b.cxx >> requirements |
---|
| 75 | echo application c -check -import=C c.cxx >> requirements |
---|
| 76 | echo application d -check -import=C -import=D d.cxx >> requirements |
---|
| 77 | |
---|
| 78 | echo #include "B.h" > ..\src\b.cxx |
---|
| 79 | echo int main () >> ..\src\b.cxx |
---|
| 80 | echo { >> ..\src\b.cxx |
---|
| 81 | echo B b; >> ..\src\b.cxx |
---|
| 82 | echo b.f (); >> ..\src\b.cxx |
---|
| 83 | echo return (0); >> ..\src\b.cxx |
---|
| 84 | echo } >> ..\src\b.cxx |
---|
| 85 | |
---|
| 86 | echo #include "B.h" > ..\src\c.cxx |
---|
| 87 | echo #include "C.h" >> ..\src\c.cxx |
---|
| 88 | echo int main () >> ..\src\c.cxx |
---|
| 89 | echo { >> ..\src\c.cxx |
---|
| 90 | echo B b; >> ..\src\c.cxx |
---|
| 91 | echo b.f (); >> ..\src\c.cxx |
---|
| 92 | echo C c; >> ..\src\c.cxx |
---|
| 93 | echo c.f (); >> ..\src\c.cxx |
---|
| 94 | echo return (0); >> ..\src\c.cxx |
---|
| 95 | echo } >> ..\src\c.cxx |
---|
| 96 | |
---|
| 97 | echo #include "B.h" > ..\src\d.cxx |
---|
| 98 | echo #include "C.h" >> ..\src\d.cxx |
---|
| 99 | echo #include "D.h" >> ..\src\d.cxx |
---|
| 100 | echo int main () >> ..\src\d.cxx |
---|
| 101 | echo { >> ..\src\d.cxx |
---|
| 102 | echo B b; >> ..\src\d.cxx |
---|
| 103 | echo b.f (); >> ..\src\d.cxx |
---|
| 104 | echo C c; >> ..\src\d.cxx |
---|
| 105 | echo c.f (); >> ..\src\d.cxx |
---|
| 106 | echo D d; >> ..\src\d.cxx |
---|
| 107 | echo d.f (); >> ..\src\d.cxx |
---|
| 108 | echo return (0); >> ..\src\d.cxx |
---|
| 109 | echo } >> ..\src\d.cxx |
---|
| 110 | |
---|
| 111 | call setup |
---|
| 112 | nmake /f nmake |
---|
| 113 | nmake /f nmake check |
---|
| 114 | |
---|
| 115 | cd %CMTROOT%\contrib |
---|