From owner-freebsd-bugs Wed Aug 13 20:00:41 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id UAA17558 for bugs-outgoing; Wed, 13 Aug 1997 20:00:41 -0700 (PDT) Received: from gw.itfs.nsk.su (gw.itfs.nsk.su [193.124.36.33]) by hub.freebsd.org (8.8.5/8.8.5) with SMTP id UAA17546 for ; Wed, 13 Aug 1997 20:00:25 -0700 (PDT) Received: from itfs.UUCP (uucp@localhost) by gw.itfs.nsk.su (8.6.12/8.6.12) with UUCP id KAA14551 for bugs@freebsd.org; Thu, 14 Aug 1997 10:00:17 +0700 Received: by itfs.nsk.su; Thu, 14 Aug 97 09:54:05 +0700 (NST) Received: (from daemon@localhost) by news.itfs.nsk.su (8.7.5/8.6.12) id JAA05264; Thu, 14 Aug 1997 09:49:54 +0700 (NSD) From: nnd@itfs.nsk.su To: bugs@freebsd.org Subject: Re: bin/4291: /usr/bin/make - inconsistent -j flag parsing Date: 14 Aug 1997 02:49:52 GMT Message-ID: <5strog$4ri@news.itfs.nsk.su> References: <199708140010.RAA09053@hub.freebsd.org> Sender: owner-freebsd-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Steve Passe wrote: > Date: Wed, 13 Aug 1997 18:05:16 -0600 > the supplied fix looks OK, but would this "fix" break any standard? > Specifically, is there a standard we adhere to that says that all '-' options > should preceed variable defines and other command line arguments? > If there even is such a standard tnan proposed "fix" does'nt break it - cause before this fix all other '-' options (apart from -j) were parsed independently of their position on the command line (before or after some variable definitions). So, such a (hipothetical) standard can only be established by some Makefile writing discipline and we can see that f.e. in current /usr/src/Makefile this (hipothetical) discipline is not followed ;-) Here is an example of command(s) generated for "make buildworld" in current (long lines wrapped) : ...... -------------------------------------------------------------- Making make -------------------------------------------------------------- mkdir -p /usr/obj/usr/src/tmp/usr/bin cd /usr/src/usr.bin/make && \ PATH=/usr/obj/usr/src/tmp/sbin:/usr/obj/usr/src/tmp/usr/sbin:\ /usr/obj/usr/src/tmp/bin:/usr/obj/usr/src/tmp/usr/bin:/sbin:/bin:\ /usr/sbin:/usr/bin:/usr/games:/usr/local/bin:/usr/X11R6/bin:/home/nnd/bin \ BISON_SIMPLE=/usr/obj/usr/src/tmp/usr/share/misc/bison.simple \ COMPILER_PATH=/usr/obj/usr/src/tmp/usr/libexec:/usr/obj/usr/src/tmp/usr/bin \ GCC_EXEC_PREFIX=/usr/obj/usr/src/tmp/usr/lib/ \ LD_LIBRARY_PATH=/usr/obj/usr/src/tmp/usr/lib \ LIBRARY_PATH=/usr/obj/usr/src/tmp/usr/lib:/usr/obj/usr/src/tmp/usr/lib \ NOEXTRADEPEND=t make DESTDIR=/usr/obj/usr/src/tmp -I/usr/src/share/mk \ obj clean cleandepend depend && \ PATH=/usr/obj/usr/src/tmp/sbin:/usr/obj/usr/src/tmp/usr/sbin:\ /usr/obj/usr/src/tmp/bin:/usr/obj/usr/src/tmp/usr/bin:/sbin:/bin:\ /usr/sbin:/usr/bin:/usr/games:/usr/local/bin:/usr/X11R6/bin:/home/nnd/bin \ BISON_SIMPLE=/usr/obj/usr/src/tmp/usr/share/misc/bison.simple \ COMPILER_PATH=/usr/obj/usr/src/tmp/usr/libexec:/usr/obj/usr/src/tmp/usr/bin \ GCC_EXEC_PREFIX=/usr/obj/usr/src/tmp/usr/lib/ \ LD_LIBRARY_PATH=/usr/obj/usr/src/tmp/usr/lib \ LIBRARY_PATH=/usr/obj/usr/src/tmp/usr/lib:/usr/obj/usr/src/tmp/usr/lib \ NOEXTRADEPEND=t make DESTDIR=/usr/obj/usr/src/tmp -I/usr/src/share/mk \ -DNOINFO -DNOMAN -DNOPROFILE all install clean cleandepend N.Dudorov