home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 February / PCWorld_2000-02_cd.bin / Software / TemaCD / tcvpa / data1.cab / MyFileGroup / SAMPLES / CPP / Example1.vpp < prev    next >
Unknown  |  1999-06-03  |  9.4 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 56 50 37 00 00 00 00 00 | 48 45 4c 4c 4f 5f 57 4f |VP7.....|HELLO_WO|
|00000010| 5c 00 56 50 52 6f 6f 74 | 54 72 65 65 49 74 65 6d |\.VPRoot|TreeItem|
|00000020| 00 56 50 41 6c 6c 50 72 | 6a 73 54 72 65 65 49 74 |.VPAllPr|jsTreeIt|
|00000030| 65 6d 00 56 50 58 5f 4a | 61 76 61 50 72 6a 00 56 |em.VPX_J|avaPrj.V|
|00000040| 50 58 5f 4a 61 76 61 50 | 61 63 6b 61 67 65 00 56 |PX_JavaP|ackage.V|
|00000050| 50 58 5f 4a 61 76 61 54 | 78 74 46 69 6c 65 00 56 |PX_JavaT|xtFile.V|
|00000060| 50 58 5f 4a 61 76 61 43 | 6c 73 46 69 6c 65 00 56 |PX_JavaC|lsFile.V|
|00000070| 50 58 5f 4a 61 76 61 43 | 6c 61 73 73 00 56 50 58 |PX_JavaC|lass.VPX|
|00000080| 5f 4a 61 76 61 49 6e 74 | 65 72 66 00 56 50 58 5f |_JavaInt|erf.VPX_|
|00000090| 4a 61 76 61 46 75 6e 63 | 00 56 50 58 5f 4a 61 76 |JavaFunc|.VPX_Jav|
|000000a0| 61 56 61 72 00 56 50 58 | 5f 4a 61 76 61 47 72 70 |aVar.VPX|_JavaGrp|
|000000b0| 00 56 50 58 5f 4a 61 76 | 61 54 65 78 74 00 56 50 |.VPX_Jav|aText.VP|
|000000c0| 58 5f 4a 61 76 61 53 74 | 61 74 69 63 00 56 50 58 |X_JavaSt|atic.VPX|
|000000d0| 5f 4a 61 76 61 49 43 6f | 64 65 00 56 50 58 5f 4a |_JavaICo|de.VPX_J|
|000000e0| 61 76 61 44 73 67 6e 42 | 67 6e 45 6e 64 00 56 50 |avaDsgnB|gnEnd.VP|
|000000f0| 58 5f 4a 61 76 61 44 73 | 67 6e 46 75 6e 63 00 56 |X_JavaDs|gnFunc.V|
|00000100| 50 58 5f 4a 61 76 61 43 | 6f 6d 70 6f 6e 65 6e 74 |PX_JavaC|omponent|
|00000110| 00 56 50 58 5f 4a 61 76 | 61 44 65 73 69 67 6e 65 |.VPX_Jav|aDesigne|
|00000120| 72 00 40 56 50 58 5f 4a | 5f 50 61 6e 65 6c 00 40 |r.@VPX_J|_Panel.@|
|00000130| 56 50 58 5f 4a 5f 4c 61 | 62 65 6c 00 40 56 50 58 |VPX_J_La|bel.@VPX|
|00000140| 5f 4a 5f 54 65 78 74 46 | 69 65 6c 64 00 40 56 50 |_J_TextF|ield.@VP|
|00000150| 58 5f 4a 5f 54 65 78 74 | 41 72 65 61 00 40 56 50 |X_J_Text|Area.@VP|
|00000160| 58 5f 4a 5f 42 75 74 74 | 6f 6e 00 40 56 50 58 5f |X_J_Butt|on.@VPX_|
|00000170| 4a 5f 4c 69 73 74 00 40 | 56 50 58 5f 4a 5f 43 6f |J_List.@|VPX_J_Co|
|00000180| 6d 62 6f 00 40 56 50 58 | 5f 4a 5f 43 68 65 63 6b |mbo.@VPX|_J_Check|
|00000190| 00 40 56 50 58 5f 4a 5f | 52 61 64 69 6f 00 40 4a |.@VPX_J_|Radio.@J|
|000001a0| 61 76 61 47 55 49 44 65 | 73 69 67 6e 65 72 00 56 |avaGUIDe|signer.V|
|000001b0| 50 58 5f 43 70 70 50 72 | 6a 00 56 50 58 5f 43 70 |PX_CppPr|j.VPX_Cp|
|000001c0| 70 50 72 6a 53 79 73 00 | 56 50 58 5f 43 70 70 46 |pPrjSys.|VPX_CppF|
|000001d0| 69 6c 65 73 00 56 50 58 | 5f 43 70 70 57 6f 72 6b |iles.VPX|_CppWork|
|000001e0| 00 56 50 58 5f 43 70 70 | 46 69 6c 47 72 70 00 56 |.VPX_Cpp|FilGrp.V|
|000001f0| 50 58 5f 43 70 70 46 69 | 6c 65 00 56 50 58 5f 43 |PX_CppFi|le.VPX_C|
|00000200| 70 70 47 72 70 00 56 50 | 58 5f 43 70 70 46 75 6e |ppGrp.VP|X_CppFun|
|00000210| 63 00 56 50 58 5f 43 70 | 70 43 6c 61 73 73 00 56 |c.VPX_Cp|pClass.V|
|00000220| 50 58 5f 43 70 70 54 65 | 78 74 48 00 56 50 58 5f |PX_CppTe|xtH.VPX_|
|00000230| 43 70 70 54 65 78 74 43 | 00 56 50 58 5f 43 70 70 |CppTextC|.VPX_Cpp|
|00000240| 56 61 72 00 56 50 58 5f | 43 70 70 46 69 6c 65 4c |Var.VPX_|CppFileL|
|00000250| 69 6e 6b 00 56 50 58 5f | 43 70 70 44 73 67 6e 00 |ink.VPX_|CppDsgn.|
|00000260| 56 50 58 5f 43 70 70 43 | 74 72 6c 00 56 50 58 5f |VPX_CppC|trl.VPX_|
|00000270| 43 70 70 44 73 67 6e 42 | 67 6e 45 6e 64 00 56 50 |CppDsgnB|gnEnd.VP|
|00000280| 58 5f 43 70 70 42 69 74 | 6d 61 70 00 56 50 58 5f |X_CppBit|map.VPX_|
|00000290| 43 70 70 49 63 6f 6e 00 | 56 50 58 5f 43 70 70 43 |CppIcon.|VPX_CppC|
|000002a0| 75 72 73 6f 72 00 56 50 | 58 5f 43 70 70 52 61 77 |ursor.VP|X_CppRaw|
|000002b0| 42 69 6e 00 56 50 58 5f | 43 70 70 45 6e 75 6d 49 |Bin.VPX_|CppEnumI|
|000002c0| 74 65 6d 00 56 50 58 5f | 43 70 70 45 6e 75 6d 00 |tem.VPX_|CppEnum.|
|000002d0| 56 50 58 5f 43 70 70 47 | 72 70 34 45 6e 75 6d 00 |VPX_CppG|rp4Enum.|
|000002e0| 40 56 50 58 5f 43 70 70 | 47 72 70 00 40 56 50 58 |@VPX_Cpp|Grp.@VPX|
|000002f0| 5f 43 70 70 43 74 72 6c | 5f 4c 61 62 65 6c 00 40 |_CppCtrl|_Label.@|
|00000300| 56 50 58 5f 43 70 70 43 | 74 72 6c 5f 45 64 69 74 |VPX_CppC|trl_Edit|
|00000310| 00 40 56 50 58 5f 43 70 | 70 43 74 72 6c 5f 50 42 |.@VPX_Cp|pCtrl_PB|
|00000320| 74 6e 00 40 56 50 58 5f | 43 70 70 43 74 72 6c 5f |tn.@VPX_|CppCtrl_|
|00000330| 45 43 6f 6d 62 6f 00 40 | 56 50 58 5f 43 70 70 43 |ECombo.@|VPX_CppC|
|00000340| 74 72 6c 5f 4c 43 6f 6d | 62 6f 00 40 56 50 58 5f |trl_LCom|bo.@VPX_|
|00000350| 43 70 70 43 74 72 6c 5f | 4c 69 73 74 00 40 56 50 |CppCtrl_|List.@VP|
|00000360| 58 5f 43 70 70 43 74 72 | 6c 5f 43 68 65 63 6b 00 |X_CppCtr|l_Check.|
|00000370| 40 56 50 58 5f 43 70 70 | 43 74 72 6c 5f 52 61 64 |@VPX_Cpp|Ctrl_Rad|
|00000380| 69 6f 00 40 56 50 58 5f | 43 70 70 43 74 72 6c 5f |io.@VPX_|CppCtrl_|
|00000390| 47 72 6f 75 70 00 40 56 | 50 58 5f 43 70 70 43 74 |Group.@V|PX_CppCt|
|000003a0| 72 6c 5f 54 61 62 00 40 | 56 50 58 5f 43 70 70 43 |rl_Tab.@|VPX_CppC|
|000003b0| 74 72 6c 5f 41 72 65 61 | 00 40 56 50 58 5f 43 70 |trl_Area|.@VPX_Cp|
|000003c0| 70 43 74 72 6c 5f 4d 53 | 54 72 65 65 00 40 56 50 |pCtrl_MS|Tree.@VP|
|000003d0| 58 5f 43 70 70 43 74 72 | 6c 5f 4d 53 4c 69 73 74 |X_CppCtr|l_MSList|
|000003e0| 00 40 56 50 58 5f 43 70 | 70 4d 61 6b 65 46 69 6c |.@VPX_Cp|pMakeFil|
|000003f0| 65 5f 31 00 40 56 50 58 | 5f 43 70 70 4d 61 6b 65 |e_1.@VPX|_CppMake|
|00000400| 46 69 6c 65 5f 32 00 56 | 50 58 5f 54 63 4d 65 6e |File_2.V|PX_TcMen|
|00000410| 75 00 56 50 58 5f 54 63 | 4d 65 6e 75 45 76 48 00 |u.VPX_Tc|MenuEvH.|
|00000420| 56 50 58 5f 54 63 4d 65 | 6e 75 53 65 70 00 40 43 |VPX_TcMe|nuSep.@C|
|00000430| 2b 2b 54 63 45 78 74 43 | 6c 73 46 6f 72 6d 00 40 |++TcExtC|lsForm.@|
|00000440| 43 2b 2b 54 63 41 70 70 | 00 40 56 50 58 5f 50 73 |C++TcApp|.@VPX_Ps|
|00000450| 50 72 6a 00 56 50 58 5f | 50 73 50 72 6a 00 56 50 |Prj.VPX_|PsPrj.VP|
|00000460| 58 5f 50 73 50 72 6a 53 | 79 73 00 56 50 58 5f 50 |X_PsPrjS|ys.VPX_P|
|00000470| 73 43 6c 61 73 73 00 56 | 50 58 5f 50 73 4d 65 74 |sClass.V|PX_PsMet|
|00000480| 68 6f 64 73 00 56 50 58 | 5f 50 73 41 74 74 72 69 |hods.VPX|_PsAttri|
|00000490| 62 73 00 56 50 58 5f 50 | 73 43 6c 74 6e 73 00 56 |bs.VPX_P|sCltns.V|
|000004a0| 50 58 5f 50 73 49 6e 64 | 69 63 65 73 00 56 50 58 |PX_PsInd|ices.VPX|
|000004b0| 5f 50 73 54 72 61 6e 73 | 00 56 50 58 5f 50 73 41 |_PsTrans|.VPX_PsA|
|000004c0| 74 74 72 69 62 00 56 50 | 58 5f 50 73 43 6c 74 6e |ttrib.VP|X_PsCltn|
|000004d0| 00 56 50 58 5f 50 73 49 | 6e 64 65 78 00 56 50 58 |.VPX_PsI|ndex.VPX|
|000004e0| 5f 50 73 47 65 74 4d 00 | 56 50 58 5f 50 73 53 65 |_PsGetM.|VPX_PsSe|
|000004f0| 74 4d 00 56 50 58 5f 50 | 73 43 6f 6e 73 74 72 75 |tM.VPX_P|sConstru|
|00000500| 63 74 6f 72 00 56 50 58 | 5f 50 73 49 6e 69 74 4d |ctor.VPX|_PsInitM|
|00000510| 65 74 68 6f 64 00 56 50 | 58 5f 50 73 46 69 6c 65 |ethod.VP|X_PsFile|
|00000520| 73 00 56 50 58 5f 50 73 | 46 69 6c 65 47 72 70 00 |s.VPX_Ps|FileGrp.|
|00000530| 56 50 58 5f 50 73 46 43 | 6f 6d 6d 6f 6e 48 00 56 |VPX_PsFC|ommonH.V|
|00000540| 50 58 5f 50 73 46 43 6f | 6d 6d 6f 6e 43 00 1c 00 |PX_PsFCo|mmonC...|
|00000550| 4d 59 53 65 74 00 04 00 | 00 00 05 00 00 00 47 65 |MYSet...|......Ge|
|00000560| 6e 00 20 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |n. .....|........|
|00000570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000580| 00 00 00 00 00 00 5f 61 | 74 72 00 01 00 00 00 00 |......_a|tr......|
|00000590| 2e 2e 2e 2e 00 00 00 00 | 00 01 00 6e 61 6d 65 00 |........|...name.|
|000005a0| 16 00 00 00 44 65 6d 6f | 31 3a 20 48 65 6c 6c 6f |....Demo|1: Hello|
|000005b0| 20 43 2b 2b 20 57 6f 72 | 6c 64 01 00 6d 61 6b 65 | C++ Wor|ld..make|
|000005c0| 5f 65 78 65 00 0b 00 00 | 00 6d 6b 5f 45 47 43 53 |_exe....|.mk_EGCS|
|000005d0| 2e 62 61 74 01 00 64 69 | 72 00 07 00 00 00 53 61 |.bat..di|r.....Sa|
|000005e0| 6d 70 6c 65 31 01 00 61 | 70 70 5f 65 78 65 00 0c |mple1..a|pp_exe..|
|000005f0| 00 00 00 48 65 6c 6c 6f | 43 70 70 2e 65 78 65 00 |...Hello|Cpp.exe.|
|00000600| 5f 40 5f 00 00 00 00 00 | 00 00 00 00 02 00 1d 00 |_@_.....|........|
|00000610| 5f 61 74 72 00 01 00 00 | 00 00 2e 2e 2e 2e 00 00 |_atr....|........|
|00000620| 00 00 00 00 5f 40 5f 00 | 00 00 00 00 01 00 00 00 |...._@_.|........|
|00000630| 01 00 1e 00 5f 61 74 72 | 00 01 00 00 00 00 2e 2e |...._atr|........|
|00000640| 2e 2e 00 00 00 00 00 00 | 5f 40 5f 00 00 00 00 00 |........|_@_.....|
|00000650| 02 00 00 00 05 00 21 00 | 4d 59 53 65 74 00 10 00 |......!.|MYSet...|
|00000660| 00 00 00 00 01 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000670| 00 00 47 65 6e 00 20 00 | 00 00 00 00 00 00 02 00 |..Gen. .|........|
|00000680| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000690| 00 00 00 00 00 00 00 00 | 00 00 54 78 74 42 6f 64 |........|..TxtBod|
|000006a0| 79 00 39 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |y.9.....|........|
|000006b0| 00 00 00 00 00 00 00 00 | 00 00 20 00 00 00 6d 61 |........|.. ...ma|
|000006c0| 6b 65 2e 65 78 65 20 2d | 66 20 4d 61 6b 65 46 69 |ke.exe -|f MakeFi|
|000006d0| 6c 65 2e 45 47 43 53 0a | 70 61 75 73 65 0a 00 45 |le.EGCS.|pause..E|
|000006e0| 64 57 53 7a 00 10 00 00 | 00 d5 02 d5 02 f0 02 64 |dWSz....|.......d|
|000006f0| 00 00 00 00 00 00 00 00 | 00 5f 61 74 72 00 01 00 |........|._atr...|
|00000700| 00 00 00 2e 2e 2e 2e 00 | 00 00 00 00 01 00 6e 61 |........|......na|
|00000710| 6d 65 00 0b 00 00 00 6d | 6b 5f 45 47 43 53 2e 62 |me.....m|k_EGCS.b|
|00000720| 61 74 00 5f 40 5f 00 00 | 00 00 00 03 00 00 00 00 |at._@_..|........|
|00000730| 00 00 21 00 4d 59 53 65 | 74 00 10 00 00 00 00 00 |..!.MYSe|t.......|
|00000740| 02 00 00 00 00 00 00 00 | 00 00 00 00 00 00 47 65 |........|......Ge|
|00000750| 6e 00 20 00 00 00 00 00 | 00 00 02 00 00 00 00 00 |n. .....|........|
|00000760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000770| 00 00 00 00 00 00 54 78 | 74 42 6f 64 79 00 3a 00 |......Tx|tBody.:.|
|00000780| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000790| 00 00 00 00 00 00 21 00 | 00 00 6e 4d 61 6b 65 2e |......!.|..nMake.|
|000007a0| 65 78 65 20 2d 66 20 4d | 61 6b 65 46 69 6c 65 2e |exe -f M|akeFile.|
|000007b0| 4d 53 56 43 0a 70 61 75 | 73 65 0a 00 45 64 57 53 |MSVC.pau|se..EdWS|
|000007c0| 7a 00 10 00 00 00 d5 02 | d5 02 f0 02 64 00 00 00 |z.......|....d...|
|000007d0| 00 00 00 00 00 00 5f 61 | 74 72 00 01 00 00 00 00 |......_a|tr......|
|000007e0| 2e 2e 2e 2e 00 00 00 00 | 00 01 00 6e 61 6d 65 00 |........|...name.|
|000007f0| 0b 00 00 00 6d 6b 5f 4d | 53 56 43 2e 62 61 74 00 |....mk_M|SVC.bat.|
|00000800| 5f 40 5f 00 00 00 00 00 | 04 00 00 00 00 00 00 21 |_@_.....|.......!|
|00000810| 00 4d 59 53 65 74 00 10 | 00 00 00 04 00 03 00 00 |.MYSet..|........|
|00000820| 00 00 00 00 00 00 00 00 | 00 00 00 47 65 6e 00 20 |........|...Gen. |
|00000830| 00 00 00 00 00 00 00 49 | 00 00 00 00 00 00 00 00 |.......I|........|
|00000840| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000850| 00 00 00 54 78 74 42 6f | 64 79 00 8b 0c 00 00 00 |...TxtBo|dy......|
|00000860| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 0d |........|........|
|00000870| 00 00 00 72 0c 00 00 23 | 20 57 68 65 6e 20 79 6f |...r...#| When yo|
|00000880| 75 20 69 6e 76 6f 6b 65 | 20 6d 61 6b 65 20 70 72 |u invoke| make pr|
|00000890| 6f 63 65 73 73 20 56 50 | 41 20 63 68 65 63 6b 73 |ocess VP|A checks|
|000008a0| 20 64 65 70 65 6e 64 65 | 6e 63 65 73 20 61 6e 64 | depende|nces and|
|000008b0| 20 67 65 6e 65 72 61 74 | 65 73 0a 23 20 66 69 6c | generat|es.# fil|
|000008c0| 65 20 22 56 70 78 43 70 | 70 2e 64 65 70 22 2e 20 |e "VpxCp|p.dep". |
|000008d0| 50 72 6f 6a 65 63 74 20 | 44 65 6d 6f 31 20 63 6f |Project |Demo1 co|
|000008e0| 6e 73 69 73 74 73 20 6f | 66 20 74 68 65 20 73 69 |nsists o|f the si|
|000008f0| 6e 67 6c 65 20 66 69 6c | 65 20 22 4d 61 69 6e 2e |ngle fil|e "Main.|
|00000900| 63 22 0a 23 20 77 68 69 | 63 68 20 64 6f 65 73 20 |c".# whi|ch does |
|00000910| 6e 6f 74 20 64 65 70 65 | 6e 64 20 75 70 6f 6e 20 |not depe|nd upon |
|00000920| 61 6e 6f 74 68 65 72 20 | 6f 6e 65 73 2e 20 53 65 |another |ones. Se|
|00000930| 65 20 4d 61 6b 65 46 69 | 6c 65 20 69 6e 20 44 65 |e MakeFi|le in De|
|00000940| 6d 6f 32 20 66 6f 72 0a | 23 20 66 75 72 74 68 65 |mo2 for.|# furthe|
|00000950| 72 20 64 65 73 63 72 69 | 70 74 69 6f 6e 20 68 6f |r descri|ption ho|
|00000960| 77 20 22 56 70 78 43 70 | 70 2e 64 65 70 22 20 6c |w "VpxCp|p.dep" l|
|00000970| 6f 6f 6b 73 20 6c 69 6b | 65 20 69 66 20 79 6f 75 |ooks lik|e if you|
|00000980| 72 20 70 72 6f 6a 65 63 | 74 0a 23 20 63 6f 6e 73 |r projec|t.# cons|
|00000990| 69 73 74 73 20 6f 66 20 | 6d 75 6c 74 69 70 6c 65 |ists of |multiple|
|000009a0| 20 66 69 6c 65 73 2e 0a | 69 6e 63 6c 75 64 65 20 | files..|include |
|000009b0| 56 70 78 43 70 70 2e 64 | 65 70 0a 0a 23 20 44 65 |VpxCpp.d|ep..# De|
|000009c0| 73 69 67 6e 20 6d 61 6b | 65 66 69 6c 65 73 20 66 |sign mak|efiles f|
|000009d0| 6f 72 20 43 2b 2b 20 70 | 72 6f 6a 65 63 74 73 20 |or C++ p|rojects |
|000009e0| 69 6e 20 73 75 63 68 20 | 61 20 77 61 79 20 74 68 |in such |a way th|
|000009f0| 61 74 20 61 6e 20 6f 75 | 74 70 75 74 20 73 74 72 |at an ou|tput str|
|00000a00| 65 61 6d 0a 23 20 6f 66 | 20 74 68 65 20 63 6f 6d |eam.# of| the com|
|00000a10| 70 69 6c 65 72 2c 20 72 | 65 73 6f 75 72 63 65 20 |piler, r|esource |
|00000a20| 63 6f 6d 70 69 6c 65 72 | 2c 20 6c 69 6e 6b 65 72 |compiler|, linker|
|00000a30| 20 6f 72 20 61 6e 79 20 | 6f 74 68 65 72 20 63 6f | or any |other co|
|00000a40| 6d 6d 61 6e 64 20 6c 69 | 6e 65 0a 23 20 75 74 69 |mmand li|ne.# uti|
|00000a50| 6c 69 74 79 20 68 61 73 | 20 74 6f 20 62 65 20 66 |lity has| to be f|
|00000a60| 6f 72 77 61 72 64 65 64 | 20 74 6f 20 74 68 65 20 |orwarded| to the |
|00000a70| 70 72 65 64 65 66 69 6e | 65 64 20 66 69 6c 65 20 |predefin|ed file |
|00000a80| 22 5f 76 70 2e 6d 73 67 | 22 2e 20 57 68 65 6e 20 |"_vp.msg|". When |
|00000a90| 6d 61 6b 65 0a 23 20 70 | 72 6f 63 65 73 73 20 74 |make.# p|rocess t|
|00000aa0| 65 72 6d 69 6e 61 74 65 | 73 20 56 50 41 20 72 65 |erminate|s VPA re|
|00000ab0| 61 64 73 20 74 68 65 20 | 6f 75 74 70 75 74 2e 20 |ads the |output. |
|00000ac0| 49 66 20 6d 61 69 6e 20 | 74 61 72 67 65 74 20 69 |If main |target i|
|00000ad0| 73 20 6d 61 64 65 20 70 | 72 6f 70 65 72 6c 79 0a |s made p|roperly.|
|00000ae0| 23 20 79 6f 75 72 20 6f | 77 6e 20 61 70 70 72 6f |# your o|wn appro|
|00000af0| 70 72 69 61 74 65 20 6d | 65 73 73 61 67 65 20 65 |priate m|essage e|
|00000b00| 63 68 6f 73 20 28 66 2e | 65 2e 20 22 65 63 68 6f |chos (f.|e. "echo|
|00000b10| 20 3d 3d 3d 20 4d 79 20 | 70 72 6f 6a 65 63 74 20 | === My |project |
|00000b20| 68 61 73 20 62 65 65 6e | 0a 23 20 62 75 69 6c 74 |has been|.# built|
|00000b30| 20 6f 6b 21 20 3d 3d 3d | 20 3e 3e 5f 76 70 2e 6d | ok! ===| >>_vp.m|
|00000b40| 73 67 22 29 2e 20 4f 6e | 20 66 61 69 6c 75 72 65 |sg"). On| failure|
|00000b50| 20 65 72 72 6f 72 73 20 | 61 6e 64 20 77 61 72 6e | errors |and warn|
|00000b60| 69 6e 67 73 20 61 70 70 | 65 61 72 2e 20 54 68 69 |ings app|ear. Thi|
|00000b70| 73 0a 23 20 6b 69 6e 64 | 20 6f 66 20 6f 75 74 70 |s.# kind| of outp|
|00000b80| 75 74 20 63 6f 6d 6d 6f | 6e 6c 79 20 67 6f 65 73 |ut commo|nly goes|
|00000b90| 20 77 69 74 68 20 74 68 | 65 20 69 6e 66 6f 72 6d | with th|e inform|
|00000ba0| 61 74 69 6f 6e 20 61 62 | 6f 75 74 20 61 20 66 69 |ation ab|out a fi|
|00000bb0| 6c 65 20 6e 61 6d 65 20 | 61 6e 64 0a 23 20 6c 69 |le name |and.# li|
|00000bc0| 6e 65 20 6e 75 6d 62 65 | 72 73 2e 20 52 65 76 69 |ne numbe|rs. Revi|
|00000bd0| 65 77 20 22 4f 70 74 69 | 6f 6e 73 20 2f 20 3c 43 |ew "Opti|ons / <C|
|00000be0| 2b 2b 3e 20 52 65 6c 61 | 74 65 64 20 2f 20 4f 75 |++> Rela|ted / Ou|
|00000bf0| 74 70 75 74 20 6f 66 20 | 43 6f 6d 70 69 6c 65 72 |tput of |Compiler|
|00000c00| 20 2f 0a 23 20 50 61 72 | 73 69 6e 67 20 54 65 6d | /.# Par|sing Tem|
|00000c10| 70 6c 61 74 65 22 2e 20 | 54 6f 6b 65 6e 20 22 5c |plate". |Token "\|
|00000c20| 46 22 20 72 65 70 72 65 | 73 65 6e 74 73 20 66 69 |F" repre|sents fi|
|00000c30| 6c 65 20 6e 61 6d 65 2e | 20 54 6f 6b 65 6e 20 22 |le name.| Token "|
|00000c40| 5c 4c 22 20 73 74 61 6e | 64 73 0a 23 20 66 6f 72 |\L" stan|ds.# for|
|00000c50| 20 6c 69 6e 65 20 6e 75 | 6d 62 65 72 2e 20 54 6f | line nu|mber. To|
|00000c60| 6b 65 6e 20 22 5c 23 22 | 20 64 65 73 63 72 69 62 |ken "\#"| describ|
|00000c70| 65 73 20 61 6e 79 20 6f | 74 68 65 72 20 6e 75 6d |es any o|ther num|
|00000c80| 65 72 69 63 20 76 6f 69 | 64 20 69 6e 66 6f 20 28 |eric voi|d info (|
|00000c90| 66 2e 65 2e 0a 23 20 6e | 75 6d 62 65 72 20 6f 66 |f.e..# n|umber of|
|00000ca0| 20 63 6f 6c 75 6d 6e 20 | 69 6e 20 73 6f 75 72 63 | column |in sourc|
|00000cb0| 65 20 66 69 6c 65 29 2e | 0a 43 43 20 20 20 3d 20 |e file).|.CC = |
|00000cc0| 74 63 45 72 32 4f 75 74 | 2e 65 78 65 20 67 63 63 |tcEr2Out|.exe gcc|
|00000cd0| 2e 65 78 65 3e 3e 5f 76 | 70 2e 6d 73 67 0a 4c 49 |.exe>>_v|p.msg.LI|
|00000ce0| 4e 4b 20 3d 20 74 63 45 | 72 32 4f 75 74 2e 65 78 |NK = tcE|r2Out.ex|
|00000cf0| 65 20 67 63 63 2e 65 78 | 65 3e 3e 5f 76 70 2e 6d |e gcc.ex|e>>_vp.m|
|00000d00| 73 67 0a 0a 23 20 4f 42 | 4a 53 5f 44 49 52 20 69 |sg..# OB|JS_DIR i|
|00000d10| 73 20 61 20 70 72 65 64 | 65 66 69 6e 65 64 20 76 |s a pred|efined v|
|00000d20| 61 72 69 61 62 6c 65 2e | 0a 4f 42 4a 53 5f 44 49 |ariable.|.OBJS_DI|
|00000d30| 52 20 3d 20 2e 0a 0a 23 | 20 4f 72 64 69 6e 61 72 |R = ...#| Ordinar|
|00000d40| 79 20 66 6c 61 67 73 20 | 66 6f 72 20 79 6f 75 72 |y flags |for your|
|00000d50| 20 63 6f 6d 70 69 6c 65 | 72 2e 0a 43 5f 46 4c 41 | compile|r..C_FLA|
|00000d60| 47 53 20 3d 20 2d 63 0a | 0a 23 20 43 4f 4d 50 49 |GS = -c.|.# COMPI|
|00000d70| 4c 45 5f 46 4f 20 69 73 | 20 61 20 70 72 65 64 65 |LE_FO is| a prede|
|00000d80| 66 69 6e 65 64 20 76 61 | 72 69 61 62 6c 65 2e 20 |fined va|riable. |
|00000d90| 49 74 20 64 65 73 63 72 | 69 62 65 73 20 61 6e 20 |It descr|ibes an |
|00000da0| 69 6e 76 6f 63 61 74 69 | 6f 6e 20 6f 66 0a 23 20 |invocati|on of.# |
|00000db0| 63 6f 6d 70 69 6c 65 72 | 2e 20 22 5f 46 4f 22 20 |compiler|. "_FO" |
|00000dc0| 73 75 66 66 69 78 20 72 | 65 73 75 6c 74 73 20 66 |suffix r|esults f|
|00000dd0| 72 6f 6d 20 74 68 65 20 | 73 61 6d 65 20 6e 61 6d |rom the |same nam|
|00000de0| 65 20 6f 70 74 69 6f 6e | 20 77 68 69 63 68 0a 23 |e option| which.#|
|00000df0| 20 65 6e 74 69 74 6c 65 | 73 20 61 6e 20 22 2e 6f | entitle|s an ".o|
|00000e00| 62 6a 22 20 66 69 6c 65 | 20 6f 72 20 63 72 65 61 |bj" file| or crea|
|00000e10| 74 65 73 20 69 74 20 69 | 6e 20 61 20 64 69 66 66 |tes it i|n a diff|
|00000e20| 65 72 65 6e 74 20 64 69 | 72 65 63 74 6f 72 79 2e |erent di|rectory.|
|00000e30| 0a 23 20 42 79 20 64 65 | 66 61 75 6c 74 20 63 6f |.# By de|fault co|
|00000e40| 6d 70 69 6c 65 72 20 6e | 61 6d 65 73 20 74 68 65 |mpiler n|ames the|
|00000e50| 20 6f 62 6a 65 63 74 20 | 66 69 6c 65 20 77 69 74 | object |file wit|
|00000e60| 68 20 74 68 65 20 62 61 | 73 65 20 6e 61 6d 65 20 |h the ba|se name |
|00000e70| 6f 66 0a 23 20 74 68 65 | 20 73 6f 75 72 63 65 20 |of.# the| source |
|00000e80| 66 69 6c 65 20 70 6c 75 | 73 20 74 68 65 20 65 78 |file plu|s the ex|
|00000e90| 74 65 6e 73 69 6f 6e 20 | 22 2e 6f 62 6a 22 20 61 |tension |".obj" a|
|00000ea0| 6e 64 20 70 75 74 73 20 | 69 74 20 69 6e 20 74 68 |nd puts |it in th|
|00000eb0| 65 0a 23 20 63 75 72 72 | 65 6e 74 20 66 6f 6c 64 |e.# curr|ent fold|
|00000ec0| 65 72 2e 0a 43 4f 4d 50 | 49 4c 45 5f 46 4f 20 3d |er..COMP|ILE_FO =|
|00000ed0| 20 24 28 43 43 29 20 24 | 28 43 5f 46 4c 41 47 53 | $(CC) $|(C_FLAGS|
|00000ee0| 29 20 2d 6f 20 24 28 4f | 42 4a 53 5f 44 49 52 29 |) -o $(O|BJS_DIR)|
|00000ef0| 0a 0a 23 20 40 56 50 28 | 4f 42 4a 53 28 61 72 67 |..# @VP(|OBJS(arg|
|00000f00| 29 29 20 69 73 20 61 20 | 70 61 72 61 6d 65 74 65 |)) is a |paramete|
|00000f10| 72 69 7a 65 64 20 70 72 | 65 64 65 66 69 6e 65 64 |rized pr|edefined|
|00000f20| 20 6d 61 63 72 6f 2e 20 | 41 72 67 75 6d 65 6e 74 | macro. |Argument|
|00000f30| 20 22 63 22 20 62 65 6c | 6f 77 0a 23 20 69 73 20 | "c" bel|ow.# is |
|00000f40| 61 6e 20 65 78 74 65 6e | 73 69 6f 6e 2e 20 49 74 |an exten|sion. It|
|00000f50| 20 64 65 63 6c 61 72 65 | 73 20 74 68 61 74 20 6f | declare|s that o|
|00000f60| 6e 6c 79 20 6f 62 6a 65 | 63 74 20 66 69 6c 65 73 |nly obje|ct files|
|00000f70| 20 64 65 72 69 76 65 64 | 20 66 72 6f 6d 20 2a 2e | derived| from *.|
|00000f80| 63 0a 23 20 66 69 6c 65 | 73 20 77 6f 75 6c 64 20 |c.# file|s would |
|00000f90| 62 65 20 61 73 73 69 67 | 6e 65 64 20 74 6f 20 4d |be assig|ned to M|
|00000fa0| 59 5f 4f 42 4a 53 2e 20 | 49 6e 20 6f 75 72 20 63 |Y_OBJS. |In our c|
|00000fb0| 61 73 65 20 74 68 69 73 | 20 69 73 20 22 4d 61 69 |ase this| is "Mai|
|00000fc0| 6e 2e 6f 62 6a 22 2e 0a | 23 20 54 68 75 73 20 79 |n.obj"..|# Thus y|
|00000fd0| 6f 75 20 6d 61 79 20 6f | 62 74 61 69 6e 20 73 65 |ou may o|btain se|
|00000fe0| 76 65 72 61 6c 20 68 61 | 6c 66 2d 73 74 75 66 66 |veral ha|lf-stuff|
|00000ff0| 20 73 75 62 73 65 74 73 | 20 66 6f 72 20 62 75 69 | subsets| for bui|
|00001000| 6c 64 69 6e 67 20 64 69 | 66 66 65 72 65 6e 74 0a |lding di|fferent.|
|00001010| 23 20 74 61 72 67 65 74 | 73 2e 20 49 66 20 79 6f |# target|s. If yo|
|00001020| 75 20 77 61 6e 74 20 74 | 68 65 20 73 75 62 73 65 |u want t|he subse|
|00001030| 74 73 20 74 6f 20 62 65 | 20 69 6e 74 65 72 73 65 |ts to be| interse|
|00001040| 63 74 65 64 20 75 73 65 | 20 22 45 63 6f 74 79 70 |cted use| "Ecotyp|
|00001050| 65 73 20 66 6f 72 0a 23 | 20 4d 61 6b 65 22 20 70 |es for.#| Make" p|
|00001060| 72 6f 70 65 72 74 79 2e | 20 49 74 20 6c 69 73 74 |roperty.| It list|
|00001070| 73 20 74 68 65 20 65 78 | 74 65 6e 73 69 6f 6e 20 |s the ex|tension |
|00001080| 73 65 70 61 72 61 74 65 | 64 20 77 69 74 68 20 22 |separate|d with "|
|00001090| 3b 22 2e 20 43 6f 6d 62 | 69 6e 65 0a 23 20 74 68 |;". Comb|ine.# th|
|000010a0| 65 20 73 65 6d 69 66 69 | 6e 69 73 68 65 64 20 70 |e semifi|nished p|
|000010b0| 72 6f 64 75 63 74 73 20 | 64 65 72 69 76 65 64 20 |roducts |derived |
|000010c0| 6f 66 20 65 63 6f 74 79 | 70 65 64 20 66 69 6c 65 |of ecoty|ped file|
|000010d0| 73 20 77 69 74 68 20 74 | 68 69 73 20 6d 61 63 72 |s with t|his macr|
|000010e0| 6f 2e 0a 4d 59 5f 4f 42 | 4a 53 20 3d 20 40 56 50 |o..MY_OB|JS = @VP|
|000010f0| 28 4f 42 4a 53 28 63 29 | 29 0a 23 20 48 65 72 65 |(OBJS(c)|).# Here|
|00001100| 20 74 68 69 73 20 6d 61 | 63 72 6f 20 70 72 6f 64 | this ma|cro prod|
|00001110| 75 63 65 73 3a 0a 23 20 | 4d 59 5f 4f 42 4a 53 20 |uces:.# |MY_OBJS |
|00001120| 3d 20 5c 0a 23 20 20 24 | 28 4f 42 4a 53 5f 44 49 |= \.# $|(OBJS_DI|
|00001130| 52 29 5c 4d 61 69 6e 2e | 6f 62 6a 0a 0a 23 20 40 |R)\Main.|obj..# @|
|00001140| 56 50 28 61 72 67 29 20 | 69 73 20 61 20 70 61 72 |VP(arg) |is a par|
|00001150| 61 6d 65 74 65 72 69 7a | 65 64 20 70 72 65 64 65 |ameteriz|ed prede|
|00001160| 66 69 6e 65 64 20 6d 61 | 63 72 6f 2e 20 41 72 67 |fined ma|cro. Arg|
|00001170| 75 6d 65 6e 74 20 22 61 | 70 70 22 20 69 73 0a 23 |ument "a|pp" is.#|
|00001180| 20 74 68 65 20 62 61 73 | 65 20 6e 61 6d 65 20 6f | the bas|e name o|
|00001190| 66 20 61 70 70 6c 69 63 | 61 74 69 6f 6e 2e 20 49 |f applic|ation. I|
|000011a0| 74 20 69 73 20 64 65 66 | 69 6e 65 64 20 74 68 72 |t is def|ined thr|
|000011b0| 6f 75 67 68 20 74 68 65 | 20 70 72 6f 6a 65 63 74 |ough the| project|
|000011c0| 27 73 0a 23 20 70 72 6f | 70 65 72 74 79 20 22 41 |'s.# pro|perty "A|
|000011d0| 70 70 20 45 78 65 63 75 | 74 61 62 6c 65 22 2e 0a |pp Execu|table"..|
|000011e0| 41 50 50 4c 49 43 20 3d | 20 40 56 50 28 61 70 70 |APPLIC =| @VP(app|
|000011f0| 29 0a 23 20 48 65 72 65 | 20 74 68 69 73 20 6d 61 |).# Here| this ma|
|00001200| 63 72 6f 20 70 72 6f 64 | 75 63 65 73 3a 0a 23 20 |cro prod|uces:.# |
|00001210| 41 50 50 4c 49 43 20 3d | 20 48 65 6c 6c 6f 43 70 |APPLIC =| HelloCp|
|00001220| 70 0a 0a 23 20 41 20 72 | 75 6c 65 20 74 6f 20 65 |p..# A r|ule to e|
|00001230| 63 68 6f 20 79 6f 75 72 | 20 6f 77 6e 20 6d 65 73 |cho your| own mes|
|00001240| 73 61 67 65 20 69 66 20 | 74 68 65 20 6d 61 69 6e |sage if |the main|
|00001250| 20 74 61 72 67 65 74 20 | 69 73 20 62 75 69 6c 74 | target |is built|
|00001260| 20 6f 6b 2e 0a 4d 61 69 | 6e 54 61 72 67 65 74 20 | ok..Mai|nTarget |
|00001270| 3a 20 24 28 41 50 50 4c | 49 43 29 2e 65 78 65 0a |: $(APPL|IC).exe.|
|00001280| 09 65 63 68 6f 20 3d 3d | 3d 3d 3d 3d 20 24 28 41 |.echo ==|==== $(A|
|00001290| 50 50 4c 49 43 29 2e 65 | 78 65 20 68 61 73 20 62 |PPLIC).e|xe has b|
|000012a0| 65 65 6e 20 62 75 69 6c | 74 20 6f 6b 21 20 3d 3d |een buil|t ok! ==|
|000012b0| 3d 3d 3d 3d 20 3e 3e 5f | 76 70 2e 6d 73 67 0a 0a |==== >>_|vp.msg..|
|000012c0| 23 20 41 20 72 75 6c 65 | 20 74 6f 20 62 75 69 6c |# A rule| to buil|
|000012d0| 64 20 74 68 65 20 65 78 | 65 63 75 74 61 62 6c 65 |d the ex|ecutable|
|000012e0| 20 66 69 6c 65 2e 0a 24 | 28 41 50 50 4c 49 43 29 | file..$|(APPLIC)|
|000012f0| 2e 65 78 65 20 3a 20 24 | 28 4d 59 5f 4f 42 4a 53 |.exe : $|(MY_OBJS|
|00001300| 29 0a 09 24 28 4c 49 4e | 4b 29 20 2d 6f 20 24 28 |)..$(LIN|K) -o $(|
|00001310| 41 50 50 4c 49 43 29 2e | 65 78 65 20 24 28 4d 59 |APPLIC).|exe $(MY|
|00001320| 5f 4f 42 4a 53 29 0a 0a | 23 20 40 56 50 28 43 4f |_OBJS)..|# @VP(CO|
|00001330| 4d 50 49 4c 45 28 61 72 | 67 29 29 20 69 73 20 61 |MPILE(ar|g)) is a|
|00001340| 20 70 61 72 61 6d 65 74 | 65 72 69 7a 65 64 20 70 | paramet|erized p|
|00001350| 72 65 64 65 66 69 6e 65 | 64 20 6d 61 63 72 6f 2e |redefine|d macro.|
|00001360| 20 49 74 20 65 78 70 61 | 6e 64 73 20 74 6f 20 74 | It expa|nds to t|
|00001370| 68 65 0a 23 20 73 65 74 | 20 6f 66 20 69 6e 73 74 |he.# set| of inst|
|00001380| 72 75 63 74 69 6f 6e 73 | 20 77 68 69 63 68 20 62 |ructions| which b|
|00001390| 75 69 6c 64 20 2a 2e 6f | 62 6a 20 66 69 6c 65 73 |uild *.o|bj files|
|000013a0| 20 66 72 6f 6d 20 73 6f | 75 72 63 65 20 6f 6e 65 | from so|urce one|
|000013b0| 73 2e 20 41 72 67 75 6d | 65 6e 74 20 22 63 22 0a |s. Argum|ent "c".|
|000013c0| 23 20 62 65 6c 6f 77 20 | 69 73 20 61 6e 20 65 78 |# below |is an ex|
|000013d0| 74 65 6e 73 69 6f 6e 2e | 20 49 74 20 64 65 63 6c |tension.| It decl|
|000013e0| 61 72 65 73 20 74 68 61 | 74 20 6f 6e 6c 79 20 2a |ares tha|t only *|
|000013f0| 2e 63 20 66 69 6c 65 73 | 20 77 6f 75 6c 64 20 62 |.c files| would b|
|00001400| 65 20 63 6f 6d 70 69 6c | 65 64 2e 0a 40 56 50 28 |e compil|ed..@VP(|
|00001410| 43 4f 4d 50 49 4c 45 28 | 63 29 29 0a 23 20 48 65 |COMPILE(|c)).# He|
|00001420| 72 65 20 74 68 69 73 20 | 6d 61 63 72 6f 20 65 78 |re this |macro ex|
|00001430| 70 61 6e 64 73 20 61 73 | 3a 0a 23 20 24 28 4f 42 |pands as|:.# $(OB|
|00001440| 4a 53 5f 44 49 52 29 5c | 4d 61 69 6e 2e 6f 62 6a |JS_DIR)\|Main.obj|
|00001450| 20 3a 20 4d 61 69 6e 2e | 63 20 24 28 56 50 58 43 | : Main.|c $(VPXC|
|00001460| 50 50 44 45 50 5f 43 5f | 4d 41 49 4e 5f 43 29 0a |PPDEP_C_|MAIN_C).|
|00001470| 23 20 20 20 20 20 24 28 | 43 4f 4d 50 49 4c 45 5f |# $(|COMPILE_|
|00001480| 46 4f 29 24 28 4f 42 4a | 53 5f 44 49 52 29 5c 4d |FO)$(OBJ|S_DIR)\M|
|00001490| 61 69 6e 2e 6f 62 6a 20 | 4d 61 69 6e 2e 63 0a 23 |ain.obj |Main.c.#|
|000014a0| 20 48 65 72 65 20 56 50 | 58 43 50 50 44 45 50 5f | Here VP|XCPPDEP_|
|000014b0| 43 5f 4d 41 49 4e 5f 43 | 20 69 73 20 75 6e 64 65 |C_MAIN_C| is unde|
|000014c0| 66 69 6e 65 64 20 62 65 | 63 61 75 73 65 20 4d 61 |fined be|cause Ma|
|000014d0| 69 6e 2e 63 20 68 61 73 | 20 6e 6f 20 64 65 70 65 |in.c has| no depe|
|000014e0| 6e 64 65 6e 63 65 73 2e | 0a 00 45 64 57 53 7a 00 |ndences.|..EdWSz.|
|000014f0| 10 00 00 00 d5 02 d5 02 | f0 02 64 00 00 00 00 00 |........|..d.....|
|00001500| 00 00 00 00 5f 61 74 72 | 00 01 00 00 00 00 2e 2e |...._atr|........|
|00001510| 2e 2e 00 00 00 00 00 01 | 00 6e 61 6d 65 00 0d 00 |........|.name...|
|00001520| 00 00 4d 61 6b 65 46 69 | 6c 65 2e 45 47 43 53 00 |..MakeFi|le.EGCS.|
|00001530| 5f 40 5f 00 00 00 00 00 | 05 00 00 00 00 00 00 21 |_@_.....|.......!|
|00001540| 00 4d 59 53 65 74 00 10 | 00 00 00 04 00 04 00 00 |.MYSet..|........|
|00001550| 00 00 00 00 00 00 00 00 | 00 00 00 47 65 6e 00 20 |........|...Gen. |
|00001560| 00 00 00 00 00 00 00 59 | 00 00 00 00 00 00 00 00 |.......Y|........|
|00001570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001580| 00 00 00 54 78 74 42 6f | 64 79 00 33 0d 00 00 00 |...TxtBo|dy.3....|
|00001590| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 35 |........|.......5|
|000015a0| 00 00 00 1a 0d 00 00 23 | 20 57 68 65 6e 20 79 6f |.......#| When yo|
|000015b0| 75 20 69 6e 76 6f 6b 65 | 20 6d 61 6b 65 20 70 72 |u invoke| make pr|
|000015c0| 6f 63 65 73 73 20 56 50 | 41 20 63 68 65 63 6b 73 |ocess VP|A checks|
|000015d0| 20 64 65 70 65 6e 64 65 | 6e 63 65 73 20 61 6e 64 | depende|nces and|
|000015e0| 20 67 65 6e 65 72 61 74 | 65 73 0a 23 20 66 69 6c | generat|es.# fil|
|000015f0| 65 20 22 56 70 78 43 70 | 70 2e 64 65 70 22 2e 20 |e "VpxCp|p.dep". |
|00001600| 50 72 6f 6a 65 63 74 20 | 44 65 6d 6f 31 20 63 6f |Project |Demo1 co|
|00001610| 6e 73 69 73 74 73 20 6f | 66 20 74 68 65 20 73 69 |nsists o|f the si|
|00001620| 6e 67 6c 65 20 66 69 6c | 65 20 22 4d 61 69 6e 2e |ngle fil|e "Main.|
|00001630| 63 22 0a 23 20 77 68 69 | 63 68 20 64 6f 65 73 20 |c".# whi|ch does |
|00001640| 6e 6f 74 20 64 65 70 65 | 6e 64 20 75 70 6f 6e 20 |not depe|nd upon |
|00001650| 61 6e 6f 74 68 65 72 20 | 6f 6e 65 73 2e 20 53 65 |another |ones. Se|
|00001660| 65 20 4d 61 6b 65 46 69 | 6c 65 20 69 6e 20 44 65 |e MakeFi|le in De|
|00001670| 6d 6f 32 20 66 6f 72 0a | 23 20 66 75 72 74 68 65 |mo2 for.|# furthe|
|00001680| 72 20 64 65 73 63 72 69 | 70 74 69 6f 6e 20 68 6f |r descri|ption ho|
|00001690| 77 20 22 56 70 78 43 70 | 70 2e 64 65 70 22 20 6c |w "VpxCp|p.dep" l|
|000016a0| 6f 6f 6b 73 20 6c 69 6b | 65 20 69 66 20 79 6f 75 |ooks lik|e if you|
|000016b0| 72 20 70 72 6f 6a 65 63 | 74 0a 23 20 63 6f 6e 73 |r projec|t.# cons|
|000016c0| 69 73 74 73 20 6f 66 20 | 6d 75 6c 74 69 70 6c 65 |ists of |multiple|
|000016d0| 20 66 69 6c 65 73 2e 0a | 21 69 6e 63 6c 75 64 65 | files..|!include|
|000016e0| 20 22 56 70 78 43 70 70 | 2e 64 65 70 22 0a 0a 23 | "VpxCpp|.dep"..#|
|000016f0| 20 44 65 73 69 67 6e 20 | 6d 61 6b 65 66 69 6c 65 | Design |makefile|
|00001700| 73 20 66 6f 72 20 43 2b | 2b 20 70 72 6f 6a 65 63 |s for C+|+ projec|
|00001710| 74 73 20 69 6e 20 73 75 | 63 68 20 61 20 77 61 79 |ts in su|ch a way|
|00001720| 20 74 68 61 74 20 61 6e | 20 6f 75 74 70 75 74 20 | that an| output |
|00001730| 73 74 72 65 61 6d 0a 23 | 20 6f 66 20 74 68 65 20 |stream.#| of the |
|00001740| 63 6f 6d 70 69 6c 65 72 | 2c 20 72 65 73 6f 75 72 |compiler|, resour|
|00001750| 63 65 20 63 6f 6d 70 69 | 6c 65 72 2c 20 6c 69 6e |ce compi|ler, lin|
|00001760| 6b 65 72 20 6f 72 20 61 | 6e 79 20 6f 74 68 65 72 |ker or a|ny other|
|00001770| 20 63 6f 6d 6d 61 6e 64 | 20 6c 69 6e 65 0a 23 20 | command| line.# |
|00001780| 75 74 69 6c 69 74 79 20 | 68 61 73 20 74 6f 20 62 |utility |has to b|
|00001790| 65 20 66 6f 72 77 61 72 | 64 65 64 20 74 6f 20 74 |e forwar|ded to t|
|000017a0| 68 65 20 70 72 65 64 65 | 66 69 6e 65 64 20 66 69 |he prede|fined fi|
|000017b0| 6c 65 20 22 5f 76 70 2e | 6d 73 67 22 2e 20 57 68 |le "_vp.|msg". Wh|
|000017c0| 65 6e 20 6d 61 6b 65 0a | 23 20 70 72 6f 63 65 73 |en make.|# proces|
|000017d0| 73 20 74 65 72 6d 69 6e | 61 74 65 73 20 56 50 41 |s termin|ates VPA|
|000017e0| 20 72 65 61 64 73 20 74 | 68 65 20 6f 75 74 70 75 | reads t|he outpu|
|000017f0| 74 2e 20 49 66 20 6d 61 | 69 6e 20 74 61 72 67 65 |t. If ma|in targe|
|00001800| 74 20 69 73 20 6d 61 64 | 65 20 70 72 6f 70 65 72 |t is mad|e proper|
|00001810| 6c 79 0a 23 20 79 6f 75 | 72 20 6f 77 6e 20 61 70 |ly.# you|r own ap|
|00001820| 70 72 6f 70 72 69 61 74 | 65 20 6d 65 73 73 61 67 |propriat|e messag|
|00001830| 65 20 65 63 68 6f 73 20 | 28 66 2e 65 2e 20 22 65 |e echos |(f.e. "e|
|00001840| 63 68 6f 20 3d 3d 3d 20 | 4d 79 20 70 72 6f 6a 65 |cho === |My proje|
|00001850| 63 74 20 68 61 73 20 62 | 65 65 6e 0a 23 20 62 75 |ct has b|een.# bu|
|00001860| 69 6c 74 20 6f 6b 21 20 | 3d 3d 3d 20 3e 3e 5f 76 |ilt ok! |=== >>_v|
|00001870| 70 2e 6d 73 67 22 29 2e | 20 4f 6e 20 66 61 69 6c |p.msg").| On fail|
|00001880| 75 72 65 20 65 72 72 6f | 72 73 20 61 6e 64 20 77 |ure erro|rs and w|
|00001890| 61 72 6e 69 6e 67 73 20 | 61 70 70 65 61 72 2e 20 |arnings |appear. |
|000018a0| 54 68 69 73 0a 23 20 6b | 69 6e 64 20 6f 66 20 6f |This.# k|ind of o|
|000018b0| 75 74 70 75 74 20 63 6f | 6d 6d 6f 6e 6c 79 20 67 |utput co|mmonly g|
|000018c0| 6f 65 73 20 77 69 74 68 | 20 74 68 65 20 69 6e 66 |oes with| the inf|
|000018d0| 6f 72 6d 61 74 69 6f 6e | 20 61 62 6f 75 74 20 61 |ormation| about a|
|000018e0| 20 66 69 6c 65 20 6e 61 | 6d 65 20 61 6e 64 0a 23 | file na|me and.#|
|000018f0| 20 6c 69 6e 65 20 6e 75 | 6d 62 65 72 73 2e 20 52 | line nu|mbers. R|
|00001900| 65 76 69 65 77 20 22 4f | 70 74 69 6f 6e 73 20 2f |eview "O|ptions /|
|00001910| 20 3c 43 2b 2b 3e 20 52 | 65 6c 61 74 65 64 20 2f | <C++> R|elated /|
|00001920| 20 4f 75 74 70 75 74 20 | 6f 66 20 43 6f 6d 70 69 | Output |of Compi|
|00001930| 6c 65 72 20 2f 0a 23 20 | 50 61 72 73 69 6e 67 20 |ler /.# |Parsing |
|00001940| 54 65 6d 70 6c 61 74 65 | 22 2e 20 54 6f 6b 65 6e |Template|". Token|
|00001950| 20 22 5c 46 22 20 72 65 | 70 72 65 73 65 6e 74 73 | "\F" re|presents|
|00001960| 20 66 69 6c 65 20 6e 61 | 6d 65 2e 20 54 6f 6b 65 | file na|me. Toke|
|00001970| 6e 20 22 5c 4c 22 20 73 | 74 61 6e 64 73 0a 23 20 |n "\L" s|tands.# |
|00001980| 66 6f 72 20 6c 69 6e 65 | 20 6e 75 6d 62 65 72 2e |for line| number.|
|00001990| 20 54 6f 6b 65 6e 20 22 | 5c 23 22 20 64 65 73 63 | Token "|\#" desc|
|000019a0| 72 69 62 65 73 20 61 6e | 79 20 6f 74 68 65 72 20 |ribes an|y other |
|000019b0| 6e 75 6d 65 72 69 63 20 | 76 6f 69 64 20 69 6e 66 |numeric |void inf|
|000019c0| 6f 20 28 66 2e 65 2e 0a | 23 20 6e 75 6d 62 65 72 |o (f.e..|# number|
|000019d0| 20 6f 66 20 63 6f 6c 75 | 6d 6e 20 69 6e 20 73 6f | of colu|mn in so|
|000019e0| 75 72 63 65 20 66 69 6c | 65 29 2e 0a 43 43 20 20 |urce fil|e)..CC |
|000019f0| 20 3d 20 63 6c 2e 65 78 | 65 3e 3e 5f 76 70 2e 6d | = cl.ex|e>>_vp.m|
|00001a00| 73 67 0a 4c 49 4e 4b 20 | 3d 20 6c 69 6e 6b 2e 65 |sg.LINK |= link.e|
|00001a10| 78 65 3e 3e 5f 76 70 2e | 6d 73 67 0a 0a 23 20 4f |xe>>_vp.|msg..# O|
|00001a20| 42 4a 53 5f 44 49 52 20 | 69 73 20 61 20 70 72 65 |BJS_DIR |is a pre|
|00001a30| 64 65 66 69 6e 65 64 20 | 76 61 72 69 61 62 6c 65 |defined |variable|
|00001a40| 2e 0a 4f 42 4a 53 5f 44 | 49 52 20 3d 20 2e 0a 0a |..OBJS_D|IR = ...|
|00001a50| 23 20 4f 72 64 69 6e 61 | 72 79 20 66 6c 61 67 73 |# Ordina|ry flags|
|00001a60| 20 66 6f 72 20 79 6f 75 | 72 20 63 6f 6d 70 69 6c | for you|r compil|
|00001a70| 65 72 2e 0a 43 5f 46 4c | 41 47 53 20 3d 20 2f 63 |er..C_FL|AGS = /c|
|00001a80| 20 2f 4f 64 20 2f 4d 44 | 0a 0a 23 20 43 4f 4d 50 | /Od /MD|..# COMP|
|00001a90| 49 4c 45 5f 46 4f 20 69 | 73 20 61 20 70 72 65 64 |ILE_FO i|s a pred|
|00001aa0| 65 66 69 6e 65 64 20 76 | 61 72 69 61 62 6c 65 2e |efined v|ariable.|
|00001ab0| 20 49 74 20 64 65 73 63 | 72 69 62 65 73 20 61 6e | It desc|ribes an|
|00001ac0| 20 69 6e 76 6f 63 61 74 | 69 6f 6e 20 6f 66 0a 23 | invocat|ion of.#|
|00001ad0| 20 63 6f 6d 70 69 6c 65 | 72 2e 20 22 5f 46 4f 22 | compile|r. "_FO"|
|00001ae0| 20 73 75 66 66 69 78 20 | 72 65 73 75 6c 74 73 20 | suffix |results |
|00001af0| 66 72 6f 6d 20 74 68 65 | 20 73 61 6d 65 20 6e 61 |from the| same na|
|00001b00| 6d 65 20 6f 70 74 69 6f | 6e 20 77 68 69 63 68 0a |me optio|n which.|
|00001b10| 23 20 65 6e 74 69 74 6c | 65 73 20 61 6e 20 22 2e |# entitl|es an ".|
|00001b20| 6f 62 6a 22 20 66 69 6c | 65 20 6f 72 20 63 72 65 |obj" fil|e or cre|
|00001b30| 61 74 65 73 20 69 74 20 | 69 6e 20 61 20 64 69 66 |ates it |in a dif|
|00001b40| 66 65 72 65 6e 74 20 64 | 69 72 65 63 74 6f 72 79 |ferent d|irectory|
|00001b50| 2e 0a 23 20 42 79 20 64 | 65 66 61 75 6c 74 20 63 |..# By d|efault c|
|00001b60| 6f 6d 70 69 6c 65 72 20 | 6e 61 6d 65 73 20 74 68 |ompiler |names th|
|00001b70| 65 20 6f 62 6a 65 63 74 | 20 66 69 6c 65 20 77 69 |e object| file wi|
|00001b80| 74 68 20 74 68 65 20 62 | 61 73 65 20 6e 61 6d 65 |th the b|ase name|
|00001b90| 20 6f 66 0a 23 20 74 68 | 65 20 73 6f 75 72 63 65 | of.# th|e source|
|00001ba0| 20 66 69 6c 65 20 70 6c | 75 73 20 74 68 65 20 65 | file pl|us the e|
|00001bb0| 78 74 65 6e 73 69 6f 6e | 20 22 2e 6f 62 6a 22 20 |xtension| ".obj" |
|00001bc0| 61 6e 64 20 70 75 74 73 | 20 69 74 20 69 6e 20 74 |and puts| it in t|
|00001bd0| 68 65 0a 23 20 63 75 72 | 72 65 6e 74 20 66 6f 6c |he.# cur|rent fol|
|00001be0| 64 65 72 2e 0a 43 4f 4d | 50 49 4c 45 5f 46 4f 20 |der..COM|PILE_FO |
|00001bf0| 3d 20 24 28 43 43 29 20 | 24 28 43 5f 46 4c 41 47 |= $(CC) |$(C_FLAG|
|00001c00| 53 29 20 2f 46 6f 24 28 | 4f 42 4a 53 5f 44 49 52 |S) /Fo$(|OBJS_DIR|
|00001c10| 29 0a 0a 23 20 40 56 50 | 28 4f 42 4a 53 28 61 72 |)..# @VP|(OBJS(ar|
|00001c20| 67 29 29 20 69 73 20 61 | 20 70 61 72 61 6d 65 74 |g)) is a| paramet|
|00001c30| 65 72 69 7a 65 64 20 70 | 72 65 64 65 66 69 6e 65 |erized p|redefine|
|00001c40| 64 20 6d 61 63 72 6f 2e | 20 41 72 67 75 6d 65 6e |d macro.| Argumen|
|00001c50| 74 20 22 63 22 20 62 65 | 6c 6f 77 0a 23 20 69 73 |t "c" be|low.# is|
|00001c60| 20 61 6e 20 65 78 74 65 | 6e 73 69 6f 6e 2e 20 49 | an exte|nsion. I|
|00001c70| 74 20 64 65 63 6c 61 72 | 65 73 20 74 68 61 74 20 |t declar|es that |
|00001c80| 6f 6e 6c 79 20 6f 62 6a | 65 63 74 20 66 69 6c 65 |only obj|ect file|
|00001c90| 73 20 64 65 72 69 76 65 | 64 20 66 72 6f 6d 20 2a |s derive|d from *|
|00001ca0| 2e 63 0a 23 20 66 69 6c | 65 73 20 77 6f 75 6c 64 |.c.# fil|es would|
|00001cb0| 20 62 65 20 61 73 73 69 | 67 6e 65 64 20 74 6f 20 | be assi|gned to |
|00001cc0| 4d 59 5f 4f 42 4a 53 2e | 20 49 6e 20 6f 75 72 20 |MY_OBJS.| In our |
|00001cd0| 63 61 73 65 20 74 68 69 | 73 20 69 73 20 22 4d 61 |case thi|s is "Ma|
|00001ce0| 69 6e 2e 6f 62 6a 22 2e | 0a 23 20 54 68 75 73 20 |in.obj".|.# Thus |
|00001cf0| 79 6f 75 20 6d 61 79 20 | 6f 62 74 61 69 6e 20 73 |you may |obtain s|
|00001d00| 65 76 65 72 61 6c 20 68 | 61 6c 66 2d 73 74 75 66 |everal h|alf-stuf|
|00001d10| 66 20 73 75 62 73 65 74 | 73 20 66 6f 72 20 62 75 |f subset|s for bu|
|00001d20| 69 6c 64 69 6e 67 20 64 | 69 66 66 65 72 65 6e 74 |ilding d|ifferent|
|00001d30| 0a 23 20 74 61 72 67 65 | 74 73 2e 20 49 66 20 79 |.# targe|ts. If y|
|00001d40| 6f 75 20 77 61 6e 74 20 | 74 68 65 20 73 75 62 73 |ou want |the subs|
|00001d50| 65 74 73 20 74 6f 20 62 | 65 20 69 6e 74 65 72 73 |ets to b|e inters|
|00001d60| 65 63 74 65 64 20 75 73 | 65 20 22 45 63 6f 74 79 |ected us|e "Ecoty|
|00001d70| 70 65 73 20 66 6f 72 0a | 23 20 4d 61 6b 65 22 20 |pes for.|# Make" |
|00001d80| 70 72 6f 70 65 72 74 79 | 2e 20 49 74 20 6c 69 73 |property|. It lis|
|00001d90| 74 73 20 74 68 65 20 65 | 78 74 65 6e 73 69 6f 6e |ts the e|xtension|
|00001da0| 20 73 65 70 61 72 61 74 | 65 64 20 77 69 74 68 20 | separat|ed with |
|00001db0| 22 3b 22 2e 20 43 6f 6d | 62 69 6e 65 0a 23 20 74 |";". Com|bine.# t|
|00001dc0| 68 65 20 73 65 6d 69 66 | 69 6e 69 73 68 65 64 20 |he semif|inished |
|00001dd0| 70 72 6f 64 75 63 74 73 | 20 64 65 72 69 76 65 64 |products| derived|
|00001de0| 20 6f 66 20 65 63 6f 74 | 79 70 65 64 20 66 69 6c | of ecot|yped fil|
|00001df0| 65 73 20 77 69 74 68 20 | 74 68 69 73 20 6d 61 63 |es with |this mac|
|00001e00| 72 6f 2e 0a 4d 59 5f 4f | 42 4a 53 20 3d 20 40 56 |ro..MY_O|BJS = @V|
|00001e10| 50 28 4f 42 4a 53 28 63 | 29 29 0a 23 20 48 65 72 |P(OBJS(c|)).# Her|
|00001e20| 65 20 74 68 69 73 20 6d | 61 63 72 6f 20 70 72 6f |e this m|acro pro|
|00001e30| 64 75 63 65 73 3a 0a 23 | 20 4d 59 5f 4f 42 4a 53 |duces:.#| MY_OBJS|
|00001e40| 20 3d 20 5c 0a 23 20 20 | 24 28 4f 42 4a 53 5f 44 | = \.# |$(OBJS_D|
|00001e50| 49 52 29 5c 4d 61 69 6e | 2e 6f 62 6a 0a 0a 23 20 |IR)\Main|.obj..# |
|00001e60| 4f 72 64 69 6e 61 72 79 | 20 6c 69 62 72 61 72 69 |Ordinary| librari|
|00001e70| 65 73 2e 0a 43 5f 4c 49 | 42 53 20 3d 20 5c 0a 20 |es..C_LI|BS = \. |
|00001e80| 75 73 65 72 33 32 2e 6c | 69 62 5c 0a 20 6b 65 72 |user32.l|ib\. ker|
|00001e90| 6e 65 6c 33 32 2e 6c 69 | 62 5c 0a 20 67 64 69 33 |nel32.li|b\. gdi3|
|00001ea0| 32 2e 6c 69 62 5c 0a 20 | 6d 73 56 43 52 54 2e 6c |2.lib\. |msVCRT.l|
|00001eb0| 69 62 5c 0a 20 6f 6c 64 | 4e 61 6d 65 73 2e 6c 69 |ib\. old|Names.li|
|00001ec0| 62 0a 0a 23 20 40 56 50 | 28 61 72 67 29 20 69 73 |b..# @VP|(arg) is|
|00001ed0| 20 61 20 70 61 72 61 6d | 65 74 65 72 69 7a 65 64 | a param|eterized|
|00001ee0| 20 70 72 65 64 65 66 69 | 6e 65 64 20 6d 61 63 72 | predefi|ned macr|
|00001ef0| 6f 2e 20 41 72 67 75 6d | 65 6e 74 20 22 61 70 70 |o. Argum|ent "app|
|00001f00| 22 20 69 73 0a 23 20 74 | 68 65 20 62 61 73 65 20 |" is.# t|he base |
|00001f10| 6e 61 6d 65 20 6f 66 20 | 61 70 70 6c 69 63 61 74 |name of |applicat|
|00001f20| 69 6f 6e 2e 20 49 74 20 | 69 73 20 64 65 66 69 6e |ion. It |is defin|
|00001f30| 65 64 20 74 68 72 6f 75 | 67 68 20 74 68 65 20 70 |ed throu|gh the p|
|00001f40| 72 6f 6a 65 63 74 27 73 | 0a 23 20 70 72 6f 70 65 |roject's|.# prope|
|00001f50| 72 74 79 20 22 41 70 70 | 20 45 78 65 63 75 74 61 |rty "App| Executa|
|00001f60| 62 6c 65 22 2e 0a 41 50 | 50 4c 49 43 20 3d 20 40 |ble"..AP|PLIC = @|
|00001f70| 56 50 28 61 70 70 29 0a | 23 20 48 65 72 65 20 74 |VP(app).|# Here t|
|00001f80| 68 69 73 20 6d 61 63 72 | 6f 20 70 72 6f 64 75 63 |his macr|o produc|
|00001f90| 65 73 3a 0a 23 20 41 50 | 50 4c 49 43 20 3d 20 48 |es:.# AP|PLIC = H|
|00001fa0| 65 6c 6c 6f 43 70 70 0a | 0a 23 20 41 20 72 75 6c |elloCpp.|.# A rul|
|00001fb0| 65 20 74 6f 20 65 63 68 | 6f 20 79 6f 75 72 20 6f |e to ech|o your o|
|00001fc0| 77 6e 20 6d 65 73 73 61 | 67 65 20 69 66 20 74 68 |wn messa|ge if th|
|00001fd0| 65 20 6d 61 69 6e 20 74 | 61 72 67 65 74 20 69 73 |e main t|arget is|
|00001fe0| 20 62 75 69 6c 74 20 6f | 6b 2e 0a 4d 61 69 6e 54 | built o|k..MainT|
|00001ff0| 61 72 67 65 74 20 3a 20 | 24 28 41 50 50 4c 49 43 |arget : |$(APPLIC|
|00002000| 29 2e 65 78 65 0a 09 65 | 63 68 6f 20 3d 3d 3d 3d |).exe..e|cho ====|
|00002010| 3d 3d 20 24 28 41 50 50 | 4c 49 43 29 2e 65 78 65 |== $(APP|LIC).exe|
|00002020| 20 68 61 73 20 62 65 65 | 6e 20 62 75 69 6c 74 20 | has bee|n built |
|00002030| 6f 6b 21 20 3d 3d 3d 3d | 3d 3d 20 3e 3e 5f 76 70 |ok! ====|== >>_vp|
|00002040| 2e 6d 73 67 0a 0a 23 20 | 41 20 72 75 6c 65 20 74 |.msg..# |A rule t|
|00002050| 6f 20 62 75 69 6c 64 20 | 74 68 65 20 65 78 65 63 |o build |the exec|
|00002060| 75 74 61 62 6c 65 20 66 | 69 6c 65 2e 0a 24 28 41 |utable f|ile..$(A|
|00002070| 50 50 4c 49 43 29 2e 65 | 78 65 20 3a 20 24 28 4d |PPLIC).e|xe : $(M|
|00002080| 59 5f 4f 42 4a 53 29 0a | 09 24 28 4c 49 4e 4b 29 |Y_OBJS).|.$(LINK)|
|00002090| 20 40 3c 3c 0a 2f 4f 55 | 54 3a 24 28 41 50 50 4c | @<<./OU|T:$(APPL|
|000020a0| 49 43 29 2e 65 78 65 0a | 2f 53 55 42 53 59 53 54 |IC).exe.|/SUBSYST|
|000020b0| 45 4d 3a 43 4f 4e 53 4f | 4c 45 0a 2f 50 44 42 3a |EM:CONSO|LE./PDB:|
|000020c0| 4e 4f 4e 45 0a 2f 4d 41 | 43 48 49 4e 45 3a 69 33 |NONE./MA|CHINE:i3|
|000020d0| 38 36 0a 2f 4e 4f 44 45 | 46 41 55 4c 54 4c 49 42 |86./NODE|FAULTLIB|
|000020e0| 0a 24 28 43 5f 4c 49 42 | 53 29 0a 24 28 4d 59 5f |.$(C_LIB|S).$(MY_|
|000020f0| 4f 42 4a 53 29 0a 3c 3c | 4e 4f 4b 45 45 50 0a 0a |OBJS).<<|NOKEEP..|
|00002100| 23 20 40 56 50 28 43 4f | 4d 50 49 4c 45 28 61 72 |# @VP(CO|MPILE(ar|
|00002110| 67 29 29 20 69 73 20 61 | 20 70 61 72 61 6d 65 74 |g)) is a| paramet|
|00002120| 65 72 69 7a 65 64 20 70 | 72 65 64 65 66 69 6e 65 |erized p|redefine|
|00002130| 64 20 6d 61 63 72 6f 2e | 20 49 74 20 65 78 70 61 |d macro.| It expa|
|00002140| 6e 64 73 20 74 6f 20 74 | 68 65 0a 23 20 73 65 74 |nds to t|he.# set|
|00002150| 20 6f 66 20 69 6e 73 74 | 72 75 63 74 69 6f 6e 73 | of inst|ructions|
|00002160| 20 77 68 69 63 68 20 62 | 75 69 6c 64 20 2a 2e 6f | which b|uild *.o|
|00002170| 62 6a 20 66 69 6c 65 73 | 20 66 72 6f 6d 20 73 6f |bj files| from so|
|00002180| 75 72 63 65 20 6f 6e 65 | 73 2e 20 41 72 67 75 6d |urce one|s. Argum|
|00002190| 65 6e 74 20 22 63 22 0a | 23 20 62 65 6c 6f 77 20 |ent "c".|# below |
|000021a0| 69 73 20 61 6e 20 65 78 | 74 65 6e 73 69 6f 6e 2e |is an ex|tension.|
|000021b0| 20 49 74 20 64 65 63 6c | 61 72 65 73 20 74 68 61 | It decl|ares tha|
|000021c0| 74 20 6f 6e 6c 79 20 2a | 2e 63 20 66 69 6c 65 73 |t only *|.c files|
|000021d0| 20 77 6f 75 6c 64 20 62 | 65 20 63 6f 6d 70 69 6c | would b|e compil|
|000021e0| 65 64 2e 0a 40 56 50 28 | 43 4f 4d 50 49 4c 45 28 |ed..@VP(|COMPILE(|
|000021f0| 63 29 29 0a 23 20 48 65 | 72 65 20 74 68 69 73 20 |c)).# He|re this |
|00002200| 6d 61 63 72 6f 20 65 78 | 70 61 6e 64 73 20 61 73 |macro ex|pands as|
|00002210| 3a 0a 23 20 24 28 4f 42 | 4a 53 5f 44 49 52 29 5c |:.# $(OB|JS_DIR)\|
|00002220| 4d 61 69 6e 2e 6f 62 6a | 20 3a 20 4d 61 69 6e 2e |Main.obj| : Main.|
|00002230| 63 20 24 28 56 50 58 43 | 50 50 44 45 50 5f 43 5f |c $(VPXC|PPDEP_C_|
|00002240| 4d 41 49 4e 5f 43 29 0a | 23 20 20 20 20 20 24 28 |MAIN_C).|# $(|
|00002250| 43 4f 4d 50 49 4c 45 5f | 46 4f 29 24 28 4f 42 4a |COMPILE_|FO)$(OBJ|
|00002260| 53 5f 44 49 52 29 5c 4d | 61 69 6e 2e 6f 62 6a 20 |S_DIR)\M|ain.obj |
|00002270| 4d 61 69 6e 2e 63 0a 23 | 20 48 65 72 65 20 56 50 |Main.c.#| Here VP|
|00002280| 58 43 50 50 44 45 50 5f | 43 5f 4d 41 49 4e 5f 43 |XCPPDEP_|C_MAIN_C|
|00002290| 20 69 73 20 75 6e 64 65 | 66 69 6e 65 64 20 62 65 | is unde|fined be|
|000022a0| 63 61 75 73 65 20 4d 61 | 69 6e 2e 63 20 68 61 73 |cause Ma|in.c has|
|000022b0| 20 6e 6f 20 64 65 70 65 | 6e 64 65 6e 63 65 73 2e | no depe|ndences.|
|000022c0| 0a 00 45 64 57 53 7a 00 | 10 00 00 00 d5 02 d5 02 |..EdWSz.|........|
|000022d0| f0 02 64 00 00 00 00 00 | 00 00 00 00 5f 61 74 72 |..d.....|...._atr|
|000022e0| 00 01 00 00 00 00 2e 2e | 2e 2e 00 00 00 00 00 01 |........|........|
|000022f0| 00 6e 61 6d 65 00 0d 00 | 00 00 4d 61 6b 65 46 69 |.name...|..MakeFi|
|00002300| 6c 65 2e 4d 53 56 43 01 | 00 66 69 6c 65 5f 67 72 |le.MSVC.|.file_gr|
|00002310| 70 00 00 00 00 00 00 5f | 40 5f 00 00 00 00 00 06 |p......_|@_......|
|00002320| 00 00 00 00 00 00 21 00 | 4d 59 53 65 74 00 10 00 |......!.|MYSet...|
|00002330| 00 00 00 00 05 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002340| 00 00 47 65 6e 00 20 00 | 00 00 00 00 00 00 01 00 |..Gen. .|........|
|00002350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002360| 00 00 00 00 00 00 00 00 | 00 00 54 78 74 42 6f 64 |........|..TxtBod|
|00002370| 79 00 2c 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |y.,.....|........|
|00002380| 00 00 00 00 00 00 00 00 | 00 00 13 00 00 00 23 69 |........|......#i|
|00002390| 6e 63 6c 75 64 65 20 3c | 73 74 64 69 6f 2e 68 3e |nclude <|stdio.h>|
|000023a0| 0a 00 45 64 57 53 7a 00 | 10 00 00 00 d5 02 d5 02 |..EdWSz.|........|
|000023b0| f0 02 64 00 00 00 00 00 | 00 00 00 00 5f 61 74 72 |..d.....|...._atr|
|000023c0| 00 01 00 00 00 00 2e 2e | 2e 2e 00 00 00 00 00 01 |........|........|
|000023d0| 00 6e 61 6d 65 00 06 00 | 00 00 4d 61 69 6e 2e 63 |.name...|..Main.c|
|000023e0| 01 00 66 69 6c 65 5f 67 | 72 70 00 00 00 00 00 00 |..file_g|rp......|
|000023f0| 5f 40 5f 00 00 00 00 00 | 07 00 00 00 02 00 28 00 |_@_.....|......(.|
|00002400| 4c 69 6e 6b 41 5f 48 00 | 04 00 00 00 0a 00 00 00 |LinkA_H.|........|
|00002410| 00 28 00 4c 69 6e 6b 41 | 5f 43 00 04 00 00 00 0a |.(.LinkA|_C......|
|00002420| 00 00 00 00 00 00 00 1f | 00 5f 61 74 72 00 01 00 |........|._atr...|
|00002430| 00 00 00 2e 2e 2e 2e 00 | 00 00 00 00 00 5f 40 5f |........|....._@_|
|00002440| 00 00 00 00 00 0a 00 00 | 00 01 00 23 00 4d 59 53 |........|...#.MYS|
|00002450| 65 74 00 04 00 00 00 00 | 00 00 00 47 65 6e 00 20 |et......|...Gen. |
|00002460| 00 00 00 05 00 00 00 09 | 00 00 00 01 00 00 00 02 |........|........|
|00002470| 00 00 00 03 00 00 00 05 | 00 00 00 00 00 00 00 00 |........|........|
|00002480| 00 00 00 54 78 74 42 6f | 64 79 00 6e 00 00 00 00 |...TxtBo|dy.n....|
|00002490| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024a0| 00 00 00 55 00 00 00 70 | 72 69 6e 74 66 28 22 45 |...U...p|rintf("E|
|000024b0| 78 61 6d 70 6c 65 31 3a | 20 48 65 6c 6c 6f 20 43 |xample1:| Hello C|
|000024c0| 2b 2b 20 57 6f 72 6c 64 | 21 22 29 3b 0a 70 72 69 |++ World|!");.pri|
|000024d0| 6e 74 66 28 22 5c 6e 50 | 72 65 73 73 20 61 20 6b |ntf("\nP|ress a k|
|000024e0| 65 79 20 74 6f 20 71 75 | 69 74 2e 2e 2e 22 29 3b |ey to qu|it...");|
|000024f0| 0a 67 65 74 63 68 61 72 | 28 29 3b 0a 00 45 64 57 |.getchar|();..EdW|
|00002500| 53 7a 00 10 00 00 00 d5 | 02 64 00 6b 02 64 00 00 |Sz......|.d.k.d..|
|00002510| 00 00 00 00 00 00 00 5f | 61 74 72 00 01 00 00 00 |......._|atr.....|
|00002520| 00 2e 2e 2e 2e 00 00 00 | 00 00 01 00 72 65 74 75 |........|....retu|
|00002530| 72 6e 00 03 00 00 00 69 | 6e 74 01 00 6e 61 6d 65 |rn.....i|nt..name|
|00002540| 00 04 00 00 00 6d 61 69 | 6e 01 00 61 72 67 73 00 |.....mai|n..args.|
|00002550| 00 00 00 00 01 00 64 65 | 63 6c 5f 65 6e 64 00 00 |......de|cl_end..|
|00002560| 00 00 00 01 00 69 66 64 | 65 66 00 00 00 00 00 00 |.....ifd|ef......|
|00002570| 5f 40 5f 00 00 00 00 00 | 0b 00 00 00 00 00 00 00 |_@_.....|........|
|00002580| 00 | |. | |
+--------+-------------------------+-------------------------+--------+--------+