mirror of
				https://github.com/Z3Prover/z3
				synced 2025-11-03 21:09:11 +00:00 
			
		
		
		
	[CMake] Implement installation of ".NET" bindings on Windows.
We don't install Z3_DOTNET_ASSEMBLY_DLL into the gac. Instead we just copy into installation directory. There are several reasons for this: * We can't install the Z3_DOTNET_ASSEMBLY_DLL into the gac in a portable way like we can with mono (i.e. the ``-root`` flag). * It isn't best practice to use ``gacutil.exe`` on Windows to install into the GAC, see https://msdn.microsoft.com/en-us/library/yf1d93sz(v=vs.110).aspx . Taking this approach should be sufficient because we can now do something like this ``` mkdir build cmake -G Ninja -DCMAKE_INSTALL_PREFIX=<some_path> ../ ninja mkdir <some_path> ninja install ``` and then put the contents of <some_path> into a zip file which creates a redistributable zip file for Windows.
This commit is contained in:
		
							parent
							
								
									7213280d9b
								
							
						
					
					
						commit
						626e0736d2
					
				
					 1 changed files with 4 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -282,9 +282,10 @@ if (DOTNET_TOOLCHAIN_IS_MONO)
 | 
			
		|||
  add_dependencies(uninstall remove_dotnet_dll_from_gac)
 | 
			
		||||
 | 
			
		||||
elseif(DOTNET_TOOLCHAIN_IS_WINDOWS)
 | 
			
		||||
  # FIXME: This isn't implemented because I'm not sure how/if the assembly should
 | 
			
		||||
  # be installed to the GAC.
 | 
			
		||||
  message(WARNING "Install of .NET bindings is not implemented for Windows")
 | 
			
		||||
  # Don't install Z3_DOTNET_ASSEMBLY_DLL into the gac. Instead just copy into
 | 
			
		||||
  # installation directory.
 | 
			
		||||
  install(FILES "${Z3_DOTNET_ASSEMBLY_DLL}" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
 | 
			
		||||
  install(FILES "${Z3_DOTNET_ASSEMBLY_DLL_DOC}" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
 | 
			
		||||
else()
 | 
			
		||||
  message(FATAL_ERROR "Unknown .NET toolchain")
 | 
			
		||||
endif()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue