From owner-freebsd-hackers Tue Dec 14 18:59:50 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from mail.HiWAAY.net (fly.HiWAAY.net [208.147.154.56]) by hub.freebsd.org (Postfix) with ESMTP id BAF7714E9D for ; Tue, 14 Dec 1999 18:59:47 -0800 (PST) (envelope-from kris@hiwaay.net) Received: from hiwaay.net (tnt6-216-180-5-9.dialup.HiWAAY.net [216.180.5.9]) by mail.HiWAAY.net (8.9.3/8.9.0) with ESMTP id UAA15779 for ; Tue, 14 Dec 1999 20:59:41 -0600 (CST) Message-ID: <3857041C.146D0F35@hiwaay.net> Date: Tue, 14 Dec 1999 20:59:40 -0600 From: Kris Kirby Organization: Non Illegitemus Carborundum. X-Mailer: Mozilla 4.08 [en] (X11; U; FreeBSD 3.2-RELEASE i386) MIME-Version: 1.0 To: hackers@freebsd.org Subject: Using make to allow parallel operations? Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I am attempting to start a program on a impromptu cluster, one program per machine. I am using make, and seq from the cluster-it package in the ports collection. My problem is that make doesn't start the jobs parallel, it just goes from one to the other. In my project root, I have the following makefile: SUBDIR = 1 2 3 4 5 6 7 8 9 .include In my SUBDIRs, I have these makefiles: PROG = seq ls -la PAF = ${.CURDIR} all: @for prog in ${OBJ} ; do \ ${PROG} ${PAF}/$$prog ; \ done OBJ = Track01.wav \ Track02.wav I am thinking that the for loop is not the way to run things parallel, but I see no other option. This is a batch MP3 encode, not a compling run, but the concepts are similar (programs and thier arguments). I appreciate any time taken and hints offered. [Why -hackers? Well, I don't have a copy of the CVS log, so I can't go bother whoever built the makefiles in /usr/src ;-)] -- Kris Kirby, KE4AHR ------------------------------------------- TGIFreeBSD... 'Nuff said. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message