Fossil SCM

fossil-scm / make / mingw32-gcc-config.mk
Blame History Raw 99 lines
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

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button