Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Apr 1999 20:15:13 +0000
From:      Bob Bishop <rb@gid.co.uk>
To:        current@FreeBSD.ORG
Cc:        obrien@NUXI.com
Subject:   Band-aid for building world with -jn [PATCH]
Message-ID:  <l0302092db3301929ea8c@[194.32.164.2]>

next in thread | raw e-mail | index | archive | help
Hi,

The following patch makes -jn work. I don't claim it's any sort of
long-term solution.

The hack consists of simply dropping .NOTPARALLEL: into the right Makefile, but
since .NOTPARALLEL is broken (see bin/10985 for the gory details) you'll
need the attached patch for make too.

Index: src/gnu/usr.bin/cc/cc_tools/Makefile
===================================================================
RCS file: /CVSROOT/src/gnu/usr.bin/cc/cc_tools/Makefile,v
retrieving revision 1.18
diff -c -r1.18 Makefile
*** Makefile    1999/04/05 10:18:50     1.18
--- Makefile    1999/04/06 17:29:50
***************
*** 2,7 ****
--- 2,10 ----
  # $Id: Makefile,v 1.18 1999/04/05 10:18:50 peter Exp $
  #

+ # XXX band-aid for -jn
+ .NOTPARALLEL:
+
  #
  # This could probably be merged with ../cc_int/Makefile, but bsd.lib.mk
  # is such a !@#!*#% nightmare because of how it reprograms the dependencies,
Index: src/usr.bin/make/main.c
===================================================================
RCS file: /CVSROOT/src/usr.bin/make/main.c,v
retrieving revision 1.30
diff -c -r1.30 main.c
*** main.c      1999/03/01 06:01:05     1.30
--- main.c      1999/04/06 12:59:59
***************
*** 123,129 ****
  static Lst            variables;      /* list of variables to print */
  int                   maxJobs;        /* -j argument */
  static Boolean          forceJobs;      /* -j argument given */
! static int            maxLocal;       /* -L argument */
  Boolean                       compatMake;     /* -B argument */
  Boolean                       debug;          /* -d flag */
  Boolean                       noExecute;      /* -n flag */
--- 123,129 ----
  static Lst            variables;      /* list of variables to print */
  int                   maxJobs;        /* -j argument */
  static Boolean          forceJobs;      /* -j argument given */
! int                   maxLocal;       /* -L argument */
  Boolean                       compatMake;     /* -B argument */
  Boolean                       debug;          /* -d flag */
  Boolean                       noExecute;      /* -n flag */
Index: src/usr.bin/make/parse.c
===================================================================
RCS file: /CVSROOT/src/usr.bin/make/parse.c,v
retrieving revision 1.20
diff -c -r1.20 parse.c
*** parse.c     1999/01/08 18:37:34     1.20
--- parse.c     1999/04/06 16:34:14
***************
*** 874,881 ****
--- 874,884 ----
                    case NotParallel:
                    {
                        extern int  maxJobs;
+                       extern int  maxLocal;

                        maxJobs = 1;
+                       maxLocal = 1;
+                       compatMake = 1; /* would have been turned on if no
-j */
                        break;
                    }
                    case SingleShell:


--
Bob Bishop              (0118) 977 4017  international code +44 118
rb@gid.co.uk        fax (0118) 989 4254  between 0800 and 1800 UK




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?l0302092db3301929ea8c>