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 |
---|