cfix 1.1 goes LGPL

cfix 1.0 had been licensed under the GNU General Public License. One of the characteristics of the GPL is that it disallows proprietary binaries to be linked against GPL-licensed binaries.

In the context of cfix, linking is quite a concern — after all, every test-DLL has to be linked against cfix.dll. As cfix.dll is GPL-licensed, this means that it would be illegal to redistribute the test-DLL, along with the cfix test runner, commercially. Granted, it is rather uncommon to redistribute testing code with your proprietary software — however, as it turned out, this case exists.

For this reason, cfix 1.1 switches over to the slightly more liberal GNU Lesser General Public License. The LGPL explicitly allows proprietary binaries to link against LGPL-licensed binaries. As such, redistributing your cfix test-DLLs will not be an issue any more.


3 Responses to “cfix 1.1 goes LGPL”

  1. 1 Berny July 17, 2008 at 10:53 am


    congratulations, your unit testing framwork is great.
    i’ve compared a lot of them but yours is the most userfriendly one.

    but i have some questions about cfix:
    – is it possible to break the whole test fixture with a command like CFIX_BREAK() ?
    – i often use CFIX_ASSERT_EXPR(expr, msg) although it’s not in your cfix API reference, why? because it’s great to define your own error messages.
    – how can i format the message in CFIX_ASSERT_EXPR() like in CFIX_LOG() ?

    annother wish for the next release is the possibility to expect exceptions and to proof if the right exception type was thrown.

    i’m looking forward the next release of great cfix!

  2. 2 jpassing July 17, 2008 at 7:08 pm


    thanks, I am glad to hear that you like cfix!

    Regading your questions — the reason CFIX_ASSERT_EXPR is not documented is that it is actually just a helper macro and I just did not think about that it could actually be useful by itself. But you are right, and I will document it in the next release. CFIX_ASSERT_EXPR currently does not support printf-style formatting. Of course you could write a wrapper for that, but I think it is a good idea to add that functionality to the next version as well.

    I am not 100% sure what your intent with CFIX_BREAK is, so I will contact you on that one.

    Thanks again for the feedback and your valuable suggestions!


  3. 3 Cledoangelo December 11, 2011 at 4:35 am

    look at online for more

Comments are currently closed.


About me

Johannes Passing lives in Berlin, Germany and works as a Solutions Architect at Google Cloud.

While mostly focusing on Cloud-related stuff these days, Johannes still enjoys the occasional dose of Win32, COM, and NT kernel mode development.

He also is the author of cfix, a C/C++ unit testing framework for Win32 and NT kernel mode, Visual Assert, a Visual Studio Unit Testing-AddIn, and NTrace, a dynamic function boundary tracing toolkit for Windows NT/x86 kernel/user mode code.

Contact Johannes: jpassing (at) hotmail com

LinkedIn Profile
Xing Profile
Github Profile

%d bloggers like this: