]> granicus.if.org Git - llvm/commitdiff
Autogenerate the shebang lines for tools/opt-viewer
authorChris Bieneman <chris.bieneman@me.com>
Wed, 21 Aug 2019 01:48:28 +0000 (01:48 +0000)
committerChris Bieneman <chris.bieneman@me.com>
Wed, 21 Aug 2019 01:48:28 +0000 (01:48 +0000)
Summary:
Since these files depend on the built python modules, they need to use
the right python binary to run them. So use configure_file
to set the right shebang line.

Patch By: cbiesinger (Christian Biesinger)

Reviewers: chandlerc, beanz, anemet

Reviewed By: anemet

Subscribers: compnerd, JDevlieghere, mgorny, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D65983

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@369486 91177308-0d34-0410-b5e6-96231b3b80d8

CMakeLists.txt
tools/opt-viewer/CMakeLists.txt
tools/opt-viewer/opt-diff.py.in [moved from tools/opt-viewer/opt-diff.py with 98% similarity]
tools/opt-viewer/opt-stats.py.in [moved from tools/opt-viewer/opt-stats.py with 98% similarity]
tools/opt-viewer/opt-viewer.py.in [moved from tools/opt-viewer/opt-viewer.py with 99% similarity]
tools/opt-viewer/optrecord.py.in [moved from tools/opt-viewer/optrecord.py with 99% similarity]

index 678f1a74bdd14c7fed7c7501f9c1ce1711bc9838..0e77e0ebdeb79e7960f0e3e3b45b830ee1ea37ab 100644 (file)
@@ -660,6 +660,8 @@ if( ${PYTHON_VERSION_STRING} VERSION_LESS 2.7 )
   message(FATAL_ERROR "Python 2.7 or newer is required")
 endif()
 
+get_filename_component(PYTHON_BASENAME ${PYTHON_EXECUTABLE} NAME)
+
 ######
 # LLVMBuild Integration
 #
index 19b60693308201fbc0b530f6e92a1eddf725b1a3..1864c2b60b18308a9db3c65f67d40b10b8e69f61 100644 (file)
@@ -1,13 +1,28 @@
 set (files
+  "optpmap.py"
+  "style.css")
+
+set (generated_files
   "opt-diff.py"
   "opt-stats.py"
   "opt-viewer.py"
-  "optpmap.py"
-  "optrecord.py"
-  "style.css")
+  "optrecord.py")
+
+foreach (file ${generated_files})
+  configure_file(
+    ${CMAKE_CURRENT_SOURCE_DIR}/${file}.in
+    ${CMAKE_CURRENT_BINARY_DIR}/${file})
+endforeach (file)
 
 foreach (file ${files})
   install(PROGRAMS ${file}
     DESTINATION share/opt-viewer
     COMPONENT opt-viewer)
 endforeach (file)
+
+
+foreach (file ${generated_files})
+  install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${file}
+    DESTINATION share/opt-viewer
+    COMPONENT opt-viewer)
+endforeach (file)
similarity index 98%
rename from tools/opt-viewer/opt-diff.py
rename to tools/opt-viewer/opt-diff.py.in
index 36e81a5d569a746567776da4f1aa57cbd5fc8570..a561bb626d0bc51b6b33a2e68af901de16b780d8 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env @PYTHON_BASENAME@
 
 from __future__ import print_function
 
similarity index 98%
rename from tools/opt-viewer/opt-stats.py
rename to tools/opt-viewer/opt-stats.py.in
index f4ee3a7d44e63958dffc6ed7add97e5797a66f7c..4f102861663d8c2fddc7178608502489618a6953 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env @PYTHON_BASENAME@
 
 from __future__ import print_function
 
similarity index 99%
rename from tools/opt-viewer/opt-viewer.py
rename to tools/opt-viewer/opt-viewer.py.in
index 4c105886cfdf274b38f5ed3ce6539516971585e9..288e01ea1d18ee750da5d302bb72c955003b1e82 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env @PYTHON_BASENAME@
 
 from __future__ import print_function
 
similarity index 99%
rename from tools/opt-viewer/optrecord.py
rename to tools/opt-viewer/optrecord.py.in
index f6fd772689a9c5479392a2c517ca0e56249a95d9..79d377c34faa34d181a6a2d898ec6faf44d1ef79 100644 (file)
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env @PYTHON_BASENAME@
 
 from __future__ import print_function