Date: Fri, 6 Apr 2007 21:33:27 +0400 From: Andrey Chernov <ache@FreeBSD.org> To: Pawel Jakub Dawidek <pjd@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org, Bruce Evans <bde@zeta.org.au> Subject: Re: cvs commit: src/include stdio.h src/lib/libc/sys lseek.2 pathconf.2 src/sys/kern vfs_syscalls.c src/sys/sys filio.h unistd.h Message-ID: <20070406173327.GA94465@nagual.pp.ru> In-Reply-To: <20070406162711.GD3519@garage.freebsd.pl> References: <200704052110.l35LAsXH013966@repoman.freebsd.org> <20070406115326.A43678@delplex.bde.org> <20070406053934.GA84722@nagual.pp.ru> <20070406103519.GA1251@garage.freebsd.pl> <20070406131127.GA91320@nagual.pp.ru> <20070406162711.GD3519@garage.freebsd.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
--a8Wt8u1KmwUX3Y2C Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Apr 06, 2007 at 06:27:11PM +0200, Pawel Jakub Dawidek wrote: > > Feel free to invent any other __*_VISIBLE tag to exclude this addition= =20 > > from namespace for programs which may define their own SEEK_DATA etc=20 > > which is allowed f.e. in POSIX namespace. Look like other __*_VISIBLE t= ags=20 > > are implemented and what they does. Default is turn all on. >=20 > Ok, can someone help me with this? The very basics are: application request particular namespace at compile=20 time using -D_*_SOURCE define. According to choosed _*_SOURCE some of=20 __*_VISIBLE macros are defined and some not (if no namespace choosed, all= =20 __*_VISIBLE are defined, default case). According to __*_VISIBLE macros=20 defined some functions or definitions becomes hidden or visible. See the very end of /sys/sys/cdefs.h for live examples. __*_VISIBLE macros are in form __<standard or platform>_VISIBLE For example can be __CDDL_VISIBLE or __ZFS_VISIBLE (depends on exactly=20 where those extensions was introduced). Lets take __ZFS_VISIBLE for the=20 rest of explanation. You need to directly hide those extensions for every particular=20 _*_SOURCE namespace, i.e. add=20 #define __ZFS_VISIBLE 0 to all of them and enable extensions=20 #define __ZFS_VISIBLE 1 only for the last (default) case (at the very end of /sys/sys/cdefs.h) Then use (for unistd.h) #if __ZFS_VISIBLE #define SEEK_DATA ... #endif Try to asking more help at standards@ or bde@ who notice it first and=20 knows this thing apparenly better than me. > > In any case adding them to stdio.h is premature action - I not see yet > > corresponding fseek() code. >=20 > I'm looking at removing it from stdio.h. Good. --=20 http://ache.pp.ru/ --a8Wt8u1KmwUX3Y2C Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.3 (FreeBSD) iD8DBQFGFoRnVg5YK5ZEdN0RAqB9AJ4xsziu4vgl/QssaLizJ7z97yHCLwCfXB1P yetVBf+ORp9e+iYGtcAFWFQ= =wMlA -----END PGP SIGNATURE----- --a8Wt8u1KmwUX3Y2C--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070406173327.GA94465>