xref: /aosp_15_r20/external/llvm/cmake/modules/LLVMInstallSymlink.cmake (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# We need to execute this script at installation time because the
2*9880d681SAndroid Build Coastguard Worker# DESTDIR environment variable may be unset at configuration time.
3*9880d681SAndroid Build Coastguard Worker# See PR8397.
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Workerfunction(install_symlink name target outdir)
6*9880d681SAndroid Build Coastguard Worker  if(UNIX)
7*9880d681SAndroid Build Coastguard Worker    set(LINK_OR_COPY create_symlink)
8*9880d681SAndroid Build Coastguard Worker    set(DESTDIR $ENV{DESTDIR})
9*9880d681SAndroid Build Coastguard Worker  else()
10*9880d681SAndroid Build Coastguard Worker    set(LINK_OR_COPY copy)
11*9880d681SAndroid Build Coastguard Worker  endif()
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Worker  set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker  message("Creating ${name}")
16*9880d681SAndroid Build Coastguard Worker
17*9880d681SAndroid Build Coastguard Worker  execute_process(
18*9880d681SAndroid Build Coastguard Worker    COMMAND "${CMAKE_COMMAND}" -E ${LINK_OR_COPY} "${target}" "${name}"
19*9880d681SAndroid Build Coastguard Worker    WORKING_DIRECTORY "${bindir}")
20*9880d681SAndroid Build Coastguard Worker
21*9880d681SAndroid Build Coastguard Workerendfunction()
22