[tasque/transition: 49/213] Setup new build configurations



commit e1ded6f128636abb897421f206f3a2b19ebe26d2
Author: Antonius Riha <antoniusriha gmail com>
Date:   Wed May 30 01:00:58 2012 +0200

    Setup new build configurations
    
    * GnomeDebug and GnomeRelease
    * GtkLinuxDebug and GtkLinuxRelease
    * GtkWinDebug and GtkWinRelease
    * GtkMacDebug and GtkMacRelease
    * MonoMacDebug and MonoMacRelease
    
    These correspond to the platforms Tasque is intended to run on. Only GnomeDebug (former LinuxDebug) and GtkLinuxDebug are proper configured for now. Others will follow.
    
    The idea is to provide two different kinds of UX of Tasque: One that focuses on consistency throughout various OSs (Gtk builds). The other allows better integration into their respective OS: MonoMac and Gnome builds.

 Makefile.am                    |   30 ++++++--
 build/build.mdproj             |   54 +++++++++++-
 configure.ac                   |  105 +++++++++++++++++-------
 src/RtmNet/Makefile.am         |   93 ++++++++++++++++++++--
 src/RtmNet/RtmNet.csproj       |   87 ++++++++++++++++++--
 src/libtasque/Makefile.am      |   93 ++++++++++++++++++++--
 src/libtasque/libtasque.csproj |   84 ++++++++++++++++++--
 src/tasque/Application.cs      |    2 +-
 src/tasque/Makefile.am         |  165 +++++++++++++++++++++++++++++++++-----
 src/tasque/tasque.csproj       |   98 ++++++++++++++++++++--
 tasque.sln                     |  175 ++++++++++++++++++++++++++++-----------
 tests/Makefile.am              |  110 ++++++++++++++++++++++++-
 tests/tests.csproj             |   56 ++++++++++++-
 13 files changed, 998 insertions(+), 154 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 84dc85e..be8071a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,15 +2,33 @@
 EXTRA_DIST =  expansions.m4
 
 #Warning: This is an automatically generated file, do not edit!
-if ENABLE_RELEASE
- SUBDIRS =  src/libtasque src/RtmNet po src/tasque
+if ENABLE_GNOMEDEBUG
+ SUBDIRS =  src/libtasque src/RtmNet tests src/tasque
+endif
+if ENABLE_GNOMERELEASE
+ SUBDIRS =  src/libtasque src/RtmNet src/tasque
+endif
+if ENABLE_GTKLINUXDEBUG
+ SUBDIRS =  src/libtasque src/RtmNet tests src/tasque
+endif
+if ENABLE_GTKLINUXRELEASE
+ SUBDIRS =  src/libtasque src/RtmNet src/tasque
 endif
-if ENABLE_DEBUG
- SUBDIRS =  src/libtasque src/RtmNet tests po src/tasque
+if ENABLE_GTKWINDEBUG
+ SUBDIRS =  src/libtasque src/RtmNet tests src/tasque
+endif
+if ENABLE_GTKWINRELEASE
+ SUBDIRS =  src/libtasque src/RtmNet src/tasque
+endif
+if ENABLE_GTKMACDEBUG
+ SUBDIRS =  src/libtasque src/RtmNet tests src/tasque
+endif
+if ENABLE_GTKMACRELEASE
+ SUBDIRS =  src/libtasque src/RtmNet src/tasque
 endif
-if ENABLE_LINUXDEBUG
+if ENABLE_MONOMACDEBUG
  SUBDIRS =  src/libtasque src/RtmNet tests src/tasque
 endif
-if ENABLE_LINUXRELEASE
+if ENABLE_MONOMACRELEASE
  SUBDIRS =  src/libtasque src/RtmNet src/tasque
 endif
diff --git a/build/build.mdproj b/build/build.mdproj
index c64ec49..f15f0eb 100644
--- a/build/build.mdproj
+++ b/build/build.mdproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Configuration Condition=" '$(Configuration)' == '' ">Default</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ItemType>GenericProject</ItemType>
     <ProductVersion>10.0.0</ProductVersion>
@@ -14,13 +14,58 @@
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Default|AnyCPU' ">
     <OutputPath>.</OutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeDebug|AnyCPU' ">
     <OutputPath>.</OutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxDebug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeRelease|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxDebug|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxRelease|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinDebug|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinRelease|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacDebug|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacRelease|AnyCPU' ">
+    <OutputPath>.</OutputPath>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacDebug|AnyCPU' ">
     <OutputPath>.</OutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxRelease|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacRelease|AnyCPU' ">
     <OutputPath>.</OutputPath>
     <CustomCommands>
       <CustomCommands>
@@ -69,4 +114,3 @@
     <Message Text="Finished." />
   </Target>
 </Project>
-
diff --git a/configure.ac b/configure.ac
index 470ed13..6c9c261 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,52 +23,100 @@ if test "x$DMCS" = "xno"; then
 fi
 
 
-AC_ARG_ENABLE(release,
-	AC_HELP_STRING([--enable-release],
-		[Use 'RELEASE' Configuration [default=NO]]),
-		enable_release=yes, enable_release=no)
-AM_CONDITIONAL(ENABLE_RELEASE, test x$enable_release = xyes)
-if test "x$enable_release" = "xyes" ; then
+AC_ARG_ENABLE(gnomedebug,
+	AC_HELP_STRING([--enable-gnomedebug],
+		[Use 'GNOMEDEBUG' Configuration [default=NO]]),
+		enable_gnomedebug=yes, enable_gnomedebug=no)
+AM_CONDITIONAL(ENABLE_GNOMEDEBUG, test x$enable_gnomedebug = xyes)
+if test "x$enable_gnomedebug" = "xyes" ; then
 	CONFIG_REQUESTED="yes"
 fi
-AC_ARG_ENABLE(debug,
-	AC_HELP_STRING([--enable-debug],
-		[Use 'DEBUG' Configuration [default=NO]]),
-		enable_debug=yes, enable_debug=no)
-AM_CONDITIONAL(ENABLE_DEBUG, test x$enable_debug = xyes)
-if test "x$enable_debug" = "xyes" ; then
+AC_ARG_ENABLE(gnomerelease,
+	AC_HELP_STRING([--enable-gnomerelease],
+		[Use 'GNOMERELEASE' Configuration [default=YES]]),
+		enable_gnomerelease=yes, enable_gnomerelease=no)
+AM_CONDITIONAL(ENABLE_GNOMERELEASE, test x$enable_gnomerelease = xyes)
+if test "x$enable_gnomerelease" = "xyes" ; then
 	CONFIG_REQUESTED="yes"
 fi
-AC_ARG_ENABLE(linuxdebug,
-	AC_HELP_STRING([--enable-linuxdebug],
-		[Use 'LINUXDEBUG' Configuration [default=NO]]),
-		enable_linuxdebug=yes, enable_linuxdebug=no)
-AM_CONDITIONAL(ENABLE_LINUXDEBUG, test x$enable_linuxdebug = xyes)
-if test "x$enable_linuxdebug" = "xyes" ; then
+AC_ARG_ENABLE(gtklinuxdebug,
+	AC_HELP_STRING([--enable-gtklinuxdebug],
+		[Use 'GTKLINUXDEBUG' Configuration [default=NO]]),
+		enable_gtklinuxdebug=yes, enable_gtklinuxdebug=no)
+AM_CONDITIONAL(ENABLE_GTKLINUXDEBUG, test x$enable_gtklinuxdebug = xyes)
+if test "x$enable_gtklinuxdebug" = "xyes" ; then
 	CONFIG_REQUESTED="yes"
 fi
-AC_ARG_ENABLE(linuxrelease,
-	AC_HELP_STRING([--enable-linuxrelease],
-		[Use 'LINUXRELEASE' Configuration [default=YES]]),
-		enable_linuxrelease=yes, enable_linuxrelease=no)
-AM_CONDITIONAL(ENABLE_LINUXRELEASE, test x$enable_linuxrelease = xyes)
-if test "x$enable_linuxrelease" = "xyes" ; then
+AC_ARG_ENABLE(gtklinuxrelease,
+	AC_HELP_STRING([--enable-gtklinuxrelease],
+		[Use 'GTKLINUXRELEASE' Configuration [default=NO]]),
+		enable_gtklinuxrelease=yes, enable_gtklinuxrelease=no)
+AM_CONDITIONAL(ENABLE_GTKLINUXRELEASE, test x$enable_gtklinuxrelease = xyes)
+if test "x$enable_gtklinuxrelease" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(gtkwindebug,
+	AC_HELP_STRING([--enable-gtkwindebug],
+		[Use 'GTKWINDEBUG' Configuration [default=NO]]),
+		enable_gtkwindebug=yes, enable_gtkwindebug=no)
+AM_CONDITIONAL(ENABLE_GTKWINDEBUG, test x$enable_gtkwindebug = xyes)
+if test "x$enable_gtkwindebug" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(gtkwinrelease,
+	AC_HELP_STRING([--enable-gtkwinrelease],
+		[Use 'GTKWINRELEASE' Configuration [default=NO]]),
+		enable_gtkwinrelease=yes, enable_gtkwinrelease=no)
+AM_CONDITIONAL(ENABLE_GTKWINRELEASE, test x$enable_gtkwinrelease = xyes)
+if test "x$enable_gtkwinrelease" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(gtkmacdebug,
+	AC_HELP_STRING([--enable-gtkmacdebug],
+		[Use 'GTKMACDEBUG' Configuration [default=NO]]),
+		enable_gtkmacdebug=yes, enable_gtkmacdebug=no)
+AM_CONDITIONAL(ENABLE_GTKMACDEBUG, test x$enable_gtkmacdebug = xyes)
+if test "x$enable_gtkmacdebug" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(gtkmacrelease,
+	AC_HELP_STRING([--enable-gtkmacrelease],
+		[Use 'GTKMACRELEASE' Configuration [default=NO]]),
+		enable_gtkmacrelease=yes, enable_gtkmacrelease=no)
+AM_CONDITIONAL(ENABLE_GTKMACRELEASE, test x$enable_gtkmacrelease = xyes)
+if test "x$enable_gtkmacrelease" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(monomacdebug,
+	AC_HELP_STRING([--enable-monomacdebug],
+		[Use 'MONOMACDEBUG' Configuration [default=NO]]),
+		enable_monomacdebug=yes, enable_monomacdebug=no)
+AM_CONDITIONAL(ENABLE_MONOMACDEBUG, test x$enable_monomacdebug = xyes)
+if test "x$enable_monomacdebug" = "xyes" ; then
+	CONFIG_REQUESTED="yes"
+fi
+AC_ARG_ENABLE(monomacrelease,
+	AC_HELP_STRING([--enable-monomacrelease],
+		[Use 'MONOMACRELEASE' Configuration [default=NO]]),
+		enable_monomacrelease=yes, enable_monomacrelease=no)
+AM_CONDITIONAL(ENABLE_MONOMACRELEASE, test x$enable_monomacrelease = xyes)
+if test "x$enable_monomacrelease" = "xyes" ; then
 	CONFIG_REQUESTED="yes"
 fi
 if test -z "$CONFIG_REQUESTED" ; then
-	AM_CONDITIONAL(ENABLE_LINUXRELEASE, true)
-	enable_linuxrelease=yes
+	AM_CONDITIONAL(ENABLE_GNOMERELEASE, true)
+	enable_gnomerelease=yes
 fi
 
 
 dnl package checks, common for all configs
 PKG_CHECK_MODULES([GTK_SHARP_20], [gtk-sharp-2.0])
 PKG_CHECK_MODULES([GLIB_SHARP_20], [glib-sharp-2.0])
+PKG_CHECK_MODULES([MONO_NUNIT], [mono-nunit])
 PKG_CHECK_MODULES([NDESK_DBUS_10], [ndesk-dbus-1.0])
 PKG_CHECK_MODULES([GNOME_SHARP_20], [gnome-sharp-2.0])
 PKG_CHECK_MODULES([NOTIFY_SHARP], [notify-sharp])
 PKG_CHECK_MODULES([NDESK_DBUS_GLIB_10], [ndesk-dbus-glib-1.0])
-PKG_CHECK_MODULES([MONO_NUNIT], [mono-nunit])
 
 dnl package checks, per config
 
@@ -76,10 +124,9 @@ dnl package checks, per config
 AC_CONFIG_FILES([
 src/libtasque/Makefile
 src/RtmNet/Makefile
-po/Makefile
+tests/Makefile
 src/tasque/tasque
 src/tasque/Makefile
-tests/Makefile
 Makefile
 
 ])
diff --git a/src/RtmNet/Makefile.am b/src/RtmNet/Makefile.am
index 94a5156..b477894 100644
--- a/src/RtmNet/Makefile.am
+++ b/src/RtmNet/Makefile.am
@@ -3,20 +3,34 @@ EXTRA_DIST =
 
 # Warning: This is an automatically generated file, do not edit!
 
-if ENABLE_RELEASE
+if ENABLE_GNOMEDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/RtmNet.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+RTMNET_DLL_MDB_SOURCE=bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GNOMERELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
-ASSEMBLY = bin/Release/RtmNet.dll
+ASSEMBLY = bin/LinuxRelease/RtmNet.dll
 ASSEMBLY_MDB = 
 COMPILE_TARGET = library
 PROJECT_REFERENCES = 
-BUILD_DIR = bin/Release
+BUILD_DIR = bin/LinuxRelease
 
 RTMNET_DLL_MDB=
 
 endif
 
-if ENABLE_DEBUG
+if ENABLE_GTKLINUXDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/RtmNet.dll
@@ -30,7 +44,74 @@ RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
 
 endif
 
-if ENABLE_LINUXDEBUG
+if ENABLE_GTKLINUXRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
+ASSEMBLY = bin/LinuxRelease/RtmNet.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_GTKWINDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/RtmNet.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+RTMNET_DLL_MDB_SOURCE=bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GTKWINRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
+ASSEMBLY = bin/LinuxRelease/RtmNet.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_GTKMACDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/RtmNet.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+RTMNET_DLL_MDB_SOURCE=bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GTKMACRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
+ASSEMBLY = bin/LinuxRelease/RtmNet.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_MONOMACDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/RtmNet.dll
@@ -44,7 +125,7 @@ RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
 
 endif
 
-if ENABLE_LINUXRELEASE
+if ENABLE_MONOMACRELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
 ASSEMBLY = bin/LinuxRelease/RtmNet.dll
diff --git a/src/RtmNet/RtmNet.csproj b/src/RtmNet/RtmNet.csproj
index 9c91251..f1a64c1 100644
--- a/src/RtmNet/RtmNet.csproj
+++ b/src/RtmNet/RtmNet.csproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Configuration Condition=" '$(Configuration)' == '' ">GnomeDebug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ProjectGuid>{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}</ProjectGuid>
     <ProductVersion>9.0.21022</ProductVersion>
@@ -13,7 +13,7 @@
     <RootNamespace>RtmNet</RootNamespace>
     <ReleaseVersion>0.1.10</ReleaseVersion>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
@@ -22,15 +22,90 @@
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeRelease|AnyCPU' ">
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
-    <OutputPath>bin\Release</OutputPath>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning..&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning..&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
     <DefineConstants>TRACE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning..&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning..&quot;" />
+      </CustomCommands>
+    </CustomCommands>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxDebug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
@@ -39,7 +114,7 @@
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxRelease|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacRelease|AnyCPU' ">
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
     <OutputPath>bin\LinuxRelease</OutputPath>
diff --git a/src/libtasque/Makefile.am b/src/libtasque/Makefile.am
index 3a87fa6..e8d85d2 100644
--- a/src/libtasque/Makefile.am
+++ b/src/libtasque/Makefile.am
@@ -3,20 +3,34 @@ EXTRA_DIST =
 
 # Warning: This is an automatically generated file, do not edit!
 
-if ENABLE_RELEASE
+if ENABLE_GNOMEDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/libtasque.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+LIBTASQUE_DLL_MDB_SOURCE=bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+
+endif
+
+if ENABLE_GNOMERELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
-ASSEMBLY = bin/Release/libtasque.dll
+ASSEMBLY = bin/LinuxRelease/libtasque.dll
 ASSEMBLY_MDB = 
 COMPILE_TARGET = library
 PROJECT_REFERENCES = 
-BUILD_DIR = bin/Release
+BUILD_DIR = bin/LinuxRelease
 
 LIBTASQUE_DLL_MDB=
 
 endif
 
-if ENABLE_DEBUG
+if ENABLE_GTKLINUXDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/libtasque.dll
@@ -30,7 +44,74 @@ LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 
 endif
 
-if ENABLE_LINUXDEBUG
+if ENABLE_GTKLINUXRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/libtasque.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_GTKWINDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/libtasque.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+LIBTASQUE_DLL_MDB_SOURCE=bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+
+endif
+
+if ENABLE_GTKWINRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/libtasque.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_GTKMACDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/libtasque.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/Debug
+
+LIBTASQUE_DLL_MDB_SOURCE=bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+
+endif
+
+if ENABLE_GTKMACRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/libtasque.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES = 
+BUILD_DIR = bin/LinuxRelease
+
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_MONOMACDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/libtasque.dll
@@ -44,7 +125,7 @@ LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 
 endif
 
-if ENABLE_LINUXRELEASE
+if ENABLE_MONOMACRELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
 ASSEMBLY = bin/LinuxRelease/libtasque.dll
diff --git a/src/libtasque/libtasque.csproj b/src/libtasque/libtasque.csproj
index 9d2a824..dca7c02 100644
--- a/src/libtasque/libtasque.csproj
+++ b/src/libtasque/libtasque.csproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Configuration Condition=" '$(Configuration)' == '' ">GnomeDebug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
@@ -11,7 +11,7 @@
     <AssemblyName>libtasque</AssemblyName>
     <ReleaseVersion>0.1.10</ReleaseVersion>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
@@ -20,14 +20,86 @@
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeRelease|AnyCPU' ">
     <DebugType>none</DebugType>
     <Optimize>false</Optimize>
-    <OutputPath>bin\Release</OutputPath>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="Build" command="echo &quot;building...&quot;" />
+        <Command type="Clean" command="echo &quot;cleaning...&quot;" />
+      </CustomCommands>
+    </CustomCommands>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxDebug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
@@ -36,7 +108,7 @@
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxRelease|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacRelease|AnyCPU' ">
     <DebugType>none</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\LinuxRelease</OutputPath>
diff --git a/src/tasque/Application.cs b/src/tasque/Application.cs
index d9614e3..f6d2c99 100644
--- a/src/tasque/Application.cs
+++ b/src/tasque/Application.cs
@@ -150,7 +150,7 @@ namespace Tasque
 		{
 #if OSX
 			nativeApp = new OSXApplication ();
-#elif WIN32
+#elif WIN32 || GTKLINUX
 			nativeApp = new GtkApplication ();
 #else
 			nativeApp = new GnomeApplication ();
diff --git a/src/tasque/Makefile.am b/src/tasque/Makefile.am
index 279f25c..7939fab 100644
--- a/src/tasque/Makefile.am
+++ b/src/tasque/Makefile.am
@@ -3,28 +3,50 @@ EXTRA_DIST =
 
 # Warning: This is an automatically generated file, do not edit!
 
-if ENABLE_RELEASE
+if ENABLE_GNOMEDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/tasque.exe
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/Debug/libtasque.dll \
+	../RtmNet/bin/Debug/RtmNet.dll
+BUILD_DIR = bin/Debug
+
+TASQUE_EXE_MDB_SOURCE=bin/Debug/tasque.exe.mdb
+TASQUE_EXE_MDB=$(BUILD_DIR)/tasque.exe.mdb
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/Debug/libtasque.dll
+LIBTASQUE_DLL_MDB_SOURCE=../libtasque/bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+RTMNET_DLL_SOURCE=../RtmNet/bin/Debug/RtmNet.dll
+RTMNET_DLL_MDB_SOURCE=../RtmNet/bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GNOMERELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
-ASSEMBLY = bin/Release/tasque.exe
+ASSEMBLY = bin/LinuxRelease/tasque.exe
 ASSEMBLY_MDB = 
 COMPILE_TARGET = winexe
 PROJECT_REFERENCES =  \
-	../libtasque/bin/Release/libtasque.dll \
-	../RtmNet/bin/Release/RtmNet.dll
-BUILD_DIR = bin/Release
+	../libtasque/bin/LinuxRelease/libtasque.dll \
+	../RtmNet/bin/LinuxRelease/RtmNet.dll
+BUILD_DIR = bin/LinuxRelease
 
-LIBTASQUE_DLL_SOURCE=../libtasque/bin/Release/libtasque.dll
-RTMNET_DLL_SOURCE=../RtmNet/bin/Release/RtmNet.dll
 TASQUE_EXE_MDB=
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
 LIBTASQUE_DLL_MDB=
+RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
 RTMNET_DLL_MDB=
 
 endif
 
-if ENABLE_DEBUG
+if ENABLE_GTKLINUXDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
-ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE;GTKLINUX"
 ASSEMBLY = bin/Debug/tasque.exe
 ASSEMBLY_MDB = $(ASSEMBLY).mdb
 COMPILE_TARGET = winexe
@@ -33,20 +55,80 @@ PROJECT_REFERENCES =  \
 	../RtmNet/bin/Debug/RtmNet.dll
 BUILD_DIR = bin/Debug
 
+TASQUE_EXE_MDB_SOURCE=bin/Debug/tasque.exe.mdb
+TASQUE_EXE_MDB=$(BUILD_DIR)/tasque.exe.mdb
 LIBTASQUE_DLL_SOURCE=../libtasque/bin/Debug/libtasque.dll
+LIBTASQUE_DLL_MDB_SOURCE=../libtasque/bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 RTMNET_DLL_SOURCE=../RtmNet/bin/Debug/RtmNet.dll
+RTMNET_DLL_MDB_SOURCE=../RtmNet/bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GTKLINUXRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE;GTKLINUX"
+ASSEMBLY = bin/LinuxRelease/tasque.exe
+ASSEMBLY_MDB = 
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/LinuxRelease/libtasque.dll \
+	../RtmNet/bin/LinuxRelease/RtmNet.dll
+BUILD_DIR = bin/LinuxRelease
+
+TASQUE_EXE_MDB=
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_GTKWINDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE;WIN32"
+ASSEMBLY = bin/Debug/tasque.exe
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/Debug/libtasque.dll \
+	../RtmNet/bin/Debug/RtmNet.dll
+BUILD_DIR = bin/Debug
+
 TASQUE_EXE_MDB_SOURCE=bin/Debug/tasque.exe.mdb
 TASQUE_EXE_MDB=$(BUILD_DIR)/tasque.exe.mdb
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/Debug/libtasque.dll
 LIBTASQUE_DLL_MDB_SOURCE=../libtasque/bin/Debug/libtasque.dll.mdb
 LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+RTMNET_DLL_SOURCE=../RtmNet/bin/Debug/RtmNet.dll
 RTMNET_DLL_MDB_SOURCE=../RtmNet/bin/Debug/RtmNet.dll.mdb
 RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
 
 endif
 
-if ENABLE_LINUXDEBUG
+if ENABLE_GTKWINRELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
-ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE;WIN32"
+ASSEMBLY = bin/LinuxRelease/tasque.exe
+ASSEMBLY_MDB = 
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/LinuxRelease/libtasque.dll \
+	../RtmNet/bin/LinuxRelease/RtmNet.dll
+BUILD_DIR = bin/LinuxRelease
+
+TASQUE_EXE_MDB=
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_GTKMACDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE;OSX"
 ASSEMBLY = bin/Debug/tasque.exe
 ASSEMBLY_MDB = $(ASSEMBLY).mdb
 COMPILE_TARGET = winexe
@@ -55,18 +137,59 @@ PROJECT_REFERENCES =  \
 	../RtmNet/bin/Debug/RtmNet.dll
 BUILD_DIR = bin/Debug
 
+TASQUE_EXE_MDB_SOURCE=bin/Debug/tasque.exe.mdb
+TASQUE_EXE_MDB=$(BUILD_DIR)/tasque.exe.mdb
 LIBTASQUE_DLL_SOURCE=../libtasque/bin/Debug/libtasque.dll
+LIBTASQUE_DLL_MDB_SOURCE=../libtasque/bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 RTMNET_DLL_SOURCE=../RtmNet/bin/Debug/RtmNet.dll
+RTMNET_DLL_MDB_SOURCE=../RtmNet/bin/Debug/RtmNet.dll.mdb
+RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
+
+endif
+
+if ENABLE_GTKMACRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE;OSX"
+ASSEMBLY = bin/LinuxRelease/tasque.exe
+ASSEMBLY_MDB = 
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/LinuxRelease/libtasque.dll \
+	../RtmNet/bin/LinuxRelease/RtmNet.dll
+BUILD_DIR = bin/LinuxRelease
+
+TASQUE_EXE_MDB=
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
+RTMNET_DLL_MDB=
+
+endif
+
+if ENABLE_MONOMACDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/tasque.exe
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = winexe
+PROJECT_REFERENCES =  \
+	../libtasque/bin/Debug/libtasque.dll \
+	../RtmNet/bin/Debug/RtmNet.dll
+BUILD_DIR = bin/Debug
+
 TASQUE_EXE_MDB_SOURCE=bin/Debug/tasque.exe.mdb
 TASQUE_EXE_MDB=$(BUILD_DIR)/tasque.exe.mdb
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/Debug/libtasque.dll
 LIBTASQUE_DLL_MDB_SOURCE=../libtasque/bin/Debug/libtasque.dll.mdb
 LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+RTMNET_DLL_SOURCE=../RtmNet/bin/Debug/RtmNet.dll
 RTMNET_DLL_MDB_SOURCE=../RtmNet/bin/Debug/RtmNet.dll.mdb
 RTMNET_DLL_MDB=$(BUILD_DIR)/RtmNet.dll.mdb
 
 endif
 
-if ENABLE_LINUXRELEASE
+if ENABLE_MONOMACRELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize+ "-define:TRACE"
 ASSEMBLY = bin/LinuxRelease/tasque.exe
@@ -77,10 +200,10 @@ PROJECT_REFERENCES =  \
 	../RtmNet/bin/LinuxRelease/RtmNet.dll
 BUILD_DIR = bin/LinuxRelease
 
-LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
-RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
 TASQUE_EXE_MDB=
+LIBTASQUE_DLL_SOURCE=../libtasque/bin/LinuxRelease/libtasque.dll
 LIBTASQUE_DLL_MDB=
+RTMNET_DLL_SOURCE=../RtmNet/bin/LinuxRelease/RtmNet.dll
 RTMNET_DLL_MDB=
 
 endif
@@ -89,10 +212,10 @@ AL=al
 SATELLITE_ASSEMBLY_NAME=$(notdir $(basename $(ASSEMBLY))).resources.dll
 
 PROGRAMFILES = \
-	$(LIBTASQUE_DLL) \
-	$(RTMNET_DLL) \
 	$(TASQUE_EXE_MDB) \
+	$(LIBTASQUE_DLL) \
 	$(LIBTASQUE_DLL_MDB) \
+	$(RTMNET_DLL) \
 	$(RTMNET_DLL_MDB)  
 
 BINARIES = \
@@ -140,7 +263,6 @@ FILES = \
 	CompletedTaskGroup.cs \
 	CompletedTaskGroupModel.cs \
 	DateButton.cs \
-	GtkApplication.cs \
 	Logger.cs \
 	NoteDialog.cs \
 	NoteWidget.cs \
@@ -152,7 +274,9 @@ FILES = \
 	TaskGroupModelFactory.cs \
 	TaskTreeView.cs \
 	TaskWindow.cs \
-	Utilities.cs 
+	Utilities.cs \
+	GtkApplication.cs \
+	OSXApplication.cs 
 
 DATA_FILES = 
 
@@ -189,7 +313,6 @@ EXTRAS = \
 	../../data/osx/Contents/MacOS/Tasque \
 	../../data/osx/Contents/Resources/tasque.icns \
 	../../data/sounds/notify.wav \
-	OSXApplication.cs \
 	Properties \
 	data \
 	data/icons \
@@ -224,10 +347,10 @@ RTMNET_DLL = $(BUILD_DIR)/RtmNet.dll
 TASQUE = $(BUILD_DIR)/tasque
 
 $(eval $(call emit-deploy-target,LIBTASQUE_DLL))
-$(eval $(call emit-deploy-target,RTMNET_DLL))
-$(eval $(call emit-deploy-wrapper,TASQUE,tasque,x))
 $(eval $(call emit-deploy-target,LIBTASQUE_DLL_MDB))
+$(eval $(call emit-deploy-target,RTMNET_DLL))
 $(eval $(call emit-deploy-target,RTMNET_DLL_MDB))
+$(eval $(call emit-deploy-wrapper,TASQUE,tasque,x))
 
 
 $(eval $(call emit_resgen_targets))
diff --git a/src/tasque/tasque.csproj b/src/tasque/tasque.csproj
index 0a7b321..555e29c 100644
--- a/src/tasque/tasque.csproj
+++ b/src/tasque/tasque.csproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Configuration Condition=" '$(Configuration)' == '' ">GnomeDebug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ProjectGuid>{B19B9840-669D-4984-9772-E1F55193A67F}</ProjectGuid>
     <ProductVersion>10.0.0</ProductVersion>
@@ -14,31 +14,107 @@
     <RootNamespace>tasque</RootNamespace>
     <ReleaseVersion>0.1.10</ReleaseVersion>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeRelease|AnyCPU' ">
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
-    <OutputPath>bin\Release</OutputPath>
+    <OutputPath>bin\LinuxRelease</OutputPath>
     <DefineConstants>TRACE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="BeforeBuild" command="./autogen.sh --prefix=${SolutionDir}/build/bin/" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Build" command="make" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Clean" command="make clean" workingdir="${SolutionDir}" externalConsole="true" />
+      </CustomCommands>
+    </CustomCommands>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE;GTKLINUX</DefineConstants>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE;GTKLINUX</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="BeforeBuild" command="./autogen.sh --prefix=${SolutionDir}/build/bin/" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Build" command="make" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Clean" command="make clean" workingdir="${SolutionDir}" externalConsole="true" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE;WIN32</DefineConstants>
+    <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxDebug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE;WIN32</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="BeforeBuild" command="./autogen.sh --prefix=${SolutionDir}/build/bin/" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Build" command="make" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Clean" command="make clean" workingdir="${SolutionDir}" externalConsole="true" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE;OSX</DefineConstants>
     <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacRelease|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <DefineConstants>TRACE;OSX</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="BeforeBuild" command="./autogen.sh --prefix=${SolutionDir}/build/bin/" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Build" command="make" workingdir="${SolutionDir}" externalConsole="true" />
+        <Command type="Clean" command="make clean" workingdir="${SolutionDir}" externalConsole="true" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
     <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxRelease|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacRelease|AnyCPU' ">
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
     <OutputPath>bin\LinuxRelease</OutputPath>
@@ -145,11 +221,9 @@
     <Compile Include="CompletedTaskGroup.cs" />
     <Compile Include="CompletedTaskGroupModel.cs" />
     <Compile Include="DateButton.cs" />
-    <Compile Include="GtkApplication.cs" />
     <Compile Include="Logger.cs" />
     <Compile Include="NoteDialog.cs" />
     <Compile Include="NoteWidget.cs" />
-    <None Include="OSXApplication.cs" />
     <Compile Include="Preferences.cs" />
     <Compile Include="PreferencesDialog.cs" />
     <Compile Include="TaskCalendar.cs" />
@@ -160,6 +234,12 @@
     <Compile Include="TaskWindow.cs" />
     <Compile Include="Utilities.cs" />
   </ItemGroup>
+  <ItemGroup Condition=" '$(Platform)' == 'AnyCPU' and ( '$(Configuration)' == 'GtkLinuxDebug' or '$(Configuration)' == 'GtkLinuxRelease' or '$(Configuration)' == 'GtkWinDebug' or '$(Configuration)' == 'GtkWinRelease' or '$(Configuration)' == 'GtkMacDebug' or '$(Configuration)' == 'GtkMacRelease' ) ">
+    <Compile Include="GtkApplication.cs" />
+  </ItemGroup>
+  <ItemGroup Condition=" '$(Platform)' == 'AnyCPU' and ( '$(Configuration)' == 'GtkMacDebug' or '$(Configuration)' == 'GtkMacRelease' ) ">
+    <Compile Include="OSXApplication.cs" />
+  </ItemGroup>
   <ItemGroup>
     <Folder Include="Properties\" />
     <Folder Include="data\" />
diff --git a/tasque.sln b/tasque.sln
index 452751b..0bec609 100644
--- a/tasque.sln
+++ b/tasque.sln
@@ -20,58 +20,133 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Release|Any CPU = Release|Any CPU
-		Debug|Any CPU = Debug|Any CPU
-		LinuxDebug|Any CPU = LinuxDebug|Any CPU
-		LinuxRelease|Any CPU = LinuxRelease|Any CPU
+		GnomeDebug|Any CPU = GnomeDebug|Any CPU
+		GnomeRelease|Any CPU = GnomeRelease|Any CPU
+		GtkLinuxDebug|Any CPU = GtkLinuxDebug|Any CPU
+		GtkLinuxRelease|Any CPU = GtkLinuxRelease|Any CPU
+		GtkWinDebug|Any CPU = GtkWinDebug|Any CPU
+		GtkWinRelease|Any CPU = GtkWinRelease|Any CPU
+		GtkMacDebug|Any CPU = GtkMacDebug|Any CPU
+		GtkMacRelease|Any CPU = GtkMacRelease|Any CPU
+		MonoMacDebug|Any CPU = MonoMacDebug|Any CPU
+		MonoMacRelease|Any CPU = MonoMacRelease|Any CPU
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.LinuxRelease|Any CPU.Build.0 = LinuxRelease|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.Release|Any CPU.ActiveCfg = Debug|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.LinuxRelease|Any CPU.Build.0 = LinuxRelease|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.Release|Any CPU.Build.0 = Release|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.Debug|Any CPU.ActiveCfg = Default|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.Debug|Any CPU.Build.0 = Default|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.LinuxRelease|Any CPU.Build.0 = LinuxRelease|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.Release|Any CPU.ActiveCfg = Default|Any CPU
-		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.Release|Any CPU.Build.0 = Default|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.LinuxRelease|Any CPU.Build.0 = LinuxRelease|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.Release|Any CPU.ActiveCfg = Debug|Any CPU
-		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.Release|Any CPU.Build.0 = Debug|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.LinuxDebug|Any CPU.ActiveCfg = LinuxDebug|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.LinuxDebug|Any CPU.Build.0 = LinuxDebug|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.LinuxRelease|Any CPU.ActiveCfg = LinuxRelease|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.LinuxRelease|Any CPU.Build.0 = LinuxRelease|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{B19B9840-669D-4984-9772-E1F55193A67F}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GnomeRelease|Any CPU.Build.0 = GnomeRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkLinuxRelease|Any CPU.Build.0 = GtkLinuxRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkMacRelease|Any CPU.Build.0 = GtkMacRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.GtkWinRelease|Any CPU.Build.0 = GtkWinRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{0AA1B96E-03DE-4D26-B4FD-507E988FD9B7}.MonoMacRelease|Any CPU.Build.0 = MonoMacRelease|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{6DC908EC-E7C2-46CD-A21D-832C0D81D946}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GnomeRelease|Any CPU.Build.0 = GnomeRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkLinuxRelease|Any CPU.Build.0 = GtkLinuxRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkMacRelease|Any CPU.Build.0 = GtkMacRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.GtkWinRelease|Any CPU.Build.0 = GtkWinRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{784C9AA8-2B28-400B-8CC4-DCDC48CA37F0}.MonoMacRelease|Any CPU.Build.0 = MonoMacRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GnomeRelease|Any CPU.Build.0 = GnomeRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkLinuxRelease|Any CPU.Build.0 = GtkLinuxRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkMacRelease|Any CPU.Build.0 = GtkMacRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.GtkWinRelease|Any CPU.Build.0 = GtkWinRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{7B2BA3AC-B9C7-4734-AF59-2750B5C3672B}.MonoMacRelease|Any CPU.Build.0 = MonoMacRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GnomeRelease|Any CPU.Build.0 = GnomeRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkLinuxRelease|Any CPU.Build.0 = GtkLinuxRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkMacRelease|Any CPU.Build.0 = GtkMacRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.GtkWinRelease|Any CPU.Build.0 = GtkWinRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{A8D75EEC-63FE-4A18-8ACF-120870056E4E}.MonoMacRelease|Any CPU.Build.0 = MonoMacRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GnomeDebug|Any CPU.ActiveCfg = GnomeDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GnomeDebug|Any CPU.Build.0 = GnomeDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GnomeRelease|Any CPU.ActiveCfg = GnomeRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GnomeRelease|Any CPU.Build.0 = GnomeRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkLinuxDebug|Any CPU.ActiveCfg = GtkLinuxDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkLinuxDebug|Any CPU.Build.0 = GtkLinuxDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkLinuxRelease|Any CPU.ActiveCfg = GtkLinuxRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkLinuxRelease|Any CPU.Build.0 = GtkLinuxRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkMacDebug|Any CPU.ActiveCfg = GtkMacDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkMacDebug|Any CPU.Build.0 = GtkMacDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkMacRelease|Any CPU.ActiveCfg = GtkMacRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkMacRelease|Any CPU.Build.0 = GtkMacRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkWinDebug|Any CPU.ActiveCfg = GtkWinDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkWinDebug|Any CPU.Build.0 = GtkWinDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkWinRelease|Any CPU.ActiveCfg = GtkWinRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.GtkWinRelease|Any CPU.Build.0 = GtkWinRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.MonoMacDebug|Any CPU.ActiveCfg = MonoMacDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.MonoMacDebug|Any CPU.Build.0 = MonoMacDebug|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.MonoMacRelease|Any CPU.ActiveCfg = MonoMacRelease|Any CPU
+		{B19B9840-669D-4984-9772-E1F55193A67F}.MonoMacRelease|Any CPU.Build.0 = MonoMacRelease|Any CPU
 	EndGlobalSection
 	GlobalSection(NestedProjects) = preSolution
 	EndGlobalSection
diff --git a/tests/Makefile.am b/tests/Makefile.am
index cb1839f..24badd3 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -3,14 +3,48 @@ EXTRA_DIST =
 
 # Warning: This is an automatically generated file, do not edit!
 
-if ENABLE_RELEASE
+if ENABLE_GNOMEDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/tests.dll
 ASSEMBLY_MDB = $(ASSEMBLY).mdb
 COMPILE_TARGET = library
 PROJECT_REFERENCES =  \
-	../src/libtasque/bin/Release/libtasque.dll
+	../src/libtasque/bin/Debug/libtasque.dll
+BUILD_DIR = bin/Debug
+
+TESTS_DLL_MDB_SOURCE=bin/Debug/tests.dll.mdb
+TESTS_DLL_MDB=$(BUILD_DIR)/tests.dll.mdb
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/Debug/libtasque.dll
+LIBTASQUE_DLL_MDB_SOURCE=../src/libtasque/bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+
+endif
+
+if ENABLE_GNOMERELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/tests.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/LinuxRelease/libtasque.dll
+BUILD_DIR = bin/LinuxRelease
+
+TESTS_DLL_MDB=
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_GTKLINUXDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/tests.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/Debug/libtasque.dll
 BUILD_DIR = bin/Debug
 
 TESTS_DLL_MDB_SOURCE=bin/Debug/tests.dll.mdb
@@ -21,7 +55,23 @@ LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 
 endif
 
-if ENABLE_DEBUG
+if ENABLE_GTKLINUXRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/tests.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/LinuxRelease/libtasque.dll
+BUILD_DIR = bin/LinuxRelease
+
+TESTS_DLL_MDB=
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_GTKWINDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/tests.dll
@@ -39,7 +89,57 @@ LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 
 endif
 
-if ENABLE_LINUXDEBUG
+if ENABLE_GTKWINRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/tests.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/LinuxRelease/libtasque.dll
+BUILD_DIR = bin/LinuxRelease
+
+TESTS_DLL_MDB=
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_GTKMACDEBUG
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
+ASSEMBLY = bin/Debug/tests.dll
+ASSEMBLY_MDB = $(ASSEMBLY).mdb
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/Debug/libtasque.dll
+BUILD_DIR = bin/Debug
+
+TESTS_DLL_MDB_SOURCE=bin/Debug/tests.dll.mdb
+TESTS_DLL_MDB=$(BUILD_DIR)/tests.dll.mdb
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/Debug/libtasque.dll
+LIBTASQUE_DLL_MDB_SOURCE=../src/libtasque/bin/Debug/libtasque.dll.mdb
+LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
+
+endif
+
+if ENABLE_GTKMACRELEASE
+ASSEMBLY_COMPILER_COMMAND = dmcs
+ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
+ASSEMBLY = bin/LinuxRelease/tests.dll
+ASSEMBLY_MDB = 
+COMPILE_TARGET = library
+PROJECT_REFERENCES =  \
+	../src/libtasque/bin/LinuxRelease/libtasque.dll
+BUILD_DIR = bin/LinuxRelease
+
+TESTS_DLL_MDB=
+LIBTASQUE_DLL_SOURCE=../src/libtasque/bin/LinuxRelease/libtasque.dll
+LIBTASQUE_DLL_MDB=
+
+endif
+
+if ENABLE_MONOMACDEBUG
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
 ASSEMBLY = bin/Debug/tests.dll
@@ -57,7 +157,7 @@ LIBTASQUE_DLL_MDB=$(BUILD_DIR)/libtasque.dll.mdb
 
 endif
 
-if ENABLE_LINUXRELEASE
+if ENABLE_MONOMACRELEASE
 ASSEMBLY_COMPILER_COMMAND = dmcs
 ASSEMBLY_COMPILER_FLAGS =  -noconfig -codepage:utf8 -warn:4 -optimize-
 ASSEMBLY = bin/LinuxRelease/tests.dll
diff --git a/tests/tests.csproj b/tests/tests.csproj
index b8e6f35..e47ddf5 100644
--- a/tests/tests.csproj
+++ b/tests/tests.csproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Configuration Condition=" '$(Configuration)' == '' ">GnomeDebug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
@@ -11,23 +11,71 @@
     <AssemblyName>tests</AssemblyName>
     <ReleaseVersion>0.1.10</ReleaseVersion>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
     <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GnomeRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
     <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkLinuxRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxDebug|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
     <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkWinRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacDebug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'GtkMacRelease|AnyCPU' ">
+    <DebugType>none</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\LinuxRelease</OutputPath>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacDebug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
     <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <WarningLevel>4</WarningLevel>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'LinuxRelease|AnyCPU' ">
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'MonoMacRelease|AnyCPU' ">
     <DebugType>none</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\LinuxRelease</OutputPath>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]