Changeset 2020


Ignore:
Timestamp:
Nov 2, 2008, 1:52:34 AM (16 years ago)
Author:
bird
Message:

kbuild.c: $(target)_OBJS_ -> $(target)_2_OBJS. References #57.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/kmk/kbuild.c

    r2019 r2020  
    19491949    struct variable *pDefs, *pIncs, *pFlags, *pDeps, *pOrderDeps, *pDirDep, *pDep, *pVar, *pOutput, *pOutputMaybe;
    19501950    struct variable *pObj       = kbuild_set_object_name_and_dep_and_dirdep_and_PATH_target_source(pTarget, pSource, pOutBase, pObjSuff, "obj", &pDep, &pDirDep);
     1951    int fInstallOldVars = 0;
    19511952    char *pszDstVar, *pszDst, *pszSrcVar, *pszSrc, *pszVal, *psz;
    19521953    char *pszSavedVarBuf;
     
    20612062    */
    20622063    cch = sizeof("TOOL_") + pTool->value_length + sizeof("_COMPILE_") + pType->value_length + sizeof("_OUTPUT_MAYBE");
     2064    if (cch < pTarget->value_length + sizeof("$(_2_OBJS)"))
     2065        cch = pTarget->value_length + sizeof("$(_2_OBJS)");
    20632066    psz = pszSrcVar = alloca(cch);
    20642067    memcpy(psz, "TOOL_", sizeof("TOOL_") - 1);          psz += sizeof("TOOL_") - 1;
     
    21322135
    21332136    /*
    2134     $(target)_OBJS_ += $(obj)
     2137    $(target)_2_OBJS += $(obj)
    21352138    */
    2136     memcpy(pszDstVar + pTarget->value_length, "_OBJS_", sizeof("_OBJS_"));
    2137     pVar = kbuild_query_recursive_variable_n(pszDstVar, pTarget->value_length + sizeof("_OBJS_") - 1);
     2139    memcpy(pszDstVar + pTarget->value_length, "_2_OBJS", sizeof("_2_OBJS"));
     2140    pVar = kbuild_query_recursive_variable_n(pszDstVar, pTarget->value_length + sizeof("_2_OBJS") - 1);
     2141    fInstallOldVars |= iVer <= 2 && (!pVar || !pVar->value_length);
    21382142    if (pVar)
    21392143    {
     
    21432147    }
    21442148    else
    2145         define_variable_vl_global(pszDstVar, pTarget->value_length + sizeof("_OBJS_") - 1,
     2149        define_variable_vl_global(pszDstVar, pTarget->value_length + sizeof("_2_OBJS") - 1,
    21462150                                  pObj->value, pObj->value_length,
    21472151                                  1 /* duplicate_value */,
     
    21492153                                  0 /* recursive */,
    21502154                                  NULL /* flocp */);
     2155
     2156    /*
     2157     * Install legacy variables.
     2158     */
     2159    if (fInstallOldVars)
     2160    {
     2161        /* $(target)_OBJS_ = $($(target)_2_OBJS)*/
     2162        memcpy(pszDstVar + pTarget->value_length, "_OBJS_", sizeof("_OBJS_"));
     2163
     2164        pszSrcVar[0] = '$';
     2165        pszSrcVar[1] = '(';
     2166        memcpy(pszSrcVar + 2, pTarget->value, pTarget->value_length);
     2167        psz = pszSrcVar + 2 + pTarget->value_length;
     2168        memcpy(psz, "_2_OBJS)", sizeof("_2_OBJS)"));
     2169
     2170        define_variable_vl_global(pszDstVar, pTarget->value_length + sizeof("_OBJS_") - 1,
     2171                                  pszSrcVar, pTarget->value_length + sizeof("$(_2_OBJS)") - 1,
     2172                                  1 /* duplicate_value */,
     2173                                  o_file,
     2174                                  1 /* recursive */,
     2175                                  NULL /* flocp */);
     2176    }
    21512177
    21522178    /*
Note: See TracChangeset for help on using the changeset viewer.