Maxim Dounin mdounin at
Mon Mar 30 15:43:19 MSD 2009


On Mon, Mar 30, 2009 at 03:06:21PM +0400, Igor Sysoev wrote:

> Changes with nginx 0.7.46                                        30 Mar 2009
>     *) Bugfix: the previous release tarball was incorrect.

I've got the following under FreeBSD 6.2:

cd nginx                                                         
&& make
make -f objs/Makefile
gcc -c -O -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter 
-Wno-unused-function -Wunused-variable -Wunused-value -Werror -g 
-D NGX_DEBUG_MALLOC -I src/core  -I src/event  -I 
src/event/modules  -I src/os/unix  -I /usr/local/include  -I objs  
-o objs/src/core/nginx.o  src/core/nginx.c
In file included from /usr/include/sys/mount.h:36,
                 from src/os/unix/ngx_freebsd_config.h:25,
                 from src/core/ngx_config.h:21,
                 from src/core/nginx.c:7:
/usr/include/sys/ucred.h:71: error: `NGROUPS' undeclared here (not 
in a function)
*** Error code 1

Including sys/param.h before sys/mount.h as statfs() manpage 
suggests fixes this issue, but then it dies with:

src/os/unix/ngx_files.c: In function `ngx_fs_bsize':
src/os/unix/ngx_files.c:444: error: storage size of 'fs' isn't known
src/os/unix/ngx_files.c:446: warning: implicit declaration of function `statvfs'
src/os/unix/ngx_files.c:444: warning: unused variable `fs'
*** Error code 1

Including sys/statvfs.h as statvfs() manpage suggests fixes this 
issue too.  With the following patch I was able to build it under 
FreeBSD 6.2:

diff --git a/src/os/unix/ngx_freebsd_config.h b/src/os/unix/ngx_freebsd_config.h
--- a/src/os/unix/ngx_freebsd_config.h
+++ b/src/os/unix/ngx_freebsd_config.h
@@ -22,7 +22,9 @@
 #include <grp.h>
 #include <dirent.h>
 #include <glob.h>
+#include <sys/param.h>
 #include <sys/mount.h>          /* statfs() */
+#include <sys/statvfs.h>

 #include <sys/filio.h>          /* FIONBIO */
 #include <sys/uio.h>

Maxim Dounin

More information about the nginx mailing list