| 
					
				 | 
			
			
				@@ -0,0 +1,89 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+cmake_minimum_required(VERSION 2.8.12) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+project(StagingPrefix) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Wipe out the install tree 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_command( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  OUTPUT ${CMAKE_BINARY_DIR}/CleanupProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/ConsumerBuild 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/ProducerBuild 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/stage 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/prefix 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/ignored 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_target(CleanupTarget ALL DEPENDS ${CMAKE_BINARY_DIR}/CleanupProject) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+set_property( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  SOURCE ${CMAKE_BINARY_DIR}/CleanupProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  PROPERTY SYMBOLIC 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(CMAKE_CONFIGURATION_TYPES) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  set(NESTED_CONFIG_TYPE -C "${CMAKE_CFG_INTDIR}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+else() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  if(CMAKE_BUILD_TYPE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    set(NESTED_CONFIG_TYPE -C "${CMAKE_BUILD_TYPE}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  else() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    set(NESTED_CONFIG_TYPE) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  endif() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+endif() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Build and install the producer. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_command( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  OUTPUT ${CMAKE_BINARY_DIR}/ProducerProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_CTEST_COMMAND} ${NESTED_CONFIG_TYPE} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-and-test 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ${CMAKE_SOURCE_DIR}/Producer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ${CMAKE_BINARY_DIR}/ProducerBuild 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-noclean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-project Producer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-target install 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-generator ${CMAKE_GENERATOR} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    --build-options 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      -DCMAKE_VERBOSE_MAKEFILE=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      "-DCMAKE_STAGING_PREFIX=${CMAKE_BINARY_DIR}/stage" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      "-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/prefix" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  VERBATIM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_target(ProducerTarget ALL DEPENDS ${CMAKE_BINARY_DIR}/ProducerProject) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_dependencies(ProducerTarget CleanupTarget) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+set_property( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  SOURCE ${CMAKE_BINARY_DIR}/ProducerProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  PROPERTY SYMBOLIC 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(NOT WIN32) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  file(WRITE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    "${CMAKE_BINARY_DIR}/ignored/${CMAKE_BINARY_DIR}/stage/include/ignored.h" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    "#define IGNORED\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+endif() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Build and install the consumer. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_command( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  OUTPUT ${CMAKE_BINARY_DIR}/ConsumerProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  COMMAND ${CMAKE_CTEST_COMMAND} ${NESTED_CONFIG_TYPE} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-and-test 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   ${CMAKE_SOURCE_DIR}/Consumer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   ${CMAKE_BINARY_DIR}/ConsumerBuild 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-noclean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-project Consumer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-target install 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-generator ${CMAKE_GENERATOR} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   --build-options 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      "-DCMAKE_FIND_ROOT_PATH=${CMAKE_BINARY_DIR}/ignored" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      "-DCMAKE_STAGING_PREFIX=${CMAKE_BINARY_DIR}/stage" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      -DCMAKE_VERBOSE_MAKEFILE=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  VERBATIM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_custom_target(ConsumerTarget ALL DEPENDS ${CMAKE_BINARY_DIR}/ConsumerProject) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_dependencies(ConsumerTarget ProducerTarget) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+set_property( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  SOURCE ${CMAKE_BINARY_DIR}/ConsumerProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  PROPERTY SYMBOLIC 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_executable(StagingPrefix main.cpp) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+add_dependencies(StagingPrefix ConsumerTarget) 
			 |