--- /dev/null
+cmake_minimum_required(VERSION 2.6)
+project(OSCFaust)
+
+#######################################
+# cmake build types configuration
+set (CMAKE_CONFIGURATION_TYPES Debug Release)
+
+set (TARGET OSCFaust)
+#######################################
+# versions management
+set (version 0.50)
+
+#######################################
+if(WIN32)
+ add_definitions(-DWINVER=0x0400 -DWIN32)
+ if(MSVC)
+ add_definitions(-DMSVC)
+ endif(MSVC)
+else(WIN32)
+ add_definitions(-Wall)
+endif(WIN32)
+
+if(APPLE AND (${CMAKE_GENERATOR} STREQUAL Xcode) )
+ if (${CMAKE_SYSTEM_VERSION} VERSION_LESS 9.0.0)
+ set (CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.4u.sdk)
+ else (${CMAKE_SYSTEM_VERSION} VERSION_LESS 9.0.0)
+ set (CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk)
+ endif (${CMAKE_SYSTEM_VERSION} VERSION_LESS 9.0.0)
+
+ set (CMAKE_OSX_ARCHITECTURES "i386 x86_64")
+ set (CMAKE_C++_FLAGS -mmacosx-version-min=10.4)
+endif(APPLE AND (${CMAKE_GENERATOR} STREQUAL Xcode) )
+
+#######################################
+# set directories, src and headers.
+set (ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../src)
+set (LIBDIR ${CMAKE_CURRENT_SOURCE_DIR}/../..)
+set (SRCFOLDERS lib ../include msg osc nodes)
+set (OSC_PATH "${ROOT}/../../oscpack")
+
+set(SRC ${SRC} "${ROOT}/*.cpp") # add source files
+foreach(folder ${SRCFOLDERS})
+ set(SRC ${SRC} "${ROOT}/${folder}/*.cpp") # add source files
+endforeach(folder)
+if (WIN32)
+ set(SRC ${SRC} "${ROOT}/threads/win*.cpp") # add threads src per platform
+else (WIN32)
+ set(SRC ${SRC} "${ROOT}/threads/pthread*.cpp") # add threads src per platform
+endif (WIN32)
+
+file (GLOB SRCFILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${SRC})
+
+foreach(folder ${SRCFOLDERS})
+ set(HEADERS ${HEADERS} "${ROOT}/${folder}/*.h") # add header files
+endforeach(folder)
+set(HEADERS ${HEADERS} "${ROOT}/threads/*.h") # add header files
+file (GLOB HEADERFILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${HEADERS})
+
+foreach(folder ${SRCFOLDERS})
+ set(INCL ${INCL} "${ROOT}/${folder}") # add include folders
+endforeach(folder)
+set(INCL ${INCL} "${ROOT}/threads") # add other include folders
+
+#######################################
+# set libraries
+if(WIN32)
+ set(OSCPACK ${ROOT}/../../oscpack.lib)
+else(WIN32)
+ set(OSCPACK ${ROOT}/../../liboscpack.a)
+endif(WIN32)
+
+#######################################
+# set targets
+include_directories (${INCL} ${OSC_PATH} )
+
+add_library ( ${TARGET} STATIC ${SRCFILES} ${HEADERFILES} ${OSCPACK} )
+set_source_files_properties (${HEADERFILES} PROPERTIES HEADER_FILE_ONLY TRUE)
+set_target_properties (${TARGET} PROPERTIES
+ VERSION ${version}
+ ARCHIVE_OUTPUT_DIRECTORY "${ROOT}/../.."
+ ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${ROOT}/../.."
+)
+
+if(WIN32)
+ target_link_libraries ( ${TARGET} ws2_32.lib )
+endif(WIN32)
+
+if (WIN32)
+ set (OUTLIB "${TARGET}.lib")
+else (WIN32)
+ set (OUTLIB "lib${TARGET}.a")
+endif (WIN32)
+
+