DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 5788EFiW3672935 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 5788EFiW3672935 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=rPHcDyib X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 75D133857007 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1754640853; bh=Tj9luc7k0ScpnGqr672bVZvJ+xeZyK3ZH34rCNj2XXk=; h=Date:To:Cc:Subject:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=rPHcDyibWRPJB76VRaNK0orGcqK6do7rlldwTlamxzUoGuXmdxiWbbC1LLLV39yRY 8PTGEIo6FijoH7ngVuv/yo1c+ArOFRPjHUSAGhn/lz+LQd+1nAp90/SkX0uDUyUnGM m5x9ClJV/7WtnNnaU+VNTV2J2iL8oLqjPhmRYIo0= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 93EF7385C019 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 93EF7385C019 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1754638879; cv=none; b=jmF3Nw2LEByMiKiZcBjmt0+WNB64oFcftQ5PHPrBWuaHt148ufxhOtBdm16vVq0DJCAsRR0vxJNNj2G9fncZsqCR9FEThYZcHutaGo8Gfm4LRpCt3aJGzU0f9tz1xSsQZtc1Tc+6rjk6gukOmDDWrvZE0qzlNOkPdTu4sRdrvog= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1754638879; c=relaxed/simple; bh=staVY4s6CQyR5Ewv0oN1QqFI0UCbnhoqaG++NZbtHiU=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=GRZbbe8Yi42AqCcPs6oKBR1YubtrgnCMV1Uy0o68pCsytRb+3CfoQBD+M3S8QCYh7hf3hylhhCut3vTIRYcal5gkng/XGXcDkZNmkyvgKetCbHpSsgU61H9mLdMwVuPP4B6ui0VHIMPQkKzmB9Srp2s8r8QsANmm7dFpFJxx/Ng= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 93EF7385C019 Date: Fri, 8 Aug 2025 03:41:16 -0400 To: Thomas Wolff Cc: cygwin AT cygwin DOT com Subject: Re: getting the on-disk case for a path Message-ID: References: <36a0093c-fc8b-f268-9cbf-71c1c1268ef7 AT jdrake DOT com> <11a5bd41-e977-4f25-9bf8-4917f1c65934 AT towo DOT net> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <11a5bd41-e977-4f25-9bf8-4917f1c65934@towo.net> X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Glenn Strauss via Cygwin Reply-To: Glenn Strauss Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" On Fri, Aug 08, 2025 at 08:53:53AM +0200, Thomas Wolff via Cygwin wrote: > > Am 08.08.2025 um 02:31 schrieb Jeremy Drake via Cygwin: > > On a case-insensitive but case-preserving filesystem, is there a Cygwin > > API to get the on-disk case for a given path? It seems like `realpath` > > ought to do it but running > > $ touch case-test > > $ realpath CASE-TEST > > returns CASE-TEST. > On the command line, you could use > ls | grep -i > > > Regardless, canonicalize_file_name or realpath may not > > be what I want because it would dereference symlinks. > > > > Background: I'm trying to debug some test failures in Clang, due to a > > warning that's supposed to be issued when you #include "foo.h" but the > > file on disk that it opened is "Foo.h". Last September, Eliot Moss suggested `find` with -iname (or -ipath or -iregex) https://cygwin.com/pipermail/cygwin/2024-September/256409.html -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple