Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jul 1995 18:58:27 -0700 (PDT)
From:      "Rodney W. Grimes" <rgrimes@gndrsh.aac.dev.com>
To:        asami@cs.berkeley.edu (Satoshi Asami)
Cc:        jkh@time.cdrom.com, hackers@freebsd.org
Subject:   Re: Strange entries in /usr/src/Makefile
Message-ID:  <199507200158.SAA08286@gndrsh.aac.dev.com>
In-Reply-To: <199507200043.RAA01960@forgery.CS.Berkeley.EDU> from "Satoshi Asami" at Jul 19, 95 05:43:29 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> 
>  * These were done on behalf of Julian Stacey, who wanted some sort of
>  * tighter integration in his "really build the world" makes.  Myself,
>  * I think it's cruft and it should go.  If you want to build the world,
>  * a small shell script does fine:
> 
> I agree with you, this is just confusing.  (I received a question
> "should I put the ports lndir in /usr/src/ports?" from a user who took
> a long hard look into /usr/src/Makefile.)  More importantly, it
> directly conflicts with bsd.port.mk, which has the ports in /usr/ports
> by default.

/usr/src/Makefile is in error, here is the diff to correct this bug:
[Now, was that so hard to fix???? :-) :-)]

Index: Makefile
===================================================================
RCS file: /home/ncvs/src/Makefile,v
retrieving revision 1.57
diff -c -r1.57 Makefile
*** 1.57	1995/05/29 23:50:55
--- Makefile	1995/07/20 01:11:30
***************
*** 4,10 ****
  # Make command line options:
  #	-DCLOBBER will remove /usr/include and MOST of /usr/lib
  #	-DMAKE_LOCAL to add ./local to the SUBDIR list
! #	-DMAKE_PORTS to add ./ports to the SUBDIR list
  #	-DMAKE_EBONES to build eBones (KerberosIV)
  #
  #	-DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
--- 4,10 ----
  # Make command line options:
  #	-DCLOBBER will remove /usr/include and MOST of /usr/lib
  #	-DMAKE_LOCAL to add ./local to the SUBDIR list
! #	-DMAKE_PORTS to add ../ports to the SUBDIR list
  #	-DMAKE_EBONES to build eBones (KerberosIV)
  #
  #	-DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
***************
*** 76,83 ****
  .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
  SUBDIR+= local
  .endif
! .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
! SUBDIR+= ports
  .endif
  
  # Handle the -DNOOBJDIR and -DNOCLEANDIR
--- 76,83 ----
  .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
  SUBDIR+= local
  .endif
! .if defined(MAKE_PORTS) & exists(../ports) & exists(../ports/Makefile)
! SUBDIR+= ../ports
  .endif
  
  # Handle the -DNOOBJDIR and -DNOCLEANDIR
***************
*** 138,146 ****
  	# The cd is done as local may well be a symbolic link
  	-cd local && find . -name obj | xargs rm -rf
  .endif
! .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
  	# The cd is done as local may well be a symbolic link
! 	-cd ports && find . -name obj | xargs rm -rf
  .endif
  	${MAKE} cleandir
  	${MAKE} obj
--- 138,146 ----
  	# The cd is done as local may well be a symbolic link
  	-cd local && find . -name obj | xargs rm -rf
  .endif
! .if defined(MAKE_PORTS) & exists(../ports) & exists(../ports/Makefile)
  	# The cd is done as local may well be a symbolic link
! 	-cd ../ports && find . -name obj | xargs rm -rf
  .endif
  	${MAKE} cleandir
  	${MAKE} obj

>
> A funny shell script like yours or a command line with a "cd" in it
> (don't tell me you don't know how to do that, Julian :) should do just
> fine.

This point was made when the original work was done, yes it could
have been done that way, but is what has changed is that before
ports had no default location specified in any way, now there has
been one made in bsd.port.mk that makes src/Makefile wrong.  This
patch corrects that :-)

I hope this will make every one happy.

-- 
Rod Grimes                                      rgrimes@gndrsh.aac.dev.com
Accurate Automation Company                 Reliable computers for FreeBSD



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