diff --git a/AUTHORS.txt b/AUTHORS.txt
old mode 100644
new mode 100755
index e0ae79c..7544527
--- a/AUTHORS.txt
+++ b/AUTHORS.txt
@@ -1,4 +1,3 @@
-
 projectM -- Milkdrop-esque visualisation SDK
 Copyright (C)2003-2007 projectM Team
 
@@ -25,12 +24,12 @@
     Evaluator
     Pulse Audio support (projectM-pulseaudio)
     Qt GUI (projectM-qt)
-	
+
 Peter Sperl
     Beat Detection
     Rendering
     XMMS Support (projectM-xmms)
-    libvisual Support (projectM-libvisual)   
+    libvisual Support (projectM-libvisual)
 
 Alligator Descartes
     Media Player Support (iTunes, Winamp, Windows Media Player)
@@ -40,3 +39,8 @@
 
 Roger Dannenburg
     Advice & Support
+
+Matthias Klumpp
+    CMake build system
+    Distro integration
+    Bug fixes
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dcda29d..634b82f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,11 +1,5 @@
 PROJECT(projectM-complete)
-cmake_minimum_required(VERSION 2.4.0)
-cmake_policy(SET CMP0005 OLD)
-
-if(COMMAND cmake_policy)
-       cmake_policy(SET CMP0003 NEW)
-endif(COMMAND cmake_policy)
-
+cmake_minimum_required(VERSION 2.8.0)
 
 include(src/cmake/CPack-projectM.cmake)
 
diff --git a/src/libprojectM/CMakeLists.txt b/src/libprojectM/CMakeLists.txt
index 03cdbc7..acc698e 100644
--- a/src/libprojectM/CMakeLists.txt
+++ b/src/libprojectM/CMakeLists.txt
@@ -33,16 +33,10 @@
 set(PROJECTM_ABI_LEVEL 2)
 #
 
-SET(LIB_SUFFIX ""
-  CACHE STRING "Define suffix of directory name (32/64)"
-  FORCE)
-
-ADD_DEFINITIONS(-DLIB_SUFFIX="\\\"${LIB_SUFFIX}\\\"")
-
 ADD_DEFINITIONS(-DCMAKE_INSTALL_PREFIX="\\\"${CMAKE_INSTALL_PREFIX}\\\"")
 
-SET(LIB_INSTALL_DIR "\${exec_prefix}/lib${LIB_SUFFIX}"
-  CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib${LIB_SUFFIX})"
+SET(LIB_INSTALL_DIR "\${exec_prefix}/lib"
+  CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is /lib)"
   FORCE)
 
 if (USE_NATIVE_GLEW)
@@ -221,14 +215,26 @@
 	)
 endif(BUILD_PROJECTM_STATIC)
 
+SET(projectM_FONT_MENU "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf" CACHE FILEPATH "Path to the default menu TrueType font")
+SET(projectM_FONT_TITLE "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf" CACHE FILEPATH "Path to the default title TrueType font")
+ADD_DEFINITIONS(-DprojectM_FONT_MENU="\\\"${projectM_FONT_MENU}\\\"")
+ADD_DEFINITIONS(-DprojectM_FONT_TITLE="\\\"${projectM_FONT_TITLE}\\\"")
 
 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libprojectM.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libprojectM.pc" @ONLY)
 CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/config.inp.in" "${CMAKE_CURRENT_BINARY_DIR}/config.inp" @ONLY)
 
+IF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf")
+	INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/fonts/VeraMono.ttf DESTINATION ${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts)
+ENDIF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/Vera.ttf")
+
+IF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf")
+	INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/fonts/VeraMono.ttf DESTINATION ${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts)
+ENDIF(projectM_FONT_MENU MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf" OR projectM_FONT_TITLE MATCHES "${CMAKE_INSTALL_PREFIX}/${RESOURCE_PREFIX}/fonts/VeraMono.ttf")
+
 FILE(GLOB presets "presets/*.milk" "presets/*.prjm" "presets/*.tga")
 INSTALL(FILES ${presets} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/presets)
 INSTALL(FILES ${Renderer_SOURCE_DIR}/projectM.cg ${Renderer_SOURCE_DIR}/blur.cg DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM/shaders)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libprojectM.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libprojectM.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/config.inp DESTINATION ${CMAKE_INSTALL_PREFIX}/share/projectM)
 INSTALL(FILES projectM.hpp event.h dlldefs.h fatal.h PCM.hpp Common.hpp DESTINATION include/libprojectM)
-INSTALL(TARGETS projectM DESTINATION lib${LIB_SUFFIX})
+INSTALL(TARGETS projectM DESTINATION lib)
diff --git a/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.cpp b/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.cpp
index 1063fd9..9d5be25 100644
--- a/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.cpp
+++ b/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.cpp
@@ -111,7 +111,8 @@
     return PROJECTM_ERROR;
   if (load_builtin_func("fact", FuncWrappers::fact_wrapper, 1) < 0)
     return PROJECTM_ERROR;
-
+  if (load_builtin_func("print", FuncWrappers::print_wrapper, 1) < 0)
+      return PROJECTM_ERROR;
   return PROJECTM_SUCCESS;
 }
 
diff --git a/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.hpp b/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.hpp
index 8b1e7e2..5ee1879 100644
--- a/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.hpp
+++ b/src/libprojectM/MilkdropPresetFactory/BuiltinFuncs.hpp
@@ -88,9 +88,10 @@
 
 static inline float if_wrapper(float * arg_list) {
 
-if ((int)arg_list[0] == 0)
-return arg_list[2];
-return arg_list[1];
+	if ((int)arg_list[0] == 0)
+		return arg_list[2];
+	//std::cout <<"NOT ZERO: " << arg_list[0] << std::endl;
+	return arg_list[1];
 }
 
 
@@ -121,12 +122,8 @@
 }
 
 static float sin_wrapper(float * arg_list) {
-
-  assert(arg_list);
-//return .5;
-float d = sinf(*arg_list);
-return d;
-//return (sin (arg_list[0]));
+	const float d = sinf(*arg_list);
+	return d;
 }
 
 
@@ -179,6 +176,25 @@
 }
 
 
+static inline float print_wrapper(float * arg_list) {
+
+	int len  = 1;
+	for (int i = 0; i < len; i++)
+	{
+		std::cout << arg_list[i];
+		if (i != (len-1))
+			std::cout << " ";
+	}
+
+	if (len > 0)
+		std::cout << std::endl;
+
+	if (len > 0)
+		return arg_list[0];
+	else
+		return 0;
+}
+
 static inline float nchoosek_wrapper(float * arg_list) {
 unsigned long cnm = 1UL;
 int i, f;
diff --git a/src/libprojectM/MilkdropPresetFactory/Expr.cpp b/src/libprojectM/MilkdropPresetFactory/Expr.cpp
old mode 100644
new mode 100755
index 58142ad..2f3efdf
--- a/src/libprojectM/MilkdropPresetFactory/Expr.cpp
+++ b/src/libprojectM/MilkdropPresetFactory/Expr.cpp
@@ -31,7 +31,9 @@
 {
 	float l;
 
-	assert ( item );
+	if (item == 0)
+		return EVAL_ERROR;
+
 	switch ( this->type )
 	{
 		case VAL_T:
@@ -106,7 +108,7 @@
 				return ( float ) ( * ( ( int* ) ( term.param->engine_val ) ) );
 			case P_TYPE_DOUBLE:
 
-				
+
 				if ( term.param->matrix_flag | ( term.param->flags & P_FLAG_ALWAYS_MATRIX ) )
 				{
 
@@ -128,7 +130,7 @@
 					//assert(mesh_i >=0);
 				}
 				//std::cout << term.param->name << ": " << (*((float*)term.param->engine_val)) << std::endl;
-				return * ( ( float* ) ( term.param->engine_val ) );			
+				return * ( ( float* ) ( term.param->engine_val ) );
 			default:
 				return EVAL_ERROR;
 		}
diff --git a/src/libprojectM/Renderer/Renderer.cpp b/src/libprojectM/Renderer/Renderer.cpp
index acae065..1666837 100644
--- a/src/libprojectM/Renderer/Renderer.cpp
+++ b/src/libprojectM/Renderer/Renderer.cpp
@@ -6,6 +6,7 @@
 #include "TextureManager.hpp"
 #include <iostream>
 #include <algorithm>
+#include <sys/stat.h>
 #include <cassert>
 #include "omptl/omptl"
 #include "omptl/omptl_algorithm"
@@ -45,7 +46,17 @@
 	this->beatDetect = beatDetect;
 
 #ifdef USE_FTGL
-	/**f Load the standard fonts */
+	/** Load the standard fonts if they do exist */
+	struct stat buffer;
+
+	if (stat( title_fontURL.c_str(), &buffer )) {
+	  std::cout << "Could not open font file: " << title_fontURL << std::endl;
+	  exit(1);
+	}
+	if (stat( menu_fontURL.c_str(), &buffer )) {
+	  std::cout << "Could not open font file: " << menu_fontURL << std::endl;
+	  exit(1);
+	}
 
 	title_font = new FTGLPixmapFont(title_fontURL.c_str());
 	other_font = new FTGLPixmapFont(menu_fontURL.c_str());
@@ -252,6 +263,17 @@
 void Renderer::RenderFrame(const Pipeline &pipeline, const PipelineContext &pipelineContext)
 {
 
+#ifdef USE_FBO
+    // when not 'renderToTexture', the user may use its own couple FBO/texture
+    // so retrieve this external FBO if it exists, (0 means no FBO) and unbind it
+    GLint externalFBO = 0;
+    if (!renderTarget->renderToTexture)
+    {
+        glGetIntegerv(GL_FRAMEBUFFER_BINDING, &externalFBO);
+        glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
+    }
+#endif
+
 	SetupPass1(pipeline, pipelineContext);
 
 #ifdef USE_CG
@@ -264,6 +286,15 @@
 
 	RenderItems(pipeline, pipelineContext);
 	FinishPass1();
+
+#ifdef USE_FBO
+    // when not 'renderToTexture', the user may use its own couple FBO/texture
+    // if it exists (0 means no external FBO)
+    // then rebind it just before calling the final pass: Pass2
+    if (!renderTarget->renderToTexture && externalFBO != 0)
+        glBindFramebufferEXT (GL_FRAMEBUFFER_EXT, externalFBO);
+#endif
+
 	Pass2(pipeline, pipelineContext);
 }
 
diff --git a/src/libprojectM/config.inp.in b/src/libprojectM/config.inp.in
index b27b193..93d9c61 100644
--- a/src/libprojectM/config.inp.in
+++ b/src/libprojectM/config.inp.in
@@ -4,8 +4,8 @@
 Texture Size = 1024			# Size of internal rendering texture
 Mesh X  = 32            	# Width of PerPixel Equation mesh
 Mesh Y  = 24          		# Height of PerPixel Equation mesh
-FPS  = 35          		# Frames Per Second 
-Fullscreen  = false		
+FPS  = 35          		# Frames Per Second
+Fullscreen  = false
 Window Width  = 512  	       	# startup window width
 Window Height = 512            	# startup window height
 
@@ -17,6 +17,5 @@
 Aspect Correction = true	# Custom Shape Aspect Correction
 
 Preset Path = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/presets # preset location
-Title Font = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/fonts/Vera.ttf
-Menu Font = @CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@/fonts/VeraMono.ttf
- 
+Title Font = @projectM_FONT_TITLE@
+Menu Font = @projectM_FONT_MENU@
diff --git a/src/libprojectM/libprojectM.pc.in b/src/libprojectM/libprojectM.pc.in
index 2a1fa2b..90de752 100644
--- a/src/libprojectM/libprojectM.pc.in
+++ b/src/libprojectM/libprojectM.pc.in
@@ -6,7 +6,7 @@
 sysconfdir=@CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@
 
 Name: libprojectM
-Version: 2.0.0
+Version: @PROJECTM_VERSION@
 Description: projectM - OpenGL Milkdrop
 Requires:
 Libs: -L${libdir} -lprojectM
diff --git a/src/libprojectM/projectM.cpp b/src/libprojectM/projectM.cpp
old mode 100644
new mode 100755
index 5e23005..26e84e0
--- a/src/libprojectM/projectM.cpp
+++ b/src/libprojectM/projectM.cpp
@@ -201,16 +201,16 @@
 
     #ifdef LINUX
     _settings.titleFontURL = config.read<string>
-    ( "Title Font", CMAKE_INSTALL_PREFIX  "/share/projectM/fonts/Vera.ttf" );
+    ( "Title Font", projectM_FONT_TITLE );
     _settings.menuFontURL = config.read<string>
-    ( "Menu Font", CMAKE_INSTALL_PREFIX  "/share/projectM/fonts/VeraMono.ttf" );
+    ( "Menu Font", projectM_FONT_MENU );
     #endif
 
     #ifdef WIN32
     _settings.titleFontURL = config.read<string>
-    ( "Title Font", CMAKE_INSTALL_PREFIX  "/share/projectM/fonts/Vera.ttf" );
+    ( "Title Font", projectM_FONT_TITLE );
     _settings.menuFontURL = config.read<string>
-    ( "Menu Font", CMAKE_INSTALL_PREFIX  "/share/projectM/fonts/VeraMono.ttf" );
+    ( "Menu Font", projectM_FONT_MENU );
     #endif
 
 
diff --git a/src/projectM-libvisual/CMakeLists.txt b/src/projectM-libvisual/CMakeLists.txt
index ed2f576..28d8f90 100644
--- a/src/projectM-libvisual/CMakeLists.txt
+++ b/src/projectM-libvisual/CMakeLists.txt
@@ -1,19 +1,13 @@
 PROJECT(projectM_libvisual)
 cmake_minimum_required(VERSION 2.4.0)
-    if(COMMAND cmake_policy)
-      cmake_policy(SET CMP0003 NEW)
-    endif(COMMAND cmake_policy)
-
 
 INCLUDE(cmake/CPack-projectM.cmake)
 
-
 ADD_LIBRARY(projectM_libvisual SHARED actor_projectM.cpp lvtoprojectM.h ConfigFile.h ConfigFile.cpp)
 
 INCLUDE(FindPkgConfig.cmake)
 cmake_policy(SET CMP0005 OLD)
 
-
 FIND_PACKAGE(OpenGL)
 FIND_PACKAGE(SDL)
 
@@ -30,19 +24,18 @@
 pkg_search_module(LIBVISUAL REQUIRED libvisual-0.4)
 
 if (LIBPROJECTM_FOUND)
-MESSAGE (STATUS "[projectM-libvisual] projectM detected.")
+	MESSAGE (STATUS "[projectM-libvisual] projectM detected.")
 else(LIBPROJECTM_FOUND)
-MESSAGE (FATAL_ERROR "projectM NOT detected. Please install the projectM module or build from the top level projectM source directory.")
+	MESSAGE (FATAL_ERROR "projectM NOT detected. Please install the projectM module or build from the top level projectM source directory.")
 endif(LIBPROJECTM_FOUND)
 
 if(LIBVISUAL_FOUND)
-MESSAGE(STATUS "[projectM-libvisual] libvisual detected.")
+	MESSAGE(STATUS "[projectM-libvisual] libvisual detected.")
 else(LIBVISUAL_FOUND)
-MESSAGE(FATAL_ERROR "libvisual 0.4 not found! Please visit http://libvisual.sf.net and download the module.")
+	MESSAGE(FATAL_ERROR "libvisual 0.4 not found! Please visit http://libvisual.sf.net and download the module.")
 endif(LIBVISUAL_FOUND)
 
 
-
 if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
    set(PROJECTM_INCLUDE ${PROJECTM_ROOT_SOURCE_DIR}/libprojectM)
    set(PROJECTM_LINK ${PROJECTM_ROOT_BINARY_DIR}/libprojectM)
diff --git a/src/projectM-pulseaudio/CMakeLists.txt b/src/projectM-pulseaudio/CMakeLists.txt
index 5f3e23b..2adc907 100644
--- a/src/projectM-pulseaudio/CMakeLists.txt
+++ b/src/projectM-pulseaudio/CMakeLists.txt
@@ -57,8 +57,8 @@
   message(STATUS "FTGL_LIBRARY_DIRS = ${FTGL_LIBRARY_DIRS}")
   include_directories(${FTGL_INCLUDE_DIRS})
   link_directories(${FTGL_LIBRARY_DIRS})
-else (FTGL_FOUND)
-  message(FATAL_ERROR "ERROR: ftgl library not detected. Please install it from ftgl.wiki.sourceforge.net")
+else (FTGL_FOUND USE)
+##  message(FATAL_ERROR "ERROR: ftgl library not detected. Please install it from ftgl.wiki.sourceforge.net")
 endif (FTGL_FOUND)
 
 set(projectM_pulseaudio_SRCS
diff --git a/src/projectM-qt/CMakeLists.txt b/src/projectM-qt/CMakeLists.txt
index e73ab52..750d1ed 100644
--- a/src/projectM-qt/CMakeLists.txt
+++ b/src/projectM-qt/CMakeLists.txt
@@ -8,11 +8,11 @@
 include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} )
 
 include(FindPkgConfig.cmake)
-if (${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
+if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
 	set(LIBPROJECTM_FOUND true)
-else(${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
+else(${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
 	pkg_search_module(LIBPROJECTM REQUIRED libprojectM)
-endif(${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
+endif(${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
 
 OPTION(BUILD_PROJECTM_QT_STATIC "Build a static library of projectM-qt rather than the usual shared library format" OFF)
 
@@ -116,8 +116,8 @@
 SET_TARGET_PROPERTIES(projectM-qt PROPERTIES VERSION ${PROJECTM_QT_VERSION} SOVERSION ${PROJECTM_QT_ABI_LEVEL})
 
 if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
-   set(PROJECTM_INCLUDE ${PROJECTM_ROOT_SOURCE_DIR}/libprojectM)
-   set(PROJECTM_LINK ${PROJECTM_ROOT_BINARY_DIR}/libprojectM)
+   set(PROJECTM_INCLUDE ${projectM-complete_SOURCE_DIR}/libprojectM)
+   set(PROJECTM_LINK ${projectM-complete_BINARY_DIR}/libprojectM)
 elseif (${CMAKE_PROJECT_NAME} MATCHES ${PROJECT_NAME})
    set(PROJECTM_INCLUDE ${LIBPROJECTM_INCLUDEDIR}/libprojectM)
    set(PROJECTM_LINK ${PROJECTM_LDFLAGS})
@@ -131,6 +131,6 @@
 target_link_libraries(projectM-qt projectM GLEW GL ${QT_QTGUI_LIBRARIES} ${QT_QTOPENGL_LIBRARIES} ${QT_QTXML_LIBRARIES} ${QT_LIBRARIES})
 
 install(FILES qprojectm_mainwindow.hpp DESTINATION include/libprojectM-qt)
-install(TARGETS projectM-qt DESTINATION lib${LIB_SUFFIX})
-install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libprojectM-qt.pc" DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig)
+install(TARGETS projectM-qt DESTINATION lib)
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libprojectM-qt.pc" DESTINATION lib/pkgconfig)
 install(FILES "images/icons/prjm16-transparent.svg" DESTINATION	${CMAKE_INSTALL_PREFIX}/share/pixmaps)
diff --git a/src/projectM-xmms/CMakeLists.txt b/src/projectM-xmms/CMakeLists.txt
index 453e3ca..4688f48 100644
--- a/src/projectM-xmms/CMakeLists.txt
+++ b/src/projectM-xmms/CMakeLists.txt
@@ -44,4 +44,4 @@
 
 TARGET_LINK_LIBRARIES(xmms_projectM projectM xmms ${SDL_LIBRARY} ${GTK_LIBRARIES})
 
-INSTALL(TARGETS xmms_projectM DESTINATION ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/xmms/Visualization )
+INSTALL(TARGETS xmms_projectM DESTINATION lib/xmms/Visualization )
