Greetings,
I just started playing with fossil, but the lack of client SSL/TLS
support in the official binaries is a pretty major bump in the road
for production use. I've read all the topics that I could find on this
subject, and I understand the arguments, but this really gets in the
way of the "simply download a precompiled binary" idea. Please
consider building a separate set of binaries and letting the users
select which version they want to use.
After ~4 hours of trial and error, I finally managed to compile
everything with mingw-w64. The following steps seem to work ok, but
please let me know if anything should be done differently. I assume
that mingw-w64 will be installed to C:\MinGW; adjust the paths as
needed if this isn't the case. You might also be able to use TDM-GCC,
but I haven't tested it. If you already have the toolchain, MSYS, and
wget installed, then you can jump to the final step.
1. Download and run mingw-get-inst from:
http://sourceforge.net/projects/mingw/files/latest/download?source=files
2. At the component selection step, only the "MinGW Developer ToolKit"
is needed (uncheck the C compiler).
3. Download mingw-w64 from:
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/rubenvb/gcc-4.7-release/x86_64-w64-mingw32-gcc-4.7.2-release-win64_rubenvb.7z/download
4. Extract the archive and move the contents of the resulting mingw64
directory to C:\MinGW, overwriting all existing files.
5. Start MSYS shell from the Start Menu or C:\MinGW\msys\1.0\msys.bat.
6. Install wget by running:
mingw-get install msys-wget-bin
7. cd to the directory where you want to build fossil and run the
following script:
# Download and extract fossil source
wget http://www.fossil-scm.org/download/fossil-src-20121022124804.tar.gz
tar -xzf fossil-src-20121022124804.tar.gz
cd fossil-src-20121022124804
# Download, extract, and build zlib
wget http://zlib.net/zlib-1.2.7.tar.gz
tar -xzf zlib-1.2.7.tar.gz
cd zlib-1.2.7
make -f win32/Makefile.gcc
cd ..
# Download, extract, and build openssl
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -xzf openssl-1.0.1c.tar.gz
cd openssl-1.0.1c
./Configure mingw64
make build_ssl build_crypto
cd ..
# Build fossil
make -f win/Makefile.mingw FOSSIL_ENABLE_SSL=1
You can now test the created binary by running:
fossil clone https://www.fossil-scm.org/ myclone.fossil
I should point out that zlib and openssl are not actually installed.
Fossil's win/Makefile.mingw makes special provisions for getting the
libraries and header files from the ./zlib-1.2.7 and ./openssl-1.0.1c
directories. If these library versions change, you may need to edit
Makefile.mingw by hand to update the directory names.
- Max
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users