From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 122398 invoked by alias); 17 Sep 2017 07:48:38 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 122124 invoked by uid 89); 17 Sep 2017 07:48:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy= X-HELO: mx1.redhat.com DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com E47E95D5EB Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=fweimer@redhat.com Subject: Re: [PATCH 3/9] posix: Allow glob to match dangling symlinks [BZ #866] To: Paul Eggert , Adhemerval Zanella , Zack Weinberg Cc: Joseph Myers , Andreas Schwab , GNU C Library References: <1504643122-14874-1-git-send-email-adhemerval.zanella@linaro.org> <1504643122-14874-4-git-send-email-adhemerval.zanella@linaro.org> <878thop5fa.fsf@linux-m68k.org> <9455e298-8c48-c42a-0ec3-ffb8d166c69b@linaro.org> <450d2eab-f21a-f90c-6210-ea638787e339@cs.ucla.edu> <403decc7-e039-9be1-fb44-25d611540156@linaro.org> <7bf58b8a-afc9-b934-9a4a-1616e71c03ff@cs.ucla.edu> <805e4d8a-de63-5253-e214-b3912ed221e3@cs.ucla.edu> <30b5f782-8fb0-5b38-3b4c-6ebf435bc91c@linaro.org> <95745cd2-0033-8a3c-92af-879c24d0d396@cs.ucla.edu> <74d2ab7c-d6e1-10ff-a254-498438c999fe@cs.ucla.edu> From: Florian Weimer Message-ID: <224bb5ab-daf0-f433-156d-ae25b2ae873a@redhat.com> Date: Sun, 17 Sep 2017 07:48:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <74d2ab7c-d6e1-10ff-a254-498438c999fe@cs.ucla.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2017-09/txt/msg00666.txt.bz2 On 09/17/2017 09:16 AM, Paul Eggert wrote: > Florian Weimer wrote: >> If the BSDs are currently source-code-compatible, why doesn't GNU make >> fail there already? > > Because GNU make never uses BSD glob. GNU make's 'configure' script > checks that _GNU_GLOB_INTERFACE_VERSION equals 1, and if not it compiles > and uses its own glob implementation (copied from an old version of glibc). Ah, thanks. > If glibc changed _GNU_GLOB_INTERFACE_VERSION to 2, old versions of GNU > make would start rejecting new versions of glibc, and so would build and > run OK because they'd use their old copy of glob. The comment in > gnu-versions.h says that if we change _GNU_GLOB_INTERFACE_VERSION then > we must change the libc.so major version, but this rule seems arbitrary. This comment predates the availability of symbol versioning. It was true when it was written. > Suppose we ignore the gnu-versions.h comment and update > _GNU_GLOB_INTERFACE_VERSION to 2 without changing libc.so's major > version. Wouldn't this fix the compatibility problem with GNU Make? In addition to adding a compat symbols? Yes, that could work. I don't really like this situation, but this combination seems to be a somewhat reasonable way to fix both the glob bug and preserve backwards compatibility. Thanks, Florian