|
1
|
#### config.mk file for MinGW32. |
|
2
|
# Copy this file as config.mk in the Fossil root directory to use. |
|
3
|
# |
|
4
|
|
|
5
|
#### OS-specific configuration for building Fossil on MingGW32 systems. |
|
6
|
# |
|
7
|
|
|
8
|
#### The suffix to add to executable files. |
|
9
|
# |
|
10
|
E = .exe |
|
11
|
|
|
12
|
#### The directory into which object code files should be written. |
|
13
|
# |
|
14
|
OBJDIR = ./wobj |
|
15
|
|
|
16
|
#### MinGW32 can only support the GCC compiler. Force this. |
|
17
|
# |
|
18
|
COMPILER = gcc |
|
19
|
|
|
20
|
#### The following variable definitions decide which features are turned on or |
|
21
|
# of when building Fossil. Comment out the features which are not needed by |
|
22
|
# this platform. |
|
23
|
# |
|
24
|
ENABLE_STATIC = 1 # we want a static build |
|
25
|
#ENABLE_SSL = 1 # we are using SSL |
|
26
|
#ENABLE_SOCKET = 1 # we are using libsocket (OpenSolaris and Solaris) |
|
27
|
#ENABLE_NSL = 1 # we are using libnsl library (Solaris) |
|
28
|
#ENABLE_I18N = 1 # we are using i18n settings |
|
29
|
|
|
30
|
#### Compiler-specific configuration for users of the GCC compiler suite. |
|
31
|
# |
|
32
|
|
|
33
|
#### C Compiler and options for use in building executables that |
|
34
|
# will run on the platform that is doing the build. This is used |
|
35
|
# to compile code-generator programs as part of the build process. |
|
36
|
# See TCC below for the C compiler for building the finished binary. |
|
37
|
# |
|
38
|
BCC = gcc -g -O2 |
|
39
|
|
|
40
|
#### C Compile and options for use in building executables that |
|
41
|
# will run on the target platform. This is usually the same |
|
42
|
# as BCC, unless you are cross-compiling. This C compiler builds |
|
43
|
# the finished binary for fossil. The BCC compiler above is used |
|
44
|
# for building intermediate code-generator tools. |
|
45
|
# |
|
46
|
TCC = gcc -g -Os -Wall |
|
47
|
|
|
48
|
#### Compiler options. |
|
49
|
# The variables tested are defined in the make/PLATFORM-fragment.mk files. |
|
50
|
# |
|
51
|
ifdef ENABLE_SSL |
|
52
|
TCC += -DFOSSIL_ENABLE_SSL=1 |
|
53
|
endif |
|
54
|
ifndef ENABLE_I18N |
|
55
|
TCC += -DFOSSIL_I18N=0 |
|
56
|
endif |
|
57
|
ifdef PLATFORM_SPECIFIC_GCC |
|
58
|
TCC += $(PLATFORM_SPECIFIC_GCC) |
|
59
|
endif |
|
60
|
|
|
61
|
#### Linker dependencies. Fossil only requires libz as an external dependency. |
|
62
|
# All other library settings are optional and toggled in platform-specific |
|
63
|
# make fragments. |
|
64
|
# |
|
65
|
LIB = -lz $(LDFLAGS) |
|
66
|
|
|
67
|
#### Linker options. |
|
68
|
# The variables tested are defined in the make/PLATFORM-fragment.mk files. |
|
69
|
# |
|
70
|
ifdef ENABLE_STATIC |
|
71
|
LIB += -static |
|
72
|
endif |
|
73
|
ifdef ENABLE_SSL |
|
74
|
LIB += -lcrypto -lssl |
|
75
|
endif |
|
76
|
ifdef ENABLE_SOCKET |
|
77
|
LIB += -lsocket |
|
78
|
endif |
|
79
|
ifdef ENABLE_NSL |
|
80
|
LIB += -lnsl |
|
81
|
endif |
|
82
|
ifdef PLATFORM_SPECIFIC_LIB |
|
83
|
LIB += $(PLATFORM_SPECIFIC_LIB) |
|
84
|
endif |
|
85
|
|
|
86
|
#### These will have to be adjusted for your MinGW32 environment. |
|
87
|
# |
|
88
|
MINGW32_GCC = -L/mingw/lib -I/mingw/include |
|
89
|
#MINGW32_GCC = -L/usr/local/lib -I/usr/local/include |
|
90
|
TCC += $(MINGW32_GCC) |
|
91
|
|
|
92
|
MINGW32_LIB = -lmingwex -lws2_32 |
|
93
|
LIB += $(MINGW32_LIB) |
|
94
|
|
|
95
|
#### Signal that we've used a config.mk file. |
|
96
|
# |
|
97
|
CONFIG_MK_COMPLETE=1 |
|
98
|
|
|
99
|
|