Notice: clumsy only support Windows Vista, Windows 7 and above. 64bit Windows users are strongly recommanded to download the 64bit build.
0.3 RC3 - See here
0.2 - Updated WinDivert to 1.1.7.
Extract downloaded zip file to arbitrary directory and execute clumsy.exe. clumsy is alpha quality software and does have some gotchas. Be sure to read the manual page before using it.
For development we'll generate VS2019 solutions with genie and it should just work:
git clone https://github.com/jagt/clumsy.git cd clumsy genie vs2019
Then open generated solution under
For building binaries that ship to users we choose to use the MSYS2 toolchain. After installation you'll need to install clang for 32/64 builds in the MSYS2 console.
pacman -Syu pacman -S make mingw-w64-x86_64-clang mingw-w64-i686-clang
Say we have MSYS2 installed at
C:\msys2. We'll need to setup correct path for 32/64bit builds seperately:
git clone https://github.com/jagt/clumsy.git cd clumsy genie gmake set PATH=C:/msys64/mingw64/bin;C:/msys64/usr/bin/ make -C build config=release64 set PATH=C:/msys64/mingw32/bin;C:/msys64/usr/bin/ make -C build config=release32
It should produce builds that has minimal dependencies and works everywhere.
If you have Visual Studio 2012 or TDM-GCC 4.8.1 installed then building is rather easy. Currently no other environment is supported.
Clone the repository. Then you'll need premake 4.4-beta5 to build the solution or makefiles. premake currently can only generate VS2010 solution file. Open it in VS2012 and choose upgrade works fine. All external dependencies are included in the repo, so it should build out of the box.
git clone https://github.com/jagt/clumsy.git premake4 vs2010 premake4 gmake
If you choose to build using VS2012, remember the runtime MUST be dynamically linked. This is due to provided library binaries are using dynamic runtime. This means if you want to distribute your builds, the user needs to install VS2012 runtime. It is recommended to use the awesome TDM64-GCC 4.8.1 to build the project. It would generate binaries without other dependencies execpt those are included here. This is also how the provided clumsy binaries above are built.
mingw32-make -C build CC=gcc config=debug32 mingw32-make -C build CC=gcc config=debug64 mingw32-make -C build CC=gcc config=release32 mingw32-make -C build CC=gcc config=release64
Here's a list of things used to build clumsy.
Here's a list of simlilar softwares aiming to solve the same problem, provided in case of looking for alternatives.