@@ -1,63 +1,62 @@
1 1 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#!/usr/bin/make
2 2 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#
3 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### The directory in which Makefile fragments are stored.
4 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #
5 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ MAKEDIR = ./make
6 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
7 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### Set up our compiler if it hasn't already been defined.
8 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ifndef COMPILER
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ COMPILER = gcc
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ endif
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### Set up our platform if it hasn't already been defined.
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ ifndef PLATFORM
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # We default to Linux.
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # TODO: Figure out how to reliably identify the platform from Make. Sadly the
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # OSTYPE environment variable isn't carried through into GNU Make, so we
19 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # can't do this the obvious way.
20 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ PLATFORM = linux
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ endif
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
3 23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#### The toplevel directory of the source tree. Fossil can be built
4 24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# in a directory that is separate from the source tree. Just change
5 25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# the following to point from the build directory to the src/ folder.
6 26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#
7 27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SRCDIR = ./src
8 28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### The directory into which object code files should be written.
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- OBJDIR = ./obj
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### C Compiler and options for use in building executables that
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # will run on the platform that is doing the build. This is used
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # to compile code-generator programs as part of the build process.
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # See TCC below for the C compiler for building the finished binary.
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
19 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #BCC = gcc -g -O2
20 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- BCC = clang -g -O2
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### The suffix to add to executable files. ".exe" for windows.
23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # Nothing for unix.
24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- E =
26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### C Compile and options for use in building executables that
28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # will run on the target platform. This is usually the same
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # as BCC, unless you are cross-compiling. This C compiler builds
30 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # the finished binary for fossil. The BCC compiler above is used
31 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # for building intermediate code-generator tools.
32 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
33 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #TCC = gcc -O6
34 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage
35 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #TCC = gcc -g -Os -Wall
36 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- TCC = clang -g -Os -Wall
37 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
38 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # To add support for HTTPS
39 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- TCC += -DFOSSIL_ENABLE_SSL
40 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
41 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### Extra arguments for linking the finished binary. Fossil needs
42 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # to link against the Z-Lib compression library. There are no
43 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # other dependencies. We sometimes add the -static option here
44 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # so that we can build a static executable that will run in a
45 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # chroot jail.
46 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
47 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- LIB = -lz $(LDFLAGS)
48 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # If you're on OpenSolaris:
49 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # LIB += lsocket
50 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # Solaris 10 needs:
51 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # LIB += -lsocket -lnsl
52 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # My assumption is that the Sol10 flags will work for Sol8/9 and possibly 11.
53 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #
54 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- # If using HTTPS:
55 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- LIB += -lcrypto -lssl
56 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
57 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- #### Tcl shell for use in running the fossil testsuite.
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### Include the fragments we need from our specific environment.
30 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #
31 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ include $(MAKEDIR)/$(PLATFORM)-fragment.mk
32 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ include $(MAKEDIR)/$(COMPILER)-fragment.mk
33 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
34 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### Include a locale-specific configuration make fragment if present.
35 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # Any modification to the platforms' generic setups should be made in this
36 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # file where possible.
37 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ -include config.mk
38 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
39 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### The following section beginning after #+++ and ending before #--- is used
40 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # inside the $(PLATFORM)-fragment.mk files to turn on the features required
41 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # or desired by builds on that platform. They are replicated here for
42 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # documentation purposes only and should not be set in this file.
43 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #+++
44 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### The following variable definitions decide which features are turned on or
45 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # of when building Fossil. Comment out the features which are not needed by
46 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # this platform.
47 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #
48 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #ENABLE_STATIC = 1 # we want a static build
49 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #ENABLE_SSL = 1 # we are using SSL
50 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #ENABLE_SOCKET = 1 # we are using libsocket (OpenSolaris and Solaris)
51 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #ENABLE_NSL = 1 # we are using libnsl library (Solaris)
52 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #ENABLE_I18N = 1 # we are using i18n settings
53 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #---
54 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
55 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #### The Tcl shell to run for test suites.
58 56 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
#
59 57 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
TCLSH = tclsh
60 58 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
61 59 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# You should not need to change anything below this line
62 60 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
###############################################################################
63 61 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
include $(SRCDIR)/main.mk
62 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
64 63 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
65 64 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
D ELETED Makefile.w32
66 65 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
A DDED make/clang-fragment.mk
67 66 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
A DDED make/gcc-fragment.mk
68 67 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
A DDED make/linux-fragment.mk
69 68 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
A DDED make/ming32-fragment.mk