Print this page
.PARALLEL implies everything else is to be run in serial.

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/make/bin/read2.cc
          +++ new/usr/src/cmd/make/bin/read2.cc
↓ open down ↓ 13 lines elided ↑ open up ↑
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
  23   23   * Use is subject to license terms.
       24 + *
       25 + * Copyright 2017 RackTop Systems.
  24   26   */
  25   27  
  26   28  /*
  27   29   *      read.c
  28   30   *
  29   31   *      This file contains the makefile reader.
  30   32   */
  31   33  
  32   34  /*
  33   35   * Included files
↓ open down ↓ 1237 lines elided ↑ open up ↑
1271 1273  
1272 1274          case no_parallel_special:
1273 1275                  if(svr4)
1274 1276                    break;
1275 1277                  /* Set the no_parallel bit for all the targets on */
1276 1278                  /* the dependency list */
1277 1279                  if (depes->used == 0) {
1278 1280                          /* only those explicitly made parallel */
1279 1281                          only_parallel = true;
1280 1282                          all_parallel = false;
     1283 +                } else {
     1284 +                        only_parallel = false;
     1285 +                        all_parallel = true;
1281 1286                  }
1282 1287                  for (; depes != NULL; depes = depes->next) {
1283 1288                          for (n = 0; n < depes->used; n++) {
1284 1289                                  if (trace_reader) {
1285 1290                                          (void) printf("%s:\t%s\n",
1286 1291                                                        no_parallel_name->string_mb,
1287 1292                                                        depes->names[n]->string_mb);
1288 1293                                  }
1289 1294                                  depes->names[n]->no_parallel = true;
1290 1295                                  depes->names[n]->parallel = false;
↓ open down ↓ 1 lines elided ↑ open up ↑
1292 1297                  }
1293 1298                  break;
1294 1299  
1295 1300          case parallel_special:
1296 1301                  if(svr4)
1297 1302                    break;
1298 1303                  if (depes->used == 0) {
1299 1304                          /* everything runs in parallel */
1300 1305                          all_parallel = true;
1301 1306                          only_parallel = false;
     1307 +                } else {
     1308 +                        all_parallel = false;
     1309 +                        only_parallel = true;
1302 1310                  }
1303 1311                  /* Set the parallel bit for all the targets on */
1304 1312                  /* the dependency list */
1305 1313                  for (; depes != NULL; depes = depes->next) {
1306 1314                          for (n = 0; n < depes->used; n++) {
1307 1315                                  if (trace_reader) {
1308 1316                                          (void) printf("%s:\t%s\n",
1309 1317                                                        parallel_name->string_mb,
1310 1318                                                        depes->names[n]->string_mb);
1311 1319                                  }
↓ open down ↓ 587 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX