From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] mk: Rework gcc version detection to permit versions newer than 4.x Date: Fri, 20 Feb 2015 15:04:56 +0100 Message-ID: <2614307.fg5h8BUtrJ@xps13> References: <7a06a1e8019a40d4175c6bc2e1d7e62cf956b291.1424261465.git.pmatilai@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev-VfR2kkLFssw@public.gmane.org To: Panu Matilainen Return-path: In-Reply-To: <7a06a1e8019a40d4175c6bc2e1d7e62cf956b291.1424261465.git.pmatilai-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Hi Panu, 2015-02-18 14:11, Panu Matilainen: > Separately comparing major and minor versions becomes seriously clumsy > when with major version changes, convert the entire version string into > a numeric value (ie 4.6.0 becomes 460 and 5.0.0 becomes 500) and use > that for comparisons. This simplifies the comparisons and makes > gcc 5.0 naturally recognized at least as capable as newest 4.x. > > This three-digit scheme would run into trouble if gcc ever went to > two-digit version segments, but that hasn't happened in the last 10+ > years so it seems like a safe assumption. > > Signed-off-by: Panu Matilainen Yes this version checking was totally buggy. Thanks for improving it. I have a comment about the conversion of old versions checks. > -ifneq ($(shell test $(GCC_MAJOR_VERSION) -le 4 -a $(GCC_MINOR_VERSION) -le 3 && echo 1), 1) > +ifneq ($(shell test $(GCC_VERSION) -le 430 && echo 1), 1) The previous check was a buggy "if not <= 4.3.x" Your check is "if not <= 4.3.0" So it's a bit different. And I think we should remove negation to make it simpler: "if >= 4.4.0" I have the same comment for other changes in the patch.