From: Daniel J. <da...@da...> - 2017-03-09 15:25:10
|
> On Mar 9, 2017, at 9:50 AM, Daniel Johnson <da...@da...> wrote: > > >> On Mar 8, 2017, at 10:36 AM, Sean Lake <ody...@gm...> wrote: >> >> Hello all, >> >> I'm getting a build failure related to an update-all. This happens on multiple machines, but here are the details from one. >> >> The error text: >> gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.17.0\" -DPACKAGE_STRING=\"sqlite\ 3.17.0\" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.17.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_EDITLINE_READLINE_H=1 -DHAVE_EDITLINE=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -Os -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_LOCKING_STYLE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_JSON1 -c -o sqlite3-sqlite3.o `test -f 'sqlite3.c' || echo './'`sqlite3.c >> sqlite3.c:28836:10: error: use of unknown builtin '__builtin_add_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_add_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28856:10: error: use of unknown builtin '__builtin_sub_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_sub_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28856:10: note: did you mean '__builtin_add_overflow'? >> sqlite3.c:28836:10: note: '__builtin_add_overflow' declared here >> return __builtin_add_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28871:10: error: use of unknown builtin '__builtin_mul_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_mul_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28871:10: note: did you mean '__builtin_sub_overflow'? >> sqlite3.c:28856:10: note: '__builtin_sub_overflow' declared here >> return __builtin_sub_overflow(*pA, iB, pA); >> ^ >> 3 errors generated. >> make: *** [sqlite3-sqlite3.o] Error 1 >> make: *** Waiting for unfinished jobs.... >> libtool: compile: gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.17.0\" "-DPACKAGE_STRING=\"sqlite 3.17.0\"" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.17.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_EDITLINE_READLINE_H=1 -DHAVE_EDITLINE=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE -Os -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_LOCKING_STYLE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_JSON1 -c sqlite3.c -fno-common -DPIC -o .libs/sqlite3.o >> sqlite3.c:28836:10: error: use of unknown builtin '__builtin_add_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_add_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28856:10: error: use of unknown builtin '__builtin_sub_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_sub_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28856:10: note: did you mean '__builtin_add_overflow'? >> sqlite3.c:28836:10: note: '__builtin_add_overflow' declared here >> return __builtin_add_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28871:10: error: use of unknown builtin '__builtin_mul_overflow' >> [-Wimplicit-function-declaration] >> return __builtin_mul_overflow(*pA, iB, pA); >> ^ >> sqlite3.c:28871:10: note: did you mean '__builtin_sub_overflow'? >> sqlite3.c:28856:10: note: '__builtin_sub_overflow' declared here >> return __builtin_sub_overflow(*pA, iB, pA); >> ^ >> 3 errors generated. >> make: *** [sqlite3.lo] Error 1 >> >> >> And the system information: >> Also include the following system information: >> Package manager version: 0.41.1 >> Distribution version: selfupdate-rsync Wed Mar 8 07:32:44 2017, 10.10, x86_64 >> Trees: local/main stable/main >> Xcode.app: 7.2.1 >> Xcode command-line tools: 7.2.0.0.1.1447826929 >> Max. Fink build jobs: 8 >> >> Thanks, >> Sean Lake > > Urg. Thanks. Looks like latest sqlite3 is using builtin functions that aren’t available on 10.10. I’m looking into it. > > Daniel > Ok, I think it’s fixed now. Upstream wasn’t testing for certain features correctly. __builtin_add_overflow and friends only work with Xcode >= 8 or clang from llvm.org >= 4. They were only checking for clang >= 4. I really wish Apple would use consistent version numbers. Anyway, I patched it to correctly check for the builtins using __has_builtin() instead of just checking version numbers. Daniel |