xref: /minix3/external/bsd/llvm/dist/clang/tools/driver/clang_symlink.cmake (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc# We need to execute this script at installation time because the
2*f4a2713aSLionel Sambuc# DESTDIR environment variable may be unset at configuration time.
3*f4a2713aSLionel Sambuc# See PR8397.
4*f4a2713aSLionel Sambuc
5*f4a2713aSLionel Sambucif(UNIX)
6*f4a2713aSLionel Sambuc  set(CLANGXX_LINK_OR_COPY create_symlink)
7*f4a2713aSLionel Sambuc  set(CLANGXX_DESTDIR $ENV{DESTDIR})
8*f4a2713aSLionel Sambucelse()
9*f4a2713aSLionel Sambuc  set(CLANGXX_LINK_OR_COPY copy)
10*f4a2713aSLionel Sambucendif()
11*f4a2713aSLionel Sambuc
12*f4a2713aSLionel Sambuc# CMAKE_EXECUTABLE_SUFFIX is undefined on cmake scripts. See PR9286.
13*f4a2713aSLionel Sambucif( WIN32 )
14*f4a2713aSLionel Sambuc  set(EXECUTABLE_SUFFIX ".exe")
15*f4a2713aSLionel Sambucelse()
16*f4a2713aSLionel Sambuc  set(EXECUTABLE_SUFFIX "")
17*f4a2713aSLionel Sambucendif()
18*f4a2713aSLionel Sambuc
19*f4a2713aSLionel Sambucset(bindir "${CLANGXX_DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/")
20*f4a2713aSLionel Sambucset(clang "clang${EXECUTABLE_SUFFIX}")
21*f4a2713aSLionel Sambucset(clangxx "clang++${EXECUTABLE_SUFFIX}")
22*f4a2713aSLionel Sambucset(clang_cl "clang-cl${EXECUTABLE_SUFFIX}")
23*f4a2713aSLionel Sambucset(cl "cl${EXECUTABLE_SUFFIX}")
24*f4a2713aSLionel Sambuc
25*f4a2713aSLionel Sambucmessage("Creating clang++ executable based on ${clang}")
26*f4a2713aSLionel Sambuc
27*f4a2713aSLionel Sambucexecute_process(
28*f4a2713aSLionel Sambuc  COMMAND "${CMAKE_COMMAND}" -E ${CLANGXX_LINK_OR_COPY} "${clang}" "${clangxx}"
29*f4a2713aSLionel Sambuc  WORKING_DIRECTORY "${bindir}")
30*f4a2713aSLionel Sambuc
31*f4a2713aSLionel Sambucmessage("Creating clang-cl executable based on ${clang}")
32*f4a2713aSLionel Sambuc
33*f4a2713aSLionel Sambucexecute_process(
34*f4a2713aSLionel Sambuc  COMMAND "${CMAKE_COMMAND}" -E ${CLANGXX_LINK_OR_COPY} "${clang}" "${clang_cl}"
35*f4a2713aSLionel Sambuc  WORKING_DIRECTORY "${bindir}")
36*f4a2713aSLionel Sambuc
37*f4a2713aSLionel Sambucif (WIN32)
38*f4a2713aSLionel Sambuc  message("Creating cl executable based on ${clang}")
39*f4a2713aSLionel Sambuc
40*f4a2713aSLionel Sambuc  execute_process(
41*f4a2713aSLionel Sambuc    COMMAND "${CMAKE_COMMAND}" -E ${CLANGXX_LINK_OR_COPY} "${clang}" "../msbuild-bin/${cl}"
42*f4a2713aSLionel Sambuc    WORKING_DIRECTORY "${bindir}")
43*f4a2713aSLionel Sambucendif()
44