Changeset 2614
- Timestamp:
- Jul 30, 2012, 1:17:24 AM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kObjCache/kObjCache.c
r2613 r2614 1568 1568 * @param papszArgv The argument vector. 1569 1569 * @param cArgc The number of entries in the vector. 1570 * @param pszIgnorePath Path to ignore when encountered at the end of arguments. 1571 * (Not quite safe for simple file names, but what the heck.) 1570 * @param pszIgnorePath1 Path to ignore when encountered at the end of 1571 * arguments. (Not quite safe for simple file names, 1572 * but what the heck.) 1573 * @param pszIgnorePath2 Path to ignore when encountered at the end of 1574 * arguments. (Not quite safe for simple file names, 1575 * but what the heck.) 1572 1576 * @param pSum Where to store the check sum. 1573 1577 */ 1574 1578 static void kOCEntryCalcArgvSum(PKOCENTRY pEntry, const char * const *papszArgv, unsigned cArgc, 1575 const char *pszIgnorePath, PKOCSUM pSum) 1576 { 1577 size_t cchIgnorePath = strlen(pszIgnorePath); 1579 const char *pszIgnorePath1, const char *pszIgnorePath2, PKOCSUM pSum) 1580 { 1581 size_t cchIgnorePath1 = strlen(pszIgnorePath1); 1582 size_t cchIgnorePath2 = pszIgnorePath2 ? strlen(pszIgnorePath2) : ~(size_t)0; 1578 1583 KOCSUMCTX Ctx; 1579 1584 unsigned i; 1580 1585 1586 fprintf(stderr, "kOCEntryCalcArgvSum: ign2='%s'\n", pszIgnorePath2); 1587 1581 1588 kOCSumInitWithCtx(pSum, &Ctx); 1582 1589 for (i = 0; i < cArgc; i++) 1583 1590 { 1584 1591 size_t cch = strlen(papszArgv[i]); 1585 if ( cch < cchIgnorePath 1586 || !ArePathsIdenticalN(papszArgv[i] + cch - cchIgnorePath, pszIgnorePath, cch)) 1592 if ( ( cch < cchIgnorePath1 1593 || !ArePathsIdenticalN(papszArgv[i] + cch - cchIgnorePath1, pszIgnorePath1, cch)) 1594 && ( cch < cchIgnorePath2 1595 || !ArePathsIdenticalN(papszArgv[i] + cch - cchIgnorePath2, pszIgnorePath2, cch)) ) 1596 { 1587 1597 kOCSumUpdate(pSum, &Ctx, papszArgv[i], cch + 1); 1598 kOCSumInfo(pSum, 0, papszArgv[i]); 1599 } 1600 else fprintf(stderr, "kOCEntryCalcArgvSum: Ignoring '%s'\n", papszArgv[i]); 1588 1601 } 1589 1602 kOCSumFinalize(pSum, &Ctx); … … 1761 1774 KOCSUM Sum; 1762 1775 kOCEntryCalcArgvSum(pEntry, (const char * const *)pEntry->Old.papszArgvCompile, 1763 pEntry->Old.cArgvCompile, pEntry->Old.pszObjName, &Sum); 1776 pEntry->Old.cArgvCompile, pEntry->Old.pszObjName, pEntry->Old.pszCppName, 1777 &Sum); 1764 1778 fBad = !kOCSumIsEqual(&pEntry->Old.SumCompArgv, &Sum); 1765 1779 } … … 1948 1962 pEntry->New.papszArgvCompile[i] = NULL; /* for exev/spawnv */ 1949 1963 1950 kOCEntryCalcArgvSum(pEntry, papszArgvCompile, cArgvCompile, pEntry->New.pszObjName, &pEntry->New.SumCompArgv); 1964 fprintf(stderr, "kOCEntrySetCompileArgv: '%s' '%s'", pEntry->New.pszObjName, pEntry->New.pszCppName); 1965 kOCEntryCalcArgvSum(pEntry, papszArgvCompile, cArgvCompile, pEntry->New.pszObjName, pEntry->New.pszCppName, 1966 &pEntry->New.SumCompArgv); 1951 1967 kOCSumInfo(&pEntry->New.SumCompArgv, 4, "comp-argv"); 1968 fprintf(stderr, "kOCEntrySetCompileArgv: done\n"); 1952 1969 1953 1970 /* … … 4446 4463 pEntry = kOCEntryCreate(pszEntryFile); 4447 4464 kOCEntryRead(pEntry); 4465 kOCEntrySetCppName(pEntry, pszPreCompName); 4448 4466 kOCEntrySetCompileObjName(pEntry, pszObjName); 4449 4467 kOCEntrySetCompileArgv(pEntry, papszArgvCompile, cArgvCompile); 4450 4468 kOCEntrySetTarget(pEntry, pszTarget); 4451 kOCEntrySetCppName(pEntry, pszPreCompName);4452 4469 kOCEntrySetPipedMode(pEntry, fRedirPreCompStdOut, fRedirCompileStdIn, pszNmPipeCompile); 4453 4470 kOCEntrySetDepFilename(pEntry, pszMakeDepFilename, fMakeDepFixCase, fMakeDepQuiet, fMakeDepGenStubs);
Note:
See TracChangeset
for help on using the changeset viewer.