Subject: | [PATCH] Won't compile on archaic OS |
Using gcc-3.4.6 on HP-UX 10.20:
Show quoted text
> make test
gcc -c -I. -I/opt/perl/lib/site_perl/5.14.0/PA-RISC2.0/auto/DBI -mpa-
risc-1-1 -DPERL_DONT_CREATE_GVSV -D_HPUX_SOURCE -fno-strict-aliasing -
pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=
\"1.31\" -DXS_VERSION=\"1.31\" -fPIC "-I/opt/perl/lib/5.14.0/PA-RISC2.0/
CORE" -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -
DSQLITE_ENABLE_COLUMN_METADATA -DNDEBUG=1 -DHAVE_USLEEP=1 -
DTHREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION sqlite3.c
sqlite3.c: In function `unixShmMap':
sqlite3.c:26184: error: `MAP_FAILED' undeclared (first use in this
function)
sqlite3.c:26184: error: (Each undeclared identifier is reported only
once
sqlite3.c:26184: error: for each function it appears in.)
After applying this patch:
--8<---
--- sqlite3.c.org 2011-05-23 15:27:35 +0200
+++ sqlite3.c 2011-05-23 15:29:55 +0200
@@ -22661,6 +22661,10 @@ struct unixFile {
*/
#define SQLITE_WHOLE_FILE_LOCKING 0x0001 /* Use whole-file locking
*/
+#ifndef MAP_FAILED
+#define MAP_FAILED ((void *) -1)
+#endif
+
/*
** Include code that is common to all os_*.c files
*/
-->8---
Show quoted text> make test
:
All tests successful.
Files=59, Tests=1308, 87 wallclock secs ( 4.61 usr 0.48 sys + 53.42
cusr 3.96 csys = 62.47 CPU)
Result: PASS
Show quoted text>