Thread: CVS HEAD compile failure on Freebsd 4.9
Fresh checkout of CVS HEAD yesterday, updated today : $ ./configure --prefix=/usr/local/pgsql/7.5 $ make gmake[4]: Entering directory `/usr/home/postgres/develop/c/pgsql/src/backend/access/nbtree' gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations -I../../../../src/include -c -o nbtree.o nbtree.c nbtree.c: In function `btbulkdelete': nbtree.c:600: storage size of `_delay' isn't known nbtree.c:600: warning: implicit declaration of function `select' nbtree.c:600: warning: unused variable `_delay' nbtree.c:602: storage size of `_delay' isn't known nbtree.c:602: warning: unused variable `_delay' gmake[4]: *** [nbtree.o] Error 1 gmake[4]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src/backend/access/nbtree' gmake[3]: *** [nbtree-recursive] Error 2 gmake[3]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src/backend/access' gmake[2]: *** [access-recursive] Error 2 gmake[2]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src/backend' gmake[1]: *** [all] Error 2 gmake[1]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src' gmake: *** [all] Error 2 *** Error code 2 $ uname -a FreeBSD spiney 4.9-RELEASE FreeBSD 4.9-RELEASE #3 kernel customizations : i686 (i.e 386->586 de-selected for kernel build)
Yes, here too... There are no headers included for struct timeval and function select in miscadmin.h adding #include fixes the problem on freebsd, but I'm sure it's not a portable solution... Index: miscadmin.h =================================================================== RCS file: /home/src/pgsql/repo/pgsql-server/src/include/miscadmin.h,v retrieving revision 1.152 diff -c -r1.152 miscadmin.h *** miscadmin.h 8 Feb 2004 22:28:57 -0000 1.152 --- miscadmin.h 9 Feb 2004 21:21:37 -0000 *************** *** 60,65 **** --- 60,69 ---- * *****************************************************************************/ + #include <sys/types.h> + #include <sys/time.h> + #include <sys/select.h> + /* in globals.c */ /* these are marked volatile because they are set by signal handlers: */ extern DLLIMPORT volatilebool InterruptPending; On Mon, Feb 09, 2004 at 04:52:54PM +1300, Mark Kirkwood wrote: > Fresh checkout of CVS HEAD yesterday, updated today : > > $ ./configure --prefix=/usr/local/pgsql/7.5 > $ make > gmake[4]: Entering directory > `/usr/home/postgres/develop/c/pgsql/src/backend/access/nbtree' > gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations -I../../../../src/include -c -o nbtree.o nbtree.c > nbtree.c: In function `btbulkdelete': > nbtree.c:600: storage size of `_delay' isn't known > nbtree.c:600: warning: implicit declaration of function `select' > nbtree.c:600: warning: unused variable `_delay' > nbtree.c:602: storage size of `_delay' isn't known > nbtree.c:602: warning: unused variable `_delay' > gmake[4]: *** [nbtree.o] Error 1 > gmake[4]: Leaving directory > `/usr/home/postgres/develop/c/pgsql/src/backend/access/nbtree' > gmake[3]: *** [nbtree-recursive] Error 2 > gmake[3]: Leaving directory > `/usr/home/postgres/develop/c/pgsql/src/backend/access' > gmake[2]: *** [access-recursive] Error 2 > gmake[2]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src/backend' > gmake[1]: *** [all] Error 2 > gmake[1]: Leaving directory `/usr/home/postgres/develop/c/pgsql/src' > gmake: *** [all] Error 2 > *** Error code 2 > > $ uname -a > FreeBSD spiney 4.9-RELEASE FreeBSD 4.9-RELEASE #3 > > kernel customizations : i686 (i.e 386->586 de-selected for kernel build) > > > ---------------------------(end of broadcast)--------------------------- > TIP 7: don't forget to increase your free space map settings >
Vsevolod Lobko <seva@sevasoft.kiev.ua> writes: > Yes, here too... > There are no headers included for struct timeval and function select > in miscadmin.h Certain parties who shall remain nameless have been gratuitously scattering dependencies on select() into lots of modules that don't need them. (When you are about to call the kernel to implement a multi-millisecond delay, there is no value in saving a nanosecond by inlining the code for it...) I plan to fix that later tonight if no one beats me to it. regards, tom lane
Tom Lane wrote: > Vsevolod Lobko <seva@sevasoft.kiev.ua> writes: > > Yes, here too... > > There are no headers included for struct timeval and function select > > in miscadmin.h > > Certain parties who shall remain nameless have been gratuitously > scattering dependencies on select() into lots of modules that don't > need them. (When you are about to call the kernel to implement a > multi-millisecond delay, there is no value in saving a nanosecond > by inlining the code for it...) I plan to fix that later tonight > if no one beats me to it. The scattering isn't actually from Win32, which is where I thought it came from. It is from the PG_DELAY call that was added with:revision 1.137date: 2003/11/13 14:57:15; author: wieck; state:Exp; lines: +8 -12nd try for the ARC strategy.I added a couple more Assertions while tracking down the exactcauseof the former bug.All 93 regression tests pass now.Jan What Win32 has done is to centralize all delay calls around that function, now renamed PG_USLEEP/PG_MSLEEP. I was going to add the missing includes but if you want to centralize it, I think that makes more sense. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
Bruce Momjian <pgman@candle.pha.pa.us> writes: > What Win32 has done is to centralize all delay calls around that > function, now renamed PG_USLEEP/PG_MSLEEP. I was going to add the > missing includes but if you want to centralize it, I think that makes > more sense. Yeah, I'm planning to add a "pgsleep" module in src/port. Might as well do it right. regards, tom lane
Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > > What Win32 has done is to centralize all delay calls around that > > function, now renamed PG_USLEEP/PG_MSLEEP. I was going to add the > > missing includes but if you want to centralize it, I think that makes > > more sense. > > Yeah, I'm planning to add a "pgsleep" module in src/port. Might as well > do it right. Agreed. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
Just updated now. compiles. fast fix :-) Tom Lane wrote: > > I plan to fix that later tonight >if no one beats me to it. > > regards, tom lane > > >