Artifact 7035415b04a450e40789aa5be1e5dfecc9520892:
File
Makefile
part of check-in
[8372cc0b81]
- Socket operations now functional in Win32 port. Added quotes around the filename portion of the command to edit thus working of windows in paths where the temp directory contains spaces. Added -all flag to clean command. If not specified each file is prompted for before removing.
by
jnc on
2007-09-22 18:34:49.
Also file
Makefile.w32
part of check-in
[3c5482959c]
- Merge in the w32 changes.
by
drh on
2007-09-22 19:43:55.
0000: 23 21 2f 75 73 72 2f 62 69 6e 2f 6d 61 6b 65 0a #!/usr/bin/make.
0010: 23 0a 23 23 23 23 20 54 68 65 20 74 6f 70 6c 65 #.#### The tople
0020: 76 65 6c 20 64 69 72 65 63 74 6f 72 79 20 6f 66 vel directory of
0030: 20 74 68 65 20 73 6f 75 72 63 65 20 74 72 65 65 the source tree
0040: 2e 20 20 46 6f 73 73 69 6c 20 63 61 6e 20 62 65 . Fossil can be
0050: 20 62 75 69 6c 74 0a 23 20 20 20 20 69 6e 20 61 built.# in a
0060: 20 64 69 72 65 63 74 6f 72 79 20 74 68 61 74 20 directory that
0070: 69 73 20 73 65 70 61 72 61 74 65 20 66 72 6f 6d is separate from
0080: 20 74 68 65 20 73 6f 75 72 63 65 20 74 72 65 65 the source tree
0090: 2e 20 20 4a 75 73 74 20 63 68 61 6e 67 65 0a 23 . Just change.#
00a0: 20 20 20 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e the followin
00b0: 67 20 74 6f 20 70 6f 69 6e 74 20 66 72 6f 6d 20 g to point from
00c0: 74 68 65 20 62 75 69 6c 64 20 64 69 72 65 63 74 the build direct
00d0: 6f 72 79 20 74 6f 20 74 68 65 20 73 72 63 2f 20 ory to the src/
00e0: 66 6f 6c 64 65 72 2e 0a 23 0a 53 52 43 44 49 52 folder..#.SRCDIR
00f0: 20 3d 20 2e 2f 73 72 63 0a 0a 23 23 23 23 20 43 = ./src..#### C
0100: 20 43 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70 Compiler and op
0110: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e tions for use in
0120: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74 building execut
0130: 61 62 6c 65 73 20 74 68 61 74 0a 23 20 20 20 20 ables that.#
0140: 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 will run on the
0150: 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 20 69 73 platform that is
0160: 20 64 6f 69 6e 67 20 74 68 65 20 62 75 69 6c 64 doing the build
0170: 2e 20 20 54 68 69 73 20 69 73 20 75 73 65 64 0a . This is used.
0180: 23 20 20 20 20 74 6f 20 63 6f 6d 70 69 6c 65 20 # to compile
0190: 63 6f 64 65 2d 67 65 6e 65 72 61 74 6f 72 20 70 code-generator p
01a0: 72 6f 67 72 61 6d 73 20 61 73 20 70 61 72 74 20 rograms as part
01b0: 6f 66 20 74 68 65 20 62 75 69 6c 64 20 70 72 6f of the build pro
01c0: 63 65 73 73 2e 0a 23 20 20 20 20 53 65 65 20 54 cess..# See T
01d0: 43 43 20 62 65 6c 6f 77 20 66 6f 72 20 74 68 65 CC below for the
01e0: 20 43 20 63 6f 6d 70 69 6c 65 72 20 66 6f 72 20 C compiler for
01f0: 62 75 69 6c 64 69 6e 67 20 74 68 65 20 66 69 6e building the fin
0200: 69 73 68 65 64 20 62 69 6e 61 72 79 2e 0a 23 0a ished binary..#.
0210: 42 43 43 20 3d 20 67 63 63 20 2d 67 20 2d 4f 32 BCC = gcc -g -O2
0220: 0a 0a 23 23 23 23 20 54 68 65 20 73 75 66 66 69 ..#### The suffi
0230: 78 20 74 6f 20 61 64 64 20 74 6f 20 65 78 65 63 x to add to exec
0240: 75 74 61 62 6c 65 20 66 69 6c 65 73 2e 20 20 22 utable files. "
0250: 2e 65 78 65 22 20 66 6f 72 20 77 69 6e 64 6f 77 .exe" for window
0260: 73 2e 0a 23 20 20 20 20 4e 6f 74 68 69 6e 67 20 s..# Nothing
0270: 66 6f 72 20 75 6e 69 78 2e 0a 23 0a 45 20 3d 0a for unix..#.E =.
0280: 0a 23 23 23 23 20 43 20 43 6f 6d 70 69 6c 65 20 .#### C Compile
0290: 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 and options for
02a0: 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 use in building
02b0: 65 78 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 executables that
02c0: 20 0a 23 20 20 20 20 77 69 6c 6c 20 72 75 6e 20 .# will run
02d0: 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 70 6c on the target pl
02e0: 61 74 66 6f 72 6d 2e 20 20 54 68 69 73 20 69 73 atform. This is
02f0: 20 75 73 75 61 6c 6c 79 20 74 68 65 20 73 61 6d usually the sam
0300: 65 0a 23 20 20 20 20 61 73 20 42 43 43 2c 20 75 e.# as BCC, u
0310: 6e 6c 65 73 73 20 79 6f 75 20 61 72 65 20 63 72 nless you are cr
0320: 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 2e 20 20 oss-compiling.
0330: 54 68 69 73 20 43 20 63 6f 6d 70 69 6c 65 72 20 This C compiler
0340: 62 75 69 6c 64 73 0a 23 20 20 20 20 74 68 65 20 builds.# the
0350: 66 69 6e 69 73 68 65 64 20 62 69 6e 61 72 79 20 finished binary
0360: 66 6f 72 20 66 6f 73 73 69 6c 2e 20 20 54 68 65 for fossil. The
0370: 20 42 43 43 20 63 6f 6d 70 69 6c 65 72 20 61 62 BCC compiler ab
0380: 6f 76 65 20 69 73 20 75 73 65 64 0a 23 20 20 20 ove is used.#
0390: 20 66 6f 72 20 62 75 69 6c 64 69 6e 67 20 69 6e for building in
03a0: 74 65 72 6d 65 64 69 61 74 65 20 63 6f 64 65 2d termediate code-
03b0: 67 65 6e 65 72 61 74 6f 72 20 74 6f 6f 6c 73 2e generator tools.
03c0: 0a 23 0a 23 54 43 43 20 3d 20 67 63 63 20 2d 4f .#.#TCC = gcc -O
03d0: 36 0a 23 54 43 43 20 3d 20 67 63 63 20 2d 67 20 6.#TCC = gcc -g
03e0: 2d 4f 30 20 2d 57 61 6c 6c 20 2d 66 70 72 6f 66 -O0 -Wall -fprof
03f0: 69 6c 65 2d 61 72 63 73 20 2d 66 74 65 73 74 2d ile-arcs -ftest-
0400: 63 6f 76 65 72 61 67 65 0a 23 54 43 43 20 3d 20 coverage.#TCC =
0410: 67 63 63 20 2d 67 20 2d 4f 73 20 2d 57 61 6c 6c gcc -g -Os -Wall
0420: 0a 54 43 43 20 3d 20 67 63 63 20 2d 67 20 2d 4f .TCC = gcc -g -O
0430: 73 20 2d 57 61 6c 6c 20 2d 44 46 4f 53 53 49 4c s -Wall -DFOSSIL
0440: 5f 49 31 38 4e 3d 30 0a 0a 23 23 23 23 20 45 78 _I18N=0..#### Ex
0450: 74 72 61 20 61 72 67 75 6d 65 6e 74 73 20 66 6f tra arguments fo
0460: 72 20 6c 69 6e 6b 69 6e 67 20 74 68 65 20 66 69 r linking the fi
0470: 6e 69 73 68 65 64 20 62 69 6e 61 72 79 2e 20 20 nished binary.
0480: 46 6f 73 73 69 6c 20 6e 65 65 64 73 0a 23 20 20 Fossil needs.#
0490: 20 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 to link agains
04a0: 74 20 74 68 65 20 5a 2d 4c 69 62 20 63 6f 6d 70 t the Z-Lib comp
04b0: 72 65 73 73 69 6f 6e 20 6c 69 62 72 61 72 79 2e ression library.
04c0: 20 20 54 68 65 72 65 20 61 72 65 20 6e 6f 0a 23 There are no.#
04d0: 20 20 20 20 6f 74 68 65 72 20 64 65 70 65 6e 64 other depend
04e0: 65 6e 63 69 65 73 2e 20 20 57 65 20 73 6f 6d 65 encies. We some
04f0: 74 69 6d 65 73 20 61 64 64 20 74 68 65 20 2d 73 times add the -s
0500: 74 61 74 69 63 20 6f 70 74 69 6f 6e 20 68 65 72 tatic option her
0510: 65 0a 23 20 20 20 20 73 6f 20 74 68 61 74 20 77 e.# so that w
0520: 65 20 63 61 6e 20 62 75 69 6c 64 20 61 20 73 74 e can build a st
0530: 61 74 69 63 20 65 78 65 63 75 74 61 62 6c 65 20 atic executable
0540: 74 68 61 74 20 77 69 6c 6c 20 72 75 6e 20 69 6e that will run in
0550: 20 61 0a 23 20 20 20 20 63 68 72 6f 6f 74 20 6a a.# chroot j
0560: 61 69 6c 2e 0a 23 0a 23 4c 49 42 20 3d 20 2d 6c ail..#.#LIB = -l
0570: 7a 0a 4c 49 42 20 3d 20 2d 6c 7a 20 2d 6c 77 73 z.LIB = -lz -lws
0580: 32 5f 33 32 0a 0a 0a 23 23 23 23 20 54 63 6c 20 2_32...#### Tcl
0590: 73 68 65 6c 6c 20 66 6f 72 20 75 73 65 20 69 6e shell for use in
05a0: 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 66 6f 73 running the fos
05b0: 73 69 6c 20 74 65 73 74 73 75 69 74 65 2e 0a 23 sil testsuite..#
05c0: 0a 54 43 4c 53 48 20 3d 20 74 63 6c 73 68 0a 0a .TCLSH = tclsh..
05d0: 23 20 59 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 # You should not
05e0: 20 6e 65 65 64 20 74 6f 20 63 68 61 6e 67 65 20 need to change
05f0: 61 6e 79 74 68 69 6e 67 20 62 65 6c 6f 77 20 74 anything below t
0600: 68 69 73 20 6c 69 6e 65 0a 23 23 23 23 23 23 23 his line.#######
0610: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0620: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0630: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0640: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0650: 23 23 23 23 23 23 23 23 0a 69 6e 63 6c 75 64 65 ########.include
0660: 20 24 28 53 52 43 44 49 52 29 2f 6d 61 69 6e 2e $(SRCDIR)/main.
0670: 6d 6b 0a mk.