From owner-svn-ports-head@freebsd.org Thu Mar 18 08:46:20 2021 Return-Path: Delivered-To: svn-ports-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4888B5B2F16; Thu, 18 Mar 2021 08:46:20 +0000 (UTC) (envelope-from gerald@pfeifer.com) Received: from hamza.pair.com (hamza.pair.com [209.68.5.143]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4F1LGh1QyPz4qFY; Thu, 18 Mar 2021 08:46:19 +0000 (UTC) (envelope-from gerald@pfeifer.com) Received: from hamza.pair.com (localhost [127.0.0.1]) by hamza.pair.com (Postfix) with ESMTP id D933333E45; Thu, 18 Mar 2021 04:46:18 -0400 (EDT) Received: from [192.168.1.5] (77.118.111.172.wireless.dyn.drei.com [77.118.111.172]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by hamza.pair.com (Postfix) with ESMTPSA id 50E0D33E42; Thu, 18 Mar 2021 04:46:17 -0400 (EDT) Date: Thu, 18 Mar 2021 09:46:01 +0100 (CET) From: Gerald Pfeifer To: Mathieu Arnold , Piotr Kubaj , Mark Linimon cc: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r568012 - head/net/tightvnc In-Reply-To: <20210317171958.znakfw7uj543uc7z@aching.in.mat.cc> Message-ID: <739c1d5d-3a5f-cb4f-ebfa-56835044ac7e@pfeifer.com> References: <202103101603.12AG371X067963@repo.freebsd.org> <13e0fa6a-7ea4-d321-c75e-474eeb415ee9@pfeifer.com> <20210315112025.ij4l2oiegzkq2hhu@aching.in.mat.cc> <6fc69b3c-6b86-ffd9-9784-524868a8d951@pfeifer.com> <20210317111317.vlp7f7kqxwhwlsjd@aching.in.mat.cc> <20210317114507.edjpfbwtdd3krfdb@aching.in.mat.cc> <20210317134119.bzvp2lfnpiewzl5k@aching.in.mat.cc> <20210317171958.znakfw7uj543uc7z@aching.in.mat.cc> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 4F1LGh1QyPz4qFY X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Mar 2021 08:46:20 -0000 On Wed, 17 Mar 2021, Mathieu Arnold wrote: > First step could probably be to make a patch for `any` mean `yes`, > build stuff and look at the size of the explosion from afar. On most architectures (i386, amd64, aarch64,...) `any` has been equivalent to `yes` for years. This even is the case for ppc on FreeBSD 13+. No explosion ahead. :-) On Wed, 17 Mar 2021, Piotr Kubaj wrote: > I know what you mean and this will just make more work for people caring > about ARM / PPC. I add USE_GCC=any simply because there ARE issues with > clang A key problem freshly introducing USE_GCC=any is that most developers later will test on i386, amd64, maybe aarch64, where `any` is equivalent to `yes` and implies GCC 10, which is *very* different. Also, USE_GCC=any implies something *very* different in case of ppc on different version of FreeBSD. That alone is prone to cause more work. On Wed, 17 Mar 2021, Mathieu Arnold wrote: > I have no idea of the state of USE_GCC=any, as it is something nobody > should use nowadays in favor of USE_GCC=yes (and Gerald says that often > enough), I would have thought that those were old stuff that dated back > from the dinosaurs era and that could be tried without gcc. Most ports featuring USE_GCC=any fit your reference regarding the dinosaurs era. :-) As a first step, I am proposing the patch below. Any objections? Other thoughts? Gerald Make USE_GCC=any equivalent to USE_GCC=yes across the board, which already has been the case on amd64, aarch64, and i386 for years and now also powerpc64 with FreeBSD 13. Still leave USE_GCC=any in place for ports currently using that in case someone wants to go through those. Index: Mk/bsd.gcc.mk =================================================================== --- Mk/bsd.gcc.mk (revision 568719) +++ Mk/bsd.gcc.mk (working copy) @@ -9,9 +9,6 @@ # your port/system configuration. This is the preferred use of USE_GCC. # It uses the canonical version of GCC defined in bsd.default-versions.mk. # -# USE_GCC=any is similar, except that it also accepts the old GCC 4.2- -# based system compiler where still present. -# # If your port needs a specific (minimum) version of GCC, you can easily # specify that with a USE_GCC= statement. Unless absolutely necessary # do so by specifying USE_GCC=X+ which requests at least GCC version X. @@ -24,11 +21,12 @@ # If no arguments are specified, GCC is added as both a build dependency # and a run time dependency. # +# (USE_GCC=any is deprecated and equivalent to USE_GCC=yes nowadays.) +# # # Examples: # USE_GCC= yes # port requires a current version of GCC # # as defined in bsd.default-versions.mk. -# USE_GCC= any # port requires GCC 4.2 or later. # USE_GCC= 9+ # port requires GCC 9 or later. # USE_GCC= 8 # port requires GCC 8. # USE_GCC= yes:build # port requires a current version of GCC at @@ -71,16 +69,6 @@ .if defined(USE_GCC) && !defined(FORCE_BASE_CC_FOR_TESTING) -.if ${USE_GCC} == any && exists(/usr/bin/gcc) -CC:= gcc -CXX:= g++ -. if exists(/usr/bin/gcpp) -CPP:= gcpp -. else -CPP:= cpp -. endif -.else # The regular approach, not using the age-old base compiler. - # Handle USE_GCC=yes and USE_GCC=any. .if ${USE_GCC} == yes || ${USE_GCC} == any USE_GCC= ${GCC_DEFAULT}+ @@ -154,8 +142,6 @@ USE_BINUTILS= yes .endif -.endif # USE_GCC=any - .endif # defined(_USE_GCC) && !defined(FORCE_BASE_CC_FOR_TESTING)