From 1c0dbcc95b2e8e9a20279f0dab0eecd115be5484 Mon Sep 17 00:00:00 2001 From: Uwe Hermann Date: Sun, 4 May 2014 22:17:03 +0200 Subject: [PATCH] Fix 'make install' on OSes where 'python3' doesn't exist. Sometimes the Python 3 executable is called just 'python3', sometimes it is called 'python3.4' and so on. Handle all cases transparently for the user. Before: $ make install /usr/bin/env: python3: No such file or directory After: $ make install python3.4 ./tools/install-decoders -i ./decoders -o [...] Installing 36 protocol decoders: [...] --- Makefile.am | 4 ++-- configure.ac | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am index c4a9d47..741720f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -89,8 +89,8 @@ dist-hook: ChangeLog install-decoders: $(MKDIR_P) $(DESTDIR)$(DECODERS_DIR) - ${top_srcdir}/tools/install-decoders -i ${top_srcdir}/decoders \ - -o $(DESTDIR)$(DECODERS_DIR) + $(PYTHON3) ${top_srcdir}/tools/install-decoders \ + -i ${top_srcdir}/decoders -o $(DESTDIR)$(DECODERS_DIR) install-data-hook: install-decoders diff --git a/configure.ac b/configure.ac index 420c8f3..c27376f 100644 --- a/configure.ac +++ b/configure.ac @@ -115,6 +115,13 @@ PKG_CHECK_MODULES([python3], [python3 >= 3.2], AC_SUBST(CPPFLAGS_PYTHON) AC_SUBST(LDFLAGS_PYTHON) +# We also need to find the name of the python3 executable (for 'make install'). +# Some OSes call this python3, some call it python3.2, etc. etc. +AC_CHECK_PROGS([PYTHON3], [python3.4 python3.3 python3.2 python3]) +if test "x$PYTHON3" == "x"; then + AC_MSG_ERROR([cannot find python3 executable.]) +fi + # Link against libm, this is required (among other things) by Python. AC_SEARCH_LIBS([pow], [m]) -- 2.30.2