Index: src/makemake.tcl ================================================================== --- src/makemake.tcl +++ src/makemake.tcl @@ -327,12 +327,21 @@ # # This file is automatically generated. Instead of editing this # file, edit "makemake.tcl" then run "tclsh makemake.tcl" # to regenerate this file. # -# This is a makefile for us on windows using MinGW. +# This is a makefile for use on Windows/Linux/Darwin/Cygwin using MinGW/Mingw-w64. # + +#### +# +# Select one of mingw, mingw-64 (32-bit) or mingw-w64 (64-bit) +# +PREFIX=i686-pc-mingw32- +#PREFIX=i686-w64-mingw32- +#PREFIX=x86_64-w64-mingw32- + #### The toplevel directory of the source tree. Fossil can be built # in a directory that is separate from the source tree. Just change # the following to point from the build directory to the src/ folder. # SRCDIR = src @@ -414,11 +423,11 @@ # will run on the target platform. This is usually the same # as BCC, unless you are cross-compiling. This C compiler builds # the finished binary for fossil. The BCC compiler above is used # for building intermediate code-generator tools. # -TCC = gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) +TCC = $(PREFIX)gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) # With HTTPS support ifdef FOSSIL_ENABLE_SSL TCC += -L$(OPENSSLLIBDIR) -I$(OPENSSLINCDIR) endif @@ -516,13 +525,13 @@ } writeln { all: $(OBJDIR) $(APPNAME) -$(OBJDIR)/icon.o: $(SRCDIR)/../win/icon.rc - cp $(SRCDIR)/../win/icon.rc $(OBJDIR) - windres $(OBJDIR)/icon.rc -o $(OBJDIR)/icon.o +$(OBJDIR)/fossil.o: $(SRCDIR)/../win/fossil.rc + cp $(SRCDIR)/../win/fossil.ico $(OBJDIR) + $(PREFIX)windres -I$(SRCDIR) $(OBJDIR)/fossil.rc -o $(OBJDIR)/fossil.o install: $(APPNAME) mkdir -p $(INSTALLDIR) mv $(APPNAME) $(INSTALLDIR) @@ -559,12 +568,12 @@ ifdef FOSSIL_ENABLE_TCL EXTRAOBJ += $(OBJDIR)/th_tcl.o endif -$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/icon.o - $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/icon.o +$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/fossil.o + $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/fossil.o # This rule prevents make from using its default rules to try build # an executable named "manifest" out of the file named "manifest.c" # $(SRCDIR)/../manifest: Index: win/Makefile.mingw ================================================================== --- win/Makefile.mingw +++ win/Makefile.mingw @@ -6,12 +6,21 @@ # # This file is automatically generated. Instead of editing this # file, edit "makemake.tcl" then run "tclsh makemake.tcl" # to regenerate this file. # -# This is a makefile for us on windows using MinGW. +# This is a makefile for use on Windows/Linux/Darwin/Cygwin using MinGW/Mingw-w64. # + +#### +# +# Select one of mingw, mingw-64 (32-bit) or mingw-w64 (64-bit) +# +PREFIX=i686-pc-mingw32- +#PREFIX=i686-w64-mingw32- +#PREFIX=x86_64-w64-mingw32- + #### The toplevel directory of the source tree. Fossil can be built # in a directory that is separate from the source tree. Just change # the following to point from the build directory to the src/ folder. # SRCDIR = src @@ -93,11 +102,11 @@ # will run on the target platform. This is usually the same # as BCC, unless you are cross-compiling. This C compiler builds # the finished binary for fossil. The BCC compiler above is used # for building intermediate code-generator tools. # -TCC = gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) +TCC = $(PREFIX)gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) # With HTTPS support ifdef FOSSIL_ENABLE_SSL TCC += -L$(OPENSSLLIBDIR) -I$(OPENSSLINCDIR) endif @@ -479,13 +488,14 @@ VERSION = $(OBJDIR)/version.exe all: $(OBJDIR) $(APPNAME) -$(OBJDIR)/icon.o: $(SRCDIR)/../win/icon.rc - cp $(SRCDIR)/../win/icon.rc $(OBJDIR) - windres $(OBJDIR)/icon.rc -o $(OBJDIR)/icon.o +$(OBJDIR)/fossil.o: $(SRCDIR)/../win/fossil.rc + cp $(SRCDIR)/../win/fossil.rc $(OBJDIR) + cp $(SRCDIR)/../win/fossil.ico $(OBJDIR) + $(PREFIX)windres -I$(SRCDIR) $(OBJDIR)/fossil.rc -o $(OBJDIR)/fossil.o install: $(APPNAME) mkdir -p $(INSTALLDIR) mv $(APPNAME) $(INSTALLDIR) @@ -517,12 +527,12 @@ ifdef FOSSIL_ENABLE_TCL EXTRAOBJ += $(OBJDIR)/th_tcl.o endif -$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/icon.o - $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/icon.o +$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/fossil.o + $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/fossil.o # This rule prevents make from using its default rules to try build # an executable named "manifest" out of the file named "manifest.c" # $(SRCDIR)/../manifest: Index: win/Makefile.mingw.mistachkin ================================================================== --- win/Makefile.mingw.mistachkin +++ win/Makefile.mingw.mistachkin @@ -6,12 +6,21 @@ # # This file is automatically generated. Instead of editing this # file, edit "makemake.tcl" then run "tclsh makemake.tcl" # to regenerate this file. # -# This is a makefile for us on windows using MinGW. +# This is a makefile for use on Windows/Linux/Darwin/Cygwin using MinGW/Mingw-w64. # + +#### +# +# Select one of mingw, mingw-64 (32-bit) or mingw-w64 (64-bit) +# +PREFIX=i686-pc-mingw32- +#PREFIX=i686-w64-mingw32- +#PREFIX=x86_64-w64-mingw32- + #### The toplevel directory of the source tree. Fossil can be built # in a directory that is separate from the source tree. Just change # the following to point from the build directory to the src/ folder. # SRCDIR = src @@ -93,11 +102,11 @@ # will run on the target platform. This is usually the same # as BCC, unless you are cross-compiling. This C compiler builds # the finished binary for fossil. The BCC compiler above is used # for building intermediate code-generator tools. # -TCC = gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) +TCC = $(PREFIX)gcc -Os -Wall -L$(ZLIBDIR) -I$(ZINCDIR) # With HTTPS support ifdef FOSSIL_ENABLE_SSL TCC += -L$(OPENSSLLIBDIR) -I$(OPENSSLINCDIR) endif @@ -133,16 +142,16 @@ # chroot jail. # LIB = -static LIB += -lmingwex -lz -# OpenSSL: Add the necessary libaries required, if enabled. +# OpenSSL: Add the necessary libraries required, if enabled. ifdef FOSSIL_ENABLE_SSL LIB += -lssl -lcrypto -lgdi32 endif -# Tcl: Add the necessary libaries required, if enabled. +# Tcl: Add the necessary libraries required, if enabled. ifdef FOSSIL_ENABLE_TCL LIB += $(LIBTCL) endif #### These libraries MUST appear in the same order as they do for Tcl @@ -479,13 +488,13 @@ VERSION = $(OBJDIR)/version.exe all: $(OBJDIR) $(APPNAME) -$(OBJDIR)/icon.o: $(SRCDIR)/../win/icon.rc - cp $(SRCDIR)/../win/icon.rc $(OBJDIR) - windres $(OBJDIR)/icon.rc -o $(OBJDIR)/icon.o +$(OBJDIR)/fossil.o: $(SRCDIR)/../win/fossil.rc + cp $(SRCDIR)/../win/fossil.ico $(OBJDIR) + $(PREFIX)windres -I$(SRCDIR) $(OBJDIR)/fossil.rc -o $(OBJDIR)/fossil.o install: $(APPNAME) mkdir -p $(INSTALLDIR) mv $(APPNAME) $(INSTALLDIR) @@ -517,12 +526,12 @@ ifdef FOSSIL_ENABLE_TCL EXTRAOBJ += $(OBJDIR)/th_tcl.o endif -$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/icon.o - $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/icon.o +$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/fossil.o + $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/fossil.o # This rule prevents make from using its default rules to try build # an executable named "manifest" out of the file named "manifest.c" # $(SRCDIR)/../manifest: DELETED win/Makefile.mingw32cross Index: win/Makefile.mingw32cross ================================================================== --- win/Makefile.mingw32cross +++ win/Makefile.mingw32cross @@ -1,64 +0,0 @@ -#!/usr/bin/make -# This makefile is for use with the Mingw32 *cross compiler* on Linux -# -#### The toplevel directory of the source tree. Fossil can be built -# in a directory that is separate from the source tree. Just change -# the following to point from the build directory to the src/ folder. -# -SRCDIR = ./src -OBJDIR = ./wobj - -#### C Compiler and options for use in building executables that -# will run on the platform that is doing the build. This is used -# to compile code-generator programs as part of the build process. -# See TCC below for the C compiler for building the finished binary. -# -BCC = gcc -s -O2 - -#### The suffix to add to executable files. ".exe" for windows. -# Nothing for unix. -# -E = .exe - -#### Enable HTTPS support via OpenSSL (links to libssl and libcrypto) -# -FOSSIL_ENABLE_SSL=1 - -#### C Compile and options for use in building executables that -# will run on the target platform. This is usually the same -# as BCC, unless you are cross-compiling. This C compiler builds -# the finished binary for fossil. The BCC compiler above is used -# for building intermediate code-generator tools. -# -#TCC = gcc -O6 -#TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage -#TCC = gcc -g -Os -Wall -#TCC = gcc -g -Os -Wall -DFOSSIL_I18N=0 -L/usr/local/lib -I/usr/local/include -TCC=i686-pc-mingw32-gcc -O3 -s -Wall -DFOSSIL_I18N=0 - -# With HTTPS support -ifdef FOSSIL_ENABLE_SSL -TCC += -DFOSSIL_ENABLE_SSL=1 -endif - -#### Extra arguments for linking the finished binary. Fossil needs -# to link against the Z-Lib compression library. There are no -# other dependencies. We sometimes add the -static option here -# so that we can build a static executable that will run in a -# chroot jail. -# -LIB=-lz -lssl -lcrypto -lwsock32 -lgdi32 -CFLAGS=-O3 -s -LDFLAGS=-s - -#### Tcl shell for use in running the fossil testsuite. -# -TCLSH = tclsh - -#### Include a configuration file that can override any one of these settings. -# --include config.w32 - -# You should not need to change anything below this line -############################################################################### -include $(SRCDIR)/main.mk DELETED win/icon.rc Index: win/icon.rc ================================================================== --- win/icon.rc +++ win/icon.rc @@ -1,1 +0,0 @@ -ID ICON "../win/fossil.ico"