Running configure for ports/archivers/gcpio without and with
USE_SYSTRACE=Yes shows these differences:

-checking whether chown honors trailing slash... yes
+checking whether chown honors trailing slash... no
-checking for working fcntl.h... no (bad O_NOATIME)
+checking for working fcntl.h... no (bad O_NOATIME, O_NOFOLLOW)
-checking whether open recognizes a trailing slash... yes
+checking whether open recognizes a trailing slash... no
-checking whether stat handles trailing slashes on files... yes
+checking whether stat handles trailing slashes on files... no

Cosmetic, you say?  You wish.  Based on these results, the build
framework decides that some of these syscalls are broken and hides
them behind wrapper functions.  gcpio has a bug there and errors
out, that's how we noticed.  gtar has the same tests and build
framework, but not the bug, so it silently builds different code.

I have no idea what other ports might be affected or what to do
about this.

There is also the intriguing question if an executable built in an
environment without systrace will still work correctly when run
under systrace.

I don't know what to do.  This is evil.

-- 
Christian "naddy" Weisgerber                          [email protected]

Reply via email to