Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch auto-mingw-makefile Excluding Merge-Ins
This is equivalent to a diff from 24e298edd0 to f382b9a559
2011-11-14
| ||
03:02 | Update the built-in SQLite to version 3.7.9 plus the 8-byte alignment fix in branch-3.7.9. check-in: 0c8d1ca9cd user: drh tags: trunk | |
00:13 | fossil import --incremental should set the appropriate ancestor for the first commit in each branch being added Leaf check-in: c95d7a9c3d user: steveb tags: steveb-fixes | |
2011-11-13
| ||
09:11 | Merge with trunk check-in: c30eaa8862 user: ashish tags: ashish-ipv6 | |
2011-11-05
| ||
23:12 | Slight syntax tweak for 'ifeq' statement, this may work on more make variants. Closed-Leaf check-in: f382b9a559 user: mistachkin tags: auto-mingw-makefile | |
23:04 | Add comments about leading './' in front of source and build directory names. check-in: f3096fe00e user: mistachkin tags: auto-mingw-makefile | |
22:50 | Add fixes to classic makefile to support MinGW mostly automatically. check-in: 590cee0ec9 user: mistachkin tags: auto-mingw-makefile | |
03:45 | Fix some more compiler warnings seen with MSVC. check-in: 24e298edd0 user: mistachkin tags: trunk | |
03:22 | Be sure to escape any backslashes when emitting #line preprocessor directives in the translate.c tool, cherrypick from [e36ad719cf]. check-in: c2bed5b3db user: mistachkin tags: trunk | |
Changes to Makefile.classic.
3 3 # This is the top-level makefile for Fossil when the build is occurring 4 4 # on a unix platform. This works out-of-the-box on most unix platforms. 5 5 # But you are free to vary some of the definitions if desired. 6 6 # 7 7 #### The toplevel directory of the source tree. Fossil can be built 8 8 # in a directory that is separate from the source tree. Just change 9 9 # the following to point from the build directory to the src/ folder. 10 +# Having a "./" prefix in the value of this variable breaks our use of the 11 +# "makeheaders" tool when running make on the MinGW platform, apparently 12 +# due to some command line argument manipulation performed automatically 13 +# by the shell. 10 14 # 11 -SRCDIR = ./src 15 +SRCDIR = src 12 16 13 17 #### The directory into which object code files should be written. 18 +# Having a "./" prefix in the value of this variable breaks our use of the 19 +# "makeheaders" tool when running make on the MinGW platform, apparently 20 +# due to some command line argument manipulation performed automatically 21 +# by the shell. 14 22 # 15 23 # 16 -OBJDIR = ./bld 24 +OBJDIR = bld 17 25 18 26 #### C Compiler and options for use in building executables that 19 27 # will run on the platform that is doing the build. This is used 20 28 # to compile code-generator programs as part of the build process. 21 29 # See TCC below for the C compiler for building the finished binary. 22 30 # 23 31 BCC = gcc ................................................................................ 34 42 # for building intermediate code-generator tools. 35 43 # 36 44 #TCC = gcc -O6 37 45 #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage 38 46 TCC = gcc -g -Os -Wall 39 47 40 48 # To add support for HTTPS 41 -TCC += -DFOSSIL_ENABLE_SSL 49 +TCC += -DFOSSIL_ENABLE_SSL=1 42 50 43 51 #### Extra arguments for linking the finished binary. Fossil needs 44 52 # to link against the Z-Lib compression library. There are no 45 53 # other dependencies. We sometimes add the -static option here 46 54 # so that we can build a static executable that will run in a 47 55 # chroot jail. 48 56 # 49 57 LIB = -lz $(LDFLAGS) 50 58 51 59 # If using HTTPS: 52 -LIB += -lcrypto -lssl 60 +# 61 +# NOTE: These must appear in exactly this order or MinGW will complain about 62 +# missing symbols. 63 +# 64 +LIB += -lssl -lcrypto 65 + 66 +#------------------------------------------------------------------------------ 67 +# Begin MinGW Section (the following lines may all be commented out unless 68 +# building on Windows via MinGW). 69 +#------------------------------------------------------------------------------ 70 + 71 +# Where is zlib (needed for MinGW builds only)? 72 +ZLIBDIR = $(SRCDIR)/../zlib-1.2.5 73 + 74 +# Where is OpenSSL (needed for MinGW builds only)? 75 +OPENSSLDIR = $(SRCDIR)/../openssl-1.0.0e 76 + 77 +# Include directory for zlib (needed for MinGW builds only) 78 +TCC.MINGW32_NT-6.1 = -I$(ZLIBDIR) 79 + 80 +# Include directory for OpenSSL (needed for MinGW builds only) 81 +TCC.MINGW32_NT-6.1 += -I$(OPENSSLDIR)/include 82 + 83 +# Library directory for zlib (needed for MinGW builds only). 84 +LIB.MINGW32_NT-6.1 = -L$(ZLIBDIR) 85 + 86 +# Library directory for OpenSSL (needed for MinGW builds only). 87 +LIB.MINGW32_NT-6.1 += -L$(OPENSSLDIR) 88 + 89 +# Add the necessary Windows libraries (needed for Windows builds only). 90 +LIB.MINGW32_NT-6.1 += -lgdi32 -lws2_32 91 + 92 +#------------------------------------------------------------------------------ 93 +# End MinGW Section (the preceeding lines may all be commented out unless 94 +# building on Windows via MinGW) 95 +#------------------------------------------------------------------------------ 53 96 54 97 #### Tcl shell for use in running the fossil testsuite. If you do not 55 98 # care about testing the end result, this can be blank. 56 99 # 57 100 TCLSH = tclsh 58 101 59 102 # You should not need to change anything below this line 60 103 ############################################################################### 61 104 # 62 105 # Automatic platform-specific options. 63 106 HOST_OS_CMD = uname -s 64 107 HOST_OS = $(HOST_OS_CMD:sh) 108 + 109 +# On MinGW, slightly different detection magic is required. 110 +ifeq ($(HOST_OS),) 111 +HOST_OS = $(shell $(HOST_OS_CMD)) 112 +endif 65 113 66 114 LIB.SunOS= -lsocket -lnsl 67 115 LIB += $(LIB.$(HOST_OS)) 68 116 69 117 TCC.DragonFly += -DUSE_PREAD 70 118 TCC.FreeBSD += -DUSE_PREAD 71 119 TCC.NetBSD += -DUSE_PREAD 72 120 TCC.OpenBSD += -DUSE_PREAD 73 121 TCC += $(TCC.$(HOST_OS)) 74 122 75 123 include $(SRCDIR)/main.mk