Print this page
make: restore a couple of blocks of code from DISTRIBUTED that should have been TEAMWARE_MAKE_CMN

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/make/lib/mksh/macro.cc
          +++ new/usr/src/cmd/make/lib/mksh/macro.cc
↓ open down ↓ 1216 lines elided ↑ open up ↑
1217 1217              (value->hash.length > 0)) {
1218 1218                  vpath_defined = true;
1219 1219          }
1220 1220          /*
1221 1221           * For environment variables we also set the
1222 1222           * environment value each time.
1223 1223           */
1224 1224          if (macro->body.macro.exported) {
1225 1225                  static char     *env;
1226 1226  
1227      -                if (!reading_environment && (value != NULL) && value->dollar) {
     1227 +                if (!reading_environment && (value != NULL)) {
1228 1228                          Envvar  p;
1229 1229  
1230 1230                          for (p = envvar; p != NULL; p = p->next) {
1231 1231                                  if (p->name == name) {
1232 1232                                          p->value = value;
1233 1233                                          p->already_put = false;
1234 1234                                          goto found_it;
1235 1235                                  }
1236 1236                          }
1237 1237                          p = ALLOC(Envvar);
1238 1238                          p->name = name;
1239 1239                          p->value = value;
1240 1240                          p->next = envvar;
1241 1241                          p->env_string = NULL;
1242 1242                          p->already_put = false;
1243 1243                          envvar = p;
1244 1244  found_it:;
1245      -                } else {
     1245 +                } if (reading_environment || (value == NULL) || !value->dollar) {
1246 1246                          length = 2 + strlen(name->string_mb);
1247 1247                          if (value != NULL) {
1248 1248                                  length += strlen(value->string_mb);
1249 1249                          }
1250 1250                          Property env_prop = maybe_append_prop(name, env_mem_prop);
1251 1251                          /*
1252 1252                           * We use a permanent buffer to reset SUNPRO_DEPENDENCIES value.
1253 1253                           */
1254 1254                          if (!strncmp(name->string_mb, NOCATGETS("SUNPRO_DEPENDENCIES"), 19)) {
1255 1255                                  if (length >= sunpro_dependencies_buf_size) {
↓ open down ↓ 81 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX