[Libclc-dev] [PATCH 1/1] cmake: Install libraries to DATADIR from GNUInstallDirs

Jan Vesely via Libclc-dev libclc-dev at lists.llvm.org
Mon Dec 17 10:18:44 PST 2018


On Thu, 2018-12-06 at 17:40 -0500, Jan Vesely wrote:
> This moves default installation location of device libraries to /usr/share.
> Note that libclc.pc was already installed to /usr/share.
> Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
> ---
> I was not sure if this should use LIBDIR or DATADIR, but in the end the
> libraries are independent of CPU architecture and it can be easily
> overridden.
> I don't have a strong preference, let me know if LIBDIR looks better to
> you.

ping.

Dave, Tom, do you have a preference for the default location?

thanks,
Jan

> 
> Jan
> 
>  CMakeLists.txt | 11 ++++++-----
>  libclc.pc.in   |  4 ++--
>  2 files changed, 8 insertions(+), 7 deletions(-)
> 
> diff --git a/CMakeLists.txt b/CMakeLists.txt
> index 41bd5f6..440eab0 100644
> --- a/CMakeLists.txt
> +++ b/CMakeLists.txt
> @@ -1,6 +1,7 @@
>  cmake_minimum_required( VERSION 3.9.2 )
>  
>  project( libclc VERSION 0.2.0 LANGUAGES CXX )
> +include( GNUInstallDirs )
>  
>  # List of all targets
>  set( LIBCLC_TARGETS_ALL
> @@ -145,8 +146,8 @@ endif()
>  
>  # pkg-config file
>  configure_file( libclc.pc.in libclc.pc @ONLY )
> -install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libclc.pc DESTINATION share/pkgconfig )
> -install( DIRECTORY generic/include/clc DESTINATION include )
> +install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libclc.pc DESTINATION ${CMAKE_INSTALL_DATADIR}/pkgconfig )
> +install( DIRECTORY generic/include/clc DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} )
>  
>  if( ENABLE_RUNTIME_SUBNORMAL )
>  	add_library( subnormal_use_default STATIC
> @@ -154,7 +155,7 @@ if( ENABLE_RUNTIME_SUBNORMAL )
>  	add_library( subnormal_disable STATIC
>  		generic/lib/subnormal_disable.ll )
>  	install( TARGETS subnormal_use_default subnormal_disable ARCHIVE
> -		DESTINATION lib/clc )
> +		DESTINATION ${CMAKE_INSTALL_DATADIR}/clc )
>  endif()
>  
>  find_program( PYTHON python )
> @@ -274,7 +275,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
>  				            prepare_builtins )
>  		add_custom_target( "prepare-${obj_suffix}" ALL
>  		                   DEPENDS "${obj_suffix}" )
> -		install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${obj_suffix} DESTINATION lib/clc )
> +		install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${obj_suffix} DESTINATION ${CMAKE_INSTALL_DATADIR}/clc )
>  		# nvptx-- targets don't include workitem builtins
>  		if( NOT ${t} MATCHES ".*ptx.*--$" )
>  			add_test( NAME external-calls-${obj_suffix}
> @@ -292,7 +293,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
>  					   create_symlink ${obj_suffix}
>  					   ${alias_suffix}
>  			                   DEPENDS "prepare-${obj_suffix}" )
> -			install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix} DESTINATION lib/clc )
> +			install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix} DESTINATION ${CMAKE_INSTALL_DATADIR}/clc )
>  		endforeach( a )
>  	endforeach( d )
>  endforeach( t )
> diff --git a/libclc.pc.in b/libclc.pc.in
> index 82e4e94..b6e06c9 100644
> --- a/libclc.pc.in
> +++ b/libclc.pc.in
> @@ -1,5 +1,5 @@
> -includedir=@CMAKE_INSTALL_PREFIX@/include
> -libexecdir=@CMAKE_INSTALL_PREFIX@/lib/clc
> +includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@
> +libexecdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_DATADIR@/clc
>  
>  Name: libclc
>  Description: Library requirements of the OpenCL C programming language

-- 
Jan Vesely <jan.vesely at rutgers.edu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/libclc-dev/attachments/20181217/99e6e20b/attachment.sig>


More information about the Libclc-dev mailing list