Changeset 220
- Timestamp:
- Sep 2, 2002, 4:00:04 PM (23 years ago)
- Location:
- trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/helpers/dosh.h
r200 r220 95 95 96 96 ULONG doshQuerySysUptime(VOID); 97 98 APIRET doshDevIOCtl(HFILE hf, 99 ULONG ulCategory, 100 ULONG ulFunction, 101 PVOID pvParams, 102 ULONG cbParams, 103 PVOID pvData, 104 ULONG cbData); 97 105 98 106 /* ****************************************************************** … … 212 220 PBIOSPARAMETERBLOCK pdp, 213 221 BOOL fFixed); 214 215 APIRET XWPENTRY doshHasAudioCD(ULONG ulLogicalDrive,216 HFILE hfDrive,217 BOOL fMixedModeCD,218 PBOOL pfAudio);219 220 222 #endif 223 224 APIRET doshQueryCDDrives(PBYTE pcCDs, 225 PBYTE pbFirstCD); 226 227 APIRET XWPENTRY doshOpenDrive(ULONG ulLogicalDrive, 228 HFILE *phf); 229 230 APIRET XWPENTRY doshHasAudioCD(HFILE hfDrive, 231 BOOL fMixedModeCD, 232 PBOOL pfAudio); 233 234 #define CDFL_DOOROPEN 0x00000001 // bit 0 235 #define CDFL_DOORLOCKED 0x00000002 // bit 1 236 #define CDFL_COOKEDANDRAW 0x00000004 // bit 2 237 #define CDFL_READWRITE 0x00000008 // bit 3 238 #define CDFL_DATAANDAUDIO 0x00000010 // bit 4 239 #define CDFL_ISO9660INTERLEAVE 0x00000020 // bit 5 240 #define CDFL_PREFETCHSUPPORT 0x00000080 // bit 7 241 #define CDFL_AUDIOCHANNELMANIP 0x00000100 // bit 8 242 #define CDFL_MINUTESECONDADDR 0x00000200 // bit 9 243 #define CDFL_MODE2SUPPORT 0x00000400 // bit 10 244 #define CDFL_DISKPRESENT 0x00000800 // bit 11 245 #define CDFL_PLAYINGAUDIO 0x00001000 // bit 12 246 #define CDFL_CDDA 0x40000000 // bit 30 247 248 APIRET XWPENTRY doshQueryCDStatus(HFILE hfDrive, 249 PULONG pflStatus); 221 250 222 251 VOID XWPENTRY doshEnumDrives(PSZ pszBuffer, … … 232 261 #define ERROR_AUDIO_CD_ROM 10000 233 262 234 #define DRVFL_MIXEDMODECD 0x0001235 #define DRVFL_TOUCHFLOPPIES 0x0002236 #define DRVFL_CHECKEAS 0x0004237 #define DRVFL_CHECKLONGNAMES 0x0008263 #define DRVFL_MIXEDMODECD 0x0001 264 #define DRVFL_TOUCHFLOPPIES 0x0002 265 #define DRVFL_CHECKEAS 0x0004 266 #define DRVFL_CHECKLONGNAMES 0x0008 238 267 239 268 APIRET doshAssertDrive(ULONG ulLogicalDrive, … … 307 336 #define DRVTYPE_CDROM 4 308 337 #define DRVTYPE_LAN 5 309 #define DRVTYPE_PARTITIONABLEREMOVEABLE 6 338 #define DRVTYPE_PRT 6 339 // partitionable removeable (ZIP drive) 310 340 #define DRVTYPE_UNKNOWN 255 311 341 … … 323 353 // drive was booted from 324 354 325 // media flags: 326 327 #define DFL_MEDIA_PRESENT 0x 1000355 // media flags: all changed V0.9.21 (2002-08-31) [umoeller] 356 357 #define DFL_MEDIA_PRESENT 0x0100 328 358 // media is present in drive; 329 359 // -- always set for harddisks, … … 334 364 // -- set for CD-ROMS only if data 335 365 // CD-ROM is inserted 336 #define DFL_AUDIO_CD 0x 2000366 #define DFL_AUDIO_CD 0x0200 337 367 // set for CD-ROMs only, if an audio CD 338 368 // is currently inserted; in that case, 339 369 // DFL_MEDIA_PRESENT is _not_ set 340 #define DFL_SUPPORTS_EAS 0x4000 370 #define DFL_DOOR_OPEN 0x0400 371 // set for CD-ROMs only if the CD-ROM 372 // door is currently open 373 // V0.9.21 (2002-08-31) [umoeller] 374 375 #define DFL_SUPPORTS_EAS 0x0800 341 376 // drive supports extended attributes 342 377 // (assumption based on DosFSCtl, 343 378 // might not be correct for remote drives; 344 379 // reports correctly for FAT32 though) 345 #define DFL_SUPPORTS_LONGNAMES 0x 8000380 #define DFL_SUPPORTS_LONGNAMES 0x1000 346 381 // drive supports long names; this does not 347 382 // necessarily mean that we support all IFS 348 383 // characters also 384 349 385 350 386 // the following are only valid if DFL_MEDIA_PRESENT is set; -
trunk/src/helpers/_test_dosh.c
r209 r220 34 34 int main (int argc, char *argv[]) 35 35 { 36 ULONG ul; 36 APIRET arc; 37 38 BYTE cCDs, 39 bFirstCD; 40 41 ULONG ul; 37 42 38 43 printf("Drive checker ("__DATE__")\n"); … … 44 49 { 45 50 XDISKINFO xdi; 46 APIRETarc = doshGetDriveInfo(ul,47 48 51 arc = doshGetDriveInfo(ul, 52 0, // DRVFL_TOUCHFLOPPIES, 53 &xdi); 49 54 50 55 printf(" %c: ", xdi.cDriveLetter, ul); … … 86 91 case DRVTYPE_CDROM: pcsz = "CDROM "; break; 87 92 case DRVTYPE_LAN: pcsz = "LAN "; break; 88 case DRVTYPE_P ARTITIONABLEREMOVEABLE:93 case DRVTYPE_PRT: 89 94 pcsz = "PRTREM"; break; 90 95 default: … … 122 127 } 123 128 } 129 130 if (!(arc = doshQueryCDDrives(&cCDs, 131 &bFirstCD))) 132 { 133 printf("First CD-ROM drive is %c:\n", bFirstCD); 134 printf("%d CD-ROM drive(s) present\n", cCDs); 135 } 136 else 137 printf("doshQueryCDDrives returned %d\n", arc); 138 139 { 140 #pragma pack(1) 141 struct 142 { 143 BYTE ci; 144 USHORT usDrive; 145 } parms; 146 #pragma pack() 147 148 USHORT fs = 123; 149 150 parms.ci = 0; 151 parms.usDrive = bFirstCD - 'A'; 152 153 if (!(arc = doshDevIOCtl((HFILE)-1, 154 IOCTL_DISK, 155 DSK_GETLOCKSTATUS, 156 &parms, sizeof(parms), 157 &fs, sizeof(fs)))) 158 { 159 printf("IOCTL_DISK DSK_GETLOCKSTATUS returned 0x%lX\n", fs); 160 switch (fs & 0x03) 161 { 162 case 0: 163 printf(" Lock/Unlock/Eject/Status functions not supported\n"); 164 break; 165 166 case 1: 167 printf(" Drive locked; Lock/Unlock/Eject functions supported\n"); 168 break; 169 170 case 2: 171 printf(" Drive unlocked; Lock/Unlock/Eject functions supported\n"); 172 break; 173 174 case 3: 175 printf(" Lock Status not supported; Lock/Unlock/Eject functions supported\n"); 176 break; 177 } 178 179 if (fs & 0x04) 180 printf(" Media in drive\n"); 181 else 182 printf(" No media in drive\n"); 183 184 } 185 else 186 printf("ioctl DSK_GETLOCKSTATUS returned %d\n", arc); 187 } 188 189 { 190 HFILE hf; 191 ULONG dummy; 192 CHAR szDrive[] = "C:"; 193 szDrive[0] = bFirstCD; 194 if (arc = DosOpen(szDrive, // "C:", "D:", ... 195 &hf, 196 &dummy, 197 0, 198 FILE_NORMAL, 199 // OPEN_ACTION_FAIL_IF_NEW 200 OPEN_ACTION_OPEN_IF_EXISTS, 201 OPEN_FLAGS_DASD 202 | OPEN_FLAGS_FAIL_ON_ERROR 203 // ^^^ if this flag is not set, we get the white 204 // hard-error box 205 | OPEN_FLAGS_NOINHERIT // V0.9.6 (2000-11-25) [pr] 206 // | OPEN_ACCESS_READONLY // V0.9.13 (2001-06-14) [umoeller] 207 | OPEN_SHARE_DENYNONE, 208 NULL)) 209 printf("DosOpen(\"%s\") returned %d\n", 210 szDrive, 211 arc); 212 else 213 { 214 ULONG fl; 215 if (!(arc = doshQueryCDStatus(hf, &fl))) 216 { 217 #define FLAG(f) f, # f 218 struct 219 { 220 ULONG fl; 221 PCSZ pcszFl; 222 } aFlags[] = 223 { 224 FLAG(CDFL_DOOROPEN), 225 FLAG(CDFL_DOORLOCKED), 226 FLAG(CDFL_COOKEDANDRAW), 227 FLAG(CDFL_READWRITE), 228 FLAG(CDFL_DATAANDAUDIO), 229 FLAG(CDFL_ISO9660INTERLEAVE ), 230 FLAG(CDFL_PREFETCHSUPPORT), 231 FLAG(CDFL_AUDIOCHANNELMANIP), 232 FLAG(CDFL_MINUTESECONDADDR), 233 FLAG(CDFL_MODE2SUPPORT), 234 FLAG(CDFL_DISKPRESENT), 235 FLAG(CDFL_PLAYINGAUDIO), 236 FLAG(CDFL_CDDA), 237 }; 238 ULONG ul; 239 240 printf("IOCTL_CDROMDISK CDROMDISK_DEVICESTATUS returned 0x%lX\n", fl); 241 242 for (ul = 0; 243 ul < ARRAYITEMCOUNT(aFlags); 244 ++ul) 245 { 246 if (fl & aFlags[ul].fl) 247 printf(" + "); 248 else 249 printf(" - "); 250 printf("%s\n", aFlags[ul].pcszFl); 251 } 252 } 253 else 254 printf("IOCTL_CDROMDISK CDROMDISK_DEVICESTATUS returned error 0x%lX (%d)\n", 255 arc, arc); 256 257 DosClose(hf); 258 } 259 } 124 260 } -
trunk/src/helpers/cctl_splitwin.c
r214 r220 212 212 213 213 case WM_WINDOWPOSCHANGED: 214 {215 214 // this msg is passed two SWP structs: 216 215 // one for the old, one for the new data 217 216 // (from PM docs) 218 PSWP pswpNew = (PSWP)mp1; 219 220 if (pswpNew->fl & SWP_SIZE) 221 { 217 if (((PSWP)mp1)->fl & SWP_SIZE) 222 218 // _Pmpf(("ctl_fnwpSplitWindow, WM_WINDOWPOSCHANGED")); 223 219 ctlUpdateSplitWindow(hwndSplit); 224 } 220 225 221 mrc = WinDefWindowProc(hwndSplit, msg, mp1, mp2); 226 break; }222 break; 227 223 228 224 /* … … 251 247 { 252 248 HWND hwndSplitBar = WinWindowFromID(hwndSplit, ID_SPLITBAR); 253 PSPLITBARDATA pData = (PSPLITBARDATA)WinQueryWindowULong(hwndSplitBar,254 QWL_USER);255 if (pData)249 PSPLITBARDATA pData; 250 if (pData = (PSPLITBARDATA)WinQueryWindowULong(hwndSplitBar, 251 QWL_USER)) 256 252 { 257 253 pData->hwndLinked1 = (HWND)mp1; … … 263 259 FALSE); // no redraw 264 260 } 265 break; } 261 } 262 break; 266 263 267 264 default: … … 445 442 pData->lcolInactiveBorder); 446 443 447 if ((pData->sbcd.ulCreateFlags & SBCF_3DSUNK) == 0) 444 if (!(pData->sbcd.ulCreateFlags & (SBCF_3DSUNK | SBCF_3DEXPLORERSTYLE))) 445 // V0.9.21 (2002-08-31) [umoeller] 448 446 { 449 447 GpiSetColor(hps, pData->lcol3DLight); -
trunk/src/helpers/dosh.c
r217 r220 685 685 { 686 686 if (pdp->fsDeviceAttr & DEVATTR_PARTITIONALREMOVEABLE) // 0x08 687 return DRVTYPE_PARTITIONABLEREMOVEABLE; 688 else if (fFixed) 687 return DRVTYPE_PRT; 688 689 if (fFixed) 689 690 return DRVTYPE_HARDDISK; 690 else if ( (pdp->bDeviceType == 7) // "other" 691 && (pdp->usBytesPerSector == 2048) 692 && (pdp->usSectorsPerTrack == (USHORT)-1) 693 ) 694 return DRVTYPE_CDROM; 695 else switch (pdp->bDeviceType) 691 692 if ( (pdp->bDeviceType == 7) // "other" 693 && (pdp->usBytesPerSector == 2048) 694 && (pdp->usSectorsPerTrack == (USHORT)-1) 695 ) 696 return DRVTYPE_CDROM; 697 698 switch (pdp->bDeviceType) 696 699 { 697 700 case DEVTYPE_TAPE: // 6 … … 708 711 ) 709 712 return DRVTYPE_FLOPPY; 710 else 711 713 714 return DRVTYPE_VDISK; 712 715 713 716 case DEVTYPE_RWOPTICAL: // 8, what is this?!? … … 716 719 } 717 720 718 return (DRVTYPE_UNKNOWN); 721 return DRVTYPE_UNKNOWN; 722 } 723 724 /* 725 *@@ doshQueryCDDrives: 726 * returns the no. of CD-ROM drives on the system 727 * as well as the drive letter of the first 728 * CD-ROM drive. 729 * 730 *@@added V0.9.21 (2002-08-31) [umoeller] 731 */ 732 733 APIRET doshQueryCDDrives(PBYTE pcCDs, // out: CD-ROM drives count 734 PCHAR pcFirstCD) // out: drive letter of first CD 735 { 736 APIRET arc; 737 HFILE hfCDROM; 738 ULONG ulAction; 739 740 if (!(arc = DosOpen("\\DEV\\CD-ROM2$", 741 &hfCDROM, 742 &ulAction, 743 0, 744 FILE_NORMAL, 745 OPEN_ACTION_OPEN_IF_EXISTS, 746 OPEN_SHARE_DENYNONE | OPEN_ACCESS_READONLY, 747 NULL))) 748 { 749 struct 750 { 751 USHORT cCDs; 752 USHORT usFirstCD; // 0 == A:, 1 == B:, ... 753 } cdinfo; 754 755 ULONG cb = sizeof(cdinfo); 756 757 if (!(arc = DosDevIOCtl(hfCDROM, 758 0x82, 759 0x60, 760 NULL, 761 0, 762 NULL, 763 &cdinfo, 764 cb, 765 &cb))) 766 { 767 *pcCDs = cdinfo.cCDs; 768 *pcFirstCD = cdinfo.usFirstCD + 'A'; 769 } 770 771 DosClose(hfCDROM); 772 } 773 774 return arc; 775 } 776 777 /* 778 *@@ doshOpenDrive: 779 * opens the given logical drive using 780 * DosOpen with OPEN_FLAGS_DASD. Use 781 * the file handle returned from here 782 * for doshHasAudioCD and doshQueryCDStatus. 783 * 784 * If NO_ERROR is returned, use DosClose 785 * to close the device again. 786 * 787 *@@added V0.9.21 (2002-08-31) [umoeller] 788 */ 789 790 APIRET doshOpenDrive(ULONG ulLogicalDrive, 791 HFILE *phf) // out: open drive's file handle 792 { 793 ULONG dummy; 794 795 CHAR szDrive[] = "C:"; 796 szDrive[0] = 'A' + ulLogicalDrive - 1; 797 798 return DosOpen(szDrive, // "C:", "D:", ... 799 phf, 800 &dummy, 801 0, 802 FILE_NORMAL, 803 // OPEN_ACTION_FAIL_IF_NEW 804 OPEN_ACTION_OPEN_IF_EXISTS, 805 OPEN_FLAGS_DASD 806 | OPEN_FLAGS_FAIL_ON_ERROR 807 // ^^^ if this flag is not set, we get the white 808 // hard-error box 809 | OPEN_FLAGS_NOINHERIT // V0.9.6 (2000-11-25) [pr] 810 // | OPEN_ACCESS_READONLY // V0.9.13 (2001-06-14) [umoeller] 811 | OPEN_SHARE_DENYNONE, 812 NULL); 719 813 } 720 814 … … 729 823 * 730 824 *@@added V0.9.14 (2001-08-01) [umoeller] 731 * /732 733 APIRET doshHasAudioCD(ULONG ulLogicalDrive, 734 825 *@@changed V0.9.21 (2002-08-31) [umoeller]: removed ulLogicalDrive which was not needed 826 */ 827 828 APIRET doshHasAudioCD(HFILE hfDrive, // in: DASD open 735 829 BOOL fMixedModeCD, 736 830 PBOOL pfAudio) … … 758 852 else 759 853 { 854 #pragma pack(1) // V0.9.21 (2002-08-31) [umoeller] 855 760 856 struct { 761 857 UCHAR ucFirstTrack, … … 763 859 ULONG ulLeadOut; 764 860 } cdat; 861 862 struct { 863 ULONG ulTrackAddress; 864 BYTE bFlags; 865 } trackdata; 866 867 #pragma pack() 765 868 766 869 // get track count … … 780 883 { 'C', 'D', '0', '1', (UCHAR)i }; 781 884 782 struct {783 ULONG ulTrackAddress;784 BYTE bFlags;785 } trackdata;786 787 885 if (!(arc = doshDevIOCtl(hfDrive, 788 886 IOCTL_CDROMAUDIO, … … 828 926 // _Pmpf((" CDROMDISK_GETDRIVER returned %d", arc)); 829 927 arc = NO_ERROR; 928 } 929 930 return arc; 931 } 932 933 /* 934 *@@ doshQueryCDStatus: 935 * returns the status bits of a CD-ROM drive. 936 * This calls the CDROMDISK_DEVICESTATUS 937 * ioctl. 938 * 939 * If NO_ERROR is returned, *pflStatus has 940 * received the following flags: 941 * 942 * -- CDFL_DOOROPEN (bit 0) 943 * 944 * -- CDFL_DOORLOCKED (bit 1) 945 * 946 * and many more (see dosh.h). 947 * 948 * Actually I wrote this function to have a way to 949 * find out whether the drive door is already open. 950 * But thanks to IBM's thoughtful design, this ioctl 951 * is 99% useless for that purpose since it requires 952 * a DASD disk handle to be passed in, which cannot 953 * be obtained if there's no media in the drive. 954 * 955 * In other words, it is absolutely impossible to 956 * ever get the CDFL_DOOROPEN flag, because if the 957 * door is open, DosOpen already fails on the drive. 958 * As a consequence, it is seems to be impossible 959 * to find out if the door is open with OS/2. 960 * 961 *@@added V0.9.21 (2002-08-31) [umoeller] 962 */ 963 964 APIRET doshQueryCDStatus(HFILE hfDrive, // in: DASD open 965 PULONG pflStatus) // out: CD-ROM status bits 966 { 967 APIRET arc; 968 969 CHAR cds1[4] = { 'C', 'D', '0', '1' }; 970 ULONG fl; 971 972 *pflStatus = 0; 973 974 if (!(arc = doshDevIOCtl(hfDrive, 975 IOCTL_CDROMDISK, 976 CDROMDISK_DEVICESTATUS, 977 &cds1, sizeof(cds1), 978 &fl, sizeof(fl)))) 979 { 980 *pflStatus = fl; 830 981 } 831 982 … … 965 1116 } 966 1117 967 return (cBootDrive);1118 return cBootDrive; 968 1119 } 969 1120 … … 976 1127 * Use doshIsFixedDisk to find out. 977 1128 * 1129 * Returns: 1130 * 1131 * -- NO_ERROR: media is present. 1132 * 1133 * -- ERROR_AUDIO_CD_ROM (10000): audio CD-ROM is present. 1134 * 1135 * -- ERROR_NOT_READY (21) or other: drive has no media. 1136 * 978 1137 *@@added V0.9.16 (2002-01-13) [umoeller] 979 1138 */ 980 1139 981 APIRET doshQueryMedia(ULONG ulLogicalDrive, 1140 APIRET doshQueryMedia(ULONG ulLogicalDrive, // in: 1 for A:, 2 for B:, 3 for C:, ... 982 1141 BOOL fCDROM, // in: is drive CD-ROM? 983 1142 ULONG fl) // in: DRVFL_* flags … … 985 1144 APIRET arc; 986 1145 987 HFILE hf = NULLHANDLE; 988 ULONG dummy; 989 990 CHAR szDrive[3] = "C:"; 991 szDrive[0] = 'A' + ulLogicalDrive - 1; 992 993 arc = DosOpen(szDrive, // "C:", "D:", ... 994 &hf, 995 &dummy, 996 0, 997 FILE_NORMAL, 998 OPEN_ACTION_FAIL_IF_NEW 999 | OPEN_ACTION_OPEN_IF_EXISTS, 1000 OPEN_FLAGS_DASD 1001 | OPEN_FLAGS_FAIL_ON_ERROR 1002 | OPEN_FLAGS_NOINHERIT // V0.9.6 (2000-11-25) [pr] 1003 // | OPEN_ACCESS_READONLY // V0.9.13 (2001-06-14) [umoeller] 1004 | OPEN_SHARE_DENYNONE, 1005 NULL); 1146 HFILE hf; 1147 1148 // exported this code to doshOpenDrive V0.9.21 (2002-08-31) [umoeller] 1149 arc = doshOpenDrive(ulLogicalDrive, 1150 &hf); 1006 1151 1007 1152 // this still returns NO_ERROR for audio CDs in a … … 1017 1162 { 1018 1163 BOOL fAudio; 1019 if ( (!(arc = doshHasAudioCD(ulLogicalDrive, 1020 hf, 1164 if ( (!(arc = doshHasAudioCD(hf, 1021 1165 ((fl & DRVFL_MIXEDMODECD) != 0), 1022 1166 &fAudio))) … … 1179 1323 * file systems so we will always have a 1180 1324 * value for the DFL_SUPPORTS_EAS flags. 1181 * Otherwise that flag might or might not1182 * be set correctly.1183 *1184 1325 * The EA support returned by DosFSCtl 1185 1326 * might not be correct for remote file … … 1187 1328 * that query. 1188 1329 * 1189 * -- DRVFL_CHECKLONGNAMES: drive should always be 1190 * checked for longname support. If this is 1330 * If not set, we set DFL_SUPPORTS_EAS only 1331 * for file systems such as HPFS and JFS 1332 * that are known to support EAs. 1333 * 1334 * -- DRVFL_CHECKLONGNAMES: drive should be 1335 * tested for longname support. If this is 1191 1336 * set, we will try a DosOpen("\\long.name.file") 1192 1337 * on the drive to see if it supports long … … 1376 1521 pdi->bType = bTemp; 1377 1522 1378 if (bTemp == DRVTYPE_P ARTITIONABLEREMOVEABLE)1523 if (bTemp == DRVTYPE_PRT) 1379 1524 pdi->flDevice |= DFL_FIXED 1380 1525 | DFL_PARTITIONABLEREMOVEABLE; -
trunk/src/helpers/helpers_pre.in
r215 r220 41 41 42 42 PLAINCOBJS = \ 43 $(OUTPUTDIR)\encodings.obj 44 $(OUTPUTDIR)\linklist.obj 45 $(OUTPUTDIR)\math.obj 46 $(OUTPUTDIR)\regexp.obj 47 $(OUTPUTDIR)\tree.obj 48 $(OUTPUTDIR)\xml.obj 43 $(OUTPUTDIR)\encodings.obj\ 44 $(OUTPUTDIR)\linklist.obj\ 45 $(OUTPUTDIR)\math.obj\ 46 $(OUTPUTDIR)\regexp.obj\ 47 $(OUTPUTDIR)\tree.obj\ 48 $(OUTPUTDIR)\xml.obj\ 49 49 50 50 XMLOBJS = \ 51 $(OUTPUTDIR)\xmlparse.obj 52 $(OUTPUTDIR)\xmlrole.obj 53 $(OUTPUTDIR)\xmltok.obj 51 $(OUTPUTDIR)\xmlparse.obj\ 52 $(OUTPUTDIR)\xmlrole.obj\ 53 $(OUTPUTDIR)\xmltok.obj\ 54 54 55 55 CPOBJS = $(PLAINCOBJS) $(XMLOBJS) \ 56 $(OUTPUTDIR)\apmh.obj 57 $(OUTPUTDIR)\datetime.obj 58 $(OUTPUTDIR)\debug.obj 59 $(OUTPUTDIR)\dosh.obj 60 $(OUTPUTDIR)\dosh2.obj 61 $(OUTPUTDIR)\eah.obj 62 $(OUTPUTDIR)\except.obj 63 $(OUTPUTDIR)\exeh.obj 64 $(OUTPUTDIR)\lan.obj 65 $(OUTPUTDIR)\level.obj 66 $(OUTPUTDIR)\nls.obj 67 $(OUTPUTDIR)\nlscache.obj 68 $(OUTPUTDIR)\procstat.obj 69 $(OUTPUTDIR)\prfh.obj 70 $(OUTPUTDIR)\prfh2.obj 71 $(OUTPUTDIR)\resh.obj 72 $(OUTPUTDIR)\sem.obj 73 $(OUTPUTDIR)\interlock.obj 74 $(OUTPUTDIR)\stringh.obj 75 $(OUTPUTDIR)\syssound.obj 76 $(OUTPUTDIR)\tmsgfile.obj 77 $(OUTPUTDIR)\vcard.obj 78 $(OUTPUTDIR)\wphandle.obj 79 $(OUTPUTDIR)\xprf.obj 80 $(OUTPUTDIR)\xprf2.obj 56 $(OUTPUTDIR)\apmh.obj\ 57 $(OUTPUTDIR)\datetime.obj\ 58 $(OUTPUTDIR)\debug.obj\ 59 $(OUTPUTDIR)\dosh.obj\ 60 $(OUTPUTDIR)\dosh2.obj\ 61 $(OUTPUTDIR)\eah.obj\ 62 $(OUTPUTDIR)\except.obj\ 63 $(OUTPUTDIR)\exeh.obj\ 64 $(OUTPUTDIR)\lan.obj\ 65 $(OUTPUTDIR)\level.obj\ 66 $(OUTPUTDIR)\nls.obj\ 67 $(OUTPUTDIR)\nlscache.obj\ 68 $(OUTPUTDIR)\procstat.obj\ 69 $(OUTPUTDIR)\prfh.obj\ 70 $(OUTPUTDIR)\prfh2.obj\ 71 $(OUTPUTDIR)\resh.obj\ 72 $(OUTPUTDIR)\sem.obj\ 73 $(OUTPUTDIR)\interlock.obj\ 74 $(OUTPUTDIR)\stringh.obj\ 75 $(OUTPUTDIR)\syssound.obj\ 76 $(OUTPUTDIR)\tmsgfile.obj\ 77 $(OUTPUTDIR)\vcard.obj\ 78 $(OUTPUTDIR)\wphandle.obj\ 79 $(OUTPUTDIR)\xprf.obj\ 80 $(OUTPUTDIR)\xprf2.obj\ 81 81 $(OUTPUTDIR)\xstring.obj 82 82 83 83 OBJS = $(CPOBJS) \ 84 $(OUTPUTDIR)\animate.obj 85 $(OUTPUTDIR)\apps.obj 86 $(OUTPUTDIR)\cctl_chart.obj 87 $(OUTPUTDIR)\cctl_checkcnr.obj 88 $(OUTPUTDIR)\cctl_combo.obj 89 $(OUTPUTDIR)\cctl_progbar.obj 90 $(OUTPUTDIR)\cctl_splitwin.obj 91 $(OUTPUTDIR)\cctl_tooltip.obj 92 $(OUTPUTDIR)\comctl.obj 93 $(OUTPUTDIR)\configsys.obj 94 $(OUTPUTDIR)\cnrh.obj 95 $(OUTPUTDIR)\dialog.obj 96 $(OUTPUTDIR)\gpih.obj 97 $(OUTPUTDIR)\memdebug.obj 98 $(OUTPUTDIR)\memdebug_win.obj 99 $(OUTPUTDIR)\shapewin.obj 100 $(OUTPUTDIR)\threads.obj 101 $(OUTPUTDIR)\textview.obj 102 $(OUTPUTDIR)\textv_html.obj 103 $(OUTPUTDIR)\timer.obj 84 $(OUTPUTDIR)\animate.obj\ 85 $(OUTPUTDIR)\apps.obj\ 86 $(OUTPUTDIR)\cctl_chart.obj\ 87 $(OUTPUTDIR)\cctl_checkcnr.obj\ 88 $(OUTPUTDIR)\cctl_combo.obj\ 89 $(OUTPUTDIR)\cctl_progbar.obj\ 90 $(OUTPUTDIR)\cctl_splitwin.obj\ 91 $(OUTPUTDIR)\cctl_tooltip.obj\ 92 $(OUTPUTDIR)\comctl.obj\ 93 $(OUTPUTDIR)\configsys.obj\ 94 $(OUTPUTDIR)\cnrh.obj\ 95 $(OUTPUTDIR)\dialog.obj\ 96 $(OUTPUTDIR)\gpih.obj\ 97 $(OUTPUTDIR)\memdebug.obj\ 98 $(OUTPUTDIR)\memdebug_win.obj\ 99 $(OUTPUTDIR)\shapewin.obj\ 100 $(OUTPUTDIR)\threads.obj\ 101 $(OUTPUTDIR)\textview.obj\ 102 $(OUTPUTDIR)\textv_html.obj\ 103 $(OUTPUTDIR)\timer.obj\ 104 104 $(OUTPUTDIR)\winh.obj 105 105 -
trunk/src/helpers/makefile
r209 r220 149 149 # to execute the LIB command once for each dependent file in the list. 150 150 151 $(OUTPUTDIR)\helpers.lib: $(OBJS) 151 $(OUTPUTDIR)\helpers.lib: $(OBJS) makefile 152 152 !ifdef EMX 153 153 !emxomfar cr $* $? 154 154 !else 155 !ilib /nol /nob $* -+$?; 155 rm -f $@ 156 ilib /nol /nob $@ @<<$(TEMP)\ilib.lnk 157 +$(OBJS: =&^ 158 ); 159 <<KEEP 156 160 !endif 157 161 158 162 # same thing for cp.lib 159 $(OUTPUTDIR)\cp.lib: $(CPOBJS) 163 $(OUTPUTDIR)\cp.lib: $(CPOBJS) makefile 160 164 !ifdef EMX 161 165 !emxomfar cr $* $? 162 166 !else 163 !ilib /nol /nob $* -+$?; 167 rm -f $@ 168 ilib /nol /nob $@ @<< 169 +$(CPOBJS: =&^ 170 ); 171 <<KEEP 164 172 !endif 165 173 166 174 # same thing for plainc.lib 167 $(OUTPUTDIR)\plainc.lib: $(PLAINCOBJS) 175 $(OUTPUTDIR)\plainc.lib: $(PLAINCOBJS) makefile 168 176 !ifdef EMX 169 177 !emxomfar cr $* $? 170 178 !else 171 !ilib /nol /nob $* -+$?; 179 rm -f $@ 180 ilib /nol /nob $@ @<< 181 +$(PLAINCOBJS: =&^ 182 ); 183 <<KEEP 172 184 !endif 173 185
Note:
See TracChangeset
for help on using the changeset viewer.