Skip to content

Commit adf378e

Browse files
committed
REBASEME: Try to fix Hydra build
1 parent b765e6e commit adf378e

1 file changed

Lines changed: 47 additions & 0 deletions

File tree

‎flake.nix‎

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,53 @@
4646
# target the same way nixpkgs does for isStatic platforms.
4747
static-liburing = final.liburing.overrideAttrs (old: {
4848
dontdisableStatic = true;
49+
# Workaround for macOS builders: recreate man page symlinks that may be lost
50+
# during cross-compilation from Darwin to Linux
51+
preInstall = (old.preInstall or "") + ''
52+
echo "=== LIBURING PREINSTALL DEBUG ==="
53+
echo "PWD: $(pwd)"
54+
echo "Checking man directory contents BEFORE fix:"
55+
ls -la man/ | grep -E "(IO_URING|io_uring).*VERSION" || echo "No VERSION-related files found"
56+
57+
echo "Checking if symlink TARGET exists:"
58+
ls -la man/io_uring_check_version.3 || echo " ✗ TARGET FILE io_uring_check_version.3 DOES NOT EXIST!"
59+
60+
echo "Listing ALL man/*check_version* files:"
61+
ls -la man/*check_version* 2>&1 || echo "None found"
62+
63+
echo "Searching for check_version in all of man/:"
64+
find man/ -name "*check_version*" -ls || echo "None found"
65+
66+
# Always recreate uppercase symlinks to ensure they exist for install phase
67+
# (lowercase versions are real files, not symlinks)
68+
echo "Creating/recreating man page symlinks..."
69+
ln -sf io_uring_check_version.3 man/IO_URING_CHECK_VERSION.3
70+
ln -sf io_uring_check_version.3 man/IO_URING_VERSION_MAJOR.3
71+
ln -sf io_uring_check_version.3 man/IO_URING_VERSION_MINOR.3
72+
73+
echo "Checking man directory contents AFTER fix:"
74+
ls -la man/ | grep -E "(IO_URING|io_uring).*VERSION"
75+
76+
echo "Testing glob expansion of man/*.3:"
77+
ls man/*.3 | wc -l
78+
echo "Testing stat of specific failing files:"
79+
stat man/IO_URING_CHECK_VERSION.3 && echo " ✓ IO_URING_CHECK_VERSION.3 exists" || echo " ✗ IO_URING_CHECK_VERSION.3 missing"
80+
stat man/IO_URING_VERSION_MAJOR.3 && echo " ✓ IO_URING_VERSION_MAJOR.3 exists" || echo " ✗ IO_URING_VERSION_MAJOR.3 missing"
81+
stat man/io_uring_major_version.3 && echo " ✓ io_uring_major_version.3 exists" || echo " ✗ io_uring_major_version.3 missing"
82+
83+
echo "Testing actual install command to /tmp:"
84+
mkdir -p /tmp/liburing-install-test
85+
if install -m 644 man/*.3 /tmp/liburing-install-test/; then
86+
echo " ✓ Install command succeeded! Installed $(ls /tmp/liburing-install-test/*.3 | wc -l) files"
87+
rm -rf /tmp/liburing-install-test
88+
else
89+
echo " ✗ Install command FAILED with exit code $?"
90+
rm -rf /tmp/liburing-install-test
91+
exit 1
92+
fi
93+
echo "=== END LIBURING PREINSTALL DEBUG ==="
94+
'';
95+
4996
postInstall = ''
5097
# Always builds both static and dynamic libraries, so we need to remove the
5198
# dynamic libraries.

0 commit comments

Comments
 (0)