Hi,

Please disregard my earlier patch which added a `sqrtl` implementation under 
`cygwin/math`. After the review comments, I've reworked the changes into 
cleaner 3-patch series:

- [PATCH V2 1/3] - Cygwin: gendef: add support for conditional arch entries in 
.din files
- [PATCH V2 2/3] - Cygwin: math: split math sources into 2 groups
- [PATCH V2 3/3] - Cygwin: export sqrtl as alias to sqrt on AArch64

In-lined patch 1/3:

>From 6881f6485a135bd554d221c60b5288a1489d63b4 Mon Sep 17 00:00:00 2001
From: Thirumalai Nagalingam <thirumalai.nagalin...@multicorewareinc.com>
Date: Wed, 27 Aug 2025 01:23:22 +0530
Subject: [PATCH 1/3] Cygwin: gendef: add support for conditional arch entries
 in .din files

Extend `gendef` to recognize and process conditional export
directives in `.din` files:
- `[arch]` means the export is included only if the target CPU
  matches `arch`.
- `[!arch]` means the export is included for all CPUs except `arch`.

This allows `.din` files to express conditional exports directly,
removing the need for manual duplication.

Signed-off-by: Thirumalai Nagalingam 
<thirumalai.nagalin...@multicorewareinc.com>
---
 winsup/cygwin/scripts/gendef | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/winsup/cygwin/scripts/gendef b/winsup/cygwin/scripts/gendef
index d60d45431..2d9fced5c 100755
--- a/winsup/cygwin/scripts/gendef
+++ b/winsup/cygwin/scripts/gendef
@@ -39,6 +39,13 @@ my @nosigfuncs = ();
 my @text = ();
 for (@in) {
     chomp;
+           if (/^\[(\!?)(\w+)\]\s+(.*)$/) {
+        my ($neg, $arch, $rest) = ($1, $2, $3);
+        my $match = ($cpu eq $arch);   
+        $match = !$match if $neg;              # check if negated [!arch]
+        next unless $match;                    # skip if not for this cpu
+        $_ = $rest;                            # process others normally
+    }  
     s/\s+DATA$//o and do {
        push @data, $_;
        next;
-- 
2.50.1.windows.1

Thanks & regardsĀ 
Thirumalai N


Attachment: 0001-Cygwin-gendef-add-support-for-conditional-arch-entri.patch
Description: 0001-Cygwin-gendef-add-support-for-conditional-arch-entri.patch

Reply via email to