diff --git a/Builds/MacOSX/Plugins/Config/Base.xcconfig b/Builds/MacOSX/Plugins/Config/Base.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..7b591ab5ab8322cdf309881d7742ab8dbe63563c
--- /dev/null
+++ b/Builds/MacOSX/Plugins/Config/Base.xcconfig
@@ -0,0 +1,52 @@
+// Defaults for values that might be overridden in Env.xcconfig
+JULIA_PATH = /Applications/Julia-0.5.app/Contents/Resources/julia
+MAC_PACKAGE_DIR = /opt/local
+
+// Pull in machine-specific settings from git-ignored file, if it exists.
+#include? "Env.xcconfig"
+
+ALWAYS_SEARCH_USER_PATHS = NO
+CLANG_ANALYZER_NONNULL = YES
+CLANG_CXX_LANGUAGE_STANDARD = c++0x
+CLANG_CXX_LIBRARY = libc++
+CLANG_ENABLE_MODULES = NO
+CLANG_ENABLE_OBJC_ARC = NO
+CLANG_LINK_OBJC_RUNTIME = NO
+CLANG_WARN_BOOL_CONVERSION = YES
+CLANG_WARN_CONSTANT_CONVERSION = YES
+CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR
+CLANG_WARN_DOCUMENTATION_COMMENTS = NO
+CLANG_WARN_EMPTY_BODY = YES
+CLANG_WARN_ENUM_CONVERSION = YES
+CLANG_WARN_INFINITE_RECURSION = YES
+CLANG_WARN_INT_CONVERSION = YES
+CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR
+CLANG_WARN_SUSPICIOUS_MOVE = YES
+CLANG_WARN_UNREACHABLE_CODE = YES
+CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
+CODE_SIGN_IDENTITY =
+COMBINE_HIDPI_IMAGES = YES
+COPY_PHASE_STRIP = NO
+DEBUG_INFORMATION_FORMAT = dwarf
+ENABLE_STRICT_OBJC_MSGSEND = YES
+GCC_C_LANGUAGE_STANDARD = c99
+GCC_GENERATE_DEBUGGING_SYMBOLS = YES
+GCC_NO_COMMON_BLOCKS = YES
+GCC_OPTIMIZATION_LEVEL = 3
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) OEPLUGIN JUCER_XCODE_MAC_F6D2F4CF=1 JUCE_APP_VERSION=0.4.1 JUCE_APP_VERSION_HEX=0x401
+GCC_VERSION = com.apple.compilers.llvm.clang.1_0
+GCC_WARN_64_TO_32_BIT_CONVERSION = NO
+GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR
+GCC_WARN_CHECK_SWITCH_STATEMENTS = YES
+GCC_WARN_MISSING_PARENTHESES = YES
+GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES
+GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES
+GCC_WARN_UNDECLARED_SELECTOR = YES
+GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
+GCC_WARN_UNUSED_FUNCTION = YES
+GCC_WARN_UNUSED_VARIABLE = YES
+MACOSX_DEPLOYMENT_TARGET = 10.9
+OTHER_LDFLAGS = $(inherited) -undefined dynamic_lookup
+SDKROOT = macosx
+SKIP_INSTALL = YES
+WARNING_CFLAGS = $(inherited) -Wpartial-availability -Wreorder -Wno-inconsistent-missing-override
diff --git a/Builds/MacOSX/Plugins/Config/Debug.xcconfig b/Builds/MacOSX/Plugins/Config/Debug.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..561672b23a3f27ca0157ae8003ffbe92cf090fa3
--- /dev/null
+++ b/Builds/MacOSX/Plugins/Config/Debug.xcconfig
@@ -0,0 +1,6 @@
+ENABLE_TESTABILITY = YES
+GCC_DYNAMIC_NO_PIC = NO
+GCC_INLINES_ARE_PRIVATE_EXTERN = NO
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) DEBUG=1 _DEBUG=1
+MTL_ENABLE_DEBUG_INFO = YES
+ONLY_ACTIVE_ARCH = YES
diff --git a/Builds/MacOSX/Plugins/Config/Plugin.xcconfig b/Builds/MacOSX/Plugins/Config/Plugin.xcconfig
index 02a08aba05f5b0ba5c2fa4f4ff3e57a97fd58a75..262c430c197162f5b32d9ef638b2285c3e6bfe20 100644
--- a/Builds/MacOSX/Plugins/Config/Plugin.xcconfig
+++ b/Builds/MacOSX/Plugins/Config/Plugin.xcconfig
@@ -1,56 +1,6 @@
-// Defaults for values that might be overridden in Env.xcconfig
-JULIA_PATH = /Applications/Julia-0.5.app/Contents/Resources/julia
-MAC_PACKAGE_DIR = /opt/local
+#include "Base.xcconfig"
 
-// Pull in machine-specific settings from git-ignored file, if it exists.
-#include? "Env.xcconfig"
-
-ALWAYS_SEARCH_USER_PATHS = NO
-CLANG_ANALYZER_NONNULL = YES
-CLANG_CXX_LANGUAGE_STANDARD = c++0x
-CLANG_CXX_LIBRARY = libc++
-CLANG_ENABLE_MODULES = NO
-CLANG_ENABLE_OBJC_ARC = NO
-CLANG_LINK_OBJC_RUNTIME = NO
-CLANG_WARN_BOOL_CONVERSION = YES
-CLANG_WARN_CONSTANT_CONVERSION = YES
-CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR
-CLANG_WARN_DOCUMENTATION_COMMENTS = NO
-CLANG_WARN_EMPTY_BODY = YES
-CLANG_WARN_ENUM_CONVERSION = YES
-CLANG_WARN_INFINITE_RECURSION = YES
-CLANG_WARN_INT_CONVERSION = YES
-CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR
-CLANG_WARN_SUSPICIOUS_MOVE = YES
-CLANG_WARN_UNREACHABLE_CODE = YES
-CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
-CODE_SIGN_IDENTITY =
-COMBINE_HIDPI_IMAGES = YES
 CONFIGURATION_BUILD_DIR = $(PROJECT_DIR)/../../build/$(CONFIGURATION)/open-ephys.app/Contents/PlugIns
-COPY_PHASE_STRIP = NO
-DEBUG_INFORMATION_FORMAT = dwarf
-ENABLE_STRICT_OBJC_MSGSEND = YES
-GCC_C_LANGUAGE_STANDARD = c99
-GCC_GENERATE_DEBUGGING_SYMBOLS = YES
-GCC_NO_COMMON_BLOCKS = YES
-GCC_OPTIMIZATION_LEVEL = 3
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) OEPLUGIN JUCER_XCODE_MAC_F6D2F4CF=1 JUCE_APP_VERSION=0.4.1 JUCE_APP_VERSION_HEX=0x401
-GCC_VERSION = com.apple.compilers.llvm.clang.1_0
-GCC_WARN_64_TO_32_BIT_CONVERSION = NO
-GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR
-GCC_WARN_CHECK_SWITCH_STATEMENTS = YES
-GCC_WARN_MISSING_PARENTHESES = YES
-GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES
-GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES
-GCC_WARN_UNDECLARED_SELECTOR = YES
-GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
-GCC_WARN_UNUSED_FUNCTION = YES
-GCC_WARN_UNUSED_VARIABLE = YES
 HEADER_SEARCH_PATHS = ../../../../JuceLibraryCode ../../../../JuceLibraryCode/modules ../../../../Source/Plugins/Headers $(inherited)
 INSTALL_PATH = $(HOME)/Applications/open-ephys.app/Contents/PlugIns
-MACOSX_DEPLOYMENT_TARGET = 10.9
-OTHER_LDFLAGS = $(inherited) -undefined dynamic_lookup
-SDKROOT = macosx
-SKIP_INSTALL = YES
-WARNING_CFLAGS = $(inherited) -Wpartial-availability -Wreorder -Wno-inconsistent-missing-override
 WRAPPER_EXTENSION = bundle
diff --git a/Builds/MacOSX/Plugins/Config/Plugin_Debug.xcconfig b/Builds/MacOSX/Plugins/Config/Plugin_Debug.xcconfig
index 24d46f6a8f04c87e2b99fdbc4576f35a528f663c..9c4f28329293cf3dc41ac8e85fdd5b2c61f40e66 100644
--- a/Builds/MacOSX/Plugins/Config/Plugin_Debug.xcconfig
+++ b/Builds/MacOSX/Plugins/Config/Plugin_Debug.xcconfig
@@ -1,8 +1,2 @@
 #include "Plugin.xcconfig"
-
-ENABLE_TESTABILITY = YES
-GCC_DYNAMIC_NO_PIC = NO
-GCC_INLINES_ARE_PRIVATE_EXTERN = NO
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) DEBUG=1 _DEBUG=1
-MTL_ENABLE_DEBUG_INFO = YES
-ONLY_ACTIVE_ARCH = YES
+#include "Debug.xcconfig"
diff --git a/Builds/MacOSX/Plugins/Config/Plugin_Release.xcconfig b/Builds/MacOSX/Plugins/Config/Plugin_Release.xcconfig
index 5b8ee46c08622cd2525d72beeb169eb74f205669..0e0c58a80b8dfd192b44fa8496b849286acd31ea 100644
--- a/Builds/MacOSX/Plugins/Config/Plugin_Release.xcconfig
+++ b/Builds/MacOSX/Plugins/Config/Plugin_Release.xcconfig
@@ -1,7 +1,2 @@
 #include "Plugin.xcconfig"
-
-DEAD_CODE_STRIPPING = YES
-ENABLE_NS_ASSERTIONS = NO
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) NDEBUG=1 _NDEBUG=1
-GCC_SYMBOLS_PRIVATE_EXTERN = YES
-MTL_ENABLE_DEBUG_INFO = NO
+#include "Release.xcconfig"
diff --git a/Builds/MacOSX/Plugins/Config/Release.xcconfig b/Builds/MacOSX/Plugins/Config/Release.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..1c072063b18822c1c1b7fd67c962ded283a8126f
--- /dev/null
+++ b/Builds/MacOSX/Plugins/Config/Release.xcconfig
@@ -0,0 +1,5 @@
+DEAD_CODE_STRIPPING = YES
+ENABLE_NS_ASSERTIONS = NO
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) NDEBUG=1 _NDEBUG=1
+GCC_SYMBOLS_PRIVATE_EXTERN = YES
+MTL_ENABLE_DEBUG_INFO = NO