From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/2185 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: posix api test Date: Sun, 21 Oct 2012 19:17:25 -0400 Message-ID: <20121021231724.GC254@brightrain.aerifal.cx> References: <20121020220444.GX24157@port70.net> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1350861967 22962 80.91.229.3 (21 Oct 2012 23:26:07 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 21 Oct 2012 23:26:07 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-2186-gllmg-musl=m.gmane.org@lists.openwall.com Mon Oct 22 01:26:15 2012 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1TQ4uM-0001Zg-Al for gllmg-musl@plane.gmane.org; Mon, 22 Oct 2012 01:26:14 +0200 Original-Received: (qmail 21611 invoked by uid 550); 21 Oct 2012 23:26:06 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 21603 invoked from network); 21 Oct 2012 23:26:06 -0000 Content-Disposition: inline In-Reply-To: <20121020220444.GX24157@port70.net> User-Agent: Mutt/1.5.21 (2010-09-15) Xref: news.gmane.org gmane.linux.lib.musl.general:2185 Archived-At: On Sun, Oct 21, 2012 at 12:04:44AM +0200, Szabolcs Nagy wrote: > i have ugly scripts to generate the posix coverage tables > but i thought it's worth creating .c files for each > posix .h and let the compiler do the checks > > i put the code into my test repo for now > http://nsz.repo.hu/git/?p=libc-test;a=tree;f=src/api Very nice. > (most of [OB] interfaces are not included, but most optional stuff are) > > and the errors found: > > fcntl.c:29: error: 'O_TTY_INIT' undeclared (first use in this function) Waiting on a value to be assigned for it... This one's really a pain since the O_* constants are per-arch. > fmtmsg.c:2:20: error: fmtmsg.h: No such file or directory Ugly mess I'm not looking forward to. > ndbm.c:1:18: error: ndbm.h: No such file or directory My feeling is that dbm stuff will stay in an external third-party library. > netdb.c:60: error: 'NI_NUMERICSCOPE' undeclared (first use in this function) Also waiting on a decision for the value; glibc folks are non-responsive. > pthread.c:73: error: 'pthread_cleanup_pop' undeclared (first use in this function) > pthread.c:74: error: 'pthread_cleanup_push' undeclared (first use in this function) Seem to be errors in POSIX. > pthread.c:91: error: 'pthread_getschedparam' undeclared (first use in this function) > pthread.c:98: error: 'pthread_mutex_getprioceiling' undeclared (first use in this function) > pthread.c:101: error: 'pthread_mutex_setprioceiling' undeclared (first use in this function) > pthread.c:131: error: 'pthread_setschedparam' undeclared (first use in this function) > pthread.c:132: error: 'pthread_setschedprio' undeclared (first use in this function) > pthread.c:144: error: 'pthread_getcpuclockid' undeclared (first use in this function) > sched.c:20: error: 'SCHED_SPORADIC' undeclared (first use in this function) > spawn.c:43: error: 'posix_spawnattr_getschedparam' undeclared (first use in this function) > spawn.c:44: error: 'posix_spawnattr_getschedpolicy' undeclared (first use in this function) > spawn.c:45: error: 'posix_spawnattr_setschedparam' undeclared (first use in this function) > spawn.c:46: error: 'posix_spawnattr_setschedpolicy' undeclared (first use in this function) All optonal. > stdlib.c:22: error: 'WNOHANG' undeclared (first use in this function) > stdlib.c:25: error: 'WUNTRACED' undeclared (first use in this function) Fixed, I hope. > sys_sem.c:21: error: initialization from incompatible pointer type > struct semid_ds x; unsigned short *p = &x.sem_nsems; > sys_shm.c:7: error: 'shmatt_t' undeclared (first use in this function) > sys_shm.c:20: error: 'y' undeclared (first use in this function) > struct shmid_ds x; shmatt_t *y = &x.shm_nattch; Still need to look at these. > sys_types.c:21: error: initialization makes pointer from integer without a cast > timer_t x = 1; Unfortunately glibc also defines it as a pointer type (void *). > unistd.c:29: error: '_CS_POSIX_V7_THREADS_CFLAGS' undeclared (first use in this function) > unistd.c:30: error: '_CS_POSIX_V7_THREADS_LDFLAGS' undeclared (first use in this function) > unistd.c:32: error: '_CS_V7_ENV' undeclared (first use in this function) > unistd.c:59: error: '_PC_TIMESTAMP_RESOLUTION' undeclared (first use in this function) > unistd.c:180: error: '_SC_XOPEN_UUCP' undeclared (first use in this function) I think glibc is also missing these, at least in the old version I'm looking at. We'll need to get agreed-upon values. Hopefully a newer glibc has them for me to pull.. Rich