legacy junk compatibility grab-bag
authorRich Felker <dalias@aerifal.cx>
Wed, 18 Apr 2012 16:22:24 +0000 (12:22 -0400)
committerRich Felker <dalias@aerifal.cx>
Wed, 18 Apr 2012 16:22:24 +0000 (12:22 -0400)
- add the rest of the junk traditionally in sys/param.h
- add prototypes for some nonstandard functions
- add _GNU_SOURCE to their source files so the compiler can check proto

include/sys/param.h
include/termios.h
include/time.h
include/unistd.h
src/linux/daemon.c
src/termios/cfmakeraw.c

index 30499cc7f5552aa9acc66947554c85c1d64b8f80..1650e7723bf18e697dafd9d29a473877637eb7f5 100644 (file)
@@ -1,20 +1,35 @@
-#undef MAXSYMLINKS
-#define MAXSYMLINKS 20
+#ifndef _SYS_PARAM_H
+#define _SYS_PARAM_H
 
-#undef MAXHOSTNAMELEN
+#define MAXSYMLINKS 20
 #define MAXHOSTNAMELEN 64
-
-#undef MAXNAMLEN
 #define MAXNAMLEN 255
-
-#undef MAXPATHLEN
 #define MAXPATHLEN 4096
+#define NBBY 8
+#define NGROUPS 32
+#define CANBSIZE 255
+#define NOFILE 256
+#define NCARGS 131072
+#define DEV_BSIZE 512
+#define NOGROUP (-1)
 
 #undef MIN
 #undef MAX
 #define MIN(a,b) (((a)<(b))?(a):(b))
 #define MAX(a,b) (((a)>(b))?(a):(b))
 
+#define ___bitop(x,i,o) ((a)[(i)/8] o 1<<(i)%8)
+#define setbit(x,i) __bitop(x,i,|=)
+#define clrbit(x,i) __bitop(x,i,&=~)
+#define isset(x,i) __bitop(x,i,&)
+#define isclr(x,i) !isset(x,i)
+
+#define howmany(n,d) (((n)+((d)-1))/(d))
+#define roundup(n,d) (howmany(n,d)*(d))
+#define powerof2(n) !(((n)-1) & (n))
+
 #include <sys/resource.h>
 #include <endian.h>
 #include <limits.h>
+
+#endif
index 4c4656271b58f38f79e9c3cc7f1b43765aecad83..3ae853d87ecfb776c2beb64d59531be71bf9e192 100644 (file)
@@ -32,6 +32,11 @@ int tcflow (int, int);
 
 pid_t tcgetsid (int);
 
+#ifdef _GNUS_SOURCE
+void cfmakeraw(struct termios *);
+int cfsetspeed(struct termios *, speed_t);
+#endif
+
 #ifdef __cplusplus
 }
 #endif
index ddfad58f7dc3cac609b06137279d35c815bbc81f..98d0111f58f0cfd67021af234c262ecdf39745a5 100644 (file)
@@ -108,6 +108,11 @@ struct tm *getdate (const char *);
 #endif
 
 
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+int stime(time_t *);
+#endif
+
+
 #ifdef __cplusplus
 }
 #endif
index 7662e5188936536beaa4c60ed8362cd8931c5284..ee7ee6d8ab75ae14152588cf594fa9dfcb4b07b1 100644 (file)
@@ -159,6 +159,8 @@ int setgroups(size_t, const gid_t []);
 int setresuid(uid_t, uid_t, uid_t);
 int setresgid(gid_t, gid_t, gid_t);
 char *get_current_dir_name(void);
+int daemon(int, int);
+int getdomainname(char *, size_t);
 #endif
 
 #define _XOPEN_VERSION          700
index afb8019f055d193b809366b80f07962bfb2bfab3..1568b1dcb7517bf0cf1ccb0b094b2dde2f88c59c 100644 (file)
@@ -1,3 +1,4 @@
+#define _GNU_SOURCE
 #include <fcntl.h>
 #include <unistd.h>
 
index a3daa09a36db93221214f1b09fb00df1f3737a70..c9dddc12a0ff67e60a5d1379447bec9173e165c1 100644 (file)
@@ -1,3 +1,4 @@
+#define _GNU_SOURCE
 #include <termios.h>
 
 void cfmakeraw(struct termios *t)