Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: build on os x 10.6.7, xcode 3.2.6



On Wed, 13 Apr 2011, Peter Stephenson wrote:

On Wed, 13 Apr 2011 09:10:47 -0700
"S. Cowles" <scowles@xxxxxxxx> wrote:
i have been building source from the sourceforge cvs repository on os
x 10.6.x for the past two months with no issues, until this week.  as
of rev4.3.11-dev-1, patchlevel 1.5245, i have begun getting the
following build error

gcc -c -I. -I/opt/local/include -DHAVE_CONFIG_H -Wall
-Wmissing-prototypes -O2  -o builtin.o builtin.c In file included
from zsh.mdh:37, from builtin.c:33:
exec.epro:29: error: 'RLIM_NLIMITS' undeclared here (not in a
function) make[2]: *** [builtin.o] Error 1
make[1]: *** [modobjs] Error 2
make: *** [all] Error 1

previously, rev4.3.11-dev-1, patchlevel 1.5241, and prior, built with
no problems.  i am still looking for what might cause the
RLIM_NLIMITS definition to be missed, but wanted to find out if
someone was already aware of this issue and might point out any
possible mistake on my part.

No, but there's a good chance it's got something to do with this
change.  Changing random source code options often has side effects.
Does removing either _GNU_SOURCE or _POSIX_C_SOURCE help?

--- zsh-4.3.11/Src/system.h     2010-02-22 11:12:31.000000000 +0100
+++ zsh/Src/system.h    2011-04-12 14:20:37.106000061 +0200
@@ -37,13 +37,12 @@
#endif
#endif

-#if defined(__linux) || defined(__GNU__) || defined(__GLIBC__)
/*
 * Turn on numerous extensions.
 * This is in order to get the functions for manipulating /dev/ptmx.
 */
#define _GNU_SOURCE 1
-#endif
+#define _POSIX_C_SOURCE 200809L

/* NeXT has half-implemented POSIX support *
 * which currently fools configure         */


i checked all three cases:
	1)
		/* #define _GNU_SOURCE 1 /**/
		#define _POSIX_C_SOURCE 200809L
	2)
		/* #define _GNU_SOURCE 1 /**/
		/* #define _POSIX_C_SOURCE 200809L /**/
	3)
		#define _GNU_SOURCE 1
		/* #define _POSIX_C_SOURCE 200809L /**/

cases 2 and 3 built patchlevel 1.5246 with no problem.  so, indeed,
removing _POSIX_C_SOURCE does help.  thank you very much for pinpointing
the search.

perhaps some directive such as the following might be sufficiently
restrictive to handle OS X and not interfere with other OS
installations on apple hardware:

#if !defined(__APPLE__) && !defined(__APPLE_CC__)
#define _POSIX_C_SOURCE 200809L
#endif



Messages sorted by: Reverse Date, Date, Thread, Author