third-party: create third-party integration scripts
authorMarc-André Moreau <marcandre.moreau@gmail.com>
Sun, 12 Aug 2012 19:41:07 +0000 (15:41 -0400)
committerMarc-André Moreau <marcandre.moreau@gmail.com>
Sun, 12 Aug 2012 19:41:07 +0000 (15:41 -0400)
.gitignore
CMakeLists.txt
third-party/.gitignore [new file with mode: 0644]
third-party/CMakeLists.txt [new file with mode: 0644]

index 3377706..73c0bf8 100644 (file)
@@ -19,9 +19,6 @@ CPackSourceConfig.cmake
 docs/api
 client/X11/xfreerdp.1
 
-# Extensions
-extensions/**
-
 # Mac OS X
 .DS_Store
 
index eb4c410..2da96da 100644 (file)
@@ -204,9 +204,9 @@ if(NOT MSVC)
        add_subdirectory(keymaps)
 endif()
 
-option(WITH_EXTENSIONS "Build extensions" ON)
-if(WITH_EXTENSIONS)
-       add_subdirectory(extensions)
+option(WITH_THIRD_PARTY "Build third-party components" ON)
+if(WITH_THIRD_PARTY)
+       add_subdirectory(third-party)
 endif()
 
 # Source package
diff --git a/third-party/.gitignore b/third-party/.gitignore
new file mode 100644 (file)
index 0000000..453af30
--- /dev/null
@@ -0,0 +1,2 @@
+**/**
+
diff --git a/third-party/CMakeLists.txt b/third-party/CMakeLists.txt
new file mode 100644 (file)
index 0000000..5a27d83
--- /dev/null
@@ -0,0 +1,31 @@
+# Third-Party Extensions
+#
+# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# The third-party directory is meant for third-party components to be built
+# as part of the main FreeRDP build system, making separate maintenance easier.
+# Subdirectories of the third-party directory are ignored by git, but are
+# automatically included by CMake when the -DWITH_THIRD_PARTY=on option is used.
+
+file(GLOB all_valid_subdirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/CMakeLists.txt")
+
+foreach(dir ${all_valid_subdirs})
+       message(STATUS "path = ${dir}")
+       if(${dir} MATCHES "^([^/]*)//CMakeLists.txt")
+               string(REGEX REPLACE "^([^/]*)//CMakeLists.txt" "\\1" dir_trimmed ${dir})
+               add_subdirectory(${dir_trimmed})
+       endif()
+endforeach(dir)
+