On 1/8/2018 4:40 PM, Richard Hipp wrote:
On 1/8/18, Richie Adler <[email protected]> wrote:
AFAIK MSYS has a version number in the directory.
At the very list you should probably check the gcc version with "gcc -v"
It works for me on Win7 running gcc 4.5.0 and on Win10 running gcc 5.3.0.
Curious about the new skins, I attempted to compile Fossil-24c2b99d on
win7x64 with a current (as of today) MSYS2 using
$ gcc -v
Using built-in specs.
COLLECT_GCC=D:\msys64\mingw64\bin\gcc.exe
COLLECT_LTO_WRAPPER=D:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../gcc-7.2.0/configure --prefix=/mingw64
--with-local-prefix=/mingw64/local --build=x86_64-w64-mingw32
--host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
--with-native-system-header-dir=/mingw64/x86_64-w64-mingw32/include
--libexecdir=/mingw64/lib --enable-bootstrap --with-arch=x86-64
--with-tune=generic
--enable-languages=c,lto,c++,objc,obj-c++,fortran,ada --enable-shared
--enable-static --enable-libatomic --enable-threads=posix
--enable-graphite --enable-fully-dynamic-string
--enable-libstdcxx-time=yes --disable-libstdcxx-pch
--disable-libstdcxx-debug --disable-isl-version-check --enable-lto
--enable-libgomp --disable-multilib --enable-checking=release
--disable-rpath --disable-win32-registry --disable-nls --disable-werror
--disable-symvers --with-libiconv --with-system-zlib --with-gmp=/mingw64
--with-mpfr=/mingw64 --with-mpc=/mingw64 --with-isl=/mingw64
--with-pkgversion='Rev1, Built by MSYS2 project'
--with-bugurl=https://sourceforge.net/projects/msys2 --with-gnu-as
--with-gnu-ld
Thread model: posix
gcc version 7.2.0 (Rev1, Built by MSYS2 project)
I get a slew of errors for src/shell.c
Using the same setup, fossil-2.4 compiles successfully.
$ f version -v
This is fossil version 2.4 [a0001dcf57] 2017-11-03 09:29:29 UTC
Compiled on Nov 11 2017 20:48:11 using mingw32 (64-bit)
Schema version 2015-01-24
zlib 1.2.11, loaded 1.2.11
hardened-SHA1 by Marc Stevens and Dan Shumow
SSL (OpenSSL 1.1.0f 25 May 2017)
FOSSIL_ENABLE_LEGACY_MV_RM
FOSSIL_ENABLE_EXEC_REL_PATHS
FOSSIL_ENABLE_TH1_DOCS
FOSSIL_ENABLE_TH1_HOOKS
TCL (Tcl 8.6.6, loaded TH_OK: 8.6.7)
USE_TCL_STUBS
FOSSIL_TCL_STUBS
FOSSIL_ENABLE_TCL_PRIVATE_STUBS
JSON (API 20120713)
MBCS_COMMAND_LINE
FOSSIL_STATIC_BUILD
SQLite 3.21.0 2017-10-24 18:55:49 1a584e4999
SQLITE_DEFAULT_FILE_FORMAT=4
SQLITE_DEFAULT_WAL_SYNCHRONOUS=1
SQLITE_ENABLE_DBSTAT_VTAB
SQLITE_ENABLE_FTS3_PARENTHESIS
SQLITE_ENABLE_FTS4
SQLITE_ENABLE_FTS5
SQLITE_ENABLE_JSON1
SQLITE_ENABLE_LOCKING_STYLE=0
SQLITE_ENABLE_STMTVTAB
SQLITE_LIKE_DOESNT_MATCH_BLOBS
SQLITE_MAX_EXPR_DEPTH=0
SQLITE_OMIT_DECLTYPE
SQLITE_OMIT_DEPRECATED
SQLITE_OMIT_GET_TABLE
SQLITE_OMIT_LOAD_EXTENSION
SQLITE_OMIT_PROGRESS_CALLBACK
SQLITE_OMIT_SHARED_CACHE
SQLITE_THREADSAFE=0
SQLITE_USE_ALLOCA
There are a ton of diffs for shell.c. The first that caught my eye was:
92a96,97
> #endif
> #if (!defined(_WIN32) && !defined(WIN32)) || defined(__MINGW_H)
FYI, for this setup the following are #defined by gcc referenced above
_WIN32 => 1
WIN32 => 1
__MINGW_H not #defined
I have attached the gcc output for shell.c -- I wish I knew how to
eliminate gcc's "helpful" insertion of ascii escape codes into its error
messages. It makes them almost unreadable when reading the typescript
file. I've run it thru 'col' in an attempt to clean it up a bit but the
vestiges remain. It should clean enough for you to decipher it though.
gcc -Wall -Wdeclaration-after-statement -Os -Lsrc/../compat/zlib
-Isrc/../compat/zlib -Lsrc/../compat/openssl-1.1.0f
-Isrc/../compat/openssl-1.1.0f/include -Lsrc/../compat/Tcl8.6.6srcdir/win
-Isrc/../compat/Tcl8.6.6srcdir/generic -Isrc/../compat/Tcl8.6.6srcdir/win
-DBROKEN_MINGW_CMDLINE=1 -DFOSSIL_ENABLE_SSL=1 -DFOSSIL_ENABLE_EXEC_REL_PATHS=1
-DFOSSIL_ENABLE_LEGACY_MV_RM=1 -DFOSSIL_ENABLE_TH1_DOCS=1
-DFOSSIL_ENABLE_TH1_HOOKS=1 -DFOSSIL_ENABLE_TCL=1 -DFOSSIL_ENABLE_TCL_STUBS=1
-DUSE_TCL_STUBS -DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1 -DFOSSIL_ENABLE_JSON=1 -I.
-Isrc -Dmain=sqlite3_shell -DSQLITE_SHELL_IS_UTF8=1
-DSQLITE_OMIT_LOAD_EXTENSION=1 -DUSE_SYSTEM_SQLITE=
-DSQLITE_SHELL_DBNAME_PROC=fossil_open -Daccess=file_access
-Dsystem=fossil_system -Dgetenv=fossil_getenv -Dfopen=fossil_fopen -c
src/shell.c -o wbld/shell.o
01mKsrc/shell.c:2074:0:mK 01;35mKwarning: mK"stat" redefined
# define stat _stat
In file included from 01mKsrc/shell.c:108:0mK:
01mKD:/msys64/mingw64/x86_64-w64-mingw32/include/sys/stat.h:279:0:mK
01;36mKnote: mKthis is the location of the previous definition
#define stat _stat64
01mKsrc/shell.c:2073:20:mK 01;35mKwarning: mK'01mKstruct TIMESPECmK' declared
inside parameter list will not be visible outside of this definition or
declaration
# define timespec 01;35mKTmKIMESPEC
01;35mK^mK
01mKsrc/shell.c:2073:20:mK 01;35mKwarning: mK'01mKstruct TIMESPECmK' declared
inside parameter list will not be visible outside of this definition or
declaration
# define timespec 01;35mKTmKIMESPEC
01;35mK^mK
01mKsrc/shell.c:2073:20:mK 01;35mKwarning: mK'01mKstruct TIMESPECmK' declared
inside parameter list will not be visible outside of this definition or
declaration
# define timespec 01;35mKTmKIMESPEC
01;35mK^mK
01mKsrc/shell.c:2073:20:mK 01;35mKwarning: mK'01mKstruct TIMESPECmK' declared
inside parameter list will not be visible outside of this definition or
declaration
# define timespec 01;35mKTmKIMESPEC
01;35mK^mK
01mKsrc/shell.c:2073:20:mK 01;35mKwarning: mK'01mKstruct TIMESPECmK' declared
inside parameter list will not be visible outside of this definition or
declaration
# define timespec 01;35mKTmKIMESPEC
01;35mK^mK
01mKsrc/shell.c:mK In function '01mKwritefileFuncmK':
01mKsrc/shell.c:2327:9:mK 01;35mKwarning: mKimplicit declaration of function
'01mKS_ISLNKmK'; did you mean '01mKS_ISBLKmK'?
[01;35mK-Wimplicit-function-declarationmK]
if( 01;35mKS_ISLNKmK(mode) ){
01;35mK^~~~~~~mK
32mKS_ISBLKmK
01mKsrc/shell.c:mK At top level:
01mKsrc/shell.c:2346:3:mK 01;31mKerror: mKunknown type name '01mKDIRmK'
01;31mKDIRmK *pDir; /* From opendir() */
01;31mK^~~mK
01mKsrc/shell.c:mK In function '01mKfsdirResetCursormK':
01mKsrc/shell.c:2422:22:mK 01;35mKwarning: mKimplicit declaration of function
'01mKclosedirmK'; did you mean '01mKclosemK'?
[01;35mK-Wimplicit-function-declarationmK]
if( pLvl->pDir ) 01;35mKclosedirmK(pLvl->pDir);
01;35mK^~~~~~~~mK
32mKclosemK
01mKsrc/shell.c:mK In function '01mKfsdirNextmK':
01mKsrc/shell.c:2484:18:mK 01;35mKwarning: mKimplicit declaration of function
'01mKopendirmK'; did you mean '01mKopenmK'?
[01;35mK-Wimplicit-function-declarationmK]
pLvl->pDir = 01;35mKopendirmK(pLvl->zDir);
01;35mK^~~~~~~mK
32mKopenmK
01mKsrc/shell.c:2484:16:mK 01;35mKwarning: mKassignment makes pointer from
integer without a cast [01;35mK-Wint-conversionmK]
pLvl->pDir 01;35mK=mK opendir(pLvl->zDir);
01;35mK^mK
01mKsrc/shell.c:2493:29:mK 01;35mKwarning: mKimplicit declaration of function
'01mKreaddirmK'; did you mean '01mKreadmK'?
[01;35mK-Wimplicit-function-declarationmK]
struct dirent *pEntry = 01;35mKreaddirmK(pLvl->pDir);
01;35mK^~~~~~~mK
32mKreadmK
01mKsrc/shell.c:2493:29:mK 01;35mKwarning: mKinitialization makes pointer from
integer without a cast [01;35mK-Wint-conversionmK]
01mKsrc/shell.c:2495:17:mK 01;31mKerror: mKdereferencing pointer to incomplete
type '01mKstruct DIRENTmK'
if( pEntry01;31mK->mKd_name[0]=='.' ){
01;31mK^~mK
make: *** [win/Makefile.mingw:2309: wbld/shell.o] Error 1
_______________________________________________
fossil-users mailing list
[email protected]
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users